Live data from Hacker News

Ask HN: How do you manage your personal software projects?

news.ycombinator.com

31–40 of 63 posts

Re: Ask HN: How do you manage your personal software projects?

#31
Here's what I want in my ideal personal code environment.

1. Literate programming

I want to be able to write methods/functions in something like a Jupyter notebook, with text and section headings. This is a great way to both comment the code and to organize to-do lists. I want the text in these documents to have weak ties to the actual code (e.g. have method renaming apply to the text as well.) I should be able to toggle between "plain code" and "Jupyter style" views.

2. Ability to share modules across projects

Did I write some code to make state machines for project A? I should not have to copy paste it to get state machines into project B, I should be able to share the code between them. Something like Visual Studio's shared projects, but less wonky.

3. Audio recording

I suck at writing notes to myself, especially in exploratory code. However, I sometimes find myself thinking out loud. Why not allow recording of the thinking out loud, so I can hear what I was thinking later.

Re: Ask HN: How do you manage your personal software projects?

#32

Trello works pretty well for me. I usually create a new board with 3 columns: Backlog - Doing - Done You create any amount of cards in backlog and as you start to work on something you can leave comments on your status "Started working on live updates, trying to figure out if websockets are better than polling", etc. You can easily forget to update cards so an alternative is to leave comments in your code: ```` def s…

I use Trello as well. It actually helped quite a bit launching my current endeavor, as I picked what as the MVP at the beginning. I had a "For Launch" column in addition to the ones you mentioned. It kept me focused when my brain would've had me work on other things.

I'm doing the same thing but with Asana just because it's what I use daily anyway, using their sections as the types. It's not great but like you said, laying it out in the beginning keeps the scope contained and I can list off bugs I find.

Re: Ask HN: How do you manage your personal software projects?

#33
I use pivotal tracker to record tasks and then prioritise them and work through them.

It's good in that, if I don't work on it for a month or two then nothing changes.

When I start working on something... everything changes and the estimates come forward and it auto-generates the idea of a sprint, spacing work out over coming weeks based on your velocity.

It's nice.

Re: Ask HN: How do you manage your personal software projects?

#34

I use a notebook. One that I write in using a pen. When stopping for the evening/day/whatever I take 5 - 10 minutes to write in my notebook what part of the project is working, what has been changed, open questions, and a list of three things to do next. You can think of it like having a standup meeting with myself :-). When I go back to the project, I thumb back through the pages in my notebook until I find the last…

I agree that pen and paper is the best way to keep notes, logs, etc., and I'd add that I think the second best way is text files. I use text files for my todo list, calendar, journal, and for other similar needs.

In my experience the simplicity of these methods dramatically lowers the cognitive barriers in motivating oneself to keep notes and logs. You'll never have to worry about migrating between platforms or TextFiles, Inc. going out of business. And you can use your own processing tools for editing, scripting, syncing and so on.

Re: Ask HN: How do you manage your personal software projects?

#35
I agree with the predominant two suggestions here: to use Trello, and to do a little more planning up front.

But it also looks like you are having some issues with getting back into the zone quickly, without too much overhead. A trick that writers use is to apparently write an incomplete line at the end of the draft. You can try something similar - depending on your project, this could be something as simple a quick note on something you can do in exactly 5 minutes the next time you set down with some detailed steps if possible (for additional context).

Its just a suggestion, which is unfortunately not backed by personal experience (I have faced other challenges with my side projects but not the one you mention).

Re: Ask HN: How do you manage your personal software projects?

#36
I use notebooks like this commenter: https://news.ycombinator.com/item?id=12549098

Now, I've also researched this for a while. My latest approach was to develop a git-like command line application (named nica) that allowed me to keep notes, track issues, and pretty much manage the project. It works by creating a hidden directory (like git) and the data is stored in JSON files (because I planned on doing web interface. The aim is to include everything related to the project inside the git repo. So you would not need to use a web interface to know the issues of a particular code base. You could do:

    nica issues
and it would print out a list of open issues. Then you'd do:

    nica issue -n 100
and it would open issue #100.

I built it to understand how to move away from commercial services like github while giving devs a way to host their project data online. There is a web server being developed that would provide the ability to pull/push nica data and a web interface. The only problem I had was with conflicts due to how the data was inside the git repo. But I have not spent any time solving it.

Note that I slowed down development because I'm working on another project (V2V, V2I, and V2S communication for automated cars). It is not a commercial or open source project (pure research). Its being written with python and click (library for command line apps by the team behind flask).

Re: Ask HN: How do you manage your personal software projects?

#37
I just have a folder of text files for each project. Even if it's trying out a git project, I'll record the setup process and TODO list as I go in case I need to re-setup the project from scratch at a later time. To maintain a decent SNR and keep my active projects grouped together, I'll have an archived folder and place a project in there when I'm no longer actively working on it.

Re: Ask HN: How do you manage your personal software projects?

#38

I agree with the predominant two suggestions here: to use Trello, and to do a little more planning up front. But it also looks like you are having some issues with getting back into the zone quickly, without too much overhead. A trick that writers use is to apparently write an incomplete line at the end of the draft. You can try something similar - depending on your project, this could be something as simple a quick…

Trello and writing a line are great; I have one extra comment about the line.

Instead of just "not finishing" something, I will do a minor brain dump of what I'm trying to accomplish into a comment or a Trello item in the details field.

Usually when I'm stopping it's because there's a thing that isn't easy to finish, and I've done a lot of thinking about how to finish, but don't have the time to do it. So I write down all of my thoughts on the topic -- sometimes it can run to several paragraphs and sometimes a table or two.

But the next time I pick it back up, I can totally get back into the right mental space quickly. The best part? After a break, even if I have a plan outlined in the comment, I often can immediately see a better solution than the one I was working toward.

On a related point I've been keeping a journal with similar notes in it; I've found this to be extremely helpful for thinking through problems. You've heard of explaining your problem to a rubber duck? Having to not only put the problem into words, but writing those words down, is a great way to get the brain churning -- and a great way to leave a map for yourself later to get back into a project.

Re: Ask HN: How do you manage your personal software projects?

#39

I use a notebook. One that I write in using a pen. When stopping for the evening/day/whatever I take 5 - 10 minutes to write in my notebook what part of the project is working, what has been changed, open questions, and a list of three things to do next. You can think of it like having a standup meeting with myself :-). When I go back to the project, I thumb back through the pages in my notebook until I find the last…

Same but onenote with a tablet and pen, because then I can access it from wherever...

Re: Ask HN: How do you manage your personal software projects?

#40
Use a project management tool (as though you were contracting things out to someone), then occasionally transfer things to it from a notepad or text file (or your memory).

Write down a list of todos or whatever you're trying to do, then write notes next to each as you progress. Usually, once you have a good sense of what you're trying to do (are clear on the details and on what's required to fully implement everything), then it all becomes straightforward.

I'm not sure what else to say, as I usually don't need any "outside assistance" once I'm clear on what I'm trying to do, and essentially just scribble notes wherever is convenient when I need to (when I'd forget otherwise).

Post reply on HN