Live data from Hacker News

Is a trillion dollars’ worth of programming lying on the ground?

blog.cerebralab.com

181–190 of 350 posts

Re: Is a trillion dollars’ worth of programming lying on the ground?

#181
Another hypothesis: HR at software companies is, most of the time, done not with the goal of increasing the organization's aggregate productivity, but rather with the goal of increasing the organization's saleable assets (or something that shakes out to the same thing, e.g. middle-management acquiring local power relative to their rivals by "hoarding" talented employees through loyalty-building.)

Assume for a moment that acquiring companies don't understand what organizational practices/structures make the companies they're acquiring productive. (If they did, they'd just build an internal team that does things that way.) Assume that, instead, "acquisitions" are basically a feudal transfer of power: a different knight is now collecting the taxes from the serfs, but neither the new nor the old knight understands how wheat is grown. The serfs are a black box, and a fragile one. If they want to continue to bring in taxed wheat, they have to mostly leave the black box to its business, rather than poking around inside it trying to change things they don't understand.

Under this paradigm, you can sell a co-located team to an acquirer, and it'll retain most of its productive value, because it's very easy to just "leave the serfs to their work": you just keep the same people working together in the same office. But you can't really sell a team with mostly-independent foreign subsidiaries to an acquirer, since the process of absorbing those subsidiaries into the corporate structure will naturally (for legal + political reasons) tend to force restructurings of such subsidiaries. The black box would have to be taken apart—and since the acquirer doesn't trust their ability to put it back together in working condition, they just don't want to buy it at all.

As well, a colocated team can be acquihired for the purpose of pilfering specific members of that team for ones' own org, while discarding the rest. This possible use increases the saleable-asset value of such teams. A foreign-subsidiary team cannot really be pilfered in such a way, unless the acquirer happens to also have a foreign subsidiary of their own in the same country, which they'd benefit from transferring the acquired employees into.

Re: Is a trillion dollars’ worth of programming lying on the ground?

#182
It's very difficult to know the output of an individual, but often straightforward to measure the output of a team. If a team creates some complete mobile app, you can know exactly how much it cost, and roughly how high quality it is.

The most successful outsourcing group I worked with was in India. I did some math at the time and estimated that overall, they were about as productive as the US per dollar spent.

That hints that the market roughly optimized correctly. Of course, there was a huge diversity of productivity between individuals in both groups, but the management had no real idea how to evaluate that (if they had, they would have paid people quite different amounts).

Re: Is a trillion dollars’ worth of programming lying on the ground?

#183
post #8

This is an odd analysis, because as it highlights, salaries are strongly correlated with wealth of the country. So the question really becomes, not why are salaries different, but "why is programming difficult to offshore". If programming was easy to import and export then either salaries would even out or, more likely, would be relocated to cheaper countries like many kinds of manufacturing. But software is difficul…

Turns out, the hard part of software is figuring out what to build. The rest is cheap in comparison, whether done in SF or Bangalore.

I think the hard parts are:

1. figuring out what to build

2. for non-trivial/long-lived projects, figuring out how to build it in a way that makes scaling, iteration, and maintenance something other than a total nightmare. (of course, many projects are one-off projects that don't need to be engineered for the long haul)

Re: Is a trillion dollars’ worth of programming lying on the ground?

#184

Interesting switzerland is mentioned, there does seem to be a shortage of programmers here, our company recruits a sizeable chunk from abroad. Also, if you search in a local language, especially german, there are a lot of open positions, where fluent command of the local language is required.

Higher education is a pretty low percentage of the population in Switzerland, so I'd say it's not surprising given the number of high technology companies.

As far as I know, some specialisations are simply not found at all (e.g. aerospace engineering).

But it's all over the economy really, Switzerland is really reliant an foreign labour. Just have a look at construction or healthcare.

Re: Is a trillion dollars’ worth of programming lying on the ground?

#185

My take: 1. Software industry is partially an oligarchy. A few companies make a huge amount of money. A large amount of companies make less but still a sizeable amount of money. 2. The amount of developers needed in the really wealthy companies is limited. The wealthy companies don't need to compete that much for talent but they also don't need to keep down the salaries that much. 3. There is a cost associated with d…

Typo: The wealthy companies end up in a few places and don't have a limited interest in diversifying geographically. -> The wealthy companies end up in a few places and have a limited interest in diversifying geographically.

Re: Is a trillion dollars’ worth of programming lying on the ground?

#186
post #13

It seems to be missing a very big factor: culture. If your goal is to implement some code for, say, healthcare, it is a lot easier to explain the business process to someone who is already familiar with how stuff is done on a higher level. Whenever you hire someone from a different culture / country, you need to start from the basics by explaining the very core of your society. An American programmer might not be too…

Another aspect of culture: how one-sided the communication is. Silicon Valley and Scandinavian cultures are very flat, so it is possible for "the man on the floor" to tell management that it doesn't work to put diesel into a gasoline car. In authoritarian cultures this would be a mistake as it's seen as embarrassing the management by saying they made a mistake. If you want to continue being employed then it is much b…

I think this is a massive problem, and it produces just bizarre situations. Flat cultures produce weird side effects (you can have a stalemate that shouldn't exist) but extreme-status-hierarchy cultures just produce an entirely different level of crazy.

Years ago (not my current employer), there was a big offshore team that was a huge pain in the neck because their entire development culture was one of deception and defensiveness - they'd deliver garbage but then spend enormous amounts of energy managing up and propagandizing to their reporting chain and executives that everything was finished, high-quality, etc.

One of the security teams practically begged for someone to help get this team to fix the bugs they were filing. The other team was straight up closing pretty much anything they could as "incorrect" reports or classifying all the bugs as ultra-low severity (which is basically "will not fix") so that their metrics stayed perfect. Lots of issues like this. When they were challenged on it from the outside, by one of the guys who didn't have a sense for the political situation, the best way to describe the reaction goes way beyond "circling the wagons" - they went full nuclear, politically, on that guy. No holds barred, a total nest of vipers. For engineers who have never experienced companies with deep and vicious politics, it's hard for them to understand what it's like at companies like that.

Then one day, one of the best executives at the top of the chain decided that he was going to re-organize his directs and fold these teams together, under someone from the side of the house into which the security team reported.

Now, cultures of managing up are good at reading the waters and so you'd expect that they'd change their tune anyway, and they did, but the part that was shocking to all involved is, as a side effect of the exec shuffle, the security guy above was given an important-sounding but meaningless title, and suddenly the interactions between that organization and the security guy went from a one of subversion, political smearing, etc. to one of absolute and total deference overnight.

The offshore team wasn't any _better_, they were still marginal and you couldn't trust a single thing they said, but the instant attitude change from "defiant, we-are-power-adjacent, you'd better watch yourself" to "oh XXX, we're helpless, nothing can be done, yes we will try but.." due to what was essentially the change of a string in a database somewhere was just crazy to observe. Everything went from "that guy is terrible, that guy doesn't know, blah blah' to "yes, oh, XXX is great, we love XXX, he is helping, ..."

Re: Is a trillion dollars’ worth of programming lying on the ground?

#187

Earlier quoted context omitted.

Yes. And how to build it. I worked with a brilliant but rather lazy contractor once. His code was unmaintainable despite him being obviously competent. His rationale was very explicitly that maintainable code doesn't make for good job-security. You don't want to be held hostage by your own code.

> You don't want to be held hostage by your own code. If your code is unmaintainable you become hostage to your own code because making changes breaks things, causes frustration, etc I totally get the idea of job security if you’re maintaining a codebase that only you understand but that is very likely to bite you back quite badly, especially if you’re a contractor: you may not get any new work, the code you write is…

Yeah.

There are obviously times when you can truly "write yourself out of a job." That truly happens.

I think that there are far more times where a transparent and earnest approach to managing technical debt and keeping things maintainable for your clients leads to more work in the long run. Possibly even permanent employment if that's what's desired.

(Of course, this depends entirely upon your communication skills and the client's savvy and receptiveness to such an approach)

Because the usual reality is that any client who needs consulting work in the first place is certainly going to need more of it in the future - maintenance, iterations, new projects, etc.

Re: Is a trillion dollars’ worth of programming lying on the ground?

#188

Earlier quoted context omitted.

Can confirm this is a problematic aspect of our culture. I'm one of the people who's entire professional niche is being the counterweight to this positivism. Endemic to the way things are done is the understanding that forgiveness is often easier to attain than permission, and unfortunately putting your foot down and holding otherwise is rather frowned upon, or at least gets you marked as needing to be handled delica…

I've spent my entire career being told that pointing out problems doesn't help the situation, having these problems blow up and having the same people say they wish they had listened... and being told that pointing out problems doesn't help the situation. I had a real heart-to-heart with the CTO where I worked since he only gets along with one of the managers and doesn't like his directors. He said the only reason he…

>>pointing out problems

That's the first step. Proposing a complete solution that takes in the needs of the various stakeholders and doesn't just move the problem and does so in a way that makes the whole situation easier is the hard part.

If you've done that and nobody is listening, it's time to change the culture or leave.

Re: Is a trillion dollars’ worth of programming lying on the ground?

#189
post #65

Absolutely no swiss programmer is going to Germany, I can tell you that much. The demand is just that much higher than the supply.

I'm sure that's a false statement, there's tons of reasons for people to move out of their country to try something else. Especially considering the amount of opportunity Germany provides compared to Switzerland. Let's say you really wanna find a Haskell job, how easy is that to do in Switzerland?

My comment was mainly aimed at the example in the article, 'bad' developers aren't driven out of the country and since they make a lot more money in Switzerland they have no reason to leave. Yes, it's not literally no one and of course there are always personal reasons or 'that one job' which makes a move worth it.

Re: Is a trillion dollars’ worth of programming lying on the ground?

#190
post #98
post #90

Earlier quoted context omitted.

From an European perspective, this has not exactly been my experience working with an international team. The US collective mentality is sometime overly optimistic specially in public. This is sometimes a positive since it removes almost any inhibition regarding challenges, but it can lead to things blowing-up spectacularly, and then having to put in place hacks and brute force to make it kind of work relatively inef…

In my experience Americans are pretty blunt, and will not hesitate to point out flaws and make cynical jokes about them openly in the presence of their team.

Cynical or sarcastic jokes are arguably the opposite of blunt. They're a way to acknowledge or broach a subject which the person, and most often the group, is uncomfortable or incapable of articulating more clearly. For example, because they're being forced to do the impossible, or because the character, cause, or resolution of an issue is poorly understood.

People from cultures where sarcasm isn't common don't understand this nuance and seem to find this kind of dialogue abrasive and unconstructive. Perhaps the sentiment is that if you can't articulate it clearly, then the issue is non-existent, for better or worse, or you're just being lazy and unhelpful.

Post reply on HN