← Home About Archive Photos Replies Subscribe Also on Micro.blog
  • Amazon's Silent Sacking

    Justin Garrsion wrote a really interesting article on how Amazon have used their return to office (RTO) policy to quietly lay people off. I heard about while listening to his interview on The Changelog podcast "Amazon's silent sacking with Justin Garrison" which is an excellent interview about the topic.

    A prediction he makes is that AWS will have a major outage in 2024 as a result of these layoffs.

    Many of the service teams have lost a lot of institutional knowledge as part of RTO. Teams were lean before 2023, now they’re emaciated.

    ...

    I suspect there’ll be a major AWS outage in 2024. No amount of multi-region redundancy will protect you.

    There has already been an increase in large scale events (LSE) throughout Amazon , but AWS is so big most customers don’t notice. This is a direct result of RTO and Amazon’s silent sacking of thousands of people.

    Amazon's Silent Sacking (Justin Garrison)

    AWS provides the resources for a surprisingly large portion of the internet that when it goes down, it can cause major problems for other businesses like it did in 2021 and 2023. Netflix wrote about what they learned from an AWS outage in 2011 but their service still went down when AWS did in 2021.

    Amazon used to speak of their "customer obsession" and "customer-centric innovation" but cutting teams in the knowledge that AWS services are going to degrade doesn't seem obsessed by the customer. It looks more like another step on the road to "enshittification" that Cory Doctorow wrote about.

    The fact that a large part of the internet is built on such a fragile foundation is a problem but that isn't the real issue.

    The real issue is how they treat their employees. The stories of how badly they treat their warehouse workers and delivery drivers are common. I know that a software engineer losing their job because they can't or won't go into the office is not the same.

    It's still is a family losing an income. It's someone worrying that they can't make rent or a mortgage payment. It's struggling to find work to replace the salary you lost. Being laid off is hard enough. Pretending that it's a breach of the RTO policy for the company to save face is insulting.

    → 9:17 PM, Jan 17
  • Restoring the Tech Worker's Dream

    I love this video of Cory Doctorow explaining how the dreams of tech workers have changed over the past 15 years.

    https://youtu.be/XwvqecNDHF0

    This topic also appeared in his speech that he gave to Defcon earlier this year.

    Remember when tech workers dreamed of working for a big company for a few years, before striking out on their own to start their own company that would knock that tech giant over?

    Then that dream shrank to: work for a giant for a few years, quit, do a fake startup, get acqui-hired by your old employer, as a complicated way of getting a bonus and a promotion.

    Then the dream shrank further: work for a tech giant for your whole life, get free kombucha and massages on Wednesdays.

    And now, the dream is over. All that’s left is: work for a tech giant until they fire your ass, like those 12,000 Googlers who got fired six months after a stock buyback that would have paid their salaries for the next 27 years.

    We deserve better than this. We can get it.

    An Audacious Plan to Halt the Internet’s Enshittification and Throw It Into Reverse

    If tech workers needed an example of the power they possess at this point in time, they need look no further than what happened at OpenAI when Sam Altman was fired by the board. He would not be the CEO today if the workers had not threatened to leave.

    It's a small example and it will be interesting to see how Altman and OpenAI will react to try and break that solidarity in the future.

    → 12:13 AM, Dec 5
  • Incentives

    I came across this story of Tim Mackinnon recently. It provided a valuable reminder of the importance of looking at your vision of success and how you structure incentives to realise that vision.

    You see, the reason that Tim’s productivity score was zero, was that he never signed up for any stories. Instead he would spend his day pairing with different teammates. With less experienced developers he would patiently let them drive whilst nudging them towards a solution. He would not crowd them or railroad them, but let them take the time to learn whilst carefully crafting moments of insight and learning, often as Socratic questions, what ifs, how elses.

    With seniors it was more like co-creating or sparring; bringing different worldviews to bear on a problem, to produce something better than either of us would have thought of on our own. Tim is a heck of a programmer, and you always learn something pairing with him.

    Tim wasn’t delivering software; Tim was delivering a team that was delivering software. The entire team became more effective, more productive, more aligned, more idiomatic, more fun, because Tim was in the team.

    The Worst Programmer I Know

    There is a concept on sports teams of a glue guy. Someone who isn't a star but provides the foundation for teammates to thrive.

    Shane Battier was the epitome of a glue guy when he played in the NBA. He wrote of what it took on The Players' Tribune. One part that stuck out was:

    One way is by never worrying about looking cool. (Not that I was ever mistaken for cool.)

    I knew my value was helping us notch victories however I could. So there were certain things that I did to ensure that my team was always as prepared as possible. For example, I used to ask really basic questions during film room sessions.

    “Coach, can we run through that last set one more time?”

    “Hold up coach, which direction do I roll out of this pick?”

    “Wait coach, which player is supposed to switch here if the point guard drives?”

    “Sorry, can you run through that set just one more time?”

    Yeah, I was that guy.

    Nobody likes that guy. I know that.

    But there was always a strategy behind why I did it: I always knew that if I had a certain question about a game plan, there was almost always going to be a younger, less experienced player on the team who had the same question but was too intimidated to speak up. Having that question answered could ultimately pay dividends during a game. If the moment of truth comes and that player is prepared, that’s a plus for our team.

    Elite 'Glue Guys' 101 - Shane Battier (The Players' Tribune)

    This is difficult to capture in metrics. It's more of an eye test or a gut feeling. The team plays better when they're on the floor. Sometimes it's providing support for less experienced colleagues.

    If everyone is trying to be a star then the team won't win. Players take possessions off on defence and are disengaged on offence when the ball isn't in their hands. People will look for credit in a win but avoid responsibility in a loss. They will expend time and energy blaming others instead of looking at how to fix the situation. The team will fall apart. They won't reach their goal.

    The incentive of winning a championship provides the opportunity for people to find their role in the collective that will provide the platform for success. The incentive of "I need to put myself in the best position to get a new contract somewhere else" will lead to division and losses. A team full of stars rarely wins. Just ask Kevin Durant, Kyrie Irving and James Harden on their experience on the Brooklyn Nets.

    You won't win a title without stars but glue guys need their flowers too.

    I was also reminded of the Bill Atkinson -2000 lines of code story in Apple from the early 1980s. The story goes that managers decided to track productivity by asking engineers to fill in a form at the end of each week. In the first week of this change Atkinson was working on QuickDraw, a 2D graphics library that he had wrote.

    Bill Atkinson, the author of Quickdraw and the main user interface designer, who was by far the most important Lisa implementer, thought that lines of code was a silly measure of software productivity. He thought his goal was to write as small and fast a program as possible, and that the lines of code metric only encouraged writing sloppy, bloated, broken code.

    He recently was working on optimizing Quickdraw's region calculation machinery, and had completely rewritten the region engine using a simpler, more general algorithm which, after some tweaking, made region operations almost six times faster. As a by-product, the rewrite also saved around 2,000 lines of code.

    He was just putting the finishing touches on the optimization when it was time to fill out the management form for the first time. When he got to the lines of code part, he thought about it for a second, and then wrote in the number: -2000.

    -2000 Lines Of Code - folklore.org

    The idea of using lines of code written as a metric makes sense in a blunt force trauma sort of way. You can use a hammer to open a door when you forget your keys or you could call a locksmith or pick the lock yourself. The first option may be the quickest to route in and may be necessary in some cases. However, you're going to need a new door afterwards.

    Incentives can work in a similar manner. Reward people bugs fixed and there is an incentive to write bugs to fix them later. Track lines of code written and the incentive is to write more code, not better code.

    This is why the story of Twitter engineers printing out their code for evaluation by Elon Musk and Tesla engineers made no sense. I didn't care much about Elon Musk before that point but when I saw that story, my feelings were summed up perfectly in this post on Mastodon.

    Accountability is important and it is important to measure what is and isn't working. Just don't pick the easiest tool you can think of. Pick the right one.

    Take the time to think about how I want my team or company to run. What behaviour do I see providing the most value? How can I reward it so other people will be incentivised to copy it? It's not easy and it will require iterations to make it better.

    It will require trust. That can mean giving your team some time to experiment with different approaches to the work. It's not efficient at the beginning. But it will pay in the long run.

    It won't require bossware or expensive consultants. We know their answers already. Fire people. Hire contractors, preferably from somewhere cheap. Make your service worse for your customers by investing less time and effort into it. Just don't make it so bad that they leave. Buy competitors to lock up the market. If they don't sell, sue them. Cut prices to starve them out. Jack up the prices when they leave the market. If someone offers to buy you, take the money. Don't bother building a business. That's too hard. Take the money and call yourself an entrepreneur. Pretend that you run a business. Write a book.

    → 1:44 PM, Sep 6
  • Welcome to My Blooper Reel

    I'm a fan of Cory Doctorow and I came across this section of his interview with the Changelog podcast.

    https://youtu.be/XGf2yV0T0Y4

    I've started other projects and blogs in the past and have been crippled by perfectionism. Even this blog already has almost 30 draft entries that I can't bring myself to publish.

    I don't know what this is going to be but I'm going to start with the intention that Cory wrote about in The Memex Method that

    Writing for an audience keeps me honest.

    https://doctorow.medium.com/the-memex-method-238c71f2fb46

    If I write to explain what I found interesting about the topic to someone else then hopefully it'll be easier for me to remember in the future.

    This is going to be an experiment. I'm going to blog about things I find important, fun, interesting, cool, whatever. There are going to be mistakes and missteps. I know I'm going to look back in embarrassment at some point in the future but I've lost a lot by not recording these things digitally in the past.

    As Cory writes,

    Cringing at your own memories does no one any good. On the other hand, systematically reviewing your older work to find the patterns in where you got it wrong (and right!) is hugely beneficial — it’s a useful process of introspection that makes it easier to spot and avoid your own pitfalls.

    The Memex Method - Cory Doctorow

    Hopefully there's going to be good times and fun too. Thats's the plan. Let's see how it goes. Like the title says: Welcome to my blooper reel.

    → 2:17 PM, Jul 7
  • RSS
  • JSON Feed
  • Micro.blog