Going From Zero to Implementation: Growing Software and Getting Things off the Ground

Table of contents

Growing Software and Getting Things off the Ground

In the notes page you can see, how "flink-jam" went from a small project idea to an implementation. This is how most of my projects are built and how I work professionally:

My process is roughly this:

Gather sample data. Model the problem in code. Start to build a prototype. Validate the plan. Concentrate on the 95% use cases and label the missing 5% to be manually done by the user. Then extract common logic. Write tutorials on it. Get the people on board.

You have to understand, that my approach to products, projects and programming is to first create lots and lots of chaos, then iterate on the chaos until things become less and less chaotic and then at a point? They start to fall into place.

This approach to Software development is often at odds with larger teams and it's at odds with agile development. SCRUM and other development methodologies require you to estimate all your tasks ahead.

But the thing is: I often don't know how to model the problem yet, I don't know my users and haven't internalized the domain yet. Thus I cannot estimate any of it reliably.

At the moment I am trying to solve this issue by getting team members on board early on in the process and participate. But I've noticed, that it's often way too taxing for younger developers, because I move from A to C to B to E and back to A to understand how to build D.

What's your approach to getting things off the ground?