1. 3

    I see it as the final verdict. The world of 2118 will either be substantially better or catastrophically worse than the one we’re in now. Either we’ll have eliminated most forms of economic scarcity– being “poor” will mean flying to Antarctica or the Moon in the off-season– or we’ll be in some degraded, nearly apocalyptic state. There’s no middle ground.

    We have to overcome corporate capitalism– artificial scarcity, racism and sexism, the valuation at zero of animal welfare and the environment, the massive waste of time that is “work” for most people, and political corruption– and we don’t have a lot of time in which to do it. Gradualism seemed fine (ignoring the human costs of inequality) 100 years ago, but now we have to act. We can vote out a bad president; we have much less control over the global climate. It’s actually not temperatures but wet bulb temperatures that’ll kill us: if those get to 35°C– a typical 35°C summer day has WBT of around 25°C– then we are in bad shape. And once that kind of weather becomes possible– right now it virtually never happens (Persian Gulf an exception) because of thunderstorms, but those derive from temperature differentials rather than absolutes– it will become possible in most of the inhabited world and very few locations will be safe from it.

    1. 3

      Yes, I think of it as humanity’s greatest test. Either we fail to come together on the issue, and fail as a species (because the fact we’re in this situation at all is easily humanity’s greatest failure), or we succeed and overcome the huge challenges in front of us and see incredible progress. It feels like it’s teetering on a knife edge now, but we can’t let ourselves become too cynical about it.

      1. 2

        I believe 2100 will prove the Great Filter hypothesis of the Fermi Paradox

      1. 6

        Finished up with a client so I’ve had a lot of free time to work on my novel, Farisa’s Crossing. I think there’s a good chance (over 90%) of my having it ready for an April 26, 2019 launch. We’ll see where it goes.

        A few job interviews. Really looking for something stable and interesting, although there’s seems to be a very high Planck’s constant (or perhaps I am a small-mass particle) which makes it rare to find both.

        Last week simplified the rule set for Ambition. Going to run some simulations with more realistic players (i.e., more intelligence than “random legal”) to make sure all the changes make sense, although I feel pretty good already.

        1. 1

          Are you looking for an interesting problem space or interesting problems? I am currently working as a developer on a platform for preschool institutions (nurseries, kindergartens, etc.) and while it seems boring on the surface, we have a ton of interesting challenges (also owing to a nice tech team that has a lot of lee-way in technology). If you had asked me 1 year ago if this area would be something I would be working in, I would have said no. Just a thought.

          Book sounds super-interesting. Anywhere to sign-up for a release e-mail or similar notification?

          1. 1

            I’d be interested in talking to your company about their work, for sure. I’m capable as a data scientist, engineer, and manager. I’m in the DC area and can’t move (my wife’s job is here). And I can only work 9–5 (that is, not insane startup hours) because of my writing schedule.

            I’ll reach out privately about the book. I’m going to recruit beta readers (between 10 and 20 is ideal) between now and September (with the book ready by then but a full read “due” in January). The time commitment at an average reading speed is about 1.5 hours per week (it’s a big book; projected WC is 220k, which is the main reason I’ve decided to self-publish it) over 16 weeks.

            1. 1

              Is this brightwheel? The ios app is entirely too chatty, shouldn’t req/resp on every user action.

              1. 1

                No, we are not in the US per se (except for a few “beta” customers), so it’s unlikely you will have come across us - https://famly.co.

          1. 3

            Not technical, but I spent the past couple weeks studying the incel phenomenon, and wrote a couple essays on it: Incel: the Strange Identity That Became a Weapon Against Feminism and The Green Pill.

            In my continuing qust to unite the anti-corporate left and the anti-corporate right, I thought I might have some success showing incels the truth of their predicament– that, in fact, their sorry situation is not the fault of women, but of corporate capitalism leaving them with no sense of esteem or even distraction– but I found the results disappointing. Most of these guys really are hateful extremists, beyond hope. Sad!

            They have energy, but I don’t think it can be redirected in a useful way (i.e., against corporate capitalism) because of their complete lack of insight and their thorough indocrination.

            1. 3

              Finished up a consulting project and looking for something more permanent: either management or R&D role (I live in the DC area).

              Rewriting the first chapter of Farisa’s Crossing to fix timeline issues and make the first 10,000 or so words less confusing without being boring.

              1. 0

                Saw “unicorn” used without irony; popped out.

                1. 1

                  This is a macro problem, too. Technical progress is hard. User-friendliness is hard. It takes research, and it also takes care, and both of those are thin on the ground.

                  We experienced unprecedented growth, almost in spite of ourselves, in the Cold War era. Now, there’s little that’s good about war. Unfortunately, during peace and prosperity, people have a way of becoming stagnant– see our lack of leadership on climate change, for example. When things are good for too long, people tend to take it for granted. During the ’50s and ‘60s, when we were scared shitless of nuclear weapons, the economy grew at 5–6 percent per year. Now, it’s 1–2 percent. Why? Because people would rather have small tax cuts (never mind the huge ones given to the rich) than fund a country willing to pay the costs to actually lead.

                  Though much innovation comes from the private sector– see: Bell Labs and Xerox Parc– the fact is that it ends pretty quickly without a national government holding up the labor market for the top people. In the ’50s and ‘60s, companies had to be doing real technical work to get smart people. These days, it’s an employer-friendly market, and as a result, innovation is nonexistent, and so is care for the user of the product.

                  That’s why everything sucks (technology-wise, “everything sucks” is an exaggeration) and it’s not getting better. Of course, this is a slight exaggeration; software is getting better in spite of our macro failures– just not fast enough.

                  1. 20

                    While I’m not going to argue against their findings per say, you do have to wonder if the drop off in contributors is in large part simply due to the completeness of the wiki. Not that Wikipedia EN actually encompasses all of human knowledge, but that 90% of the low hanging fruit has been plucked already. As time goes on contributions will only become more or more specialized. I don’t think this is a bad thing at all, and I believe actually mimics the growth of software projects.

                    1. 6

                      One should also keep in mind that the bigger and more mature a wiki becomes, contributing becomes a bit more difficult for newcomers, since they either might not know where or whether to add something or they might not be familiar enough with the user’s/admin’s etiquette, thus “scaring” them away from contributing.

                      1. 3

                        I was an editor during 2003–06 and the culture was just toxic but, amazingly, most of the articles (95–99 percent) were excellent, even then. If a topic wasn’t controversial, you’d find something decent. The product itself, I think, has even gotten better. I don’t see a slight decline in the number of editors as necessarily a bad thing, although it will have to bring in new talent.

                        I do think Wikipedia was easier to get into, in 2003, probably because the standard to which one had to write an article to make it fit in was lower. These days, articles tend to have pictures with captions, footnotes, and a lot of other adornments that make the pages better, no doubt, but possibly make the editing process more intimidating. That said, I hope the toxic hostility I encountered in the mid-2000s has abated.

                        1. 7

                          This might be unpopular, but I find articles on controversial topics to be high-quality and well-sourced due to the editing wars those articles endure: If you can’t edit a paragraph into a sloppy form because people are actively monitoring that article to ensure that old fights aren’t starting back up, the paragraphs are going to be pretty tight; similarly, they’re not going to be one-sided because both sides will know the system well enough to start a resolution process when well-sourced material is being kept out.

                          1. 2

                            I don’t edit in particularly controversial areas, but I haven’t found the bar for contributing lately to be all that high. The main way it’s gotten higher is that sources aren’t optional anymore. In the early days it was common to just write a bunch of text without necessarily citing anything, with the expectation that it could be properly referenced later if necessary (more of a classic wiki style of working, like how things were done on the old C2 wiki). Now, if you’re creating a new article, it’s expected you’ll cite some decent sources for it. But like one or two decent sources and one paragraph of text is fine. I create a lot of short biographies of historical figures, and short articles on archaeological sites, and nobody has ever complained about them as far as I remember.

                            1. 2

                              I got interested in unusual architectures in GCC tree and wrote some articles with sources. They were swiftly deleted for “not being notable”.

                              1. 2

                                The notability requirement has always seemed bonkers to me… that made sense in a paper encyclopedia, but wikipedia can have as many articles as it wants…

                                1. 3

                                  Notability is still useful because you have to draw a line somewhere, lest Wikipedia becomes an indiscriminate collection of information.

                                  1. 1

                                    To me, having an upstream GCC port automatically makes an architecture notable (there are only 49 of them at the moment), but Guardians of Wikipedia (TM) seem to disagree.

                                  2. 2

                                    It’s probably to block self-promotion. A lot of people used to write articles about themselves.

                                    In reflection, now that I am borderline “notable”, the absolute last thing I would want is a Wikipedia article about me. There’s likely to be one after my book comes out (mid-2019) and I’m dreading the thought.

                                    1. 2

                                      For currently living people, the standards have been tightened up (especially around sourcing) partly because a lot of people share that view: they’d rather have no article about them than a bad one. The subject still doesn’t get a veto over the article, but there are some interests to balance there. I mean any bad article is bad in some way just because it spreads disinformation. But a bad article about a specific person who’s currently alive, especially if they aren’t even a major public figure, is bad in a more personal way in that it can harm the reputation, job prospects, etc. of that person directly.

                          1. 12

                            I’m a huge fan of Rachel’s writing and her courage; we need to see more of that in this industry.

                            This is true. I can’t give my sources but I have friends who’ve made it into management positions at these companies and that’s exactly how it works, and “yellow” and “red” zones exist. It’s even harder than it sounds, because even if you are an objective X5, you have that much more negative inference to overcome if you’re a 37-month X4.

                            A good manager will track you for advancement, fast enough that this yellow zone stuff is no problem; a bad one will leave you thinking everything’s OK until some [redacted]-sniper on a committee you’ve never heard of PIPs you in the face from 500 meters.

                            Google (as of 2011, so take it with some salt) had a bicameral review system using managerial and peer feedback. You might think that’s a good thing, but it’s strictly evil, and here’s why: for promotion and transfer, it’s an AND-gate; for PIPs and firing, it’s an OR-gate. That is, you need both managerial support and peer recognizability to get anything good– even a lateral transfer– a fault in either one will end you.

                            These companies are calibrated to keep the “Good Germans” happy with perks, but to curb dissent and rule by fear. Stack ranking doesn’t work, in terms of making a workforce more productive; it does remind the peasants that they’re peasants, thereby preventing executives from being challenged or risking loss of face.

                            What these companies don’t talk about is that even Senior and Staff aren’t safe. A five-year Senior engineer isn’t going to be let go because he didn’t make Staff, but if the stock takes a hit and they need a cut list, he’s likely to be on it– and keep in mind that these companies never have an honest layoff; because tech companies are run by dishonest evil shits who’ll throw laid-off workers under the bus to preserve their own reputations, it’s a “low-performer initiative”. And, of course, once you’re 40 or so, no job title will protect you from the little spies who run around to make sure you aren’t “RIP” (retired in place).

                            1. 3

                              I’ve had the theory that they get an excel spreadsheet with all employes sorted by salary, highest to lowest. Start at the top and if no one says “we need that guy” they get cut. That’s tracked with two layoffs now.

                              And, of course, once you’re 40 or so, no job title will protect you from the little spies who run around to make sure you aren’t “RIP” (retired in place).

                              So you’re saying someone 40+ and not productive, that is considered retired in place? I had not heard that before.

                            1. 8

                              Scrum may be the illness; it is more likely an expression of a deeper problem that may be inextricable. Either way, it has pushed more experienced, excellent developers out of the industry than I care to count.

                              Software is the only industry in the world where people above IQ 120 with 5 years of experience (even well above 120, and well above 5 years) have to justify days and weeks– hell, sometimes even hours– of their own working time. No one capable will tolerate that if she can get something else. Scrum is a great way to end up with the Dead Sea Effect.

                              I call Scrum the Whisky Goggles of programming. It turns the unemployable 3’s into marginally employable 5’s, but the 6+ see you as a foolish, dangerous drunk and want nothing to do with you.

                              I also doubt that it will change. It works well enough to get to the next round of funding. Hiring massive armies of mediocre programmers has become “the way it’s done”. Now it’s reminiscent of “Nobody ever got fired for buying IBM.”

                              Those of us in the top ~5 percent, we had our time. It seems to be over, at least in this industry. Some of us will reinvent ourselves as “data scientists” and hope to escape the hell of burndown story points and product “individuals”; some of us will go back to graduate school and either escape into academia or vie for the few remaining R&D jobs that Scrum can’t touch; many of us will just leave and do something else.

                              1. 4

                                I’m going to let out a big secret that I probably shouldn’t about Scrum. I’m going to quote one of your recent posts on medium because I think it is relevant.

                                The one thing that universally turns up when people investigate workplace violence is… not race, not mental health, not disputes with co-workers or management, but exactly that type of “performance management”, which is the euphemism for this sort of psychotic, evil surveillance capitalism. It literally drives people nuts.

                                Where are the managers in Scrum? The answer, there aren’t any. Scrum is sold to businesses as a technique to exponentially increase productivity. However, the this is a lie, a foot in the door technique. The reason the other 95% of IT workers like it is that Scrum is a worker emancipatory movement. No more managers, no more long hours, no more abuse, no more performance management.

                                Scrum is not meant to protect the gifted 5% of engineers who worked privileged environments, who never deal with the kind of abuse other 95% of IT workers have to. It’s was never designed to make life easier for those that already have an easy life. Scrum isn’t meant for the already privileged 5%.

                                You mention high IQ like it’s a good thing. In the words of Alan Kay, high IQ is a lead weight, your viewpoint is everything.

                                1. 6

                                  Software is the only industry in the world where people above IQ 120 with 5 years of experience (even well above 120, and well above 5 years) have to justify days and weeks– hell, sometimes even hours– of their own working time

                                  That’s … not true at all. If you look at jobs done by actual engineers, you’ll see that they routinely have to provide time estimates. In order to make those time estimates, they have to estimate their work to the day and week, even if those detailed timelines aren’t provided to their clients. Even newly-licensed engineers already have 4 or more years of experience, since work requirements are part of the license process. Most people who are engineers have high IQ, because they’re complicated technical fields with nontrivial education requirements. And they all must pass an exam on engineering ethics.

                                  And they provide time, labor, and cost estimates to clients.

                                  Which is much like what we do in software development. We put together estimates in as detailed a way as we can, to provide an overall plan. We tell our customers the overall plan, and we track against our detailed plan so we know if we have to tell the customer the plans have changed.

                                  Actual engineers are currently far better as an industry at providing those types of estimates. If we ever want to mature as an industry, we must improve our ability to estimate our work.

                                  Claiming that we’re above the need to estimate because we’re smart and we have experience misunderstands the need. Being smart and having experience should make us more comfortable and confident providing estimates, rather than less comfortable even being asked.

                                1. 5

                                  Very strong opinions here…

                                  As far as I’m concerned, strong scrum practices would defeat these issues.

                                  Bad tools are not scrum. Lack of ownership is not scrum.

                                  People who try to use scrum as a way to wrap a process around bad ideas will never benefit from it.

                                  Take the good ideas, apply scrum, and most importantly, adapt to what you learn.

                                  1. 38

                                    adapt to what you learn.

                                    Umm. Point 5 and 6 of TFA?

                                    I’ve learnt from seeing it in practice both in my own experience and speaking to many others… The article is pretty spot on.

                                    Ok. Warning. Incoming Rant. Not aimed at you personally, you’re just an innocent bystander, Not for sensitive stomachs.

                                    Yes, some teams do OK on Scrum (all such teams I have observed, ignore largish chunks of it). ie. Are not doing certified scrum.

                                    No team I have observed, have done as well as they could have, if they had used a lighter weight process.

                                    Many teams have done astonishingly Badly, while doing perfect certified Scrum, hitting every Toxic stereotype the software industry holds.


                                    I remember the advent of “Agile” in the form of Extreme Programming.

                                    Apart from the name, XP was nearly spot on in terms of a light weight, highly productive process.

                                    Then Kanban came.

                                    And that was actually good.

                                    Then Scrum came.

                                    Oh my.

                                    What a great leap backwards that was.

                                    Scrum takes pretty much all the concepts that existed in XP…. and ignores all the bits that made it work (refactoring, pair programming, test driven development, …), and piles on stuff that slows everything down.

                                    The thing that really pisses me off about Scrum, is the amount of Pseudo Planning that goes on in many teams.

                                    Now planning is not magic. It’s simply a very data intensive exercise in probabilistic modelling.

                                    You can tell if someone is really serious about planning, they track leave schedules and team size changes and have probability distributions for everything and know how to combine them, and update their predictions daily.

                                    The output of a real plan is a regularly updated probability distribution, not a date.

                                    You can tell a work place bully by the fact their plans never change, even when a team member goes off sick.

                                    In some teams I have spoken to, Scrum planning is just plain unvarnished workplace bullying by powertripping scrum managers, who coerce “heroes” to work massive amounts of unpaid overtime, creating warm steaming mounds of, err, “technical debt”, to meet sprint deadlines that were pure fantasy to start with.

                                    Yes, if I sound angry I am.

                                    I have seen Pure Scrum Certified and Blessed Scrum used to hurt people I care about.

                                    I have seen Good ideas like Refactoring and clean code get strangled by fantasy deadlines.

                                    The very name “sprint “ is a clue as to what is wrong.

                                    One of the core ideas of XP was “Sustainable Pace”…. which is exactly what a sprint isn’t.

                                    Seriously, the one and only point of Agile really is the following.

                                    If being able to change rapidly to meet new demands has high business value, then we need to adapt our processes, practices and designs to be able to change easily.

                                    Somehow that driving motivation has been buried under meetings.

                                    1. 8

                                      I 100% agree with you actually.

                                      I suppose my inexperience with “real certified scrum” is actually the issue.

                                      I think it’s perfectly fine and possible to take plays out of every playbook you’ve mentioned and keep the good, toss the bad.

                                      I also love the idea that every output of planning should be a probabilistic model.

                                      Anyone who gets married to the process they pick is going to suffer.

                                      Instead, use the definitions to create commonly shared language, and find the pieces that work. For some people, “sprint” works. For others, pair programming is a must have.

                                      I think adhering to any single ideology 100% is less like productivity and more like cultish religion.

                                      1. 5

                                        fantasy deadlines

                                        Haha. Deadlines suck so let’s have em every 2 weeks!

                                        1. 3

                                          As they say in the XP world: if it hurts, do it more often.

                                          1. 3

                                            True. It’s a good idea. One step build pipeline all the way to deployment. An excellent thing, all the pain is automated away.

                                            If you planned it soundly, then a miss is feedback to improve your planning. As I say, planning is a data intensive modelling exercise. If you don’t collect the data, don’t feed it back into your model… your plans will never improve.

                                            If it was pseudo planning and a fantasy deadline and the only thing you do is bitch at your team for missing the deadline… it’s workplace bullying and doing it more will hurt more and you get a learned helplessness response.

                                      2. 12

                                        Warning: plain talk ahead, skip this if you’re a sensitve type. Scrum can actually work pretty well with mediocre teams and mediocre organizations. Hint we’re mostly all mediocre. This article wreaks of entitlement; I’m a special snowflake, let ME build the product with the features I want! Another hint; no one wants this. Outside of really great teams and great developers, which by definition most of us aren’t, you are not capable.

                                        Because all product decision authority rests with the “Product Owner”, Scrum disallows engineers from making any product decisions and reduces them to grovelling to product management for any level of inclusion in product direction.

                                        This the best thing about scrum/agile imo. Getting someone higher in the food chain to gatekeep what comes into development and prioritize what is actually needed is a huge benefit to every developer wether you realize it or not. If you’ve never worked in a shop where Sales, Marketing and Support all call their pet developers to work on 10 hair on fire bullshit tasks a day, then you’ve been fortunate.

                                        1. 9

                                          Scrum can actually work pretty well with mediocre teams and mediocre organizations. Hint we’re mostly all mediocre.

                                          The problem is: Scrum also keeps people mediocre.

                                          Even brilliant people are mediocre, most of the time, when they start a new thing. Also, you don’t have to be a genius to excel at something. A work ethic and time do the trick.

                                          That said, Scrum, because it assumes engineers are disorganized, talentless children, tends to be a self-fulfilling prophecy. There’s no mentorship in a Scrum shop, no allowance for self-improvement, and no exit strategy. It isn’t “This is what you’ll do until you earn your wings” but “You have to do this because you’re only a developer, and if you were good for anything, you’d be a manager by now.”

                                          1. 3

                                            That said, Scrum, because it assumes engineers are disorganized, talentless children, tends to be a self-fulfilling prophecy.

                                            Inverting the cause and effect here is an equally valid argument, that most developers in fact are disorganinzed, talentless children as you say, and the sibling comment highlights. We are hi-jacking the “Engineer” prestige and legal status, with none of the related responsibility or authority.

                                            There’s no mentorship in a Scrum shop, no allowance for self-improvement, and no exit strategy.

                                            Is there mentoring and clear career paths in none scrum shops? This isn’t a scrum related issue. But regardless, anyone who is counting on the Company for self actualization is misguided. At the end of the day, no matter how much we would all like to think that our contributions matter, they really don’t. To the Company, we’re all just cogs in the machine. Better to make peace with that and find fulfillment elsewhere.

                                            1. 3

                                              Scrum does not assume “engineers” at all. It assumes “developers”. Engineers are highly trained group of legally and ethically responsible professionals. Agile takes the responsibility of being an engineer right out of our hands.

                                              1. 4

                                                Engineers are highly trained group of legally and ethically responsible professionals.

                                                I love this definition. I have always said there’s no such thing as a software engineer. Here’s a fantastic reason why. Computer programmers may think of themselves as engineers, but we have no legal responsibilities nor ethical code that I am aware. Anyone can claim to be a “software engineer” with no definition of what that means and no legal recourse for liars. It requires no experience, no formal education, and no certification.

                                                1. 1

                                                  True, but why?

                                                  IMHO, because our field is in its infancy.

                                                  1. 2

                                                    I dislike this reason constantly being thrown around. Software engineering has existed for half a century, name another disipline where unregulated work and constantly broken products are allowed to exist for that long. Imagine if nuclear engineering was like us. I think the real reason we do not get regulated is majority of our field does not need rigor and companies would like a lower salary for engineers, not higher. John Doe the web dev does not need the equalivalent of a engineering stamp each time he pushes to production because his work is unlikely to be a critical system where lives are at stake.

                                                    1. 1

                                                      I’m pretty sure that most human disciplines date in the thousands years.

                                                      Nuclear engineering (that is well rooted in chemistry and physics) is still in its infancy too, as both Chernobyl and Fukushima show pretty well.

                                                      But I’m pretty sure that you will agree with me that good engineering take a few generations if you compare these buildings with this one.

                                                      The total lack of historical perspective in modern “software engineers” is just another proof of the infancy of our discipline: we have to address our shortsighted arrogance as soon as possible.

                                                      1. 1

                                                        We’re talking about two different things. How mature a field is not a major factor in regulation. Yes I agree with your general attitude that things get better over time and we may not be at that point. But we’re talking about government regulating the supply of software engineers. That decision has more to do with public interests then how good software can be.

                                                        1. 1

                                                          That decision has more to do with public interests then how good software can be.

                                                          I’m not sure if I agree.

                                                          In my own opinion current mainstream software is so primitive that anybody could successful disrupt it.

                                                          So I agree that software engineers should feel much more politically responsible for their own work, but I’m not sure if we can afford to disincentivate people to reinvent the wheel, because our current wheels are triangular.

                                                          And… I’m completely self-taught.

                                            2. 3

                                              This the best thing about scrum/agile imo. Getting someone higher in the food chain to gatekeep what comes into development and prioritize what is actually needed is a huge benefit to every developer wether you realize it or not.

                                              While I agree with the idea of this, you did point out that this works well with mediocre teams and, IME, this gatekeeping is destructive when you have a mediocre gatekeeper. I’ve been in multiple teams where priorities shift every week because whoever is supposed to have a vision has none, etc. I’m not saying scrum is bad (I am not a big fan of it) but just that if you’re explicitly targeting mediocre groups, partitioning of responsibility like this requires someone up top who is not mediocre. Again, IME.

                                              1. 2

                                                Absolutely, and the main benefit for development is the shift of blame and responsibility to that higher level, again, if done right. Ie there has to be a ‘paper trail’ to reflect the churn. This is were jira (or whatever ticketing system) helps, showing/proving scope change to anyone who cares to look.

                                                Any organization that requires this level of CYA (covery your ass) is not worth contributing to. Leeching off of, sure :)

                                                1. 2

                                                  So are you saying that scrum is good or that scrum is good in an organization that you want to leech off of?

                                                  1. 1

                                                    I was referring to the case the gp proposed where the gatekeeper themselves are mediocre and/or incompetent, and in the case scape goats are sought, the agile artifacts can be used to effectively shield development, IF they’re available. In this type of pathological organization, leeching may be the best tactic, IMO. Sorry that wasn’t clear.

                                              2. 3

                                                I’m in favour of having a product owner.

                                                XP had one step better “Onsite Customer” ie. You could get up from your desk and go ask the guy with the gold what he’d pay more gold for and how much.

                                                A product owner is a proxy for that (and prone to all the ill’s proxies are prone to).

                                                Where I note things go very wrong, is if the product owner ego inflates to thinking he is perhaps project manager, and then team lead as well and then technical lead rolled into one god like package…. Trouble is brewing.

                                                Where a product owner can be very useful is in deciding on trade offs.

                                                All engineering is about trade offs. I can always spec a larger machine, a more expensive part, invest in decades of algorithm research… make this bigger or that smaller…

                                                • But what will a real live gold paying customer pay for?
                                                • What will they pay more for? This or That? And why? And how much confidence do you have? Educated guess? Or hard figures? (ps: I don’t sneer at educated guesses, they can be the best one has available… but it gives a clue to the level of risk to know it’s one.)
                                                • What will create the most re-occurring revenue soonest?
                                                • What do the customers in the field care about?
                                                • How are they using this system?
                                                • What is the roadmap we’re on? Some trade offs I will make in delivering today, will block some forks in the road tomorrow.

                                                Then there is a sadly misguided notion, technical debt.

                                                If he is wearing a project manager hat, there is no tomorrow, there is only The Deadline, a project never has to pay back debt to be declared a success.

                                                If he is wearing a customers hat, there is no technical debt, if it works, ship it!

                                                Since he never looks at the code….. he never sees what monsters he is spawning.

                                                The other blind spot a Product Owner has is about what is possible. He can only see what the customers ask for, and what the competition has, or the odd gap in our current offering.

                                                He cannot know what is now technologically feasible. He cannot know what is technologically desirable. So engineers need wriggle room to show him what can or should be done.

                                                But given all that, a good product owner is probably worth his weight in gold. A Bad One will sink the project without any trace, beyond a slick of burnt out and broken engineers.

                                            1. 4

                                              The distribution of programming talent is likely normal, but what about their output?

                                              The ‘10X programmer’ is relatively common, maybe 1 standard deviation from the median? And you don’t have to get very far to the left of the curve to find people who are 0.1X or -1.0X programmers.

                                              Still a good article! I think this confusion is the smallest part of what he’s trying to say.

                                              1. 6

                                                That’s an interesting backdoor you tried to open to sneak the 10x programmer back into not being a myth.

                                                1. 6

                                                  They exist, though. So, more like the model that excludes them is broken front and center. Accurate position is most people aren’t 10x’ers or even need to be that I can tell. Team players with consistency are more valuable in the long run. That should be majority with some strong, technical talent sprinkled in.

                                                  1. 3

                                                    Is there evidence to support that? As you know, measuring programmer productivity is notoriously difficult, and I haven’t seen any studies to confirm the 10x difference. I agree with @SeanTAllen, it’s more like an instance of the hero myth.

                                                    EDIT: here are some interesting comments by a guy who researched the literature on the subject: https://medium.com/make-better-software/the-10x-programmer-and-other-myths-61f3b314ad39

                                                    1. 5

                                                      Just think back to school or college where people got the same training. Some seemed natural at the stuff running circles around others for whatever reason, right? And some people score way higher than others on parts of math, CompSci, or IQ tests seemingly not even trying compared to those that put in much effort to only underperform.

                                                      People that are super-high performers from the start exist. If they and the others study equally, the gap might shrink or widen but should widen if wanting strong generalists since they’re better at foundational skills or thinking style. I don’t know if the 10 applies (probably not). The concept of gifted folks making easy work of problems most others struggle is something Ive seen a ton of in real life.

                                                      Why would they not exist in programming when they exist in everything else would be the more accurate question.

                                                      1. 0

                                                        There’s no question that there is difference in intellectual ability. However, I think that it’s highly questionable that it translates into 10x (or whatever-x) differences in productivity.

                                                        Partly it’s because only a small portion of programming is about raw intellectual power. A lot of it is just grinding through documentation and integration issues.

                                                        Partly it’s because there are complex interactions with other people that constrain a person. Simple example: at one of my jobs people complained a lot about C++ templates because they couldn’t understand them.

                                                        Finally, it’s also because the domain a person applies themselves to places other constraints. Can’t get too clever if you have to stay within the confines of a web framework, for example.

                                                        I guess there are specific contexts where high productivity could be realised: one person creating something from scratch, or a group of highly talented people who work well together. But those would be exceptional situations, while under the vast majority of circumstances it’s counterproductive to expect or hope for 10x productivity from anyone.

                                                        1. 2

                                                          I agree with all of that. I think the multipliers kick in on particular tasks which may or may not produce a net benefit overall given conflicting requirements. Your example of one person being too clever with some code for others to read is an example of that.

                                                          1. 3

                                                            I think the 10x is often realized by just understanding the requirements better. For example, maybe the 2 week long solution isn’t really necessary because the 40 lines you can write in the afternoon are all the requirement really required.

                                                          2. 2

                                                            There’s no question that there is difference in intellectual ability. However, I think that it’s highly questionable that it translates into 10x (or whatever-x) differences in productivity.

                                                            It does not simply depends on how you measure, it depends on what you measure.

                                                            And it may be more than “raw intellectual power”. For me it’s usually experience.

                                                            As a passionate programmer, I’ve faced more problems and more bugs than my colleagues.
                                                            So it often happens that I solve in minutes problems that they have struggled for hours (or even days).
                                                            This has two side effects:

                                                            • managers tends to assign me the worst issues
                                                            • colleagues tends to ask me when the can’t find a solution

                                                            Both of this force me to face more problems and bugs… and so on.

                                                            Also such experience make me well versed at architectural design of large applications: I’m usually able to avoid issues and predict with an high precision the time required for a task.

                                                            However measuring overall productivity is another thing:

                                                            • I can literally forget what I did yesterday morning (if it was for a different customer than the one I’m focused now)
                                                            • at time I’m unable to recognize my own code (with funny effects when I insult or lode it)
                                                            • when focused, I do not ear people talking at me
                                                            • I ignore 95% of mails I receive (literally all those with multiple recipients)
                                                            • being very good at identifying issues during early analysis at times makes some colleague a bit upset
                                                            • being very good at estimating large projects means that when you compare my estimation with others, mine is usually higher (at times a lot higher) because I see most costs upfront. This usually leads to long and boring meeting where nobody want to take the responsibility to adopt the more expensive solution (apparently) but nobody want to take the risk of alternative ones either…
                                                            • debating with me tends to become an enormous waste of time…

                                                            So when it’s a matter of solving problems by programming, I’m approach the 10x productivity of the myth despite not being particularly intelligent, but overall it really depends on the environment.

                                                            1. 1

                                                              This is a good exposition of what a 10x-er might be and jives with my thoughts. Some developers can “do the hard stuff” with little or no guidance. Some developers just can’t, no matter how much coaching and guidance are provided.

                                                              For illustration, I base this on one tenure I had as a team lead, where the team worked on some “algorithmically complex” tasks. I had on my team people who were hired on and excelled at the work. I had other developers who struggled. Most got up to an adequate level eventually (6 months or so). One in particular never did. I worked with this person for a year, teaching and guiding, and they just didn’t get it. This particular developer was good at other things though like trouble shooting and interfacing with customers in more of a support role. But the ones who flew kept on flying. They owned it, knew it inside and out.

                                                              It’s odd to me that anyone disputes the fact there are more capable developers out there. Sure “productivety” is one measure, and not a good proxy for ability. I personally don’t equate 10x with being productive, that clearly makes no sense. Also I think Fred Brookes Mythical Man Month is the authoritative source on this. I never see it cited in these discussions.

                                                        2. 2

                                                          There may not be any 10x developers, but I’m increasingly convinced that there are many 0x (or maybe epsilon-x) developers.

                                                          1. 3

                                                            I used to think that, but I’m no longer sure. I’ve seen multiple instances of what I considered absolutely horrible programmers taking the helm, and I fully expected those businesses to fold in a short period of time as a result - but they didn’t! From my point of view, it’s horrible -10x code, but for the business owner, it’s just fine because the business keeps going and features get added. So how do we even measure success or failure, let alone assign quantifiers like 0x?

                                                            1. 1

                                                              Oh, I don’t mean code quality, I mean productivity. I know some devs that can work on the same simple task for weeks, miss the deadline, and be move on to a different task that they also don’t finish.

                                                              Even if the code they wrote was amazing, they don’t ship enough progress to be of much help.

                                                              1. 1

                                                                That’s interesting. I’ve encountered developers who were slow but not ones who would produce nothing at all.

                                                                1. 4

                                                                  I’ve encountered it, though it was unrelated to their skill. Depressive episodes, for example, can really block someone. So can burnout, or outside stresses.

                                                                  Perhaps there are devs who cannot ship code at all, but I’ve only encountered unshipping devs that were in a bad state.

                                                              2. 1

                                                                You’re defining programming ability by if a business succeeds though. There are plenty of other instances where programming is not done for the sake of business, though.

                                                                1. 1

                                                                  That’s true. But my point is that it makes no sense to assign quantifiers to programmer output without actually being able to measure it. In business, you could at least use financials as a proxy measure (obviously not a great one).

                                                            2. 1

                                                              Anecdotally, I’m routinely stunned by how productive maintainers of open source frameworks can be. They’re certainly many times more productive than I am. (Maybe that just means I’m a 0.1x programmer, though!)

                                                              1. 1

                                                                I’m sure that’s the case sometimes. But are they productive because they have more sense of agency? Because they don’t have to deal with office politics? Because they just really enjoy working on it (as opposed to a day job)? There are so many possible reasons. Makes it hard to establish how and what to measure to determine productivity.

                                                          2. 3

                                                            I don’t get why people feel the need to pretend talent is a myth or that 10x programmers are a myth. It’s way more than 10x. I don’t get why so many obviously talented people need to pretend they’re mediocre.

                                                            edit: does anyone do this in any other field? Do people deny einstein, mozart, michaelangelo, shakespear, or newton? LeBron James?

                                                            1. 4

                                                              Deny what exactly? That LeBron James exists? What is LeBron James a 10x of? Is that Athelete? Basketball player? What is the scale here?

                                                              A 10x programmer. I’ve never met one. I know people who are very productive within their area of expertise. I’ve never met someone who I can drop into any area and they are boom 10x more productive and if you say “10x programmer” that’s what you are saying.

                                                              This of course presumes that we can manage to define what the scale is. We can’t as an industry define what productive is. Is it lines of code? Story points completed? Features shipped?

                                                              1. 2

                                                                Context is a huge factor in productivity. It’s not fair to subtract it out.

                                                                I bet you’re a lot more then 10X better then I am at working on Pony… Any metric you want. I don’t write much C since college, I bet you’re more then 10X better then me in any C project.

                                                                You were coding before I was born, and as far as I can tell are near the top of your field. I’ve been coding most of my life, I’m good at it, the difference is there though. I know enough to be able to read your code and tell that you’re significantly more skilled then I am. I bet you’re only a factor of 2 or 3 better at general programming then I am. (Here I am boasting)

                                                                In my areas of expertise, I could win some of that back and probably (but I’m not so sure) outperform you. I’ve only been learning strategies for handling concurrency for 4 years? Every program (certainly every program with a user interface) has to deal with concurrency, your skill in that sub-domain alone could outweigh my familiarity in any environment.

                                                                There are tons of programmers out there who can not deal with any amount of concurrency at all in their most familiar environment. There are bugs that they will encounter which they can not possibly fix until they remedy that deficiency, and that’s one piece of a larger puzzle. I know that the right support structure of more experienced engineers (and tooling) can solve this, I don’t think that kind of support is the norm in the industry.

                                                                If we could test our programming aptitudes as we popped out of the womb, all bets are off. This makes me think that “10X programmer” is ill-defined? Maybe we’re not talking about the same thing at all.

                                                                1. 2

                                                                  No I agree with you. Context is important. As is having a scale. All the conversations I see are “10x exists” and then no accounting for context or defining a scale.

                                                              2. 2

                                                                While I’m not very familiar with composers, I can tell you that basketball players (LeBron) can and do have measurements. Newton created fundamental laws and integral theories, Shakespeare’s works continue to be read.

                                                                We do acknowledge the groundbreaking work of folks like Ken Ritchie, Ken Iverson, Alan Kay, and other computing pioneers, but I doubt “Alice 10xer” at a tech startup will have her work influence software engineers hundreds of years later, so bar that sort of influence, there are not enough metrics or studies to show that an engineer is 10x more than another in anything.

                                                            2. 3

                                                              The ‘10X programmer’ is relatively common, maybe 1 standard deviation from the median? And you don’t have to get very far to the left of the curve to find people who are 0.1X or -1.0X programmers.

                                                              So, it’s fairly complicated because people who will be 10X in one context are 1X or even -1X in others. This is why programming has so many tech wars, e.g. about programming languages and methodologies. Everyone’s trying to change the context to one where they are the top performers.

                                                              There are also feedback loops in this game. Become known as a high performer, and you get new-code projects where you can achieve 200 LoC per day. Be seen as a “regular” programmer, and you do thankless maintenance where one ticket takes three days.

                                                              I’ve been a 10X programmer, and I’ve been less-than-10X. I didn’t regress; the context changed out of my favor. Developers scale badly and most multi-developer projects have a trailblazer and N-1 followers. Even if the talent levels are equal, a power-law distribution of contributions (or perceived contributions) will emerge.

                                                              1. 1

                                                                I’m glad you acknowledge that there’s room for a 10X or more then 10X gap in productivity. It surprises me how many people claim that there is no difference in productivity among developers. (Why bother practicing and reading blog posts? It won’t make you better!)

                                                                I’m more interested in exactly what it takes to turn a median (1X by definition) developer into an exceptional developer.

                                                                I don’t buy the trail-blazer and N-1 followers argument because I’ve witnessed massive success (by any metric) cleaning up the non-functioning, non-requirements meeting (but potentially marketable!) untested messes that an unskilled ‘trailblazer’ leaves in their (slowly moving) wake. Do you think it’s all context or are there other forces at work?

                                                            1. 10

                                                              I’m having coffee with a guy who wrote a Final Fantasy VI screenplay. I’m writing my own too. I am hoping we can find common ground and collaborate, because the reason I started writing my own is that I didn’t agree with a bunch of things about his.

                                                              1. 3

                                                                Is this a screenplay in the Final Fantasy VI universe, or a screenplay adaptation of the movie plot? Do you think you have a decent chance of getting it made? Which actor would you want to play Kefka?

                                                                I’m working on a novel, Farisa’s Crossing, that has some FF6 elements/inspirations– female hero, steampunk tech level, and the gradual (over the series) displacement of lawful evil (Gestahl in FF6; Global Company in the Antipodes) with something both more absurd but also inevitable.

                                                                1. 3

                                                                  I can’t help but wonder how many guys played Final Fantasy VI as young men and went on to write stories with women as either protagonists or major supporting characters. Also, which character did they draw upon for inspiration (Terra vs. Celes).

                                                                  Which actor would you want to play Kefka?

                                                                  Jared Leto might work as Kefka, given his turn as the Joker in Suicide Squad. Also, because Heath Ledger is too dead to audition for the role.

                                                                  1. 3

                                                                    In my opinion, FFVI doesn’t have a single protagonist. Terra is more of a blank, amnesiac Macguffin for most of the first half of the game, and Celes just has a few moments here and there. And it’s debatable if it even passes the Bechdel test. I don’t disagree that some characters got more development than others, but I think the authors succeeded in their intent to not give any one character the whole show. For this reason, I think it would work better as a TV series, where you can give each character a chance to shine, their own day in the spotlight.

                                                                    1. 2

                                                                      They could even lure Leto in by putting in the contract that they won’t delete half his scenes. I hear offers like that are harder to come by these days.

                                                                    2. 2

                                                                      He’s doing a screenplay adaptation of the actual story. He’s gotten as far as the end of the floating continent. I’ve gotten as far as writing a pilot episode of just the first few scenes in Narshe, with flashbacks and background events in other locations.

                                                                      I don’t think there’s a snowball chance’s in hell of any of it ever getting produced. Squeenix has already shut down fan attempts such as this one.

                                                                      So, it’s basically a fanfic in screenplay format.

                                                                      But the guy I’m talking to is more optimistic. He’s got some contacts that have spoken with Squeenix and think it could happen.

                                                                      As for casting, I think it would work best with unknowns. I don’t know. That’s too much fantasising for me. I just can’t picture big names being attached to it. It might just end up being an animated adaptation like the recent animated Castlevania adaptation on Netflix.

                                                                      1. 2

                                                                        Btw, is Farisa named after the FFV character? Or is that just a huge coincidence?

                                                                        1. 1

                                                                          Mostly (totally?) a coincidence. I had played FFV a long time ago, but I didn’t have FFV’s Faris in mind when I chose the name. The character first came to me in a dream a few years ago.

                                                                          1. 2

                                                                            Her “real” name is “Sarisa”, but because she can’t pronounce it as a kid, she says “Farisa” and her adoptive family just calls her “Faris”. That’s the explanation in the GBA English translation anyway.

                                                                            1. 1

                                                                              Right. I knew that her name was Sarisa. She called herself “Farifa” in the J2E translation and “Farisa” in some of the EU translations. So… could go either or any way.

                                                                              The name pair Faris (M) and Farisa (F) is Muslim and means “knight”, but Farisa also has African roots meaning “virtue” or “kindness”.

                                                                            2. 1

                                                                              In that case, it could very well have been the FFV character surfacing from your memories. You might find it a nice, introspective exercise to think of your thoughts or feelings about that character and dream looking for where the connections came from. It could also be random.

                                                                      1. 10

                                                                        Related to this, I know someone who got fired because of innocent activity on LinkedIn.

                                                                        I don’t remember his exact dates, but he put something like “June 2009 – November 2010” on LinkedIn and “June 2009 – February 2011” on his CV. He started a new job and got caught in “the lie”, but it wasn’t. His last day of work was in November, but his severance period continued for three months.

                                                                        He did nothing wrong; but he was fired anyway, because his new company didn’t want to be stuck with someone who’d lost a job in the past.

                                                                        It’s an evil world where workers have no power and surveillance of us by employerfolk is ubiquitous and easy. Unless you get into the 0.1% who becomes a YouTube celebrity or a bestselling author, you shouldn’t want any public reputation; it can only hurt you. I realize that there’s some apparent hypocrisy in me, of all people, saying this; but hear it from someone who’s suffered.

                                                                        1. 13

                                                                          I almost lost a job offer because of something like that. I worked for a university group that didn’t really have a “home”. For a while my paycheck came from the associated research foundation, later it came from the University itself. My team/boss/work never changed. I put it as one job on a resume and was called out on it. I had to get a former boss to take a call on vacation to sort it out.

                                                                          Glad I didn’t take that job. When a company gives you a peek into how they do things: believe them.

                                                                          1. 6

                                                                            I’m curious about your opinion of _why? He took the approach of being public, without sharing any details. His success ultimately led to a deanonimzation, reversing everything.

                                                                            I guess the question is: how do you actively participate in conferences, and other valuable learning opportunities without building a public reputation? And, of course is there a way to go back to that? Seems highly unlikely.

                                                                            1. 5

                                                                              I couldn’t tell you to the month when I started/stopped most of my past jobs. Some of them I couldn’t even tell you the year.

                                                                              1. 4

                                                                                I am in this situation right now. I have a number of months of severance, and am still on the payroll, so that I have some time to pack up and leave before I’m fully terminated and my visa invalidated.

                                                                                Had no idea this could be used against me, so thanks!

                                                                                1. 8

                                                                                  Best way to play this is to keep your story, whatever it is, consistent. The thing to remember about HR Mooks is that they can’t tell who’s lying and who’s not, and they assume most people are lying (because, well, a lot of people lie). So, your best bet, if you’re on severance or “gardening leave” is to consistently treat the severance as time you were employed.

                                                                                  1. 1

                                                                                    Definitely agree there, HR stuff can really be eye opening when you realise they’re there for the company rather than the human. I’m not sure how on the wording/employment contracts for severance in the US work but in the UK if you are placed on gardening leave, you are still employed and not able to start at a new place of employment. Which can be great or very stressful depending on your circumstances!

                                                                              1. 2

                                                                                It’s April 2 and the old-style forum is still up.

                                                                                What if the real April Fools joke is that they’ve lost the old code and can’t get the old Lobsters back?

                                                                                1. -2

                                                                                  Here’s my issue: if you’re asking me for an estimate, you’re communicating that what I’m doing isn’t that important. If it were important, you’d get out of my way. A deadline is a resource limit; you’re saying, “This isn’t important enough to merit X, but if you can do it with <X, I guess you can go ahead”. If you ask me for an estimate, I have to guess your X (and slip under it if I want to continue the project, or exceed it if I want to do something else). If that seems self-serving or even dishonest, well let’s be honest about the dishonesty, at least here: estimates are bullshit anyway, so why not use the nonsense game for personal edge? Of course, if you’re the one being asked for an estimate, the system and odds are against you in nearly all ways, and you probably made some career-planning mistakes if you’re my age and still have to give estimates, but never mind that for now….

                                                                                  There are projects that are nice-to-have but not important and might be worth doing, but that aren’t worth very much and therefore should be given resource/time limits from on high. I just don’t want to work on those. If it’s not doing with an open deadline, then assign someone at a lower skill level, who can still learn something from low-grade work. This isn’t me being a prima donna; this is me being realistic and thinking about job security. If having it done cheaply is more important than having it done well, I can (and should be) replaced by someone else.

                                                                                  1. 3

                                                                                    Businesses regularly put resource limits on investments, I don’t see why software engineering salaries are exempt from this.

                                                                                    1. 0

                                                                                      I don’t see why software engineering salaries are exempt from this.

                                                                                      It might have something to do with the fact that the top 5% of us, at least, are smart enough that we ought to be calling the shots, rather than being pawns on someone else’s board.

                                                                                      1. 2

                                                                                        Unless you are literally on the board of a privately held company, you are pawns on someone else’s board. This isn’t hopeless, it’s just being honest with where actual final financial votes are cast.

                                                                                        How “smart” you are doesn’t mean you deserve to call any shots, as much as anyone who owns the company doesn’t deserve to either. Building relationships, managing expectations, cost analysis and collecting requirements are all part of making engineering estimates, and they are tools for you to exert influence over someone who has ownership/authority.

                                                                                    2. 2

                                                                                      What if all work is estimated? These inferences depend on selective estimation.

                                                                                      1. 1

                                                                                        I’ll disagree with you here a bit–I agree with your last paragraph’s approach, but I think you are leaving out a little bit.

                                                                                        It’s worth it to send overqualified engineers into certain projects exactly because they are more likely to know how to fix problems preemptively and because they are more likely to have a narrower distribution on the time taken to achieve the task. If you want something with a known problemspace done correctly and to a guaranteed standard and in a timely fashion, you shouldn’t send people who are still learning.

                                                                                        “This isn’t important enough to merit X, but if you can do it with <X, I guess you can go ahead”.

                                                                                        Unfortunately, this is a lot of business, right? Like, scheduling and organizing coverage and resources for projects often means that, say, a full rewrite would take too many engineers off of customer-facing work, but incremental cleanups are possible.

                                                                                        From the employee side, it is arbitrary, but there is at least a chance of method to the madness.

                                                                                      1. 4

                                                                                        I would love to see this book completed. I think it’d be a great service to the Haskell community.

                                                                                        1. 6

                                                                                          Having spent the last 2 years starting a (Haskell) company, my time for open source is not abundant. If things go well I’ll certainly pick it up again though.

                                                                                          1. 3

                                                                                            I’m with him on this, I’ve just read the first 4 or 5 chapters, but I’m planning to eventually sit down and follow it through, implementing everything. If there is anything we can do (as a community I mean) to help with it, say so! At the very least I can help reporting typos :]

                                                                                            1. 2

                                                                                              That’s completely understandable. I hope the company’s doing well.

                                                                                              1. 2

                                                                                                No rush, we can wait :)

                                                                                                I actually binge-read/reproduced write you a haskell for the last three days.

                                                                                                I really enjoyed it, thanks for writing it!

                                                                                                1. 2

                                                                                                  Wonderful, makes me happy to hear people get some value out of the first manuscript.

                                                                                                  1. 1

                                                                                                    Yep, its quite cool, I learnt a lot. Just being selfish in saying it would be great to have it completed. But I also understand you starting a business and having commitments. So no worries, thanks for all the fish so far!

                                                                                            1. 12

                                                                                              I hadn’t heard about the current, promotion practices before this article. Obviously, not believing it until I hear from more Googlers but it sounds believable given how normal businesses work. I found this one interesting since it’s (a) more a talk than a full-on rant, (b) leads author to understand what business relationship is, and (c) shows how incentives for promotion create some of worst problems in legacy tech. The cartoons were great, too.

                                                                                              1. 26

                                                                                                Yes, this is pretty accurate, both from my time at Google and from past public criticisms like this one from 2010:

                                                                                                What if I tried to design a promotion system to piss off as many employees as possible? What characteristics would it have?

                                                                                                • No pleasant surprises. In other words, you can only be disappointed if you didn’t get a promotion, you can’t be pleasantly surprised by a promotion.
                                                                                                • Create unhappiness by dependence on scarce resources. In other words, gate promotions based on scarce resources so that even people who would otherwise be qualified could become disgruntled through no fault of their own.
                                                                                                • Eliminate accountability from people who make the promotion decisions (e.g., through a committee). That way, promotion decisions can seem arbitrary.
                                                                                                • Ensure that promotions are competitive races between all qualified candidates. This ensures that people who manipulate that packet in such a way as to have the best looking packets will win over people who are trying to get feedback and improve, which is supposedly the point behind all these feedback systems.

                                                                                                When I looked at Google’s promotion system through this lens, I was very impressed. It seemed as though the system was designed to create disgruntled employees out of people who might otherwise be perfectly happy.”

                                                                                                1. 2

                                                                                                  After reading that, I had a thought - promotion schedules are very similar to games, and probably just as likely to be engaging and rewarding. That is - incredibly hit or miss and incredibly hard to perfect.

                                                                                                  1. 3

                                                                                                    In my experience, people who really win at those games recognize that it is, indeed, a game, and go find loopholes in the rules. For example, in medium-large companies, I’ve seen people who optimize for glorious notoriety get promoted much faster than people who optimize for actual quality work and “exceeding expectations”. I’m not the only one seeing that, I even accidentally did that once by becoming super friendly with my direct managers; things went super smooth, I got stellar raises, got promoted extra quick (with not much to show as a warrant for that promotion, frankly). I’m pretty sure I got that promotion by just asking for it and having good standing with my manager.

                                                                                                    I think the “upgrade by committee” might be a way to try and mitigate this kind of stuff, but I’d wager there’s ways around that too. Games have rules, rules have loopholes.

                                                                                                2. 10

                                                                                                  Just wanted to chime in and say thanks for linking this and the tl;dr. I saw this posted on the orange site and skipped it. You posting it here and taking the effort to summarize made me actually read through it - I don’t regret it.

                                                                                                  Great read, well deserved upvote! :)

                                                                                                  1. 3

                                                                                                    Thanks for the feedback. Ive tried to really-selectively bring articles or sometimes comments over here from there that yall will like without having to read all ths fluff. There was a ton of fluff today but worthwhile comments and articles buried in it.

                                                                                                    Now, we have the good article over here, an abstract, and low-noise comment section. That’s how I plan to do them in the future, esp if rant-prone topics.

                                                                                                  2. 10

                                                                                                    I worked at Google. My experience was notably atypical and I wasn’t there for long enough to get a sense of how the promotion system works, first-hand, but what he described rings true and he captured Google culture.

                                                                                                    Corporations in general– I don’t think Google is worse, in this regard, than any other– have a problem whereby they separate work into “male work” and “female work”. The stuff that causes pain downstream but makes the numbers look better and results in brag points one can defend in front of executives is “male work”. The actual upkeep of the business– resolving conflicts, defining culture, helping other people succeed, cleaning up messes, mentoring– is “female work” that executards don’t like to see people spending serious time on.

                                                                                                    OP spent too much time, from the promotion committee’s perspective, on female work that doesn’t directly affect the bottom line.

                                                                                                    I hope it’s obvious that I don’t wish to defend this mentality. In addition to the subconscious misogyny, it’s fascistic and short-sighted.

                                                                                                  1. 2

                                                                                                    Ugh. I hate performance reviews, whether writing or receiving. There is literally no upside. You’re giving HR words that may be used against someone– or against you.

                                                                                                    Feedback should be verbal and direct. You should be able to get a sense of who can handle tough feedback and who might respond better to gentler language. There’s no formula for it.

                                                                                                    As for written feedback and the futility thereof, management knows (or should know) who the high performers are and will reward and promote them. If they get it wrong, there’s nothing you can do as a grunt to change their minds. The only thing that comes from putting stuff in writing and handing it over to management is risk.

                                                                                                    Of course, if you’re a manager, you have to use performance reviews to protect your people so they can focus on their work rather than politics. It’s part of your job. You can’t not write reviews because you don’t like doing it. But reviewing peers is, in my view, inadvisable. If you have something to say, deliver it privately.

                                                                                                    1. 4

                                                                                                      this is an interesting comment! At my job “just don’t write peer reviews” isn’t really something I can do, which is why I wrote this post – this is a small but mandatory part of my job, so how do I handle it when it comes up?

                                                                                                      The only thing that comes from putting stuff in writing and handing it over to management is risk.

                                                                                                      Part of the reason I wrote this post is that I feel like putting negative feedback in writing where I have no idea who will see it is a bit risky! But I feel like writing down positive feedback is a lot less risky, and so my hope is that if I mostly stick to that then the outcomes will be okay, and maybe I’ll even say something useful by accident.

                                                                                                      1. 1

                                                                                                        I’m late to come around to this; I’ve been in Mexico for the past week.

                                                                                                        I agree. Ratting someone out to management is bad form and a way to make a permanent enemy, but putting positive feedback (or even having a conversation with the person about what you should be saying) is not a bad idea. What this ought to be, instead of a way for workers to slag each other (to executives’ benefit), is a way for them to help each other out and build up each other’s stories. If used properly, these tools can be used for good (i.e., in workers’ favor instead of executives’).

                                                                                                    1. 4


                                                                                                      I’m doing a project in C right now. I want it to run on nearly any computer, without requiring a runtime environment. The aesthetic goal is “Just Plain C” (oh, valgrind, how I love thee) so I even wrote my own linear regression routine from scratch. (Numerical precision isn’t terribly important for this application.) It has taken me longer than it would in a higher-level language. I also don’t think it’s likely to be fast, until highly optimized, since I’m using naive data structures when I’d have better tools in a higher-level language (or even C++, with STL). But it’s been a great learning experience.

                                                                                                      C is also useful if you want to go into security, which may be one of the few fields left– corporate “data science” is more often using off-the-shelf ML than it is true innovation– where you can reach 35 and not need to go into management.

                                                                                                      1. 4

                                                                                                        I want it to run on nearly any computer, without requiring a runtime environment.

                                                                                                        The present article misses this point entirely. This along with the closely aligned ability to wrap a c library to call from any other language with an FFI is another strong selling point of c.

                                                                                                      1. 19

                                                                                                        Who Killed The Junior Developer?

                                                                                                        Probably all those senior developers who are stuck doing junior-level work for junior-level pay under junior-level conditions.

                                                                                                        On one team I did most of the mentoring of a junior dev and I felt it was considered less-than the “real” work the other developers did, which later made me reluctant to take on these roles. Yeah, I’m gonna bring gender into it, because I’m a woman and when women take on roles like this they often get pigeonholed into “den mother” stereotypes. That means less prestige and less prestige usually means less pay.

                                                                                                        I’ve been there.

                                                                                                        This isn’t only an issue for women. I’m a man, and when I did “female work” like mentoring juniors and standing up for my reports, it got me in trouble, because I was supposed to do the “male work” (basically, being a prick on behalf of executive man-children, so they can be loved and take credit for the good things, while you push their orders and pretend the shit comes from you). Toxic masculinity is a huge problem in the corporate world, but it’s not only women who suffer.

                                                                                                        I get less of that shit now that I lift. I’m still not an “alpha male”, nor do I especially care to be one, but at least I look it.