this post was submitted on 12 Jul 2023
147 points (100.0% liked)

Technology

37746 readers
502 users here now

A nice place to discuss rumors, happenings, innovations, and challenges in the technology sphere. We also welcome discussions on the intersections of technology and society. If it’s technological news or discussion of technology, it probably belongs here.

Remember the overriding ethos on Beehaw: Be(e) Nice. Each user you encounter here is a person, and should be treated with kindness (even if they’re wrong, or use a Linux distro you don’t like). Personal attacks will not be tolerated.

Subcommunities on Beehaw:


This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.

founded 2 years ago
MODERATORS
 

Complex internet services fail in interesting ways as they grow in size and complexity. Twitter's recent issues show how failures emerge slowly over time as relationships between components degrade. Meta's quick launch of Threads demonstrates how platform investments can compound over time, allowing them to quickly build on existing infrastructure and expertise. While layoffs may be needed, companies must be strategic to maintain what matters most - the ability to navigate complex systems and deliver value. Twitter's inability to ship new features shows they have lost this expertise, while Threads may out-execute them due to Meta's platform advantages. The case of Twitter and Threads provides a lesson for companies on who they want to be during times of optimization.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 74 points 1 year ago* (last edited 1 year ago) (3 children)

My favorite phrase in coding is "9 women can't make a baby in a month, but 9 women can make 9 babies in 9 months".

Elon took over and fired so so so many talented engineers saying they were lazy, or incompetant, or whatever excuse he had when he really meant "they cost a lot". Now he's seeing the downside of that.

The phrase means you can't take a project and throw more people at it to make it go faster because there is institutional knowledge that needs to be learned first. You can't take a 9 month long project that 1 person is in the middle of and throw 8 more people at it and demand it gets done in a month, something Elon is really trying to push. Those 8 other people need time to onramp, to learn how the thing is being built, to learn how systems and subsystems all interact. In fact, usually this is a sign of a terrible leader because most of the time projects will slow down while you're trying to onramp all of those other people when at that point it would have just been faster to let the one person finish.

What you can do, as Facebook obviously did, is actually project plan. They said "we need 9 babies, what do you need to get that done?" and they replied "9 people and 9 months". and look how it paid off.

I hope Elon's twitter tanks because of his impulsive short sighted decisions that he thinks are "projects"

[–] [email protected] 39 points 1 year ago (3 children)

@scrubbles My favorite early moment was him firing people based on lines of code written... which of course meant he fired all of his best because the worst programmers write many lines that do less while great programmers write few lines that do more.

[–] [email protected] 16 points 1 year ago* (last edited 1 year ago) (1 children)

The last few months have been me going back and removing code lol. Most of my time is spent reviewing my jrs code now, less even writing my own! But no he very smart for line count = good programming

[–] [email protected] 12 points 1 year ago* (last edited 1 year ago) (1 children)

Wasn't that an old example of perverse incentives? IBM ranked or paid bonuses based on lines of code. In short order, all their code became bloated and inefficient.

This was an old example in the 90's and maybe the 80's, so could have been over of the other OG computer companies (Digital, Sun, HP, etc). Could also be apocryphal. Point is, it's a classic example of dumb management ideas.

[–] [email protected] 10 points 1 year ago* (last edited 1 year ago) (1 children)

i remember a corporate rule came down that we needed something like 70% of all code unit tested for stability.

Damn were our getters and setters rock solid. No errors there. Business logic however...

[–] [email protected] 0 points 1 year ago (1 children)

Well, then the developers committed fraud, as getters and setters generally have very little logic. I'm surprised the code coverage reports failed to show the low coverage... You did have code coverage reports, rright?

[–] [email protected] 0 points 1 year ago (1 children)

Bruh it's a story, not a trial.

[–] [email protected] 1 points 1 year ago (1 children)

I find it a bit obnoxious to claim unit testing is a waste of time and then point to worthless testing of logicless code as proof.

All that illustrates is that worthless tests are worthless. Basically, a tautology. If one wants to convince people that tests are worthless, show how actual test coverage added no value.

The reason most coverage requirements are about 80%, is precisely that testing should not be done on code that has no business logic, like getters and setters.

So, testing the one thing for which tests are worthless is fraudulent behavior and ironically just makes their own jobs that much more painful.

[–] [email protected] 1 points 1 year ago (1 children)

Yes. That was the joke of it all. That a useless business rule that came down made developers more focused on hitting a metric rather than building useful tests. Thank you for explaining my own story to me.

[–] [email protected] 1 points 1 year ago

Aha, well I like to think I would have picked up on the joke if this was an in-person discussion. I've heard that talking point as a serious condemnation of automated unit tests.

[–] [email protected] 10 points 1 year ago (1 children)

Meh, the best programmers are probably somewhere in the middle.

This also depends on what kind of work you're doing.

Writing some frontend with lots of Boilerplate? That's lots of lines.

Writing efficient code that for example runs on embedded systems? That's different. My entire master's thesis code project on an embedded system consisted of around 600 lines of C code, and it did exactly what it should, efficiently.

A better metric to that effect would be the git activity graph. People that do important changes don't commit 20 times a day - they push a commit usually once a day tops to once every 2 weeks

[–] [email protected] 1 points 1 year ago

@uberrice
It's the fact that from what I saw he didn't differ by project, and the fact that better programmers do more with less.

He literally had them print out their code to judge off of. Security engineer tracking down vulnerabilities? Well, since that's just a couple lines of code (if not just characters) after long stretches of testing? Fired for "productivity"

[–] [email protected] 6 points 1 year ago (1 children)

the worst programmers write many lines that do less while great programmers write few lines that do more.

