They're too big of a market to have companies pull out over this. China has even worse conditions for foreign companies and everyone bends over backwards for a chance to sell there. Counter to popular sentiment in US tech circles, as of this year the EU is the world's second biggest economy (beating China to third place).
Their train industry was built on ripping off companies they forced into poor agreements. They have wrecked industries with technological theft. I suppose it’s lawful from the CCP perspective.
Reminds me of one of my managers who said, “Sometimes, you have to let people fail.” It does take a lot of energy to keep some people afloat. My hope has always been they learn to swim as it were, but sometimes it’s just effort better spent elsewhere.
I know one project did not have my involvement and couldn’t have succeeded without my knowledge. They were so bad they would work in questions casually to their actual work.
I started avoiding all of them when I found out management had been dumping on my team and praising theirs. It’s just such a slap in the face because they could not have done well and their implementation was horrible.
> Reminds me of one of my managers who said, “Sometimes, you have to let people fail.”
I often say "Sometimes, you have to let the manager fail."
Some managers don't like being told their ideas won't work. If you refuse or argue, you are seen as the reason his idea failed. I've found what works best with them is to proceed with the work, but keep them informed very frequently, so they can see how things evolve, and will be able to see the failure you had anticipated a long time ago before it is too late.
Then you're seen in a positive light, and he'll separate you from the project failure.
The vast majority of software projects fail. Honestly, I can't remember ever in my career working on a project I really believed in.
Sometimes I do enjoy the challenge of doing the impossible. Turning a doomed project around or at least minimizing damage. I had some where I thought "this worked out but if anyone but me had been in charge, yeah this would have been a disaster". That feeds my ego. Though I never ever get any thanks from management or any praise. Though this is more of a German culture thing.
There is a reason why burn out is so high in software dev. You are set up to constantly fail. If you succeed against all odds you get more and harder work until you fail.
You got to focus on yourself and find joy in the little challenges. Don't fret over things that you can't change.
That's insane. I think about 80%+ of the projects I see attempted succeed in at least some limited fashion. Even the failures in retrospect produced some insight into the right way forward and were necessary as part of research.
The one time a project was heading to failure I went to the VP and explained the sabotage I was seeing. This was a very lucrative contract and failure was not an option.
He pulled that manager and his team so far off they had a new office on the moon. They were pulling non-sense like submitting the pseudo code I white boarded as a commit.
Two weeks in and I’m still explaining to them the plan.
Despite the setback I pulled off a mammoth project and strategically moved in devs to areas where they could succeed. If they slowed me down they were given the boot.
It can go many different ways. You can be 110% invested over years building something (and getting paid for it) for somebody who is ultimately incapable of selling it. It fails, womp womp. You can be 10% invested in a pile of crap (and getting paid for it) for a company that's simply checking the boxes. It fails, womp womp. You can be 90% invested in an ill-conceived idea that actually turns out great (to spec), but ultimately fails, because it wasn't anything anybody EXCEPT the client asked for. Womp womp again! You can even do everything right, do great work for a client, launch it, it performs exactly as was expected, then 3 months later is wiped from the internet because the marketing campaign is over, and a new quarterly budget came in for the client, and then it's on to the next thing.
All of this stuff can be remarkably ephemeral, farts in the wind even, and all you can do is take pride in what you did when you did it, and then take on the next challenge.
Sounds depressing if you frame it up a certain way, but it's actually really freeing to just give in completely to the process and treat it like the weather: you're gonna get everything from sunshine to rain to snow to hurricanes, and none of it is in your control. Just enjoy it while it's good, and ride it out when it's not! There's always something new on the horizon.
I'd say it happens pretty frequently, when in a medium-large corp or larger. The middle layers don't know what they're asking for, and don't listen to feedback, as a general statement. They're just managers, not managers that are also technical experts.
The paycheck is a big motivation, as is "the rest of the work is enjoyable enough to overlook things I disagree with". Work is rarely 100% aligned with every employee's thoughts, so I think this is actually normal. Not ideal, obviously, but normal.
It's why a hierarchy actually does make some sense - alignment is rarely perfect, so choosing a single path and saying "everyone needs to get on board, that's why we pay you" can in fact be better for everyone, rather than bikeshedding everything to death. It can and very frequently does cause rather obvious severe problems, but it's capable of improving some things.
I've been at my current company for ~4 years. Every January the upper management folks kick off the same project and every year it dies in the planning/discussion phase. Maybe one or two other "big" projects or initiatives will "start," but it's always the same: lots of meetings between the managers without the engineers or designers, lots of hype about the "big project," meetings start to get delayed, roadmaps and plans never materialize, then people stop talking about the project altogether. Sometimes I buy into the hype because I believe in the projects, other times I try to point out issues/risks. Either way the engineering team as a whole is always ignored.
What keeps me motivated is doing what I can for the people who _actually appreciate_ what I do. I work in manufacturing and spend a lot of time talking to the people on the factory floor. There's nothing better than hearing about their struggles and then a few days or weeks later coming back to them with "Hey, I heard you saying you're having an issue with X, so I made Y. Want to try it out and see if it makes things easier?" And then when they stop by my desk to say "Hey sibit Y is awesome!". That makes the job just tolerable enough to not leave.
> I work in manufacturing and spend a lot of time talking to the people on the factory floor.
Before the pandemic, I used to work doing software for a manufacturing startup and _loved_ that part of it.
I loved hacking something up for the folks on the floor that helped them automate some tedium. They were always so appreciative, not just of the result but also the attention we paid them.
Most of them came from "traditional" manufacturing backgrounds and the way they told it, it was like we were the first software people to ever pay attention to them and the issues they were experiencing.
We weren't even building crazy stuff for them. Most of it was pretty simple, but the bar was _so low_ they were always amazed whenever we were able to give them _anything_ that helped. It was awesome.
We the unwilling, led by the unknowing, are doing the impossible for the ungrateful. We have done so much, for so long, with so little, we are now qualified to do anything with nothing.
"Fulfilling" work is a rarity afforded by a fairly unique time and place in history. For the rest of us, work is a means to an end and ideally a fulfilling life outside work lets you keep plugging away on some rich idiot's hare brained scheme so you can keep living that fulfilling life outside work. 12 years in and I've not had a single project I worked on reach its own benchmark for success. No fault of mine, just the wrong ideas at the wrong time and place. A day late and a dollar short, all those other euphemisms.
Years ago I was very peripherally involved in a large project for which everyone in the trenches, so all the devs working on it, knew it could never work. Heck, even the sales guys could explain, with technical justification, why it wasn't going to work. But they were getting paid, and jobs weren't exactly readily available at the time, so they all slogged on until eventually it failed as predicted. AFAICT it was a frog-boiling thing, it was easier to stay, and keep getting paid until the money ran out, than to stick your neck out and point out that there was a problem.
> I can’t imagine holding a job where I had to do work that I expect will fail. Sounds absolutely depressing. What keeps you motivated?
The paycheck. I had never expected work to NOT be depressing by definition, though. The only reason I'm working on what my employee wants me to is because I can't afford to live otherwise. They'll get the minimal effort needed for me to not get fired, but not a single minute more.
Every software has bugs. The best course of action to avoid introducing into they world yet another piece of buggy software is to never write any software. But nobody pays for not writing software. Then writing software that will completely fail is the next best thing. You don't introduce into the world another piece of buggy software, but you can write the software, which is fun and rewarding and also get paid.
I'm always delighted if the software that I wrote ends up on virtual scrap heap.
I kept being motivated by frustration and anger. But also, once it starts to be visibly failing and everyone sees the situation, you can actually help and make a change.
But since 2008, I’ve always “kept my running shoes around my neck”. I’m always prepared to get a new job when the pay/bullshit ratio is going in the wrong direction.
What I've learned is that most people are very emotionally immature.
This strategy is one that I would expect to work on children, not adults. But it does actually work, I know because I've done it too.
It shouldn't be the case that criticism and compromises are seen as attacks. Everyone wants to succeed, so just help each other succeed. But it's never that easy.
Letting people fail and letting projects fail seem fairly different to me (at least for large projects).
There have been a bunch of times in my career where I've allowed people under me to "fail". Often times, an individual failing at something is just not that expensive; while being highly educational. Sometimes, it turns out that there approach actually worked, and we as a group gained a new bit of institutional knowledge.
> When executives fail, unfortunately, they don't blame each other. They do postmortems, then hire consultants to layoff senior engineers.
Forced executive churn has been higher than for individual engineers at a lot of my past jobs. Especially for disciplines like marketing/advertising/sales.
Letting people learn the hard way is a risky endeavour because you have to trust they’re aware of themselves, and they’re not coasting on your support.
Gotta accept that a likely outcome is that they do fail and they don’t learn and you have to let them go. But if you tried to support them beforehand, did what you could, at least you can have a clear conscience.
> Reminds me of one of my managers who said, “Sometimes, you have to let people fail.”
Yup -- I've learned a lot from my failures. Far be it for me to deny others that experience. Assuming their failures won't result in the company imploding or other serious harm, of course.
Repairing the QC 35 was not difficult. It’s just a shame it requires soldering on a new battery pack. Even the drivers are replaceable with that little tool. A few years ago I gave mine an affordable overhaul with a new battery and replaced the earmuffs. Right as rain now.
Thee noise cancellation was unmatched several years ago. I picked up mine because we were spending hours in the data center. Suddenly we could work and take calls in that hell. I still have those, but the AirPods have taken their place on flights. It’s just less to bring with me.
The rest api was taken apart years ago for my old Sonos. They had originally promised to add AirPlay support later said, “Just kidding. Why don’t you brick it instead.” At that point I was finished with closed ecosystems for audio. At least someone made an AirPlay agent that lives on the home server. That speaker has survived many years too.
Yes/no. Regardless of the code complexity reduction there is still architecture, planning and implementation. Could someone come by and clone my work afterwards? Absolutely. Will they retain customers with only a little understanding of the product or model? Questionable.
reply