• 0 Posts
  • 84 Comments
Joined 2 years ago
cake
Cake day: December 31st, 2023

help-circle







  • I’m a software developer by hobby and professionally. It can be a bit difficult to thread that needle. While it can be quite fun to get into “the zone” and write code for 6 hours straight until 4am multiple times a week, that’s also the quickest way to burnout (and literally sent me to therapy)

    One thing I’m trying to do is write a custom todo / daily planner app for my phone. I’m hoping that i can use this to better manage my free time

    It’s slow going, as i can only dedicate a handful of hours during the week to personal projects (before i want to yeet myself out the window at the sight of my computer). And weekends are spent playing catchup to sleep, house chores, and other hobbies

    It is still fun though. I just have to remind myself to not get into analysis paralysis, and focus on manageable chunks (some days, those chunks are embarrassingly small). I literally just spent an hour or so fighting with C# csproj files to compile Android libraries (my goal was to get notifications working, but it’s almost midnight)

    Most important thing is to get good quality sleep, regularly, at the same time of day. Without that, you will slowly lose your sanity, and will not notice until it becomes a problem




  • Think of it more like pre-canned build scripts. I can just write a script (DockerFile), which tells docker how to prepare the environment for my app. Usually, this is just pulling the pre-canned image for the app, maybe with some extra dependencies pulled in.

    This builds an image (a non-running snapshot of your environment), which can be used to run a container (the actual running app)

    Then, i can write a config file (docker-compose.yaml) which tells docker how to configure everything about how the container talks to the host.

    • shared folders (volumes)
    • other containers it needs to talk to
    • network isolation and exposed ports

    The benefit of this, is that I don’t have to configure the host in any way to build / host the app (other than installing docker). Just push the project files and docker files, and docker takes care of everything else

    This makes for a more reliable and dependable deploy

    You can even develop the app locally without having any of the devtools installed on the host

    As well, this makes your app platform agnostic. As long as it has docker, you don’t need to touch your build scripts to deploy to a new host, regardless of OS


    A second benefit is process isolation. Should your app rely on an insecure library, or should your app get compromised, you have a buffer between the compromised process and the host (like a light weight VM)







  • It can be useful if you want a different desktop layout for different use cases

    I set up a Personal activity, and a Work activity, with different backgrounds and different apps pinned to the taskbar. That helps maintain a “virtual” separation of work and personal life, and helps me not screw off on discord as much

    Well, it would if i actually used it