Another useless project on the Internet
What is it that I’m doing? I’m just going to build a simple application from start to finish. And it really is stupid simple – I’m going to build software for a library. As in physical books that you hold in your hand and use to put yourself to sleep. What a great way to spend my free waking hours, right?
So what do I want to actually learn?
- Domain-driven design (I know, I know, my domain is probably too small… but I have to start with something)
- Distributed architecture
- CI/CD
- Docker containers
- Functional programming (writing in a functional style in C#, then moving on to F# and exploring other languages)
- AWS/Azure comparison
…and whatever else that strikes my fancy and makes sense to do and seems beneficial. This is a whole lot of stuff that I’m getting into. Way too much. Especially for such a mundane thing as an app that manages a library with about 10 books. But I’ve been looking for an “interesting” project idea for a long time, and I was stuck in that phase for ages. It should not have taken me this long to realize that it wasn’t worth the effort and that I needed to prioritize and focus my learning plans.
Why am I even doing this
“Should have” is a phrase I use much too often and almost always in a negative way. Well, I need to do something about this, and this is the first step. I don’t pretend that I know it all, or that I even know all that much.
Why am I doing this? Because, for me, at the end of the day, all the blog posts, StackOverflow posts, podcasts and YouTube videos don’t replace what works the best for me – learning by doing. I’ve been a professional software developer for longer than half of the developers out there, and I am constantly haunted by the feeling that I don’t know nearly enough of all that is going on in the world of software. Yes, I’m probably suffering from Imposter Syndrome…
That first heading isn’t even accurate. I’ve never done something like this. Better late than never, I say. I hope this will be just the first step and not the only step to becoming a better developer and, more importantly, a learner.
Feel free to follow this process of mine in this blog. Feedback from strangers welcome!