This might have been asked many times before, in that case apologies, I'm possibly searching wrong.<p>First of: I <i>am</i> a software developer since many years, in a small company, without very complex applications, sadly no mentors or alike (more developers but we are all in the same situation).<p>So, every time I'm trying to develop a non-simple application I'm finding I have <i>no idea</i> on how to make a thoughtful (or even working) architecture for it. I have several hobby projects stalled because I just don't manage to progress without making an unworkable mess.<p>I realize the question is somewhat open-ended, but what I am looking for might be something like walk-throughs/discussions in REAL semi-complex applications. Something that approches actually designing an application together with a mentor.
Everything goes: books, talks, youtube-channels, podcasts, ...<p>For example, in a complex text-editor:<p><pre><code> - how to read and pass input
- store and update buffers
- where should syntax highlighting happen and where should it be rendered, how is colors passed to renderer.
- How do one design a plugin architecture
- How would one design for multiple GUIs
</code></pre>
I know how to do the small stuff like actually reading input.<p>I am <i>not</i> looking for the usual design-patterns, refactoring pieces, language tutorials, etc.<p>What I have tried:<p><pre><code> - Actually coding, but as I said, I just can't progress on my own.
- Kilo/Hecto editor tutorials, and other projects, I'm unable continue beyond finishing them.
- Reading code, I can't even reason about my own code, let alone others.
- Books, the usual recommended ones, refactoring, design patterns, pragmatic programmer, Domain driven design (can't finish that one), etc...
</code></pre>
Books that <i>have</i> helped me: Modern software engineering, A philosophy of software design.<p>The latter book talks about mentoring lead discussion groups about application coding, that is something I would probably be very much helped by.<p>Sorry for the long rant, hopefully one of you fine people will have some input.