4 ms·
Allow me to offer a counterpoint. Plenty of great developers blog and give talks while getting things done, you may enjoy post by John Carmack, talks by Sandi M
by ch4s3 10y ago
Allow me to offer a counterpoint. Plenty of great developers blog and give talks while getting things done, you may enjoy post by John Carmack, talks by Sandi Metz, talks by Rich Hickey, talks and books by Carin Meller[1], talks and posts by Vaidehi Joshi[2], Kent Beck, or Dave Thomas or Elixir and Ruby fame[3]. Now, I don't know much about .Net, but in the communities in which I'm involved, the best and brightest are constantly writing, and speaking, and building great things.
[1]http://gigasquidsoftware.com/#/index http://gigasquidsoftware.com/#/index
[2]https://dev.to/vaidehijoshi https://dev.to/vaidehijoshi
[3]https://www.youtube.com/watch?v=5hDVftaPQwY https://www.youtube.com/watch?v=5hDVftaPQwY
- Retric 10y agoPeople you know about != the best. John Carmack is significantly above average, but unlikely to be in the top 1,000 developers world wide. Linus Torvalds is a very good developer, but world class at managing developers. It's a classic catch-22. Self promoters are by definition getting less done, but without that promotion your never going to hear about them, just projects they worked on. Michael Jordan was better in very public ways, the absolute best developer at Verizon, Delta, or the DoD are not spending time competing under spotlights. PS: I am not a great developer, but I have worked with people that would blow your mind. "We stopped testing his code years ago."
- TheRealDunkirk 10y ago> John Carmack is significantly above average, but unlikely to be in the top 1,000 developers world wide. "Don't you blaspheme in here. Don't you blaspheme in here!" /Aretha
- ch4s3 10y agoYou're moving the goalposts here, you originally said "Great developers avoid the beading edge, which let's them get stuff done. They don't give talks or write blog posts..." And great != "the best". I don't even know how you could define the best at programming. So, I listed some great developers. John Carmack's old code was literally in multiple textbooks I had in grad school, software engineering classes taught Beck's essays. If you ask anyone who's ever work with Sandi, they'll tell you she's one of the best in her domain. All of the listed folks are broadly praised by peers and former coworkers. I'm not sure how else to define great. And, on top of that they are all prolific writers/speakers. I would also argue that as a matter of tradecraft, writing material that advances the craft and aides in training the next generation of developers is part of what makes one great. Is there someone in the basement of some 3 letter agency that can unroll a loop better than Carmack, sure I'd bet money there is, but being great is about more than that, IMHO.
- Retric 10y agoI am fine calling someone Great and a Developer without assuming that also makes them a Great Developer. A Developer can be an 'awesome' writer, speaker, teacher, researcher, VC, evangelist, artist, or project manager without being a 'awesome' Developer. Now you can argue about what advances trade craft, but having impact is an extrinsic property not an intrinsic one. A lottery winner was lucky, but luck is not some property they have that's going to influence the next coin flip they do. Similarly your measuring impact not intrinsic property's. Suppose Google chose to spend a billion dollars building a dream team to replace JavaScript with something better. What would the best team they could possibly put together and how much would that resemble the best possible team Blizzard could put together to build Starcraft III. Further out field the department of Energy could possibly put together to simulate fusion reactions. And would anyone make all three lists. PS: I guess my point is in other fields you can have millions of people apply and get to the top 10 in the field. Programming 'Greats' are a lesser thing selected by more than just skill.
- ch4s3 10y agoI'm not so sure you can have millions of people apply and easily get to the top 10. Even if you look at something metric driven like sales, being the best salesperson in the world last year isn't a good indicator of next year's performance. If you think about something more knowledge driven, how would you find the best physicist? The most cited? The most published? Do you grab the most recent Nobel winner? I think even with baseball you might have trouble putting together a definitive top 10. Coming back to whether or not writing well about technical topics indicates ability, I think it's a good proxy. If you can clearly explain how to do a difficult thing well, then you necessarily must be able understand and probably by extension do that thing. Clearly this breaks at some point, but I think it holds true for software development.
- Retric 10y agoIn your baseball example I think you could pick 100 people and then say the top 10 on some criteria are on that list. I don't think we can say the top 10 are on this list of the top 100 for programming or most other professional fields. However, in my mind that does not mean the top 10 are not out their just that we can't rank the field that way. Which does not mean their is not actually 10 best programmers for any given task. Nor does not mean we should pick some proxy and say these people are the top paid and therefore the top 10 are on this list of 100 top paid programmers or something like that. Because, while ranking people like that might be amusing or fun it's simply not accurate which is my core problem with your line of thinking. It basically says I can't get what I want, so I am going to pretend that what I want is what I can get.