Live data from Hacker News

John Carmack: Career Advice

twitter.com

81–90 of 178 posts

Re: John Carmack: Career Advice

#81
post #73

Could this all be summed up to "know your fundamentals"? I get the nuance to the rest of what he says, but I think it still falls under the "know your fundamentals" umbrella.

I think it's more like "learn a useful skill while you're learning the fundamentals, so you can contribute value in the meantime"

Re: John Carmack: Career Advice

#82
post #8

Can anyone elaborate on what Carmack is suggesting here? To specialise in some tool early in your career? Or something else? I don't quite get it. (Or at least I don't get why it would be such a good idea.) Carmack is usually great to listen to, by the way; check out some of his interviews or talks if you haven't before.

Probably not what he intended, but what I gained from his advice is that it's better to deeply understand a project than to just focus on building out features. I often fixate on the latter to the detriment of gaining understanding of the bigger picture. So whereas you could focus on one feature and get it done quicker, if you dive deep and understand more of the bigger system it's part of, you can not only go into features with better conceptual understanding, but you can even understand how changes will relate to other parts of the system and foresee potential consequences.

For any fan of Carmack, Doom (the game), or just video games in general, I recommend reading "Masters of Doom". Carmack's story honestly reads like a programming/general nerd rockstar in the book, and it's a lot of fun. Also helps me understand what kind of personality it takes to be considered one of the best ever at something: for much of his early life, Carmack was essentially awake just to program. His home was basically a mattress and a computer at one point, IIRC.

Re: John Carmack: Career Advice

#83
post #39

John Carmack's path is highly unusual. I highly regard the person but would not take on his experience as career advice.

But his "highly unusual" success is lighting that strikes 5 times in a row. Maybe he's onto something. His lighting strikes consistently in completely different domains too.

Re: John Carmack: Career Advice

#84
Interesting; my strategy has been almost the polar opposite of his ('learn widely', not 'deeply'), and it served me well so far. It's the whole discussion of being a specialist vs. a generalist, to some extent. Do you want to know stuff about a lot of things, or know a lot of things about some stuff?

TBH I also believe in knowing fairly deeply a few areas (you have to have _some_ depth too, not just breadth); but I suspect Carmack is not exactly a narrow-field specialist, with him founding Armadillo Aerospace and all... his knowledge might very well be both wider & deeper than mine :)

Re: John Carmack: Career Advice

#85

Earlier quoted context omitted.

Thanks for the comprehensive explanation! I also find it quite interesting that you mentioned git specifically, because I’ve been going back and forth for the last few days with myself about whether I should spend the rest of Winter Break and next semester (I’m an undergrad with one semester left) learning git internals deeply. So, this felt somewhat validating of the perspective that I should learn about git more de…

You might like to try Write yourself a Git [0] (discussed here previously [1]). YMMV, but I find the best way to learn something deeply is to get hands on. Less of a chance of convincing yourself you understand something that you really don’t. For less of a time commitment, Git from the inside out [2] is a really nice explanation of the internals, from initializing a repo and the files that creates in the .git direct…

Wow, thank you so much for pointing this out!

I know from (my albeit limited development) experience that I definitely retain concepts I’ve encountered via a hands-on approach better, but I hadn’t made the leap to _this_ sort of hands-on approach! I’d just resigned myself to the long slog of trying to get a commit merged into the master branch haha.

Once again, thank you! I’m going to check out both of those resources!

Re: John Carmack: Career Advice

#86
post #70

My advice: 1. Make sure you do what you love to do. 2. Make sure you constantly improve and try to do as good job as is possible. 3. Don't get distracted. In almost any field, there is always need for people who have deep expertise and can do excellent job. It doesn't matter if you are developer or lawyer or a salesperson or actor. If you do world class job, your prospects are good. It is hard enough to do something…

It's really good advice. My career has very little in common with Carmack, but I think I achieved success with the same mentality.

I have non-techie friends who have toyed with learning to code, but they usually get discouraged after a few weeks. I try to encourage and mentor, but it rarely pans out. There's a huge disconnect between what people are taught and how career progression works in the modern world. It's enough of a gap that I struggle to connect "Eloquent JavaScript" or a similar 101 guide with actually getting someone a job.

I'm certain there's a framework out there that could help learn and make a living in an emerging industry (outside of "work your ass off and don't get exploited"), but there's also so much garbage and bad guidance muddying these waters.

Re: John Carmack: Career Advice

#87
post #14

Slightly unrelated: I love that Carmack uses backslash (\) to escape 'EOL' and signify that this will be a thread and not a standalone tweet. Much more programmerly than "1/n" and "Thread".

Anyone who uses Twitter to post threads / long-form content is fundamentally misusing the platform - they should write a blog post (they’re free at Kmart) and link to it in a tweet. I don’t read Twitter threads because of this - how to trust the judgment and opinion of someone who misunderstands the medium they are using to such extent?

Tweet threads are normalised at this point, with support from Twitter as well (using the + button). Besides people are more likely to read a thread than to click through to your blogpost.

Re: John Carmack: Career Advice

#88
post #74
post #17

Earlier quoted context omitted.

The problem is that far fewer people get hired to work on the fundamentals than to operate the current industry-standard tools. Also many of the jobs that require fundamental skills seem to require steep academic credentials (e.g. a PhD from a big name university) that are sometimes more difficult to acquire than knowledge of the fundamentals itself.

I think people misunderstand about the advantages of understanding fundamentals. Yes, very few are inventing new tools, protocols or reimplementing known data structures or hash functions. But the point of mastering the fundamentals is to transform the way your brain thinks when it approaches all sorts of computing problems. It's a framework that allows you to deeply think about the correctness and speed of what you…

Of course fundamentals are invaluable. But a stable career is equally if not more important to most people, I think.

Re: John Carmack: Career Advice

#89
post #20

Earlier quoted context omitted.

I think his argument is fairly simple: 1. Learning (fundamental) stuff deeply is the way to become great. 2. But knowing how stuff works fundamentally at an abstract level (e.g. being able to write your own toy OS) is not directly economically useful (and/or very time consuming to get to that stage). So it won't get you a job. 3. So for starters learn just one thing that people actually use (say git) deeply at a conc…

Thanks for the comprehensive explanation! I also find it quite interesting that you mentioned git specifically, because I’ve been going back and forth for the last few days with myself about whether I should spend the rest of Winter Break and next semester (I’m an undergrad with one semester left) learning git internals deeply. So, this felt somewhat validating of the perspective that I should learn about git more de…

Since you mentioned diminishing returns, stress, and time cost, it sounds like you want to balance practicality with interest. Being frank, don't do it. I'm a software engineer and I have had incredibly talented coworkers, some of whom are the type that everyone goes to for help, who barely know how to use git without a GUI, if at all.

If you want to spend a whole winter break + semester (which is a very valuable amount of time), is there anything else you're interested in that would also line up with your career interests? That might be a win-win for the academic exercise and practical benefit

Post reply on HN