Hey folks,
I’m reaching out because I’ve hit a bit of a wall and I reckon a few brains from this crowd might have the insight I need.
I’ve always been a big believer in learning by doing - give me a real-world problem and a keyboard and I’ll bash away at it until I get the thing working. But I’ve been finding that in my day job, I don’t often get the chance to really experiment. Business needs and project timelines get in the way.
So here’s what I’m thinking. I want to dive into a few short-term, project-based learning adventures where I get to be the architect, the engineer, the QA… you get the idea. I don’t want to start a new business or anything - just want to get my hands dirty and build something from the ground up.
What I’m hunting for are some solid software system specifications. The kind of thing you might get from a client or stakeholder that has enough detail to get going but leaves room for you to make some design and implementation choices. Basically, I want to flex some creative muscle, test out new architectural patterns, and make my own mistakes - and learn from them - along the way.
If you know of any resources, repos, websites, books - anything where I could get my hands on something like this, I’d be super grateful for the heads up. And if you’ve done something similar, I’d love to hear about your experiences and what you learned along the way.
Looking forward to hearing your thoughts and ideas, and diving into this new challenge.
I from time to time do something like what you are looking for, I believe. But I also think that it’s going to be difficult to find those “solid specifications you might get from a customer”.
What I do is to start a project that usually reinvents the wheel, so you know exactly what is needed, and focus on experimenting at different levels as you said: architecture, project management, design, UI, coding, CI/CD, pipelines, quality, etc. You also end up learning a lot about the problem itself.
For me the goal of those projects has not traditionally be to release something and create the next startup, but to experiment and have some fun. In my last project I also tried OpenFastTrack, which is a tool for gathering requirements and tracking their completion in the repository.
It was a lot of fun. Maybe this sounds good to you, and the truth is I have been looking forward to collaborate with others with the same approach, to also introduce the “autonomous team” factor to the experimentation 🙂.
Yes, this is exactly what I’ve been trying lately.
I’m currently working on a Twitter/Reddit clone to test out CQRS and Event Sourcing.
My focus is on making it in a way that moves from a small MVP (make a post) to a full scale clone, in a very “agile” way, e.g. the skateboard > bike > car idea.
BTW, if you want to collaborate on a project, feel free to send me a message 😁