First of: I am 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).
So, every time I'm trying to develop a non-simple application I'm finding I have no idea 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.
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, ...
For example, in a complex text-editor:
- 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
I know how to do the small stuff like actually reading input.I am not looking for the usual design-patterns, refactoring pieces, language tutorials, etc.
What I have tried:
- 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...
Books that have helped me: Modern software engineering, A philosophy of software design.The latter book talks about mentoring lead discussion groups about application coding, that is something I would probably be very much helped by.
Sorry for the long rant, hopefully one of you fine people will have some input.