Live data from Hacker News

John Carmack: Career Advice

twitter.com

161–170 of 178 posts

Re: John Carmack: Career Advice

#161

Earlier quoted context omitted.

The description of programming is kind really depends on what you are doing: are you building things that all sorts of different systems need to integrate with that you don't necessarily know what the technical specifications of these systems are = unkind are you designing a database schema and writing queries against it = kind are you doing frontend development (or something similar where fast paced change means new…

are you designing a database schema and writing queries against it = kind I worked in a project using MongoDB. Initial implementation was easy and quick to iterate. After a few years when it was evident that it was not sustainable. Two years of painfull effort was required to squeeze out MongoDB. are you doing frontend development (or something similar where fast paced change means new technology, new best practices…

>Any change needs to be done from both ends.

If the change needs to be done on both ends it is probably an integration problem, which I labelled unkind.

The use of the words kind/unkind is probably not well-thought out, because kind implies easy, but there is nothing in the description of the term that means it is an easy thing to do.

Re: John Carmack: Career Advice

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

Here is my interpretation.

Carmack is saying learning something deeply, for example learning all features of a tool, helps in the long run, but in this approach it takes a while to provide value.

An alternate approach is to learn a subset that provides immediate values. In the case learning only the subset of features of the tool that are being used at that time. That's more tractable and allows you to provided immediate value.

He is leaning towards the 2nd approach because first groups of people are opinionated without broad experience.

Elon Musk said something very similar. He said, lets say you need to use a wrench, but if you start from the very basic it would be extraordinarily difficult to start working. Instead you can just starting learn about the wrench and go backward from there. This was you are providing immediate values to the work at hand.

Re: John Carmack: Career Advice

#163

Earlier quoted context omitted.

are you designing a database schema and writing queries against it = kind I worked in a project using MongoDB. Initial implementation was easy and quick to iterate. After a few years when it was evident that it was not sustainable. Two years of painfull effort was required to squeeze out MongoDB. are you doing frontend development (or something similar where fast paced change means new technology, new best practices…

>Any change needs to be done from both ends. If the change needs to be done on both ends it is probably an integration problem, which I labelled unkind. The use of the words kind/unkind is probably not well-thought out, because kind implies easy, but there is nothing in the description of the term that means it is an easy thing to do.

Kind because there is an obvious path forward. Unkind because there is uncertainty over time. In programming there is no objective measures for code quality, cost of maintenance or even productivity of individuals.

I would argue that programming is fundamentally unkind. You can only learn a small fraction of stack and operate on assumptions. It is very hard to learn from other people's experiences as it is hard to quantify complexity. If someone is preaching for microservices you can only understand tradeoffs by having a specific knowledge/experience. That why we have people still using PHP for new projects because they are so entrenched in their local maximum.

Re: John Carmack: Career Advice

#164
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 f…

That was a fantastic read. It pretty much defined my standard for an engineering work ethic. There are other books he played a prominent role in that I enjoined.

Dungeons and Dreamers was a side by side story and contrast between Carmack and Id's path vs Richard Garriot and Origin Systems.

The History of the Future features a much older John Carmack at the top of the industry, joining Palmer Lucky and a team of young entrepreneurs to build Oculus and VR. The entrepreneurial and technical ride is at least as wild as the one in Masters of Doom.

Re: John Carmack: Career Advice

#165
post #94

Earlier quoted context omitted.

Twitter uses a static buffer size of 280 characters to avoid this problem.

I meant the scheme used to indicate it's part of a multi-part message. the 1/n scheme indicates the length of the sequence upfront, whereas the backslash scheme doesn't.

> the 1/n scheme indicates the length of the sequence upfront, whereas the backslash scheme doesn't.

I've seen a variation of the 1/n scheme that literally uses "1/n", "2/n", etc. to avoid specifying the length up front. Usually the end of the sequence isn't indicated in that case.

Re: John Carmack: Career Advice

#166
post #97
post #87

Earlier quoted context omitted.

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.

I have to disagree. More often than not, when I send someone a link to a thread, Twitter decides to show only the first post or few. There's a link to see the rest of the thread but there is zero indication as to whether this link will reveal 1 or 2 or 1,000 further posts. I forget the exact text, but it's something small like "See replies" or similar. A plain link, no icon. For someone unfamiliar with Twitter, this…

> For someone unfamiliar with Twitter, this is completely undiscoverable and it has caused me to no longer send Twitter threads to people I know that aren't on Twitter because of the confusion it causes.

For sharing purposes, you might try using one of the "thread unroll" services to get around this issue.

Re: John Carmack: Career Advice

#167

I’d restate this advice as “be a specialist in several areas, start with one. Don’t be a generalist, while that is sometimes valuable, it’s not always.” It is good advice. I’m doing pretty well in my career at 43 as an individual contributor. Next year I’ll be earning $500k easily (and I don’t live in NY or SF). I started as a coop student out of university which helped me focus on individual specialties. One of my v…

Thanks for sharing, it's so hard to find data on this! If you don't mind sharing more, is that working for a single US company or is it contracting / your own company? I'm at 1/3 of your income but I find it increasingly hard to grow from here. To be honest I wouldn't mind being an individual contributor in the future but I don't see my income raise much more than that (I'm in Europe and I literally don't know anyone…

This is working as an employee at a single US company (I live in Canada). It was total compensation (salary, bonus, annual stock grants). I grew from 1/3 of this 13 years ago though I changed employers several times. Eventually the small raises / bonuses / stock grants kept piling up.

During this period for about 2 years I was an independent contractor and was at around $250k annually (could be higher, but you don’t get paid for vacation, conferences or marketing/sales efforts).

Building a small lifestyle business is another pathway to making a lot of money, though it too tends to take a few years. I have friends that have built niche industry software apps that gives them about $1m-2m a year. Enough to hire staff to keep things running.

Re: John Carmack: Career Advice

#168

Earlier quoted context omitted.

>following the best conferences There are conferences for hash tables?

Yes? Why wouldn't people talk about hash tables at conferences? https://www.youtube.com/watch?v=aXj_DsIx1xs https://www.youtube.com/watch?v=ncHmEUmJZf4 https://www.youtube.com/watch?v=M2fKMP47slQ https://www.youtube.com/watch?v=JZE3_0qvrMg

Talking about hash tables at a conference and a conference dedicated to hash tables wouldn't be the same thing.

Re: John Carmack: Career Advice

#169
post #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 conc…

> "Spring ... will probably harm ... your intellectual development."

I just started some client/contract work with Spring as API/middle, I'm curious about your opinion on Spring especially on this context of Careers. A niche to be avoided?

Re: John Carmack: Career Advice

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

Lightning strikes aren’t evenly distributed on the globe. Carmack is a skyscraper, the average human is a normal tree.
Post reply on HN