How I got started
People ask how long this took. Fair question, so here is the real answer.
My first commit was the end of January. That is about six months ago.
It was a to-do list app
The first thing I built was not a Civil 3D plugin. It was a to-do list app for myself. The second was a little monitor that showed me how much memory my machine was using.
Neither one is on this site. Neither one is interesting. That is the point.
I did not know what I was doing yet, and a to-do list is a very forgiving place to not know what you are doing. Nothing depended on it. If it came out wrong I was the only person affected, and I could see immediately that it was wrong, because I know what my own to-do list should look like.
Three weeks of that and I understood the loop. Not the technology. The loop. Describe what you want, look hard at what comes back, say what is wrong with it, repeat.
Then it moved quickly
In one week in the middle of February I built the Autodesk Forma file browser, the field photo tool, the first Civil 3D plugin, and the terrain slope extension.
I want to be careful about how that sounds. It moved quickly because the three weeks before it were spent on a to-do list nobody will ever see. The boring practice is what made the fast part possible.
I built the parking lot tool twice
In May I built a parking lot layout generator. In July I built it again.
The first one worked. You gave it a boundary and it gave you a layout. The problem was that you could not see what you were going to get until you had already committed it to the drawing, so you would generate, look, undo, change a number, and generate again.
The second one has a live dynamic preview. Same idea, completely different tool, and I only understood which tool I wanted after using the wrong one for a while.
That is the part I would tell anybody starting: the first version is how you find out what you actually needed. Not a waste. The specification.
Be Better - Start small.