HACKER Q&A
📣 bjourne

Is developer skill like physical strength?


I want to know if you agree or disagree with my claim that developer skill is similar to strength or fitness. There is no such thing as "specialist" developers. Someone who is an amazing kernel hacker is most likely also very good at writing Haskell software or Javascript code for websites. The kernel hacker may not know Haskell but could pick up the language in a few weeks and then be productive with it. Conversely, someone who is weak in Javascript is likely also weak in C.

Like fitness. If you can run a marathon you will outperform me, who can barely run one kilometer, on almost any physical activity. Whether it be running, biking, playing football, tennis, boxing, etc. Perhaps in some sports I would have an edge by knowing technique or tactics, but in most your superior fitness would be decisive.

I also think using terms like strong and weak developer is less stigmatizing than good and bad developer. You can get physical strength by lifting weights and developer strength by hacking a lot. My strongest colleagues debugged any system with equal ease; Erlang, Bash, C, Javascript, CSS, you name it. My weakest struggled with all languages and systems. Just my observations from years of work...


  👤 weatherlite Accepted Answer ✓
I think domain knowledge matters quite a lot. The Linux Kernel is beyond just knowing C, C is pretty simple. But Kernel hacking means knowing the Linux Kernel itself, which is very difficult if you want to do it at the high level (write complicated features and not just fixing some simple bugs). But I could say the same about projects like Django or Rails - how successful would Linus Trovalds be if we let him try write a few complicated new features to Rails? He doesn't know the Rails codebase or API, doesn't know Ruby probably, doesn't know web development that much. Even experienced Rails codebase maintainers have difficulties with adding complex features, it is usually a team effort. It's gonna be a lot for Linus to take in - months at a minimum and maybe more. But he is so talented he'll be able to do it for sure, much faster than a normal developer, but it still isn't trivial.

👤 muzani
I think it's the case with everything. I've seen piano players on YouTube just pick up a ukelele in a few hours. I managed to pick up and even interview with Swift with little effort but I've never used it in a real capacity.

JS and C were different though. Someone good in C would have trouble with JS compared to someone who has no experience in either. But learn both, and you'll be good.


👤 platinumrad
> The kernel hacker may not know Haskell but could pick up the language in a few weeks and then be productive with it.

If I recall correctly, Brian Kernighan has mentioned not having a pleasant time with Haskell.


👤 karamazov
It's a reasonable comparison, but it's probably more like being great at a sport: a professional tennis player is not going to become a professional bicyclist with a few weeks of effort.

👤 jimmyvalmer
you will outperform me... on almost any physical activity

Well, every activity except that one, which, if your idle question is any indication, you appear to do furiously.