That doesn't sound exactly right. Readability is IMO the most important code quality followed by things like maintainability. Conciseness is a lot further down the list. If I have to use more lines of code or even leave out a little performance optimization for readability, I generally do.

[–] [email protected] 1 points 1 year ago

Great programmers aren't playing code golf.

Their code is naturally smaller because they recognize patterns and understand what should be turned into functions/classes/etc and what should not. There absolutely is a point where cutting out lines of code is a negative, but well structured code just takes so much less code than a mess that that's not what really moves the needle on the metrics.

[–] [email protected] 14 points 1 year ago (1 children)

Hubris aside, Elon will tank because, at Twitter, he seems to be devoid of people who will make things work despite of him. Twitter employees must be giving Musk exactly what he orders and he is seeing the impact of that, since Musk must have thought "a web page... How hard can it be to someone who made reusable rockets?"

[–] [email protected] 3 points 1 year ago

I love that because it's such a cautionary tale about bad leadership. He was toxic towards Twitter for years then bought them and doubled down on shitting on them and calling them incompetent... Of course they hate his guts and maliciously comply now.

[–] [email protected] 4 points 1 year ago (1 children)

Elon’s antics aside, I hope no-one thinks that the amount of developers that Twitter had was needed or even sustainable.

Did he get rid of too many? Definitely. Did he get rid of the wrong ones? Definitely.

[–] [email protected] 7 points 1 year ago (1 children)

It depends on their aspirations.

Did they have too many engineers if all they wanted to do was keep the lights on for their core business? Yes.

Did they have too many engineers if they wanted to have the capacity to deliver more ambitious products and solutions, such as massively scalable live video streams, or social audio, or something entirely new? Maybe not.

[–] [email protected] 1 points 1 year ago (1 children)

Personally I believe their organization was highly bloated to the point of them being unable to reach any new goals with any reasonable pace.

Obviously that’s a highly speculative armchair based assessment and you may take it for what it’s worth, nothing.

But just look at the firing squad that’s been out this winter. Meta/Facebook, Twitter, Google.

Collectively that’s at least around 25k people that have been let go just from those three behemoths alone.

Access to capital was easy and they were simply throwing spaghetti at the wall to see what sticks.

Now that interest rates are higher profitability is suddenly important.

Now they actually have to think about what they invest in and which products deserve to live.

Not that it changes anything for Google, they’ll probably just keep making yet another chat service before killing it off again 3-5 years later after having introduced a few more in the meantime.

[–] [email protected] 1 points 1 year ago (1 children)

Thatsva tidy narrative there. Is there a correlary for the other 140k+ layofffs from the 2nd and 3rd tier tech companies that followed the lead?

Another tidy narrative is that these tech companies, besieged by pesky overworked employees who kept trying to unionize and demanding higher pay, decided to teach them who is in control.

Almost the same time all these "unnecessary" people were let go, these same companies ramped up their H1-b visa hires. Hmmmm, coincidence? Maaaaaayybe! It's odd that some of these firings happened as unionization gained momentum. There was a time when that was illegal.

[–] [email protected] 1 points 1 year ago (1 children)

You mention things I haven’t heard about. Any sources on those?

[–] [email protected] 2 points 1 year ago (1 children)

Sure. Let's see... There's this: Tech Layoffs Likely Pose No Deterrent to Record H-1B Visa Demand

Continued growth in H-1B registrations despite mass layoffs undermines the idea that the demand is based on labor shortages, said Ron Hira, an associate professor of political science at Howard University.

Tech workers willing to rake lower pay

This illustrates how widespread these layoffs are: More than 219,000 global tech workers have lost their jobs this year

In every other industry, hiring continues to be robust, yet pretty much the entire tech industry is in a depression. Why? Even the companies having "weak" earnings last quarter continue to do well financially.

Outsourcing hubs like India to bag 30% to 40% of jobs lost to tech layoffs

Big tech doubles down on union busting as labor movement intensifies

[–] [email protected] 1 points 1 year ago* (last edited 1 year ago) (1 children)

Thanks.

Again though, I think the why’s point back to the same thing.

Salaries in tech in the US has been boosted by ridiculous high demands.

Accountants don’t understand that skills and knowledge is something you pay for and just see that one dev in India costs 1/5 of one dev in the US.

Heck, even I’m cheap compared to the average US devs and I live in Norway.

But why do all these other companies do the same thing? Because they’re bandwagon companies. If FANG does something they’ll do the same.

I also read once that recessions hit the tech industry first, but it also bounces back first.

If that’s correct I have no idea, and I’ve yet to go through a proper recession in my career, but it’s definitely clear that we are busy making one.

All the companies going like “we need to be inflation winners”, I know mine does.

As for outsourcing to India, that always goes in waves. Hard to build good tech there. It’s only cheap in the beginning. Too much instability and job switching.

[–] [email protected] 2 points 1 year ago (1 children)

Note that I have never seen or met anyone who earns more than $160,000 as a developer. That is itself considered a huge sum of money here in the U.S.A. I am in the northeast, and it's the same in the mid-Atlantic.

I think references to 300-600k pay is bullshit - a unicorn presented to make everyone outside the industry think we're priveliged and have nothing to complain about. It's a strawman, a convenient myth.

[–] [email protected] 2 points 1 year ago (1 children)

160k is still a ridiculous amount of money.

In Europe that’s about where they max out.

Fresh out of university in Europe you’ll be lucky to fetch more than 65k, give or take for currency.

Not many that goes over 120k while still retaining a developer title (and job description), but I suppose we’re getting there quicker with the current inflation rates.

[–] [email protected] 1 points 1 year ago

Yep, the reality here is closer to yours. Of course right now one must earn 150k to be able to afford a house, costing on average $400k now for a small house) and most make less than 70k.