They're following the well-trodden path of after-the-fact philanthropy practiced by robber barons (Andrew Carnegie, John D. Rockefeller) to clean up their public image following unscrupulous business practices that brought them those billions. Less cynically, there's only so many things one can spend money on, and philanthropy is least controversial.
Thanks for helping me make my point. How's it up there in the socialist ivory tower? See, I grew up in Soviet Union and seen socialism's effects first-hand. It thoroughly disabused me of the notion of the holy class struggle and made me an unabashed capitalist (though I imagine our definitions of what this implies will differ).
It's a ridiculous term that promotes polarization and dumbs down the level of discourse. I have the same reaction to it as when I see "bootlicker" as applied to anyone who takes the company's side (or is in management in general). There's too much adversarial name-calling these days, and not enough seeking understanding.
Obviously I don't have it. The author doesn't either and he is the one making the big claims. Regardless, I'm not arguing the extent to which Prabhakar Raghavan contributed to Google Search quality, I haven't even heard the name before this post. I'm not a fan of the writing style, that is all.
"Honest enterprises" also falls into the trap of anthropomorphizing organizations. Companies are not people and cannot be honest/dishonest, moral/immoral, etc. Companies are made up of people who choose to take certain positions and actions. The oath sounds nice, but ultimately is empty.
Hyperbole is well and good in fiction and personal opinion pieces. I suppose my, and parent commenter's issue, is that we expected a certain type of writing, but got another. And that's fine. I don't have a dog in this fight, but to me it went beyond hyperbole and into personal attack territory. I called it juvenile because the descriptors lack nuance in the same way that "management bad, programmer good" arguments do. Having spent quite a bit of time on both sides, it's pretty clear that motivations, incentives, and constraints are not black and white, so I'm a bit more sensitive when I see people mocked without having full context.
This is definitely not true. The Meta Quest app can connect to a headset and show what the player is seeing, both video and audio. Been watching my kid play various games for years.
Also not sure what state reset you're talking about. I've definitely grabbed the headset from another person and continued with the game.
I'm not a lawyer, but it is my understanding that using a GPL library on the frontend triggers the "distrubution to users" clause of GPL. It's a strong copyleft license, turning the entire frontend portion of the application GPL-licensed, which means any user can now request the source code for it. That's an IP risk for any commercial code, and many companies shy away from GPL. Backend use of GPL should be fine since there's no distrubution (AGPL "fixes" this, and such libraries should just be avoided in commercial settings).
TinyMCE just changed their licensing from MIT to GPL, which may impact your decision. Fun fact - TinyMCE and CKEditor are both owned by the same holding company (Tiugo Technologies).
Curious how you arrived at lumping "reinventing healthcare" with "not doing something good for the world". Your list looks like just companies you don't want to work for. Which is fine, just don't confuse it with morality. There's nothing inherently immoral about most items on that list.
At the end of the day, "good for the world" is overblown (see https://youtu.be/B8C5sjjhsso). Most software is boring, but it makes the lives of _some people_ better. If you want to impact a billion lives, chances are someone made a billion on it. Good luck.
I think many (most?) boot camps are money grabs that overpromise and underdeliver. I've also seen great juniors come out of boot camps. Either way, you're now talking about something different than your original question - most jobs out there are not junior-level jobs, so a month or a few of boot camp or self study just aren't sufficient.
Knowing how to code is the most trivial part of a software engineer's job. Making sense of vague (or even conflicting) requirements, knowing when and how to make the right trade-offs, communicating effectively up/down/with peers/cross-functionally, etc etc are what separate an experienced engineer from someone who just learned the language. My 14-year-old can code in several languages, but I don't think he's ready to be hired just yet. The job, at the end of the day, is about delivering business value, not lines of code. Writing less code to deliver more value is something that only comes from experience.
If a job can be learned in a month to a degree where the learner is now proficient in it, then the barrier to entry is low and the job is either repetitive in nature or has a very low expectations bar (e.g. for junior roles). I highly doubt that's the case for most folks on HN. This is a field where experience can't be entirely replaced with diligent study (doubly true for management roles).
The original RealAudio was the only tech that allowed me to listen to online radio over a 14.4k modem. It was all very impressive, if you didn't care about sound quality.
When I got a new laptop six months ago, it was my first new computer since the 90s where I didn't install Winamp as one of the first steps. Really only because it was my first non-Windows machine. Didn't even get deep into researching Mac alternatives before realizing that I haven't played an mp3 file more than a handful of times since signing up for Spotify years ago. Streaming irrevocably changed how I consume and think about music.
I don't think I'd recommend the learning environment I had 30+ years ago - there's just so much more information these days catering to all kinds of learners (whether you learn by reading, by watching, by doing). I was growing up in a Soviet/post-Soviet space with basically no access to help outside of peers/teachers and IDE help files. Books existed, but I didn't happen to run into any in my early coding years.
Back then, you really had to want to code. My first exposure to coding was at school where we had to use basic drawing commands (LINE, CIRCLE, etc) to draw a house. You'd write your program at home, and type it up in class next day. First assignment was to draw a house, which everyone accomplished with like six lines. I spent a whole afternoon coming up with two pages of code resulting in a 3D house with door, windows, chimney, and some scenery. And that's how I got hooked for life. Then came BASIC, Turbo Pascal, and the rest is history.
A lot of it was just banging my head on the table while exhausting every possibility. Some things don't change with time I suppose :)
Ten years ago I stepped away from the Microsoft ecosystem, in large part due to said ecosystem drifting away from industry best practices at the time, and also a conservative development culture formed around this ecosystem that did not want to acknowledge the outside world. So if I were starting a new project eight years ago, .NET would've been one of the last technologies I would've picked, despite big love for C#.
When I was starting a new project a couple of years back, I went with .NET 6 and never looked back. The Core branch (and subsequent versions) fixed a lot of the issues I had with the original .NET Framework. Happily developing with VSCode on a Mac and deploying to ARM-based Linux instances in AWS. To the original question, the only right answer is you should pick what you know unless there is some overriding reason (e.g. performance). When building a backend API, I'd personally pick C# over JS all day.