Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

This, a million times.

@caffinatedmonk I can't tell you what to do, but I can tell you what I regret. I regret not learning the boring structure of programming. The general terms and ideas about programming languages, computer science terminology, low-level stuff like kernel and operating system design (and thus hardware design), even some of the math to understand and talk about algorithm efficiency. All of that is necessary once you get a little older and want a really cool, creative job. Most of us put off learning the boring stuff because it never seems as important as the fun stuff you can do now, and then we have to deal with those consequences later in life.

Also, i'd suggest you keep working in open source. There's a lot of professionals and good best practices to be found in open source software. Important stuff that seems to be missing in the code released on HN (another reason to get out now!). Follow the good open source examples, make some cool things or contribute to others' projects, and start building a mini resume out of code you've done.

As more practical advice: you can learn programming languages like .NET, Java, C++, PHP and Python if you want to get crummy corporate jobs that are a dime a dozen. More fun stuff will probably be in some obscure language. Figure out what kind of programming excites you, then look into what kind of projects there are like that out there and what languages and tools they use.

Oh, and for god's sake have some fun. Computers aren't everything. Go outside, climb a tree, read a book, hang out with people. Computers will last forever; youth won't. (Sorry, I know that's off-topic)



Thanks! I have been trying to stay away from structural information but recently I have wanted the contribute to the uofw/uofw project. This project aims to completely reverse Sony's PSP firmware. This requires me to learn MIPS ASM which requires me to learn the structure, general terms and ideas of computer science.

Your last point, about having fun, is a good one. Lately, I have been very busy with school and programming. Between my school work and my programming, almost all of my day is consumed. You have a good point.

Thanks for the advice!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: