Overspecializing is a huge danger, and it's a constant fight in IT/dev trying to figure out where you need to be next. This is especially important now that SaaS services are starting to take the place of managed environments and in-house software. I know several people who work as contractors in NYC bouncing from banks to law firms to media companies, and rates are dropping. Some skills just aren't in demand as much as they were...Exchange admins who knew everything about the product used to make tons of money because email was so important to companies...now they just buy Office 365. CCNP-level engineers who knew the network back and forth could easily make huge salaries and they're largely being replaced by SDN managed by the ISP or someone in India. The problem is that to get to these levels in any speciality, you need to tunnel-vision focus on your area at the exclusion of almost everything else.
The problem this presents is that you basically have these choices to try to make a career for yourself: - Specialize and hope to $deity you picked something that will be around for a while...you can get rockstar-level money but the downsides are (uaually) having to move every year or so where the work is, and the risk of finding yourself in a dead end needing to jump to another rabbit hole. - Be a total generalist...you'll be jack of all trades and master of none. You'll usually be limited to small shops which limits income and exposure to "enterprisey" huge systems. The only upside I can see is you won't find yourself in the same place EMC or NetApp wizards are finding themselves now. - Dive into rabbbit holes but constantly bounce out...that's where I am now. The upside is that I've been able to work at the same place for over 10 years (which is important to me because I like a stable home/work life) without being the guy who's had the same year of experience 10 years over. Downside....chasing New! Shiny! Must Learn NOW!!! while being semi-competent at whatever specialty I'm engaged in. The firehose of information can get exhausting, especially when you see how much new shiny is yet another wrapper on a wrapper on a layer on a framework on a container on a virtualization platform.
Long term survival in the IT world without winding up a washed-up middle manager or project manager means being flexible. Don't go too far down rabbit holes...the good money is only temporary and will require another massive effort to climb out and back down the next one.
The new UI for the Podcasts app is really awful, but I can chalk that up to the general dumbing down of user interfaces everywhere. My big problem is just basic functionality...you can't have a bunch of podcasts (even in the same feed!) play one after the other, so you have to mess with the phone when one ends to start the next one. This kills usability for me, because I really don't like touching the phone while I'm driving. I'm not usually in 5 MPH traffic crawling along...it's usually 45-55 MPH heavy traffic with traffic lights, crazy aggressive drivers and one second with your eyes off the road can mean an accident.
I don't mind UI changes when they make the app more functional. I can't stand changes that hide functionality or take away working features. Someone should put an idea in Jony Ive's ear to have a small hidden switch on the back of new iPhones...one side is "consumer" and the other is "reasonably tech-friendly" and it allows app developers to make 2 versions of their app. (Hey, I'm going to file a patent and sell it to Apple for a million bucks.)
I guess my question is this...how much of the increase is driven by people trying to throw money at anything that will get them a huge return? Or, when do financial advisors start recommending Bitcoin futures for Grandma's lump-sum pension payment?
I can't see this ending well because all it is is a speculative bubble. There's real money tied up in it, that's for sure, but in the end you don't even own stock in a company or a valuable commodity. All the cheerleaders are saying that the stock market is a casino anyway, but even if the market drops 30%, you still own stock. If Bitcoin drops 30%, you'll have to hope that it comes back so you can get your money out. Since it's not really based on anything, it's purely driven by having enough people pouring money in to keep the price high.
I agree that this is part of the solution. Not everyone over 45 keeps their skills up to date, but painting _everyone_ over 45 with the same brush makes it less likely that they'll bother trying.
Part of the problem is the "worshipping of rockstars" culture. The flashy, self-promoting 25 year olds who crank out code 100+ hours a week because they have no other obligations are what gets the press. What gets the press gets the attention of the MBAs writing the checks. Standing out in an environment like that working normal hours and producing steady good-quality results is hard.
The key seems to be that if you want to have a life outside of work, but don't want to end up a washed-up middle manager or PM, find an established company with real problems to solve. Web startups past a certain age are hard to do for mid-career professionals because they expect you to give your entire life over. It's the old "if we wanted you to have a family, we would've issued you one!' kind of mentality.
I agree that looking to other sources for hiring programmers is a good thing. Not everyone is rich or brilliant enough to go to Stanford and get a CS degree, nor does every developer in your company need to be a Stanford grad. I'm in systems engineering with no formal university training...I got a degree in chemistry way back when. Since most of what I do is integration work getting developers' "masterpieces" working in production, it's very clear that a large percentage of developers have very little idea about how the machines their code runs on work.
Real computer science education starts pretty close to first principles and builds up. It doesn't start at a web framework or query language 478 levels of abstraction up the stack and work down. The big problem with "software engineering" is that people actually do need some of this first-principles understanding to be useful outside of the abstracted environments. Both community college and university education is often derided as being too theoretical because unlike coder bootcamps they don't start you off at a point where most problems are solved. But if inexperienced developers had some clue about how the magic box works beyond gluing together more magic libraries and frameworks on top, software quality might improve.
My prediction was that the Second Dotcom Bubble was fueled by phone-based apps, cheap cloud computing, the occasional successful IPO and social media hyping everything instead of CNBC. Nope, it's going to be this. I was wrong...we're going to see a lot of individual "investors" hurt by this, or at least greatly underwhelmed.
The time to get into mining or trading cryptocurrency was years ago. Now it's just a gold rush and even established exchanges are looking into offering futures. I'm a little pissed that I didn't have the foresight to fire up my own machines and do this back when Bitcoin was $1, but trying to get into it now is just trying to time the market and get out before the other suckers realize what's going on.
What's interesting is how fast things took off...I'm assuming that's because of social media being there to fan the flames. Cryptocurrency pushes all the right buttons with people...it's a little bit of a forbidden art because of what it's associated with, the libertarian don't-trust-the-government people love it, and everyone loves a get rich quick scheme. But when it's a matter of going to your broker and clicking a button, it's just another casino-style investment and not really backed by anything more than traditional currency is.
People complain about things like cable bills, then pay almost the same amount to subscribe to 20 music, movie and game clouds every month. Isn't this where the economy is supposed to be going? On the Microsoft side of the house, both businesses and consumers are renting their software every month, paying for it over and over again. The whole idea is to get consumers used to the idea of parting with small streams of money forever rather than paying once for something. If Starbucks had a monthly subscription program, I'm sure millions of people would subscribe. If you can get people to think of it as $x per month rather than $4000x over your lifetime, you win...it's the same tactic car dealers use to sell expensive leases or hide the true price of buying a car.
I admit that I have a daily coffee habit, but all I buy is coffee...I draw the line at $5 espresso drinks. But what's wrong with allowing people to enjoy themselves a little? All it is for me is a break from the time I drop my kids off at school to the time I go to work...it could be anything else but I picked coffee. As long as people are not blowing money required to survive, we only have a limited number of trips around the Sun. I think people who gamble are mentally challenged, but I don't sit and complain outside of casinos. Having a successful investor tell people they could be exactly like him if only they gave up coffee sounds like the guy from Australia complaining that Millenials can't buy houses because they buy avocado toast.
There's nothing wrong with saving, and I'm reasonably frugal in the rest of my life. We spend our money on stuff like home improvements that actually make sense and improve our daily living conditions. But living like a monk is just going to make you miserable...Scrooge is a very good example for this time of year come to think of it. The key to being happy in a society like ours is to realize that short of an extremely good run of luck, most of us are going to be regular people making regular money. Nothing wrong with hard work, but don't labor under the illusion that if you just work a little harder or buy less coffee, you too can be a billionaire celebrity.
I wonder if the corruption was ever this bad...in Massachusetts, one of the most favorable political climates for a project like this, money wins out. I know political corruption has existed forever, but it seems like you can't get anything done unless you have enough money to pay for a lobbyist. If everything normal people want grinds to a halt, they're eventually going to get fed up.
The thing that sucks is that most good people avoid politics because they see what a dirty business it is. Even in the large companies I've worked at, politics rules every decision regardless of merit of the apolitical folks' opinion. The problem is that it's a very "if you can't beat 'em, join 'em" kind of game and enough good people have to cycle in once in a while.
That also makes me wonder 2 things...when an idealistic new Congressman or state representative comes in, when does the corruption begin? And how exactly do lobbyists pay their targets? I imagine journalists are scrutinizing their every moves to see if any bags of money are changing hands.
This would happen whether or not the workers were foreign or domestic. One thing that a lot of people who advocate for gutting retirement and disability benefits don't get is that different jobs age people differently. Even skilled jobs that are more physical in nature tend to wreck people's bodies...think about an electrician crawling around everywhere or a plumber. So, it is very possible that someone is disabled enough by the time they're in their 40s or 50s that they can't or don't want to do physical work anymore. Contrast that with your average office job where people can easily work into their 70s and beyond.
The other thing the article mentions is that a growing domestic middle class means fewer young people are willing to risk coming here for unskilled farm work. Also not a surprise...and I wonder if this is coming to the offshore outsourcing market as well in other countries. As a population gets wealthier, parents tend to steer their kids into higher-paying professions and everyone ends up getting forced through some sort of secondary education. I grew up in a reasonably blue-collar town, and even in the early 90s it was very rare to have a new high school grad just walk down to the nearest factory or farm and punch in for a lifetime of work. 50 years ago, there wouldn't be the "shame" of doing a blue-collar physical job, and students were separated into vocational and academic tracks. Apply this to somewhere like India where hundreds of thousands of new grads are looking for work...do they beg and grovel to work for IBM or Accenture or (insert US company's India development house here), or do they go after domestic work for Indian companies? Just a while back, a job with a US outsourcer was a big prize...less so now.
Now the question is what to do...either raise food prices, raise wages and offer better working conditions, or invent robots to handle the notoriously hard to automate task of harvesting food.
You can bet that's going in as an automated test ASAP, but this is a perfect example of how increased velocity leads to previously unthinkable bugs going unnoticed, or dropped in the rush to ship code. No one wants to go back to full-on waterfall where the software you crank out 3 years later doesn't do what's needed now, but IMO the dev pendulum has gone too far the other way.
Especially in something as big and important as an operating system, some group with enough big-picture thinking and enough intelligence to think up breaking tests needs to make sure everything hangs together right. Individual developers can unit-test their little pieces, but plugging together thousands of little pieces is often what causes big bugs like this.
Right now we're getting the third wave of DevOps adoption, and it's interesting to see how different it is. The first wave was all the cool kids at startups doing microservices, containerizing apps with Docker and Kubernetes, deploying with Jenkins/Chef/Puppet and writing in whatever web framework someone working for Google open-sourced that week. The second wave is all the big software companies who do this for a living. The third wave is the companies who don't have a good handle on their current dev processes now, let alone any clue on how to change them. This is being driven by a massive fear of missing out and consulting companies/tool vendors are making billions off companies that don't really get what they're buying. Expect bugs like this in internal systems as overworked developers are forced to crank out more half-baked code because the Agile book their manager read said they had to ship no matter what.
I've been to Microsoft's campus a couple of times, and it literally is like a college campus. There's huge buildings with a large amount of open green space. Back before Agile and DevOps, developers would have their own private offices. If I had to guess, this is their excuse to build more "team collaboration spaces". They could just knock down the existing buildings and consolidate everyone down into high rises since all they need is huge open spaces now.
I don't know about everyone else, but I can't concentrate on a problem if I'm crammed in with 20 people in an open space. The big problem with this is that it's going to take the management consultants who control HR at every company 20 or more years of studies to conclude this is a bad idea and start recommending putting knowledge workers back in offices.
Not every union contract has terms that benefit only one side. Don't forget that pilots make the ultimate judgement call about their fitness to fly. By specifying a maximum bonus, the airline doesn't end up in a bidding war with the pilots, with the pilots as a group staging a sick-out unless they get 10x their pay. So in this very situation, a pilot who was awarded time off but begged to come back could easily say "Sure, I'll do it...for a price." It's a way to limit liability, and even though it makes this tougher to deal with it's a good safety valve. Labor contracts are give-and-take on both sides. For every perk, benefit and favorable work rule the workers get, the company also throws a few things in that go in their favor too.
People complain about unionized workplaces being inflexible, and it's true that the contract is the contract. But don't forget that every executive in every company has an ironclad employment contract, specifying what perks they get, how much the company has to pay them regardless of performance, etc. Why do you think Marissa Mayer got hundreds of millions for dismantling Yahoo!? I'd definitely work in a unionized environment as opposed to being subject to the whims of HR...at least I could plan my life a little further out than I do these days.
I work in the airline industry. This is a huge mess for American...it's not like they can just get some temporary holiday help off the street, and airlines have very few pilots sitting around on reserve. Even with the reserve pilots, who are usually the newbies, they have to match up who's qualified to fly certain equipment, keep track of duty hours, maximum flying hours per month. Having a few key flights cancelled due to crew shortages cascades through the whole system...crew and equipment expected to be in certain places doesn't get there in time, so the onward flights in the schedule can't run either. This is where you see things on CNN showing airport terminals with thousands of people milling around with nowhere to go.
In a seniority-based system. the least senior pilots are probably going to end up getting their vacation cancelled and paid extra to entice them to not say they're unfit to fly. They're also going to have to pick whose turn it is in IT to be the official scapegoat. Airline scheduling is not an easy thing, but the computers doing the schedule rely on human inputs as well.
I totally agree that waterfall planning for software doesn't make sense, but IMO neither does Features Features Features, 10 deploys a day, release now/patch later, and all the other things we've gotten as the pendulum shifted all the way to the other side. I'm on the Windows side of the fence and it's been an interesting couple of years watching them run through release release release and gradually slow it down a bit as they see quality dropping.
Operating system or application code, running on machines people own and potentially controlling sensitive processes/data, need to be developed a little alower and safer than the average phone app. Phone apps only have a couple of client devices and a known back-end...operating systems are still within the user's control to some extent. OS bugs are very public, potentially very dangerous, and can't be changed by some Red Bull-fueled developer pushing a quick hack change to production. Even if you automate patching, a patch still needs to be released and regression-tested.
I'm hoping every software company will take some of these lessons into account, because I like the faster pace of development and don't want projects to turn into bug-ridden messes because someone read one too many Agile books and isn't focusing on the actual work.
I've worked for very big, very follow-the-rules companies for a long time. Almost every place I've been has had compulsory sexual harassment training regardless of whether or not we're too busy to harass anyone. And almost every place has a written policy banning relationships with subordinates, or puts so many rules around them that it's crazy to bother with them. The norm for big companies is also a zero-tolerance policy...if anyone reports anything, it's very likely that the company will cut the accused person loose rather than risk being involved in covering it up. Contrast that with recent examples like Uber where the HR department swept evidence-backed complaints under the rug to protect a "rockstar" manager. In my experience, the only departments that get a free pass in big companies with real HR departments and real legal counsel are the sales team -- and if it's egregious enough that they can't deny it even rockstar salespeople get let go too.
In short, it's just not worth it for a regular employee to get involved with anyone at work. People should be professionals and not go fishing in the company pond.
I think if this keeps up, they're going to eventually hit every male executive in every company.
It must be a power thing...I've never worked in a department with someone who was crazy enough to get involved with a work relationship, especially the superior-and-subordinate kind. I've worked with salespeople in some aspects of my work -- those guys, even at the non-exec level, always pegged the slimebag-meter so I wouldn't be surprised if sales orgs get cleaned out as well. What's interesting is that I've always avoided even the hint of impropriety because I like my job, like getting paid and my family likes that I contribute. I guess when you're an executive, you're set for life anyway and untouchable so you go after what you want regardless of the consequences. From the outside looking in, it seems like a very nice life...you basically have a waitstaff taking care of your every need, chauffeuring you around, handling your daily business, etc. and you don't really have to do a lot other than be the company cheerleader.
I have way too much end user computing experience...vendor's junkware is very familiar to me. One of the things I do a lot when building a master disk image for a company is try to determine which pieces of junkware really are needed to control built-in hardware. HP laptops are a really good example...the backlights, screen brightness, volume, etc. are controlled by a massive pig of a WPF application that needs to be installed or the devices won't work 100%. On a new install, you can actually push one of the control keys and watch for 30 or more seconds while the.NET modules are compiled in the background before the OSD appears and shows your change.
You can bet next month's house payment that these various pieces of vendor junkware consist of stitched-together example code from the hardware vendors and the lowest-bidder offshored developers contributing the glue portions. They don't invest anything beyond what they have to to get the hardware shipped. So, the speed factor is probably just a side effect of the telemetry client being the cheapest possible development HP could do. This sounds like Lenovo's Superfish moment all over again though; you'd think vendors would avoid that even on their cheapest crappiest Best Buy consumer models.
I think a lot of people forget that these huge faceless companies have humans running things, and more importantly, producing products. I see this a lot in the company I work for...they're desperately trying to speed up software deployment/adopt DevOps, and I think a lot of it is just fear-driven. "Thought leaders" go to these conferences and then wonder why we aren't doing 200 deployments a day in a fully containerized environment using the latest JavaScript framework that came out last week. It's fear of missing out, and the media only covers the coolest companies, leaving out the vast majority. Going fast is great, but crash programs to get there without changing the entire culture is just fear.
Large companies, even if they're faster than most, are resource-constrained. Apple, Amazon, Google, Facebook and Microsoft are about the only ones who can actually print money these days, wave a wand and make things happen. Even then, it takes effort to form a team to work on a problem, pull people from project to project, etc. At a startup, 10 people working around a cafeteria table can just decide to work on something...and as long as they have VC money in the bank they can make it happen a lot faster than a company with thousands of developers.
Most likely, it just got shelved in favor of improving existing products. When the Echo came out, that was basically the benchmark and Apple even waited for Google before putting the effort into creating a product. You can bet that it's going to have all the Echo and Home features in addition to others, and it'll most likely be a rounded-edge cylinder with softly pulsing white LEDs. It'll be available in white, black, gold, rose gold and space grey. And people will line up at the Apple store to buy one...I'll bet this was another reason why they didn't feel too much pressure.
I'm in the minority on this one, but I really think even open source projects are "companies," and their supporters should try to avoid promoting topics most people find inappropriate. I'm not saying people can't express these opinions personally, but I do think the right wing is cherry-picking incidents so they can promote the "look at these triggered safe-space Millenials" meme to full effectiveness. When a company is dragged into these discussions, it just leads to a mess. I suppose I am somewhat in favor of PC public speech, only because what's coming out of individuals is increasingly less civil as traditional filters on behavior are disappearing.
Back when Fortune was written, most Unix users were, err, nerdier than the general population and it was more of a closed club. You'd be hard-pressed to find anyone in that group who would dare to make a public statement against something like this, because they'd be shouted down by the others in the group. But the *BSDs are in use by a wider audience now...they form the basis of a lot of network appliances and many companies use them for daily operations. I'm not saying I would be one of the ones complaining about this...it is pretty innocuous in the grand scheme of things...but if I owned an open source project I wouldn't want the controversy of not responding to it.
It's like the James Damore incident and Google...say what you want about what he wrote, why he wrote it, and whether he ever expected it to be released. But if I were Google's general counsel, I would want that problem to disappear immediately, and that's probably what ended up happening. Even on a private internal forum, you don't write anything you wouldn't want published in the New York Times, and I wouldn't expect my employer to want me around if I did anything that even tangentially put them in a bad light.
One counter-argument to this is that suppressing opinion will just lead to more extremism. I kind of agree with that...I imagine there are an even more fervent band of followers of Bill O'Reilly and Sean Hannity after they got fired from Fox News, and now they're even less restrained than they were. But, in the absence of people being able to not be jerks and stop themselves from saying the first thing that comes out of their mouths, AND having social media platforms that amplify people's voices a billion times, I think companies should try to enforce civil behavior.
I admit I'm cynical, but on paper this is a good move. I'm sure the companies who actually use the H-1B for cheap labor have some nice exceptions carved out, but signalling that the floodgates are closing might force companies to get creative about how they find and train people.
I work for a multinational company and have worked with several on-staff H-1B workers who are quite good. The company uses The contractors that come in from the body shops (TCS, IBM, Accenture, Infosys, etc.) are quite obviously brought in to reduce costs. I think the program itself is OK, in that the letter of the law lets companies have a small safety valve to hire highly skilled people in certain industries. What I don't like, having worked in IT for 20+ years, is that there's less opportunity for newbies to get entry-level work and the work performed by the H-1Bs is no better than what you'd get from a domestic newbie. If we scare all potential new hires away from IT or computer science, we're going to have a newbie pipeline problem. Even 18-year-old students make rational choices about their futures, and we see a lot of very smart people spending their talent working for investment banks or getting their MBA and becoming management consultants.
If we can show people there's still a career path to be had in IT and development, then people will continue to pursue it. If the body shops take all the H-1B visas and use them to staff up help desks or do grunt work development, then people will see there's no future and act accordingly.
Right now, Amazon doesn't have an equivalent to Azure Stack (the cloud in a box from Microsoft.) The closest thing they have is VMware stretching existing on-site cluster management into AWS, where you basically build out ESXi hosts in AWS and manage both on-site and cloud hosts from the same tools. That's not going to fly at an intelligence agency, no matter how many rounds of golf, free trips and strip club visits you buy the CIO, so the logical thing to do is to bring the whole thing in house.
My assumption is that this is an offline, onsite AWS, with all the capacity pre-paid for and managed by people with TS clearance or similar. $600 million buys a lot of servers and help to run your own AWS.
> I"ve been contracting for nearly 20 years now, and I am quite happy with it.
I doubt you fall into the same category as someone who depends on gig economy jobs for survival. There is a huge difference between someone making $150+ an hour bouncing place to place writing software, and someone who can't find any other work.
This is the disconnect I find with most IT contractors who assume these people are in a similar situation. I need the stability of a regular paycheck because I have a family, otherwise I'd contract as well. Given that, you and I both understand there are some really good benefits to doing so (counting everything you buy as a business expense, being able to refuse a job/task, etc.) But, the downside is that you could go without work for quite some time, especially if your forte is not sales/schmoozing. These gig economy employers aren't running payroll for six-figure rockstar contractors; they're taking advantage of vulnerable people who don't have a lot of options. There may be some people who drive for Uber because they want extra money, but most people don't want to stitch together 20 different side jobs just to survive. I have peers who make way more than I do contracting, and the main downside is they might have to dip into their vast savings or only take 2 months of vacation in a year instead of 3. I highly doubt anyone scrounging for side work with Instacart or similar has vast resources to fall back on.
Being a mid-career techie, I often find myself in a teaching role because our department takes in a few new grads once in a while. I really enjoy doing it and am happy that I can pass knowledge down so people don't have to learn things the hard way. Having a CS degree or a technical certification from a vendor is only one predictor of success. The vast majority of IT jobs could be taught in the apprenticeship model, and I think most would benefit from it.
I'm very skeptical of IBM doing this just because they've spent the last decade sending every US technical job they could to India. But, one thing I think they might be seeing is that IT and technology isn't just a cool add-on to the world around us...it needs to be treated more like a utility, at least for core systems. That's the big difference...cowboy-coded phone apps with parts written in 11 cool new JavaScript frameworks are very different from things that control life-safety systems and process mundane stuff like payroll that must run no matter what.
An apprenticeship that allows a new hire to come in contact with a broad range of new and old, exciting and boring stuff would make a very well-rounded technician level worker who can provide competent help. IBM's still printing money with their mainframe business and they see that mainframers are retiring...maybe this is a good way to get new recruits. Even if IBM has 50,000 new grads in India who will learn whatever they're told to, having someone domestically who's under 60 and understands what customers need can only help.
IT folks and developers walk a fine line deciding what to learn and what to specialize in. Rightfully so, they're worried that if they take time off to go down this path or that, they'll miss out on something else and no longer be the top resume on the pile because they're not doing new shiny stuff. Maybe apprenticeships can fix some of that.
I know all the cool kids are doing Agile and sprinting away, and I think that's fine for development. But one of the things I really don't think is doing companies any favors is the super-fast iterations of operating systems. I'm a Windows guy and we see this with Windows 10 a lot...features just feel unfinished even when they're part of an official release. On the Windows Server side of the house, the pace is a little slower and it shows...server operating systems need to be more stable and not have surprising feature changes.
I'm an old fuddy duddy, but I think that core things like operating systems should have a slightly slower pace of development that allows for more testing and more careful planning. I see this in iOS 11 too...I just upgraded and was very surprised how many of the built-in apps have serious design flaws and appear to have been changed just because. (The Podcast app is unusable while driving anymore because you can't have it automatically play through a list of podcasts, as an example.)
Going super-fast and doing the DevOps thing is fine, but honestly a lot of this thinking came out of startups, where the product was an app whose only client is a smartphone, and whose only customer is a consumer who is getting a free service. Failures of this can be tolerated if you can quickly patch up the back end...but an OS deployed on a machine is a different story.
Living near NYC, I'm not one to throw stones about expensive housing markets. But, California's real estate markets (especially around SF/SV) are a level above everything outside of Midtown Manhattan. When old, crappy houses on tiny lots start in the low million-dollar range, and 1-bedroom apartments are renting for over $4000 a month, the system needs to be fixed. Rebranding having to share a small space with "co-living companions" is not the answer. I know not everyone wants a big house and a big lawn, etc. But. people should have options.
I know everyone says the answer is to build more skyscrapers and provide more condos, but i think the answer is actually to have companies realize they don't have to have all of their staff crammed into the same tiny area anymore. We're close enough with UC being what it is today to allow almost everyone in technology fields to work remotely.
Overspecializing is a huge danger, and it's a constant fight in IT/dev trying to figure out where you need to be next. This is especially important now that SaaS services are starting to take the place of managed environments and in-house software. I know several people who work as contractors in NYC bouncing from banks to law firms to media companies, and rates are dropping. Some skills just aren't in demand as much as they were...Exchange admins who knew everything about the product used to make tons of money because email was so important to companies...now they just buy Office 365. CCNP-level engineers who knew the network back and forth could easily make huge salaries and they're largely being replaced by SDN managed by the ISP or someone in India. The problem is that to get to these levels in any speciality, you need to tunnel-vision focus on your area at the exclusion of almost everything else.
The problem this presents is that you basically have these choices to try to make a career for yourself:
- Specialize and hope to $deity you picked something that will be around for a while...you can get rockstar-level money but the downsides are (uaually) having to move every year or so where the work is, and the risk of finding yourself in a dead end needing to jump to another rabbit hole.
- Be a total generalist...you'll be jack of all trades and master of none. You'll usually be limited to small shops which limits income and exposure to "enterprisey" huge systems. The only upside I can see is you won't find yourself in the same place EMC or NetApp wizards are finding themselves now.
- Dive into rabbbit holes but constantly bounce out...that's where I am now. The upside is that I've been able to work at the same place for over 10 years (which is important to me because I like a stable home/work life) without being the guy who's had the same year of experience 10 years over. Downside....chasing New! Shiny! Must Learn NOW!!! while being semi-competent at whatever specialty I'm engaged in. The firehose of information can get exhausting, especially when you see how much new shiny is yet another wrapper on a wrapper on a layer on a framework on a container on a virtualization platform.
Long term survival in the IT world without winding up a washed-up middle manager or project manager means being flexible. Don't go too far down rabbit holes...the good money is only temporary and will require another massive effort to climb out and back down the next one.
The new UI for the Podcasts app is really awful, but I can chalk that up to the general dumbing down of user interfaces everywhere. My big problem is just basic functionality...you can't have a bunch of podcasts (even in the same feed!) play one after the other, so you have to mess with the phone when one ends to start the next one. This kills usability for me, because I really don't like touching the phone while I'm driving. I'm not usually in 5 MPH traffic crawling along...it's usually 45-55 MPH heavy traffic with traffic lights, crazy aggressive drivers and one second with your eyes off the road can mean an accident.
I don't mind UI changes when they make the app more functional. I can't stand changes that hide functionality or take away working features. Someone should put an idea in Jony Ive's ear to have a small hidden switch on the back of new iPhones...one side is "consumer" and the other is "reasonably tech-friendly" and it allows app developers to make 2 versions of their app. (Hey, I'm going to file a patent and sell it to Apple for a million bucks.)
I guess my question is this...how much of the increase is driven by people trying to throw money at anything that will get them a huge return? Or, when do financial advisors start recommending Bitcoin futures for Grandma's lump-sum pension payment?
I can't see this ending well because all it is is a speculative bubble. There's real money tied up in it, that's for sure, but in the end you don't even own stock in a company or a valuable commodity. All the cheerleaders are saying that the stock market is a casino anyway, but even if the market drops 30%, you still own stock. If Bitcoin drops 30%, you'll have to hope that it comes back so you can get your money out. Since it's not really based on anything, it's purely driven by having enough people pouring money in to keep the price high.
I agree that this is part of the solution. Not everyone over 45 keeps their skills up to date, but painting _everyone_ over 45 with the same brush makes it less likely that they'll bother trying.
Part of the problem is the "worshipping of rockstars" culture. The flashy, self-promoting 25 year olds who crank out code 100+ hours a week because they have no other obligations are what gets the press. What gets the press gets the attention of the MBAs writing the checks. Standing out in an environment like that working normal hours and producing steady good-quality results is hard.
The key seems to be that if you want to have a life outside of work, but don't want to end up a washed-up middle manager or PM, find an established company with real problems to solve. Web startups past a certain age are hard to do for mid-career professionals because they expect you to give your entire life over. It's the old "if we wanted you to have a family, we would've issued you one!' kind of mentality.
I agree that looking to other sources for hiring programmers is a good thing. Not everyone is rich or brilliant enough to go to Stanford and get a CS degree, nor does every developer in your company need to be a Stanford grad. I'm in systems engineering with no formal university training...I got a degree in chemistry way back when. Since most of what I do is integration work getting developers' "masterpieces" working in production, it's very clear that a large percentage of developers have very little idea about how the machines their code runs on work.
Real computer science education starts pretty close to first principles and builds up. It doesn't start at a web framework or query language 478 levels of abstraction up the stack and work down. The big problem with "software engineering" is that people actually do need some of this first-principles understanding to be useful outside of the abstracted environments. Both community college and university education is often derided as being too theoretical because unlike coder bootcamps they don't start you off at a point where most problems are solved. But if inexperienced developers had some clue about how the magic box works beyond gluing together more magic libraries and frameworks on top, software quality might improve.
My prediction was that the Second Dotcom Bubble was fueled by phone-based apps, cheap cloud computing, the occasional successful IPO and social media hyping everything instead of CNBC. Nope, it's going to be this. I was wrong...we're going to see a lot of individual "investors" hurt by this, or at least greatly underwhelmed.
The time to get into mining or trading cryptocurrency was years ago. Now it's just a gold rush and even established exchanges are looking into offering futures. I'm a little pissed that I didn't have the foresight to fire up my own machines and do this back when Bitcoin was $1, but trying to get into it now is just trying to time the market and get out before the other suckers realize what's going on.
What's interesting is how fast things took off...I'm assuming that's because of social media being there to fan the flames. Cryptocurrency pushes all the right buttons with people...it's a little bit of a forbidden art because of what it's associated with, the libertarian don't-trust-the-government people love it, and everyone loves a get rich quick scheme. But when it's a matter of going to your broker and clicking a button, it's just another casino-style investment and not really backed by anything more than traditional currency is.
People complain about things like cable bills, then pay almost the same amount to subscribe to 20 music, movie and game clouds every month. Isn't this where the economy is supposed to be going? On the Microsoft side of the house, both businesses and consumers are renting their software every month, paying for it over and over again. The whole idea is to get consumers used to the idea of parting with small streams of money forever rather than paying once for something. If Starbucks had a monthly subscription program, I'm sure millions of people would subscribe. If you can get people to think of it as $x per month rather than $4000x over your lifetime, you win...it's the same tactic car dealers use to sell expensive leases or hide the true price of buying a car.
I admit that I have a daily coffee habit, but all I buy is coffee...I draw the line at $5 espresso drinks. But what's wrong with allowing people to enjoy themselves a little? All it is for me is a break from the time I drop my kids off at school to the time I go to work...it could be anything else but I picked coffee. As long as people are not blowing money required to survive, we only have a limited number of trips around the Sun. I think people who gamble are mentally challenged, but I don't sit and complain outside of casinos. Having a successful investor tell people they could be exactly like him if only they gave up coffee sounds like the guy from Australia complaining that Millenials can't buy houses because they buy avocado toast.
There's nothing wrong with saving, and I'm reasonably frugal in the rest of my life. We spend our money on stuff like home improvements that actually make sense and improve our daily living conditions. But living like a monk is just going to make you miserable...Scrooge is a very good example for this time of year come to think of it. The key to being happy in a society like ours is to realize that short of an extremely good run of luck, most of us are going to be regular people making regular money. Nothing wrong with hard work, but don't labor under the illusion that if you just work a little harder or buy less coffee, you too can be a billionaire celebrity.
I wonder if the corruption was ever this bad...in Massachusetts, one of the most favorable political climates for a project like this, money wins out. I know political corruption has existed forever, but it seems like you can't get anything done unless you have enough money to pay for a lobbyist. If everything normal people want grinds to a halt, they're eventually going to get fed up.
The thing that sucks is that most good people avoid politics because they see what a dirty business it is. Even in the large companies I've worked at, politics rules every decision regardless of merit of the apolitical folks' opinion. The problem is that it's a very "if you can't beat 'em, join 'em" kind of game and enough good people have to cycle in once in a while.
That also makes me wonder 2 things...when an idealistic new Congressman or state representative comes in, when does the corruption begin? And how exactly do lobbyists pay their targets? I imagine journalists are scrutinizing their every moves to see if any bags of money are changing hands.
This would happen whether or not the workers were foreign or domestic. One thing that a lot of people who advocate for gutting retirement and disability benefits don't get is that different jobs age people differently. Even skilled jobs that are more physical in nature tend to wreck people's bodies...think about an electrician crawling around everywhere or a plumber. So, it is very possible that someone is disabled enough by the time they're in their 40s or 50s that they can't or don't want to do physical work anymore. Contrast that with your average office job where people can easily work into their 70s and beyond.
The other thing the article mentions is that a growing domestic middle class means fewer young people are willing to risk coming here for unskilled farm work. Also not a surprise...and I wonder if this is coming to the offshore outsourcing market as well in other countries. As a population gets wealthier, parents tend to steer their kids into higher-paying professions and everyone ends up getting forced through some sort of secondary education. I grew up in a reasonably blue-collar town, and even in the early 90s it was very rare to have a new high school grad just walk down to the nearest factory or farm and punch in for a lifetime of work. 50 years ago, there wouldn't be the "shame" of doing a blue-collar physical job, and students were separated into vocational and academic tracks. Apply this to somewhere like India where hundreds of thousands of new grads are looking for work...do they beg and grovel to work for IBM or Accenture or (insert US company's India development house here), or do they go after domestic work for Indian companies? Just a while back, a job with a US outsourcer was a big prize...less so now.
Now the question is what to do...either raise food prices, raise wages and offer better working conditions, or invent robots to handle the notoriously hard to automate task of harvesting food.
You can bet that's going in as an automated test ASAP, but this is a perfect example of how increased velocity leads to previously unthinkable bugs going unnoticed, or dropped in the rush to ship code. No one wants to go back to full-on waterfall where the software you crank out 3 years later doesn't do what's needed now, but IMO the dev pendulum has gone too far the other way.
Especially in something as big and important as an operating system, some group with enough big-picture thinking and enough intelligence to think up breaking tests needs to make sure everything hangs together right. Individual developers can unit-test their little pieces, but plugging together thousands of little pieces is often what causes big bugs like this.
Right now we're getting the third wave of DevOps adoption, and it's interesting to see how different it is. The first wave was all the cool kids at startups doing microservices, containerizing apps with Docker and Kubernetes, deploying with Jenkins/Chef/Puppet and writing in whatever web framework someone working for Google open-sourced that week. The second wave is all the big software companies who do this for a living. The third wave is the companies who don't have a good handle on their current dev processes now, let alone any clue on how to change them. This is being driven by a massive fear of missing out and consulting companies/tool vendors are making billions off companies that don't really get what they're buying. Expect bugs like this in internal systems as overworked developers are forced to crank out more half-baked code because the Agile book their manager read said they had to ship no matter what.
I've been to Microsoft's campus a couple of times, and it literally is like a college campus. There's huge buildings with a large amount of open green space. Back before Agile and DevOps, developers would have their own private offices. If I had to guess, this is their excuse to build more "team collaboration spaces". They could just knock down the existing buildings and consolidate everyone down into high rises since all they need is huge open spaces now.
I don't know about everyone else, but I can't concentrate on a problem if I'm crammed in with 20 people in an open space. The big problem with this is that it's going to take the management consultants who control HR at every company 20 or more years of studies to conclude this is a bad idea and start recommending putting knowledge workers back in offices.
Not every union contract has terms that benefit only one side. Don't forget that pilots make the ultimate judgement call about their fitness to fly. By specifying a maximum bonus, the airline doesn't end up in a bidding war with the pilots, with the pilots as a group staging a sick-out unless they get 10x their pay. So in this very situation, a pilot who was awarded time off but begged to come back could easily say "Sure, I'll do it...for a price." It's a way to limit liability, and even though it makes this tougher to deal with it's a good safety valve. Labor contracts are give-and-take on both sides. For every perk, benefit and favorable work rule the workers get, the company also throws a few things in that go in their favor too.
People complain about unionized workplaces being inflexible, and it's true that the contract is the contract. But don't forget that every executive in every company has an ironclad employment contract, specifying what perks they get, how much the company has to pay them regardless of performance, etc. Why do you think Marissa Mayer got hundreds of millions for dismantling Yahoo!? I'd definitely work in a unionized environment as opposed to being subject to the whims of HR...at least I could plan my life a little further out than I do these days.
I work in the airline industry. This is a huge mess for American...it's not like they can just get some temporary holiday help off the street, and airlines have very few pilots sitting around on reserve. Even with the reserve pilots, who are usually the newbies, they have to match up who's qualified to fly certain equipment, keep track of duty hours, maximum flying hours per month. Having a few key flights cancelled due to crew shortages cascades through the whole system...crew and equipment expected to be in certain places doesn't get there in time, so the onward flights in the schedule can't run either. This is where you see things on CNN showing airport terminals with thousands of people milling around with nowhere to go.
In a seniority-based system. the least senior pilots are probably going to end up getting their vacation cancelled and paid extra to entice them to not say they're unfit to fly. They're also going to have to pick whose turn it is in IT to be the official scapegoat. Airline scheduling is not an easy thing, but the computers doing the schedule rely on human inputs as well.
I totally agree that waterfall planning for software doesn't make sense, but IMO neither does Features Features Features, 10 deploys a day, release now/patch later, and all the other things we've gotten as the pendulum shifted all the way to the other side. I'm on the Windows side of the fence and it's been an interesting couple of years watching them run through release release release and gradually slow it down a bit as they see quality dropping.
Operating system or application code, running on machines people own and potentially controlling sensitive processes/data, need to be developed a little alower and safer than the average phone app. Phone apps only have a couple of client devices and a known back-end...operating systems are still within the user's control to some extent. OS bugs are very public, potentially very dangerous, and can't be changed by some Red Bull-fueled developer pushing a quick hack change to production. Even if you automate patching, a patch still needs to be released and regression-tested.
I'm hoping every software company will take some of these lessons into account, because I like the faster pace of development and don't want projects to turn into bug-ridden messes because someone read one too many Agile books and isn't focusing on the actual work.
I've worked for very big, very follow-the-rules companies for a long time. Almost every place I've been has had compulsory sexual harassment training regardless of whether or not we're too busy to harass anyone. And almost every place has a written policy banning relationships with subordinates, or puts so many rules around them that it's crazy to bother with them. The norm for big companies is also a zero-tolerance policy...if anyone reports anything, it's very likely that the company will cut the accused person loose rather than risk being involved in covering it up. Contrast that with recent examples like Uber where the HR department swept evidence-backed complaints under the rug to protect a "rockstar" manager. In my experience, the only departments that get a free pass in big companies with real HR departments and real legal counsel are the sales team -- and if it's egregious enough that they can't deny it even rockstar salespeople get let go too.
In short, it's just not worth it for a regular employee to get involved with anyone at work. People should be professionals and not go fishing in the company pond.
I think if this keeps up, they're going to eventually hit every male executive in every company.
It must be a power thing...I've never worked in a department with someone who was crazy enough to get involved with a work relationship, especially the superior-and-subordinate kind. I've worked with salespeople in some aspects of my work -- those guys, even at the non-exec level, always pegged the slimebag-meter so I wouldn't be surprised if sales orgs get cleaned out as well. What's interesting is that I've always avoided even the hint of impropriety because I like my job, like getting paid and my family likes that I contribute. I guess when you're an executive, you're set for life anyway and untouchable so you go after what you want regardless of the consequences. From the outside looking in, it seems like a very nice life...you basically have a waitstaff taking care of your every need, chauffeuring you around, handling your daily business, etc. and you don't really have to do a lot other than be the company cheerleader.
I have way too much end user computing experience...vendor's junkware is very familiar to me. One of the things I do a lot when building a master disk image for a company is try to determine which pieces of junkware really are needed to control built-in hardware. HP laptops are a really good example...the backlights, screen brightness, volume, etc. are controlled by a massive pig of a WPF application that needs to be installed or the devices won't work 100%. On a new install, you can actually push one of the control keys and watch for 30 or more seconds while the .NET modules are compiled in the background before the OSD appears and shows your change.
You can bet next month's house payment that these various pieces of vendor junkware consist of stitched-together example code from the hardware vendors and the lowest-bidder offshored developers contributing the glue portions. They don't invest anything beyond what they have to to get the hardware shipped. So, the speed factor is probably just a side effect of the telemetry client being the cheapest possible development HP could do. This sounds like Lenovo's Superfish moment all over again though; you'd think vendors would avoid that even on their cheapest crappiest Best Buy consumer models.
I think a lot of people forget that these huge faceless companies have humans running things, and more importantly, producing products. I see this a lot in the company I work for...they're desperately trying to speed up software deployment/adopt DevOps, and I think a lot of it is just fear-driven. "Thought leaders" go to these conferences and then wonder why we aren't doing 200 deployments a day in a fully containerized environment using the latest JavaScript framework that came out last week. It's fear of missing out, and the media only covers the coolest companies, leaving out the vast majority. Going fast is great, but crash programs to get there without changing the entire culture is just fear.
Large companies, even if they're faster than most, are resource-constrained. Apple, Amazon, Google, Facebook and Microsoft are about the only ones who can actually print money these days, wave a wand and make things happen. Even then, it takes effort to form a team to work on a problem, pull people from project to project, etc. At a startup, 10 people working around a cafeteria table can just decide to work on something...and as long as they have VC money in the bank they can make it happen a lot faster than a company with thousands of developers.
Most likely, it just got shelved in favor of improving existing products. When the Echo came out, that was basically the benchmark and Apple even waited for Google before putting the effort into creating a product. You can bet that it's going to have all the Echo and Home features in addition to others, and it'll most likely be a rounded-edge cylinder with softly pulsing white LEDs. It'll be available in white, black, gold, rose gold and space grey. And people will line up at the Apple store to buy one...I'll bet this was another reason why they didn't feel too much pressure.
I'm in the minority on this one, but I really think even open source projects are "companies," and their supporters should try to avoid promoting topics most people find inappropriate. I'm not saying people can't express these opinions personally, but I do think the right wing is cherry-picking incidents so they can promote the "look at these triggered safe-space Millenials" meme to full effectiveness. When a company is dragged into these discussions, it just leads to a mess. I suppose I am somewhat in favor of PC public speech, only because what's coming out of individuals is increasingly less civil as traditional filters on behavior are disappearing.
Back when Fortune was written, most Unix users were, err, nerdier than the general population and it was more of a closed club. You'd be hard-pressed to find anyone in that group who would dare to make a public statement against something like this, because they'd be shouted down by the others in the group. But the *BSDs are in use by a wider audience now...they form the basis of a lot of network appliances and many companies use them for daily operations. I'm not saying I would be one of the ones complaining about this...it is pretty innocuous in the grand scheme of things...but if I owned an open source project I wouldn't want the controversy of not responding to it.
It's like the James Damore incident and Google...say what you want about what he wrote, why he wrote it, and whether he ever expected it to be released. But if I were Google's general counsel, I would want that problem to disappear immediately, and that's probably what ended up happening. Even on a private internal forum, you don't write anything you wouldn't want published in the New York Times, and I wouldn't expect my employer to want me around if I did anything that even tangentially put them in a bad light.
One counter-argument to this is that suppressing opinion will just lead to more extremism. I kind of agree with that...I imagine there are an even more fervent band of followers of Bill O'Reilly and Sean Hannity after they got fired from Fox News, and now they're even less restrained than they were. But, in the absence of people being able to not be jerks and stop themselves from saying the first thing that comes out of their mouths, AND having social media platforms that amplify people's voices a billion times, I think companies should try to enforce civil behavior.
I admit I'm cynical, but on paper this is a good move. I'm sure the companies who actually use the H-1B for cheap labor have some nice exceptions carved out, but signalling that the floodgates are closing might force companies to get creative about how they find and train people.
I work for a multinational company and have worked with several on-staff H-1B workers who are quite good. The company uses The contractors that come in from the body shops (TCS, IBM, Accenture, Infosys, etc.) are quite obviously brought in to reduce costs. I think the program itself is OK, in that the letter of the law lets companies have a small safety valve to hire highly skilled people in certain industries. What I don't like, having worked in IT for 20+ years, is that there's less opportunity for newbies to get entry-level work and the work performed by the H-1Bs is no better than what you'd get from a domestic newbie. If we scare all potential new hires away from IT or computer science, we're going to have a newbie pipeline problem. Even 18-year-old students make rational choices about their futures, and we see a lot of very smart people spending their talent working for investment banks or getting their MBA and becoming management consultants.
If we can show people there's still a career path to be had in IT and development, then people will continue to pursue it. If the body shops take all the H-1B visas and use them to staff up help desks or do grunt work development, then people will see there's no future and act accordingly.
Right now, Amazon doesn't have an equivalent to Azure Stack (the cloud in a box from Microsoft.) The closest thing they have is VMware stretching existing on-site cluster management into AWS, where you basically build out ESXi hosts in AWS and manage both on-site and cloud hosts from the same tools. That's not going to fly at an intelligence agency, no matter how many rounds of golf, free trips and strip club visits you buy the CIO, so the logical thing to do is to bring the whole thing in house.
My assumption is that this is an offline, onsite AWS, with all the capacity pre-paid for and managed by people with TS clearance or similar. $600 million buys a lot of servers and help to run your own AWS.
> I"ve been contracting for nearly 20 years now, and I am quite happy with it.
I doubt you fall into the same category as someone who depends on gig economy jobs for survival. There is a huge difference between someone making $150+ an hour bouncing place to place writing software, and someone who can't find any other work.
This is the disconnect I find with most IT contractors who assume these people are in a similar situation. I need the stability of a regular paycheck because I have a family, otherwise I'd contract as well. Given that, you and I both understand there are some really good benefits to doing so (counting everything you buy as a business expense, being able to refuse a job/task, etc.) But, the downside is that you could go without work for quite some time, especially if your forte is not sales/schmoozing. These gig economy employers aren't running payroll for six-figure rockstar contractors; they're taking advantage of vulnerable people who don't have a lot of options. There may be some people who drive for Uber because they want extra money, but most people don't want to stitch together 20 different side jobs just to survive. I have peers who make way more than I do contracting, and the main downside is they might have to dip into their vast savings or only take 2 months of vacation in a year instead of 3. I highly doubt anyone scrounging for side work with Instacart or similar has vast resources to fall back on.
Being a mid-career techie, I often find myself in a teaching role because our department takes in a few new grads once in a while. I really enjoy doing it and am happy that I can pass knowledge down so people don't have to learn things the hard way. Having a CS degree or a technical certification from a vendor is only one predictor of success. The vast majority of IT jobs could be taught in the apprenticeship model, and I think most would benefit from it.
I'm very skeptical of IBM doing this just because they've spent the last decade sending every US technical job they could to India. But, one thing I think they might be seeing is that IT and technology isn't just a cool add-on to the world around us...it needs to be treated more like a utility, at least for core systems. That's the big difference...cowboy-coded phone apps with parts written in 11 cool new JavaScript frameworks are very different from things that control life-safety systems and process mundane stuff like payroll that must run no matter what.
An apprenticeship that allows a new hire to come in contact with a broad range of new and old, exciting and boring stuff would make a very well-rounded technician level worker who can provide competent help. IBM's still printing money with their mainframe business and they see that mainframers are retiring...maybe this is a good way to get new recruits. Even if IBM has 50,000 new grads in India who will learn whatever they're told to, having someone domestically who's under 60 and understands what customers need can only help.
IT folks and developers walk a fine line deciding what to learn and what to specialize in. Rightfully so, they're worried that if they take time off to go down this path or that, they'll miss out on something else and no longer be the top resume on the pile because they're not doing new shiny stuff. Maybe apprenticeships can fix some of that.
I know all the cool kids are doing Agile and sprinting away, and I think that's fine for development. But one of the things I really don't think is doing companies any favors is the super-fast iterations of operating systems. I'm a Windows guy and we see this with Windows 10 a lot...features just feel unfinished even when they're part of an official release. On the Windows Server side of the house, the pace is a little slower and it shows...server operating systems need to be more stable and not have surprising feature changes.
I'm an old fuddy duddy, but I think that core things like operating systems should have a slightly slower pace of development that allows for more testing and more careful planning. I see this in iOS 11 too...I just upgraded and was very surprised how many of the built-in apps have serious design flaws and appear to have been changed just because. (The Podcast app is unusable while driving anymore because you can't have it automatically play through a list of podcasts, as an example.)
Going super-fast and doing the DevOps thing is fine, but honestly a lot of this thinking came out of startups, where the product was an app whose only client is a smartphone, and whose only customer is a consumer who is getting a free service. Failures of this can be tolerated if you can quickly patch up the back end...but an OS deployed on a machine is a different story.
Living near NYC, I'm not one to throw stones about expensive housing markets. But, California's real estate markets (especially around SF/SV) are a level above everything outside of Midtown Manhattan. When old, crappy houses on tiny lots start in the low million-dollar range, and 1-bedroom apartments are renting for over $4000 a month, the system needs to be fixed. Rebranding having to share a small space with "co-living companions" is not the answer. I know not everyone wants a big house and a big lawn, etc. But. people should have options.
I know everyone says the answer is to build more skyscrapers and provide more condos, but i think the answer is actually to have companies realize they don't have to have all of their staff crammed into the same tiny area anymore. We're close enough with UC being what it is today to allow almost everyone in technology fields to work remotely.