The National Enquirer was up for a Pulitzer when they were the only paper to report on a scandal involving a Dem candidate. It's all politics, all the way down, especially wikipedia.
The Daily Fail can at least be entertaining. It's not like you can believe anything you read in the WaPo or NYT - it's all just confirmation bias - but the Mail at least tries not to be dull.
Still not a citation - if you're making the claim, burden of proof lies on you to back it up.
I'm not here to do your homework. There are dozens of articles about this on google away, if you actually want to learn.
. Fivethirtyeight, which is a highly credible source in my experience,
Hahaha, nice one.
it means that there aren't qualified applicants turning up at the price you're willing to pay.
Paying more lets you hire away from other employers. For it to change the size of a skilled labor pool there has to be a way for workers to train. (How else would you imagine the total size of the pool of capable workers growing?) Why aren't we providing this? There are some fields where community college work well for entry, but not most blue-collar work. We need the equivalent there, and not scammers like ITT tech etc.
Or do you think you are somehow entitled to see their content?
It seems like they want to share their content. They just can't figure out how to monetize it. Really not my problem.
Most of what I watch these days is Patreon-funded, because you can't depend on advertising revenue in the first place if you want to talk about anything controversial (and not just politics - game reviews are even crazier in this regard).
All media has a political agenda. The old media is collapsing for lack of anything except a political agenda. The real question is "who will pay for investigative reporters" in the new media world. Ideally, we'll have them from all sides. Project Veritas, a very small group with a right-wing agenda, is a stark contrast to the lack of similar investigative work on the left (at least in the US) for the past several years. I like Project Veritas: real, old-school undercover work, but they're never going to e.g. find scandalous corruption in the NRA or Trump's businesses.
Any idiot can read the news and tell me what I'm "supposed to think" about it. Fuck those guys. Show me the hidden camera footage - that's a real journalist.
My first thought after reading the summary was Bender yelling, "Like Facebook, but with blackjack and hookers!"
You do know Mark Zuckerberg once famously expensed a large travel-related expense as "hookers and blow", right? (The story goes he was pissed at being accused of wasting investors' money on nonsense, and he returned fire in a passive-aggressive way.)
nderstanding the difference between a O(n) and O(log(n)) operation can't be hand waved away
It almost always can these days. If your server isn't CPU-bound, it just doesn't matter. And if you're running a typical (memory-constrained) cloud server, O(log(n)) is just another way of saying 30 * O(n). If you're worried about a flat 30x CPU performance hit, but you're using Java (as most people do these days), then you've made a series of poor choices.
But I say that assuming that everyone uses hashtables for everything these days, so anyone that ends up O(log(n)) would likely take non-trivial work to improve, something beyond "use the right library class" such as "you don't need to sort that data to solve this, just be a bit clever". Dev time might well be better spent elsewhere, as fun as "being clever" might be.
I've been amazed how many "design patterns" are really just "here's how to cope with this weakness in C++ patterns", that apply to no other language.
Anyone have enough experience with C++14 to comment on whether the 11/14 modernization attempts have addressed most of these patterns? Or was the committee off in the weeds?
Finally, you suggest later in your comment that my description of your work is broadly correct: "the good jobs seem to be in solving quite simple problems at very large scale". Maybe that's your experience; my experience is that there are interesting, non-academic, good-paying jobs that are not just simple applications at web scale. The fact that my comment seems to have hit a nerve also supports my hunch.
You assume much. It's a bad habit for an engineer. Perhaps you don't understand the problems inherent in "at scale" for any non-trivial infrastructure. For example, creating a key-value store is reasonably easy, even a highly available one. Doing that at 1 billion TPS is its own world of challenges (but you still won't have to solve a graph-traversal algorithm). Solving those sorts of problems pays quite well these days - to do better, you have to work somewhere no one wants to work (e.g., WalMart or an investment bank).
Mostly because he never learned about data structures as such, and partly because he didn't want to ask -- and thereby admit that those of us who were decades younger than him knew more than he did -- he did not know that a std::deque (protected by a std::mutex for thread safety) solved the problem, was safer, and was faster than his code.
Sure, you need to eventually read an algorithms textbook. No doubt. Or at least read the documentation for your language library. But that's something anyone who belongs in the field will find natural - after all, whatever tech stack you start with will become obsolete eventually, and you'll need to learn a new one, and what its library offers. And repeat that whole process at least once a decade. But mastering the fundamentals: pointers, recursion, and concurrency, that's how you know you belong in the field.
And I should point out that any concurrency problem that can be acceptably solved by a single global lock certainly fits withing my original advice for learning the fundamentals. You don't need to be able to design a lock-free concurrent queue despite the limitations of modern out-of-order processors and their weak atomic promises - because someone's already done that and put it in a library - but you do need to understand why it's important.
The wireless charger is actually powered by a super small exotic heat engine that will only run reliably on a very specific formulation of fuel. Said fuel can only be purchased direct from Apple in small quarter litre titanium canisters
I suspect there's a reason this guy is posting AC - don't want to get busted leaking the work-in-progess, huh?
They never learned one of the most basic data structures.
They learned how it behaves, and how to use it fluently in code. That's certainly important - heck, it's all you need until something mysteriously goes wrong.
Maybe you should try programming something more complicated than a web interface.
Why throw ad-hominums into a reasonable discussion - it's because you're a goat fucker, right?
Other data structures show up in kernels: binary trees in the buddy allocator, B-trees in several filesystems, and anything protected by RCU.
I did a lot of work with B-trees, but never needed to solve an abstract graph-traversal problem. Instead, more practical problems, involving adjusting the implementation for the right trade-off between space and time optimization. These days the good jobs seem to be in solving quite simple problems at very large scale.
But, heck, I'd settle for devs who would run screaming instead of considering creating or using anything of any kind containing a factoryFactoryFactory. That kind of nonsense you get from valuing academic purity over practical simplicity. That's why I advise learning the fundamentals first - the simple underpinnings to how a computer works. That builds a natural resistance to ornate overcomplexity in search of some ideal of purity.
Exactly. Pollution and CO2 are different things. Coal sucks for both, but especially for pollution. Plus, China really wants energy autonomy (and I agree that's a great goal for any nation). I'd like to see the US do more mixed-solar (solar when the Sun is out, natural gas otherwise) plants for just this reason.
A slightly thinner phone, and a 6-pound bag with $3000 worth of adapters and connectors? I see dollar signs in the eyes of Apple management at the suggestion.
What about a wireless charger that itself uses a proprietary charging cable, that ends in a 4-prong power plug, which then uses a set of other country-specific adapters? And how about headphones with a Bluetooth-to-lightning adapter, chained to a lightning-to-USB adapter, chained to a USB DAC, chained to headphones with an analog plug?
I've had to work with plenty of graduates from "Java schools" who knew all about how a hashmap behaved, but no clue how to implement one. Who knew how Java references worked, but didn't really know what a pointer was, or a register, or the stack, except as vague abstractions. They had no mental model of how a computer actually works, had never stepped through object code with a debugger, or seen what a compiler generates.
How do you find the shortest path through a graph? How do you find the k nearest neighbors of a point?
It's been my experience that these sort of questions only come up in job interviews. Maybe you've worked in more academic (i.e., non-business) circles, but in my work from the kernel to the cloud, more abstract algorithm questions just never come up. Anything commonly needed is already in a standard library somewhere. OTOH, needing to debug third-party code where you don't have the source came up quite often.
Fuck me for saying so, but MightyMartian has a point.
The definition of capitalism is that control of capital is obtained by buying it (as opposed to systems that base it on military victory, or political favoritism). Large projects require more capital than any one owner will provide, so you need a system of partial ownership. Call that what you want, but any combination of "able to buy partial ownership" is a stock market.
So then, who should control? Shareholders (think: retirees for the most part) might actually have a soul or conscience. Non-founder CEOs are selected on the basis of sociopathy alone. Do you really want no checks and balances on the CEOs?
If you don't want to cede control, don't go public, or offer a limited partnership or preferred stock instead of common stock. But investors are more willing to part with their money when they get some sense of control, so you won't cash out as big that way.
Data structures and OOP are dead easy to learn about. If anything they're over-emphasized in tutorials and whatnot. Anyone will pick that stuff up along the way.
The hard stuff, the stuff that separates the developer from the scripter, is pointers, recursion, and concurrency. You don't pick those up form writing longer and more complex scripts. You have to go out of your way to learn them, and with them a solid mental model of what actually happens under the covers.
You'll find most of those people aren't idle, they're making investment decisions, and usually the most wealthy got that way by founding a company. Do you consider software developers idle? Is the work of the mind not work? Work of the mind is the only sort of work that will exist in 100 years, after all.
Remember that racist president who said this, then grabbed a woman's pussy?
All Americans, not only in the States most heavily affected but in every place in this country, are rightly disturbed by the large numbers of illegal aliens entering our country. The jobs they hold might otherwise be held by citizens or legal immigrants. The public service they use impose burdens on our taxpayers. That's why our administration has moved aggressively to secure our borders more by hiring a record number of new border guards, by deporting twice as many criminal aliens as ever before, by cracking down on illegal hiring, by barring welfare benefits to illegal aliens. In the budget I will present to you, we will try to do more to speed the deportation of illegal aliens who are arrested for crimes, to better identify illegal aliens in the workplace. We are a nation of immigrants. But we are also a nation of laws. It is wrong and ultimately self-defeating for a nation of immigrants to permit the kind of abuse of our immigration laws we have seen in recent years, and we must do more to stop it.
We need to do something, sure, but overpaid make-work isn't the answer. Training people is much better. Harvesting them to make Soylent Green is much cheaper. Just throwing money at them solves nothing.
The idle rich are a very small set of people. Most people do something with their lives given the opportunity. And that's the problem we need to solve: giving everyone that opportunity. We as a society suck at vocational training, and we can fix that.
In Germany if you want to work at, say, Mercedes, you'll be an intern on the factory line by 16, having gotten an education specifically tuned for that job and the chance to do the work. By graduation, you're there in that well-paying skilled manufacturing job.
America has over a million high skilled manufacturing jobs unfilled due to lack of trained workers. The companies aren't going to do that on their own -- they aren't schools -- but we as a society can surely work together with those manufacturers to make it happen. But instead we turn up our noses at blue-collar work, dismiss the working class as stupid racists, and generally separate education from labor as far as we possibly can. It won't end well.
The National Enquirer was up for a Pulitzer when they were the only paper to report on a scandal involving a Dem candidate. It's all politics, all the way down, especially wikipedia.
The Daily Fail can at least be entertaining. It's not like you can believe anything you read in the WaPo or NYT - it's all just confirmation bias - but the Mail at least tries not to be dull.
Still not a citation - if you're making the claim, burden of proof lies on you to back it up.
I'm not here to do your homework. There are dozens of articles about this on google away, if you actually want to learn.
. Fivethirtyeight, which is a highly credible source in my experience,
Hahaha, nice one.
it means that there aren't qualified applicants turning up at the price you're willing to pay.
Paying more lets you hire away from other employers. For it to change the size of a skilled labor pool there has to be a way for workers to train. (How else would you imagine the total size of the pool of capable workers growing?) Why aren't we providing this? There are some fields where community college work well for entry, but not most blue-collar work. We need the equivalent there, and not scammers like ITT tech etc.
Jeez, leave Bill Clinton alone. Move on, already.
you don't need TENTS to sleep indoors. Instead he should have just bought some sleeping bags and a couple of pillows.
The cost is the same, for all in tents and porpoises.
Or do you think you are somehow entitled to see their content?
It seems like they want to share their content. They just can't figure out how to monetize it. Really not my problem.
Most of what I watch these days is Patreon-funded, because you can't depend on advertising revenue in the first place if you want to talk about anything controversial (and not just politics - game reviews are even crazier in this regard).
All media has a political agenda. The old media is collapsing for lack of anything except a political agenda. The real question is "who will pay for investigative reporters" in the new media world. Ideally, we'll have them from all sides. Project Veritas, a very small group with a right-wing agenda, is a stark contrast to the lack of similar investigative work on the left (at least in the US) for the past several years. I like Project Veritas: real, old-school undercover work, but they're never going to e.g. find scandalous corruption in the NRA or Trump's businesses.
Any idiot can read the news and tell me what I'm "supposed to think" about it. Fuck those guys. Show me the hidden camera footage - that's a real journalist.
Is your google broken?
It was about 600k in 2014, rising every year, expected to be 2-3 million by 2025.
My first thought after reading the summary was Bender yelling, "Like Facebook, but with blackjack and hookers!"
You do know Mark Zuckerberg once famously expensed a large travel-related expense as "hookers and blow", right? (The story goes he was pissed at being accused of wasting investors' money on nonsense, and he returned fire in a passive-aggressive way.)
nderstanding the difference between a O(n) and O(log(n)) operation can't be hand waved away
It almost always can these days. If your server isn't CPU-bound, it just doesn't matter. And if you're running a typical (memory-constrained) cloud server, O(log(n)) is just another way of saying 30 * O(n). If you're worried about a flat 30x CPU performance hit, but you're using Java (as most people do these days), then you've made a series of poor choices.
But I say that assuming that everyone uses hashtables for everything these days, so anyone that ends up O(log(n)) would likely take non-trivial work to improve, something beyond "use the right library class" such as "you don't need to sort that data to solve this, just be a bit clever". Dev time might well be better spent elsewhere, as fun as "being clever" might be.
As someone who provides cloud servers, let me just say: I love that guy. That guy rock. Never change, Java, never change.
I've been amazed how many "design patterns" are really just "here's how to cope with this weakness in C++ patterns", that apply to no other language.
Anyone have enough experience with C++14 to comment on whether the 11/14 modernization attempts have addressed most of these patterns? Or was the committee off in the weeds?
Finally, you suggest later in your comment that my description of your work is broadly correct: "the good jobs seem to be in solving quite simple problems at very large scale". Maybe that's your experience; my experience is that there are interesting, non-academic, good-paying jobs that are not just simple applications at web scale. The fact that my comment seems to have hit a nerve also supports my hunch.
You assume much. It's a bad habit for an engineer. Perhaps you don't understand the problems inherent in "at scale" for any non-trivial infrastructure. For example, creating a key-value store is reasonably easy, even a highly available one. Doing that at 1 billion TPS is its own world of challenges (but you still won't have to solve a graph-traversal algorithm). Solving those sorts of problems pays quite well these days - to do better, you have to work somewhere no one wants to work (e.g., WalMart or an investment bank).
Mostly because he never learned about data structures as such, and partly because he didn't want to ask -- and thereby admit that those of us who were decades younger than him knew more than he did -- he did not know that a std::deque (protected by a std::mutex for thread safety) solved the problem, was safer, and was faster than his code.
Sure, you need to eventually read an algorithms textbook. No doubt. Or at least read the documentation for your language library. But that's something anyone who belongs in the field will find natural - after all, whatever tech stack you start with will become obsolete eventually, and you'll need to learn a new one, and what its library offers. And repeat that whole process at least once a decade. But mastering the fundamentals: pointers, recursion, and concurrency, that's how you know you belong in the field.
And I should point out that any concurrency problem that can be acceptably solved by a single global lock certainly fits withing my original advice for learning the fundamentals. You don't need to be able to design a lock-free concurrent queue despite the limitations of modern out-of-order processors and their weak atomic promises - because someone's already done that and put it in a library - but you do need to understand why it's important.
The wireless charger is actually powered by a super small exotic heat engine that will only run reliably on a very specific formulation of fuel. Said fuel can only be purchased direct from Apple in small quarter litre titanium canisters
I suspect there's a reason this guy is posting AC - don't want to get busted leaking the work-in-progess, huh?
They never learned one of the most basic data structures.
They learned how it behaves, and how to use it fluently in code. That's certainly important - heck, it's all you need until something mysteriously goes wrong.
Maybe you should try programming something more complicated than a web interface.
Why throw ad-hominums into a reasonable discussion - it's because you're a goat fucker, right?
Other data structures show up in kernels: binary trees in the buddy allocator, B-trees in several filesystems, and anything protected by RCU.
I did a lot of work with B-trees, but never needed to solve an abstract graph-traversal problem. Instead, more practical problems, involving adjusting the implementation for the right trade-off between space and time optimization. These days the good jobs seem to be in solving quite simple problems at very large scale.
But, heck, I'd settle for devs who would run screaming instead of considering creating or using anything of any kind containing a factoryFactoryFactory. That kind of nonsense you get from valuing academic purity over practical simplicity. That's why I advise learning the fundamentals first - the simple underpinnings to how a computer works. That builds a natural resistance to ornate overcomplexity in search of some ideal of purity.
Exactly. Pollution and CO2 are different things. Coal sucks for both, but especially for pollution. Plus, China really wants energy autonomy (and I agree that's a great goal for any nation). I'd like to see the US do more mixed-solar (solar when the Sun is out, natural gas otherwise) plants for just this reason.
A slightly thinner phone, and a 6-pound bag with $3000 worth of adapters and connectors? I see dollar signs in the eyes of Apple management at the suggestion.
What about a wireless charger that itself uses a proprietary charging cable, that ends in a 4-prong power plug, which then uses a set of other country-specific adapters? And how about headphones with a Bluetooth-to-lightning adapter, chained to a lightning-to-USB adapter, chained to a USB DAC, chained to headphones with an analog plug?
Oh, yeah, it's like printing money.
I've had to work with plenty of graduates from "Java schools" who knew all about how a hashmap behaved, but no clue how to implement one. Who knew how Java references worked, but didn't really know what a pointer was, or a register, or the stack, except as vague abstractions. They had no mental model of how a computer actually works, had never stepped through object code with a debugger, or seen what a compiler generates.
How do you find the shortest path through a graph? How do you find the k nearest neighbors of a point?
It's been my experience that these sort of questions only come up in job interviews. Maybe you've worked in more academic (i.e., non-business) circles, but in my work from the kernel to the cloud, more abstract algorithm questions just never come up. Anything commonly needed is already in a standard library somewhere. OTOH, needing to debug third-party code where you don't have the source came up quite often.
Fuck me for saying so, but MightyMartian has a point.
The definition of capitalism is that control of capital is obtained by buying it (as opposed to systems that base it on military victory, or political favoritism). Large projects require more capital than any one owner will provide, so you need a system of partial ownership. Call that what you want, but any combination of "able to buy partial ownership" is a stock market.
So then, who should control? Shareholders (think: retirees for the most part) might actually have a soul or conscience. Non-founder CEOs are selected on the basis of sociopathy alone. Do you really want no checks and balances on the CEOs?
If you don't want to cede control, don't go public, or offer a limited partnership or preferred stock instead of common stock. But investors are more willing to part with their money when they get some sense of control, so you won't cash out as big that way.
At least read TFS FFS. No one is proposing human drivers here.
Data structures and OOP are dead easy to learn about. If anything they're over-emphasized in tutorials and whatnot. Anyone will pick that stuff up along the way.
The hard stuff, the stuff that separates the developer from the scripter, is pointers, recursion, and concurrency. You don't pick those up form writing longer and more complex scripts. You have to go out of your way to learn them, and with them a solid mental model of what actually happens under the covers.
You'll find most of those people aren't idle, they're making investment decisions, and usually the most wealthy got that way by founding a company. Do you consider software developers idle? Is the work of the mind not work? Work of the mind is the only sort of work that will exist in 100 years, after all.
Remember that racist president who said this, then grabbed a woman's pussy?
All Americans, not only in the States most heavily affected but in every place in this country, are rightly disturbed by the large numbers of illegal aliens entering our country. The jobs they hold might otherwise be held by citizens or legal immigrants. The public service they use impose burdens on our taxpayers. That's why our administration has moved aggressively to secure our borders more by hiring a record number of new border guards, by deporting twice as many criminal aliens as ever before, by cracking down on illegal hiring, by barring welfare benefits to illegal aliens. In the budget I will present to you, we will try to do more to speed the deportation of illegal aliens who are arrested for crimes, to better identify illegal aliens in the workplace. We are a nation of immigrants. But we are also a nation of laws. It is wrong and ultimately self-defeating for a nation of immigrants to permit the kind of abuse of our immigration laws we have seen in recent years, and we must do more to stop it.
What a racist misogynist asshole that was, right?
We need to do something, sure, but overpaid make-work isn't the answer. Training people is much better. Harvesting them to make Soylent Green is much cheaper. Just throwing money at them solves nothing.
The idle rich are a very small set of people. Most people do something with their lives given the opportunity. And that's the problem we need to solve: giving everyone that opportunity. We as a society suck at vocational training, and we can fix that.
In Germany if you want to work at, say, Mercedes, you'll be an intern on the factory line by 16, having gotten an education specifically tuned for that job and the chance to do the work. By graduation, you're there in that well-paying skilled manufacturing job.
America has over a million high skilled manufacturing jobs unfilled due to lack of trained workers. The companies aren't going to do that on their own -- they aren't schools -- but we as a society can surely work together with those manufacturers to make it happen. But instead we turn up our noses at blue-collar work, dismiss the working class as stupid racists, and generally separate education from labor as far as we possibly can. It won't end well.