Live data from Hacker News

Three Tribes of Programming (2017)

josephg.com

111–120 of 123 posts

Re: Three Tribes of Programming (2017)

#111

This post is nice, but... Rich Hickey and Bret Victor here are squashed into overly simple (and/or wrong) categories whose descriptions go like "the best programs [...] formally prove correctness" and "beautiful code is more important than beautiful UI". Both have been very vocal against these points. Jon Blow is definitely not (just) in category 2. "But one of the reasons his last game (The Witness) took so long to…

+1, I came here to say what you said. Those three categories seem OK as a very rough sketch, but the details in the article feel all wrong.

Re: Three Tribes of Programming (2017)

#112
post #110

Earlier quoted context omitted.

Or things as mundane as discover that a third of your coworkers (even seniors) are so much emotion driven that may as well go back to high school in order to learn how to socialize and be professional avoiding jealousy, envy, unnecessary competence or just plainly learn how to work in team and how to follow some sort of structure in an organization.

unnecessary competence What on earth do you mean by this? It sounds rather like advocating just doing the minimum you can, for the sake of harmony.

I think he/she meant unnecessary competition, rather than competence.

Re: Three Tribes of Programming (2017)

#113
post #110

Earlier quoted context omitted.

Or things as mundane as discover that a third of your coworkers (even seniors) are so much emotion driven that may as well go back to high school in order to learn how to socialize and be professional avoiding jealousy, envy, unnecessary competence or just plainly learn how to work in team and how to follow some sort of structure in an organization.

unnecessary competence What on earth do you mean by this? It sounds rather like advocating just doing the minimum you can, for the sake of harmony.

*unnecessary competition, (cannot edit anymore)

What I speak is about individuals trying to compete against its own team to defeat them in some unnecessary priority rather than collaborate and play all together.

Re: Three Tribes of Programming (2017)

#114
Hmm, thought-provoking. I take issue with this post if it's proscribing all programming into these three camps. Most notably, I'm not sure how important camp #1 is, and I get the sense that there are several separate camps buried in #2 and #3. Another commentator makes the point that there's the smithy tribe, and I think that's a great example. At the end of the day, what it is that the code does seems to be variegated and broad enough that I look at #2 and #3 as two dimensional axes with a huge amount of sub tribes in between. There are definitely parts of #1 there, for sure: I think it's how we got to the current popularity of Python and Ruby, and I also think it's how we got from initial versions of JavaScript to ES6 onwards and TS.

Re: Three Tribes of Programming (2017)

#115

I don't know all of the examples cited, but bringing up Bret Victor in the sentence immediate following "Beautiful code is more important than beautiful UI" surprised me. Up and Down the Ladder of Abstraction is still one of my favorite examples of an interactive webpage, and is beautifully elegant in how it integrates with and supports the text. http://worrydream.com/LadderOfAbstraction/ It's cleanly designed as doe…

Except that I can't scroll the page, because the car-driving illustration at the top hijacks the arrow keys.

Re: Three Tribes of Programming (2017)

#116

Fourth Camp: You are a tinker and a smithy. You build tools for other developers to use. * Source Code: Your code is clean enough for you. Your top priority is thorough documentation and intuitive API design. * Execution: Critical around bottle necks, like large batch processing and build times, otherwise it doesn't matter. Iterate and optimize based on feedback from your devs. * Correctness: The program should funct…

> * UI: Usually not a thing, but when it is, your users are developers and they should be able to figure it out ...

There is still an interface that the developers are using, whether it be command-line based, graphical, an API, or something else entirely. And hopefully it is well-designed!

Re: Three Tribes of Programming (2017)

#118

Earlier quoted context omitted.

>I am a maker. I build things for people to use and maintain. So you're dev ops? Jokes aside, do you really have a passion for maintaining projects? This is something I deeply struggle with and any advice on the subject I would be deeply grateful for. I thought I could deal with it and enjoy a project in the long run if it had no bugs, so I worked on some of the code the internet runs on, where even putting in one bu…

You don't need passion for maintaining projects to have compassion for the people who need to maintain your projects (whether or not that's also you). As you point out, though, some code actually doesn't require maintenance. But at the same time, that's not always the code you think.

[deleted]

Re: Three Tribes of Programming (2017)

#119
post #71

Earlier quoted context omitted.

>I am a maker. I build things for people to use and maintain. So you're dev ops? Jokes aside, do you really have a passion for maintaining projects? This is something I deeply struggle with and any advice on the subject I would be deeply grateful for. I thought I could deal with it and enjoy a project in the long run if it had no bugs, so I worked on some of the code the internet runs on, where even putting in one bu…

> do you really have a passion for maintaining projects? I don't. I have a passion for clearing roadblocks and that means different things at different times. Sometimes that means automation. I think you parsed that sentence in a different way than I intended. I think a legitimate handoff is part of building a tool for someone. We have people who run the gamut from rent-seeking to dropping the mic and walking away.

I did interpret incorrectly. Thanks for the clarification.

Re: Three Tribes of Programming (2017)

#120

I believe this is true in all fields, not just programming. - Tribe 1: the art component wins. - Tribe 2: the science component wins. - Tribe 3: the business component wins. Your life is easier when you belong to tribe 3. I also believe that you can't choose your tribe.

The second tribe sounds more like engineering than science though
Post reply on HN