sovietmudkipz
Central Question: What pragmatic work tracking advice do people have for tiny (1-4; 1 founder, 1-3 contractors) team sizes, analog or digital?
Context: I noticed a source of friction for my larger solo projects (1+ months) was a lack of structure and carrying the entire project in my head. Effective for hackathons but life is starting to force me into more context switching (getting older I guess). I've already refactored my work system to involve an analog weekly planner + weekly retro/plan ritual, heavier emphasis on digital calendar, adopting a two phase work philosophy (planning/grooming, task execution) often facilitated by pomodoro (5 minutes plan, 25 execute), and leaning on having a digital work tracking system.
I've taken a large bet on GitHub's ecosystem. Issues + "type:" labels let me create ticket types (spike, feature, bug) + "area:" labels (e.g. runtimes, category of concern (security, REST, client, ...), ...) allows me to gather and tag appropriate units of work. GitHub projects supports kanban boards and "filter by" or "slice by" features that are helpful. Pull Requests + Actions let me vet software additions. Issue/PR comment streams allow additional context capturing. Milestones & Releases let me plan larger epics and bundle my software. It's a robust digital system whose mental model makes sense in the context of delivering software.
I have an ambitious software project idea (multiplayer game software) that I'll eventually want to bring in a contractor or more. I want to stipulate some degree of interfacing with my system, even if it's just to capture the high level "this feature is handled by contractor A" and allow delegated delivery.
The points of friction so far have come from wrestling decision control with ai agents, and resisting the temptation to plan in too much detail too far into the future.
Given that brain dump, what advice might you have for me to help make for successful?
If the aspiration of a 10x or more programmer is enabled through AI then the capital class win, in the typical case. Software eats the world.
That's not how my creative energy works. I have time that I want to solve problems, and I want to solve them. I don't want a cooldown timer applied to solving a problem. Not to mention the anxiety of realizing that while I sleep I could have burned tokens in that time.
I'm incredibly disappointed when I sat down to my hobbyist programming time and realized copilot was suddenly and dramatically changed in a way that is incredibly disheartening.
Meter my token usage DON'T tell me when I can use them! ARGH.
It wasn't! Note to self: also check archive.org in case there is an internet archive for any sites an agent might reference.
I checked out this repo -- it has the information useful to my project. Thanks for sharing this!
App creators will be competing and copying each other. The software that can support change will probably win in the market. Probably…?
Sounds like you’re ahead of me then! The game I’m working on off & on is a 32v32 moba. I want the gameplay of Heroes of the Storm but with the match size of a battlefield server.
I wish I could dedicate myself full time to the effort (and in fact I’m working with my financial planner to figure out a plan) but this is a side project that is prioritized behind a few things. I wouldn’t feel too comfortable collaborating right now since I would be unpredictable. I’ll keep you in mind for when that changes though!
It’s a lot of work. I slightly enjoy it but boooooy is getting into audio and music pretty challenging. It’ll be good if I ever need to know what I’m talking about when working with others… in the future where I can dedicate myself full time to game dev… One day one day…
I don’t really have a point here. If anyone has any resources, tips, or recommendations on this subject let me know.
Edit: Congrats on the new 9.0 release!
It annoyed me so much that I switched to mint.
This is the same company who creates internal systems that encourage wringing out every drop of effort no matter how many piss bottles litter their work environment. When a faceless program uses gamification and comparison estimations to keep their employed serfs always working, constantly fed a sense of being behind. The stress of it all without the minimal of a “good job!”
You’re telling me THAT style of company isn’t capable of achieving this goal for another 2 months? If the company is going to use reprehensible practices at least use it to achieve good quicker.
To me this feels like releasing a press announcement to generate good PR and waiting until everyone forgets before not actually doing the thing… That’s my cynical take.
App I recommend to download models and manage UIs: https://github.com/LykosAI/StabilityMatrix
(1) Download Krita (2) Download and install the Krita AI diffusion plugin (3) Run comfy UI using StabilityMatrix
Docs for using the Krita AI plugin: https://docs.interstice.cloud/basics/ It's a really fun plugin to use!
Now the product decisions behind the OS giving me the icks… The terminal can’t (completely) help with that ^_^
For more details on why I came close to switching: I use my win desktop as a host for ai services such as Comfy UI for stable diffusion generation since it is a beefy platform; for example, I generate reference stuff for Krita (digital painting software) illustrations on my drawing tablet. I remember the process to configure windows as being strange, GUI bound (NOT windows strong suit), and just annoying due to my aforementioned bias. Valve has done great work with running games on linux which is the only reason I keep that OS and I’d rather set up services on linux.
This comment serves as a reminder to myself that I should just go ahead grab my windows license keys for archival purposes and flash a better OS on that system.
I think the companies I worked for were prioritizing working on no issue deployments (built from a series of documented and undocumented manual processes!) rather than making services resilient through chaos testing. As a younger dev this priority struck me as heresy (come on guys, follow the herd!); as a more mature dev I understand time & effort are scarce resources and the daily toil tax needs to be paid to make forward progress… it’s tough living in a non-ideal world!
- Go based supervisor daemon runs as a systemd service on the host. I configure it to know about my particular game server and expected utilization target. - The supervisor is responsible for reconciling my desired expectations (a count, or % of cpu/mem/etc so far) with spinning up game servers managed by systemd (since systemd doesn’t natively support this sort of dynamism + go code is super lean). - If I want more than one type of game server I imagine I could extend this technique to spinning up more than one supervisor but I’m keeping that in my back pocket for now. - I haven’t thought up a reason to, but my Go supervisor might want to read the logs of my game servers through journald.
For my purposes I’m not making a generic solution for unknown workloads like your Rust supervisor, which probably helps reduce complexity.
My workstation uses systemd so I can see my supervisor working easily. Real heckin’ neat.
What you’ve stated so far is interesting. I’ve reading through some of your blog content too. I sent a LinkedIn connection request (look for Andrew).
Probing question: knowing what you know do you have any opinions (strong or otherwise) on what a solo dev might want to pursue? Just curious how you respond.
I’m starting to appreciate simplicity away from containers that’s why I’m even exploring systemd. I bet big on containers and developed plenty of skills, especially with k8s. I never stopped to appreciate that I’m partly in the business of making processes run on OSes, and it kinda doesn’t matter if the pid is a container or running ‘directly’ on the hardware. I’ll probably layer it back in but for now I’m kinda avoiding it as an exercise.
E.g. if I’m testing a debug ready build locally and want to attach my debugger, I can do that in k8s but there’s a ceremony of opening relevant ports and properly pointing to the file system of the container. Not a show stopper since I mostly debug while writing testing/production code in dev… But occasionally the built artifact demands inspection.
Questions I imagine a thorough multiplayer solutions engineer would be curious of, the kind of person whose trying to squeeze as much juice out of the hardware specs as possible.
This all probably speaks to my odd prioritization: I want to understand and use. I’ve had to step back and realize part of the fun I have in pursuing these projects is the research.