Live data from Hacker News

John Carmack: Career Advice

twitter.com

11–20 of 178 posts

Re: John Carmack: Career Advice

#11
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.

To me, it’s about being able to bring (direct) added value to a company. Focussing on specific tooling is an example of doing that. Learning deeply is important as well, but it usually brings value to the company on the long term (if at all).

Re: John Carmack: Career Advice

#12
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.

I believe he means that by better understanding the tools, one better understands the trade.

Re: John Carmack: Career Advice

#13
I just need a relationship, being alone for this many decades is poison... I can learn anything but when the profs at my grad program openly didn't care about me WTF was I supposed to do? How do I meet someone to build a relationship now that buoweapons have made it illegal where I live? WTF AM I SUPPOSSED TO DO WITH MY LIFE'S SENSORY INPUT!?!?!

Re: John Carmack: Career Advice

#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".

Re: John Carmack: Career Advice

#15
post #12
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.

I believe he means that by better understanding the tools, one better understands the trade.

True. Learning tools doesn’t have to be a negative thing.

Re: John Carmack: Career Advice

#16
Learn to understand all components around you.

When you actually understand and question everything, you understand why things are how they are and then you are able to just fix the critical things because you acutally understand the system.

After a while the technical deep dive will not matter that much anymore as they become systems, you become a system expert and you only need to look at technical details here and there.

Re: John Carmack: Career Advice

#17
post #5

Tools change, fundamentals don't. I disagree that you should modify what you should learn in order to start contributing as fast as possible to a team. I think that the advice that he gave was a bad one.

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.

Re: John Carmack: Career Advice

#18
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.

He kind of explains it in the following tweets in thread. I think he says more or less:

"I'm usually advocating for undestanding deeply the problem and being an expert in the matter, not in the tools that solve it that come and go quickly. But in reality it's ok to be learn the tool, as it also brings you knowledge on the same matter, eventually. It may not be as comprehensive, but it's still desired. And people who understand tools that solve the problem are also needed and it may fill some real world needs."

I find it very relatable, as I'm kinda doing that at my work. I'm no expert in anything but solve problems very skillfull coders embarrass themselves at. Not that they are dumb. They are smarter than me, more expierienced as well. But they often lack a wider view of the issue, don't take account so many things. The OS in their code, neglect the existance of network, delays, assume weird things about how other software work and so on. The almost always neglect that people just lie sometimes or will fight to death to prove they tested corectly while I know they made trivial mistakes while testing. All people do. I just verify that once more. Sometimes coders ask me (after I help them with an issue) what apps do I code at our company, while I don't code at all. It would take me a year to Hello World using company internal standards. I just troubleshoot a lot. I know options. I read what you guys write here and try to understand what problems you have or don't have when using different aproaches. So I can suggest new ways of debugging, solving issues, simplifying things.

I like my job. Except for the part when developers lie to me, but in general it's a cool job ;)

Re: John Carmack: Career Advice

#19
post #12
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.

I believe he means that by better understanding the tools, one better understands the trade.

You said what I wanted to say but in 5% of my comment length. I would love to speak English that well.

Re: John Carmack: Career Advice

#20
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.

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 concrete level. That is economically useful, because most devs will only have fairly superficial git skills, so you becoming the go-to person for git will provide economic value to the company.

4. At the same time, this is an effective way to bootstrap a more abstract deep understanding. E.g. if you really master git, you will also learn a fair amount of abstract concepts that go beyond the concrete tool (deep understanding of git implies the ability to implement at least a toy version yourself, which will teach you useful stuff; in particular if you can implement your own version of git you are probably already better than 90% of programmers).

5. Be mindful that you will be blinkered at this stage (because you only know a single thing and thus lack a basis for comparison), so don't become opinionated yet.

I think this a great early career strategy as long as you pick the right thing to deep-dive into. E.g. if you picked AspectJ or Agent Learning or CASE tools or the semantic web around 15-20 years ago (at the peak of their hype-cycle), this possibly wouldn't have worked out so hot. In particular, learning some things like Spring or Freudian Psychology will probably harm rather than help your intellectual development.

Making a good pick is hard if you lack experience; I'd say if in doubt pick something really everyone in your line of work uses but most people have not mastered and where there is value in mastery (and you can see how mastery might tie into things you want to learn more about at a fundamental level). Also, preferably pick something that has been around for at least 5 years (unless you are quite confident in your nose for trends).

Post reply on HN