logoalt Hacker News

RyanODlast Saturday at 5:08 PM0 repliesview on HN

It sounds like you want to learn computer science but aren't planning to become a software developer. I think of this as similar to "I want to learn to play the guitar, but don't want to be professional musician"...to which I say - hell yes, go for it!

We are similar in a few ways. I love to build things and I also spent the early part of my career as a mathematics / computer science teacher (mostly web development...HMTL, CSS, JS). After teaching for six years, I transitioned into business (marketing) and now I'm employed as a website manager where my understanding of high level coding concepts allows me to communicate with our development team, but I'm not actually writing the code (though in most simple situations, I probably could).

To satisfy my need to build things and write code, I work on small, side projects. I recently built a near pixel perfect clone of Frogger with Pygame to better understand game design best practices and leverage ChatGPT for the first time (though, to be clear, none of the code was written by ChatGPT).

My advice to you would be as follows...

1. Try to have a narrow focus so you aren't overwhelmed. Don't go into this with a "I'm going to learn EVERYTHING!" attitude. Have a specific focus.

2. There are a lot of fundamental "best practices" that need to be automatic. Build lots of smaller projects and doing so with a language like Python (so you aren't also wrestling with the idiosyncrasies of the language) is a good approach.

3. Of course continue working. If you aren't planning to be a professional software developer, is there another choice?

4. Use AI, but NOT to write your code. Rather, use AI to critique your work bearing in mind the responses you get aren't always perfect. And sometimes you won't realize that until a month or two later and that's ok.

5. Find others with similar aspirations to partner with so you can hold each other accountable. Going on such a journey alone has always doomed me. With life, family, work, etc, I've never been able to sustain my enthusiasm.

6. Writing some crappy, novice coded little nothing project thing is infinitely better than writing nothing. Movement is critical. Just keep coding. There will be good days and bad days, but don't stop moving.

Feel free to reach out if you want to chat about my experience. As I said, I see a number of parallels. Best of luck!