It's a clunky explanation. You have software X installed to handle filetype A, and you never use software X. Then you get a file of filetype A, and it opens the software. "WE CAN EXPLOIT THE SOFTWARE EVEN IF YOU NEVER RUN IT!"... just like Microsoft Word with malicious DOCX files...
So now people are saying, "oh people need to have a living wage". But that's not what minimum wage was for!
The National Industrial Recovery Act of 1933 prohibited child labor, established maximum working hours, and also established the minimum wage. Here's what its architect stated as the purpose:
It seems to me to be equally plain that no business which depends for existence on paying less than living wages to its workers has any right to continue in this country. By "business" I mean the whole of commerce as well as the whole of industry; by workers I mean all workers, the white collar class as well as the men in overalls; and by living wages I mean more than a bare subsistence level--I mean the wages of decent living.
Throughout industry, the change from starvation wages and starvation employment to living wages and sustained employment can, in large part, be made by an industrial covenant to which all employers shall subscribe. It is greatly to their interest to do this because decent living, widely spread among our 125,000,000 people, eventually means the opening up to industry of the richest market which the world has known. It is the only way to utilize the so-called excess capacity of our industrial plants. This is the principle that makes this one of the most important laws that ever has come from Congress because, before the passage of this Act, no such industrial covenant was possible.
On this idea, the first part of the Act proposes to our industry a great spontaneous cooperation to put millions of men back in their regular jobs this summer. The idea is simply for employers to hire more men to do the existing work by reducing the work-hours of each man's week and at the same time paying a living wage for the shorter week.
So, what was the minimum wage for?
The root of the problem is that now more and more people make minimum wage and people have to live on it.
Yes, that happens when minimum wages do not keep up with productivity. Everyone earning above a wage level becomes capable of purchasing more wage-hours at a lower level. Products and services become more commodity, and the quantity demanded for such increases.
In a natural economy, this causes a shortage of labor. Wages increase, unemployment becomes incredibly low, and fertility rises. Two decades later, a boomer generation enters the workforce, creating a labor glut, driving wages down, and expanding the low-wage workforce. This cycle repeats, pumping up an ever-larger, more-desperate low-wage workforce, with the occasional economic boom and crash.
In an economy with immigration, we import workers to alleviate the labor shortage. This prevents the constriction, boom, and bust cycle; however, wages always sit at the minimum, and the poverty workforce expands as it does above.
The solution to all of this is a minimum wage tied to the per-capita income, such that wages rise when the per-person productivity rises. This applies a natural constriction to the growth of the low-wage labor force: it cannot expand beyond what would place it below a certain relative per-worker wealth level compared to our nation's per-capita wealth, else jobs become more-scarce, fertility decisions decrease, and immigrant labor inflow slows. The economy becomes stable. At the same time, the lowest-wage worker suffers less poverty by earning for their necessary time spent a fair share of our nation's great wealth.
Note the salient fact: that more and more of the labor we demand--we as consumers, making the purchasing decisions, thus determining what kind of jobs must be filled--is of a nature of menial work not quite achievable with the same labor employed to different means. Additional labor at a higher price could make and maintain machines to do complex tasks such as unloading trucks and stocking store shelves; yet our techn
Being more productive means you should get paid more
No it doesn't. Being more productive means your labor time can produce more, and the labor trade can purchase more.
If we raise minimum wage with productivity, we'll compensate people fairly: we need burger flippers, grocery baggers, shelf stockers, people who are unproductive but are more productive nevertheless than trying to get machines to do these jobs in a clunky and even-less-efficient manner. Those people deserve a fair share--they invest their time to do necessary work, and they deserve a basic portion of our great wealth as compensation, not just whatever we deem is in line with how productive they are. Our society would collapse without them.
Your wages are only in line with how much we'd have to pay to replace you. Minimum wages protect workers from that, and middle-income workers who are harder to replace will be difficult to get down to the minimum wage no matter where it's set--if you're making $12/hr and we move minimum wage to $15, you'll be making more than $15/hr because why aren't we paying you just $7.50/hr now? Plenty of people work for $7.50/hr; why can't we get one of them to do your job? That's why we'll be paying you more than $15 when the minimum wage is $15.
That means people do get to purchase more as productivity increases. We don't analyze how productive you are; it sorts itself out--if the minimum wage is properly set based on per-capita productivity.
It's like looking at a "both sides" argument: vaccines cause autism and global warming is a hoax. Also, the next iteration of technology will end all jobs this time, really. The rapture is Saturday, by the way.
That's what the "integrity" part of encryption does: if you can only interact with a program via an encrypted stream, authenticated by public key, and the encryption code to decrypt and verify authenticity and integrity of the message is faultless, then you know that only those authenticated to the system can attack all other parts of the system. Your attack surface and threat actor set is minimized.
The job's created are not as many as the jobs destroyed
...for the same amount of the same product produced.
We either consume more (e.g. at a point, carriages and horses were for rich folk and regular people walked or road donkeys; cars are now a commodity) or we consume other things (e.g. we no longer spend 40% of our income on food, so we can buy iPhones).
allows them to have a greater part of a shrinking pie.
The size of the pie out there per individual person is getting bigger.
The hot-blast furnace allowed 200 workers to produce, in the same hours worked per worker, what 86,000 workers once produced in iron ingots. The wooden shipping pallet eliminated 85% of dock worker labor to ship the same goods. Pneumatic power tools. Computers. Intensive agriculture.
Because we don't have 98% of our workers laboring 16-hour days 100 hours per week on farms and at loading docks, we can make all this stuff. Those workers make tons of other things--many of them are doctors and nurses, researchers, engineers, computer programmers.
The monolithic approach basically insures every part of the OS is always there and ready to be attacked
That's not actually true.
Your attack surface is only what is exposed to attack. If you have nvidia device drivers loaded into memory but you don't have an nvidia video card, you can't trip a security vulnerability in the nvidia device driver because any calls to video operations will go through the Intel or AMD drivers.
To make a piece of code vulnerable to attack, that code has to first run. Unused code can't expose security vulnerabilities; a vulnerability can jump to unused code if it's already taken control of program flow, but that's a different beast (usually the target is libc, e.g. jumping to system() or execve() to download and then execute a remote shell).
Simply removing software that isn't being used doesn't remove attack surface. If you install every service in the world but only actually run your e-mail server with TLS 1.3 using RSA-AES-GCM, you can't be attacked through an HTTP server, and you can't be attacked by a TLS 1.1 downgrade vulnerability to weak DES--even though your libraries are loaded and fully-ready to support TLS 1.1 with 40-bit DES. The software's configured to not use the DES code or TLS 1.1, and the protocol vulnerability that allows MITM to downgrade TLS 1.1 doesn't work on TLS 1.2 or TLS 1.3.
I know: in the real world, we can open things with hammers, and the fact that something is present makes it a useful tool. Computers are different in that they can actually be perfectly-impenetrable, as you need a mathematically-constrained method to manipulate them (this is true of everything in the world, but you can't set a variable that says "STRENGTH = INFINITE" so a ginormous hammer won't break through your wall). The fact that a thing is right in front of you doesn't mean you can actually touch it. Installing Microsoft Office so you can use Microsoft Word doesn't expose you to flaws unique to Microsoft PowerPoint--you have to actually run PowerPoint to get hacked through PowerPoint, even though Office loads up the whole suite and only calls the filters to open Word documents because that's what you're doing.
The monoculture--the fact that the piece being attacked is the same piece everywhere--does make for broad vulnerability. The BSD TCP/IP stack, Linux TCP/IP stack, and Microsoft TCP/IP stack are all different code, so an attack that hijacks kernel memory on one probably won't work on the others.
Google is not providing a mechanism to specifically target hate mail at designated groups. Yet that is what Facebook is doing.
Google is providing a mechanism to target media to designated groups. That media could be in their interest and nobody else's, or it could be in everybody's interests but the entity producing the ad doesn't want to deal with those groups.
One of these is legal and the other isn't. Facebook's platform can't inherently discriminate between these two things at the moment: unlike with a newspaper, Facebook ads can go out without Facebook's human-driven review.
What if someone e-mailed child pornography through gmail?
You're still describing a lot of code at rest that isn't doing anything, and your solution is to take the at-rest code away, then re-introduce it whenever it's called. There won't be a thorough evaluation of that re-introduction, and it's a new place to plant modified code. Nothing's changed except how many dialogues the user has to occasionally click through without the technical expertise to know whether or not there's a threat.
It's a matter of the labor involved in farming and processing bamboo. If it takes more labor, it's more-expensive. Expense flows downstream to the consumer, which means people are poorer (you use more labor to make things, thus all human labor makes fewer things, thus people cannot buy as much because they cannot trade their labor for as much because of the laws of physics).
ONLY true when the ARM's performance is significantly less than Intel/AMD as well.
ARM has historically had more performance per clock than x86 and x86-64; and modern ARM chips run like 2.4GHz at a watt of peak TDP on four cores.
Think about linear character matching ("abc" in "aaabc" -> "a=a, b!=a" -> "a=a, b!=a" -> "a=a, b=b, c=c" -> match) versus Booyer-Moore ("abc" in "aabc" -> "c:a = 3" -> "c=c, b=b, a=a" -> match). Booyer-Moore finds a string--faster with longer search strings--in large amounts of text with few comparisons, thus issues fewer CPU instructions.
CPUs can implement ALUs, decoders, and pipelines to execute the same instruction code in fewer clock cycles. Just like using a different software algorithm, you can use a different hardware approach.
Prefixed instructions and fixed-length instruction sets are core to ARM. Literally every instruction is prefixed. That means where you might compare for one cycle, then jump or not jump on the next cycle, ARM simply jumps or doesn't jump. One fewer cycle.
The decoder doesn't have to deal with figuring out instruction size or the content if it picks an instruction prefixed to only execute if ZF is set, so if you SUB r2, r1 and the result is zero, the next instruction that executes only if ZF is not set is just skipped and the decoder moves on.
Because the CPU will read ahead and cache (preload) the next several instructions (fetches from RAM are slow!), it's technically-possible to block out the next e.g. 10 instructions as IFZ [INSN], and have an ARM CPU internally identify the next several instructions are prefixed IFZ and just skip the instruction pointer ahead that many. Remember: every instruction is exactly one word wide; you don't need to know what the next instruction is to know where the following instruction starts. You don't have to decode the instructions if they won't be executed.
This feature frequently eliminates a large number of comparisons and jumps, trimming down the size of the code body (you'd think variable-length insns would do that, but that usually doesn't work out). More instructions fit into cache, and branch prediction becomes simpler (less power) and more-effective.
ARM also has 30 GPRs. x86-64 has 10 GPRs, plus source/destination/base/count pointer registers that are basically GPRs. A lot happens without using RAM as an intermediate scratch pad.
It's like LED lighting. A single LED might throw off light with just milliwatts of power... but crank it up so it's throwing off EXACTLY the same amount of light as a 100-watt halogen lightbulb (measured from every direction), with color fidelity that's at least as good as that 100-watt halogen bulb (none of this "80+ CRI" shit, or even "92+ CRI with weak R9"), and it's going to CONSUME at least 70-80 watts and throw off almost as much heat AS the original incandescent bulb
Halogen and incandescent bulbs are black-body emitters: much of their light is in the infrared range. LEDs are narrow emitters and use combinations of materials to emit in multiple ranges when providing white light. That means an LED operating on 100 watts of power emits about 80 watts of visible light, while a halogen operating at 100 watts emits about 20 watts of visible light, and an incandescent tungsten-coil bulb emits about 10 watts of visible light.
An LED emitting the same broad-spectrum visible light as a 100-watt halogen would consume 25 watts of power.
AMD created the x86-64 architecture, and is making inroads with Epyc. AMD also has some RISC-V work in the pipeline. I'm predicting RISC-V will be big: Intel may try to capitalize on ARM thanks to mobile space, and AMD will start shoving RISC-V (no license fees) into processors for Chromebooks and the like, then into servers running Linux for RISC-V or something.
The next Raspberry Pi might be RISC-V. It's been mentioned. Nobody's taking that seriously yet, and they're not suggesting it seriously yet.
AMD beat Intel once doing this. They invented a whole new architecture and killed IA-64.
Where is this word "huckster" coming from? I've seen it recently to describe people like Larry Kudlow.
Being "born with a high degree of innate talent" seems to be a highly-coincidental process. When we pull people born from the dredges of muddled poor-people genes into an adoption agency and give them to rich folks, we somehow always catch the ones who somehow mutated high-talent genes. Likewise, those from a long line of highly-talented individuals who are put into a poor social environment with inadequate parental, teacher, and peer support seem to always also be some sort of mutation to the low-talent gene.
Are you trying to say that users should not be allowed to vote for the features they want
No, I'm using vote tallying rules as an example of systems which we can manipulate, e.g. by adding candidates and adjusting campaign strategy. The point of adding candidate C isn't for C to win; it's to make candidate B lose so candidate A wins.
Systems aren't built to be insecure; they just get that way, mainly by negligence. Diligence still produces insecure systems, but the flaws are harder to find, less frequent, and often difficult or impossible to exploit for controlled outcomes.
I can design a more-secure OS; implementing it is doable, but somewhat complex; and then your application software has to implement capabilities models for the OS to apply because it can't know what any given software should and should not do (e.g. Gimp should not attempt to read Firefox's password database).
if there is a feature that most people use but which you have not used in a (sufficiently) long time, then the OS should ask you if it can remove that feature from the application. (Or applications, if it is a feature used by many of them.)
The application would need to expose information about that application code and feature. If it's not used, the code path isn't activated; but then, the code path could be activated by it being loaded, so it looks like it's in use. Each bit of code not used is never executed, but how often do you use the cosine function in JavaScript? You can't really track all that effectively, or know if you're removing a critical component.
In short: all of that has to be managed by the application itself, as the OS doesn't know anything about how applications actually work.
deliberate practice is far older than Ericson, or even language. It's the way in which every predator learns to hunt for example.
Not really. Casual practice leads to a plateau when you're good enough. Consider drawing: you find a subject, you draw. You keep doing this, you improve.
With deliberate practice, you identify that you specifically have trouble with the details of eyes. The irises are always a bit off-center, the expressions are a bit off, and so forth. Instead of drawing faces or people again and again, you start drawing highly-detailed expressions, with focus on the eyes. You draw eyes again and again--but not just eyes; you identify what you can't do, and you draw those things, which generates errors. You review those errors immediately (constant and immediate feedback), consider what adjustments you need to make, and then make adjustment. You keep doing this until you've improved.
If you just draw eyes over and over, you'll just stay good enough. You'll always look at it and say, "Well it still doesn't look quite right." That's okay, and there's no real reason to improve, so you won't.
Deliberate practice breaks this limit. It allows a native Japanese speaker to speak English fluently and clearly as if a native speaker, even just in the first pass of learning; and allows a native English speaker to do the same in Japanese, getting all the little bits and pieces correct as if they grew up with the language and very culture. Most people never get there, even after decades of speaking; but they could in just a few months.
Computer security is difficult. Everything that's a flaw is exploitable--to some degree.
Plurality voting allows us to run clones. A 44% candidate is a winner because the other two mains split the vote 44-32-24. We can exploit this: 44% can have a friend run as a clone of 56%, who only needs to take a bit over 13% of the vote to make 44% win.
Majority-runoff and Instant Runoff Voting suffer a more-complex flaw exemplified in Bulington, Vermont's 2009 Mayoral election. Given candidates A and B, whereas candidate C has the qualities favored by some B voters opposite those qualities for which they reject A, candidate C will take votes from B and take many fewer votes from A. That means in A vs. B you can have candidate B win; and indeed in B vs. C candidate B wins (being more favored by those voters who favor A). When you run A-B-C, however, Candidate B has very few votes, so is eliminated.
By constructing this in such a manner, when Candidate B typically wins and candidate C does not receive a 50% majority, you eliminate Candidate B and forfeit the race to Candidate A. In an A vs. B race, B wins; by adding C, you change the winner from B to A. This requires some campaign finesse on the part of C, unless it's a matter of straight political ideology (in Burlington, A and B were liberals, with A being the progressive; C was a conservative, and so the conservatives moved from the more moderate liberal to their favored, knocking out the moderate. Liberals vote liberal, so moved to the progressive, defeating the conservative).
Notice that this isn't about integrity of the ballots, about electronic voting systems (there are some heavy considerations in using electronic voting systems), or whatnot. This isn't about whether you moved to a universal vote-by-mail setup and didn't bother to ask if Oregon's election board will ever be corrupt enough to manipulate the signature scanners or steam open envelopes and run their print-on-demand ballot maker to duplicate ballots after the USPS reports they've been properly received. It's pure manipulation of the voting rule.
Flaws. Systems have flaws.
Tideman's Alternative. Tideman's Alternative resists the flaws in majority-runoff and IRV above. It's immune to everything...practically.
In an election with 40% hard-right, 29% conservative, and 31% liberal voters, with Unified Majority using a nonpartisan blanket primary operated by single transferable vote and a general operated on Tideman's Alternative, the Moderate Conservative wins. There are 69% conservatives; but they stand with the Liberals on not liking the Hard Right candidate.
Remove the 40% hard-right and you get a Moderate Liberal. Remove the liberals OR the moderate conservatives and you get the Hard Right candidate. Every vote counts.
One problem: burying.
To bury the Moderate Conservative, the Hard Right voters have to vote HR>Progressive>MR>ML. They have to rank the Progressive their second choice. This is because Tideman's will identify the Smith Set and then eliminate everyone else; then it identifies the candidate with the fewest votes and eliminates that candidate. That tabulation repeats until the Smith Set is one candidate.
Burying fails if 30% of the Hard Right voters rank in this manner. Further, the failure can lead to the Progressive getting elected, or to the Moderate Liberal. Think about the Never-Trump Republicans who voted Hillary: in a Bernie-Hillary-Rubio-Trump race, the Trump voters would be voting Trump>Bernie>Rubio>Hillary. If Trump doesn't have sufficient votes to win, the Hillary>Bernie votes are liable to compound to produce a Bernie Sanders victory, where natural voting would produce a Marco Rubio victory.
This flaw is even harder to control when using the Schwartz Set instead of the Smith Set, although it may be a bit more fragile and prone to give a random result when a large percentage of voters attempt to manipulate the system in the same way. Considering
if you're trying to scale that up to "anybody could be an Einstein" - I find that extremely unlikely. The further outside the normal range you get, the bigger the impact of genetic predisposition. The brain is not infinitely plastic - and like muscle, there's a limit to how far you can push it.
Do you think people achieve the full of their potential at any time in their lives? That they can achieve no more and have hit the limits of their brain's plasticity?
K. Anders Ericsson describes the "Okay Plateau," where people cease to improve. You become a decent pianist, a decent typist, a decent computer programmer, but can't become better. Why? Because what you're doing is not inflicting pain, and you're not invested in success.
The first is a matter of negative reinforcement: if you play Go and you keep losing, you feel bad. You like Go, but you can't enjoy being such a failure. By improving, that pain goes away. Likewise, the second--reward--occurs: you feel good about being able to win more games against stronger people.
At a point, you don't feel stupid, and you don't have this high ambition to be 6 dan or something. You're sitting at 4 kyu, you should be getting stronger, you complain about it, but whatever. When it comes time to push the boundaries, you have to put in extra effort and take risks which could result in failures, so you play safe right where you always play safe--less effort, and a lower chance of experiencing pain by losing.
Here's the rub: practice involves generating errors. You have to make mistakes and then correct them. You have to exceed your abilities, and then figure out why you failed. You factor that back in and the error rate falls, and you improve.
Why bother?
Why do you care? Why do you want to improve? What are you going to get out of it? Does it really bother you at all that you aren't better, or is it just something that would be nice if you could get it for free?
That's why you don't improve.
Ericsson invented deliberate practice to increase the pace of learning, the depth of skill developed, and the level of retention. He invented deliberate practice to let people push past the Okay Plateau and achieve skills they could never develop before simply because they didn't recognize their motivators and make a conscious effort to shift into accepting the effort and the reality of stumbling over their own inability for real.
The most brilliant minds of the species are the ones who are motivated and organized.
If you want to test this, take something on which you've plateaued and break the plateau. It's exhausting, but it's still trivial.
Intersection of large bodies of research on human memory (enormous topic), learning (oddly not a very big topic compared to the specifics of memory), and development of expertise (K. Anders Ericsson, notably). Genetic variation has a huge impact; it's just not controlling.
Motivation has the heaviest role. Any non-damaged human brain can operate in a manner similar to any other non-damaged human brain: you have the same organoids with the same function. Think about it like having a heart, liver, lungs, stomach, etc.: your brain has the nucleus accumbens (reward) and posterior superior temporal succulus (altruism), prefrontal cortex (executive function), and a bunch of other stuff that all does the same thing as any other brain. The real question is what do you want to do with it?
Your genetic variation tends to move the starting point, but doesn't limit you any more than most other humans. When it does, it's considered a mental illness: ADHD, clinical depression, certain learning disabilities, all of these come down to a severe deviation. There's also a neurological variation where the brain is "more awake" (you only need 3 hours of sleep--you can't LEARN that), similar to taking Modafinil, and these people are energetic and highly-motivated all the time--and with the same facilities as every other human.
So what can we do about the genetic background?
That your brain reduces energy for common and energy-intensive behavior is key. That behavior becomes automatic and favored, and breaking from that requires more energy expenditure (effort). What we call "motivation" is simply the ability to do that, and is part habit, part genetic (propensity for depression, mania). This is core to learning and habit-based behaviors, as well as things like addiction.
Further, people are extremely vulnerable to the pygmalion/golem effect: when we tell people they are less-intelligent or suffering from certain mental illnesses (notably depression, anxiety, and insomnia), they internalize this self-image and exhibit those qualities more-strongly than their background genetic factors. This forms the basis for cognitive behavioral therapy, which works well in tandem with pharmacological treatment of these conditions.
A regimen of physical exercise elevates most people to those apparent "genius" levels, but only if they apply the proper motivation. By engaging the same low-performance habits, you train your brain to operate at the same apparent low level of intelligence regardless of any motivation or inherent capacity.
Even then, how do we assess people? Look at poor rednecks: they're often genius automechanics, but we see them as stupid people. We won't recognize your expertise unless it's in something boring like math or programming--something 90% of the people you meet firmly believe is for nerds and other super-brain mutants who will never get laid. We don't think of politicians, bureaucrats, chefs, or performance artists as geniuses; we think of engineers, physicists, and mathematicians as the smart ones.
So your major drivers are mental illness (existence, treatment), health, and established habit (including habit of motivation). The basic driver of starting point--of how hard it is to learn when born--gets buffed out by your brain adjusting to reduce energy expenditure in the simple process of learning. There are two modes to that: learning to avoid learning, or learning to learn more-readily. The energy expenditure drops rapidly if there is a perceived reward or an established habit, as well, which is why we become extremely good at things which interest us (it takes more effort to stop, doesn't it?).
The question of what you're good at is one of exposure. People raised with strong exposure to literature and art from encouraging parents and role models become interested in literature and art. I learned to spell my name by dialing into a mainframe using a Commodore 64 when I was 3 years old, so of course I was i
The more we work, the more we produce, so we're effectively trading time for wealth. Without raising the minimum wage, the amount of low-end labor purchaseable by everybody a bit above the lowest-paid worker increases (and this scales at every step, so people a bit above that can buy more of those slightly-more-than-minimum workers's labor). That creates a glut of low-wage jobs.
Most of the money is, in fact, going to those low-wage jobs.
Walmart's CEO gets $4 per employee per year. Home Depot is like $120 among all their executives, and around $20 per employee for their CEO. AIG is ludicrous at $518 including the non-cash perks (usually negligible).
There are few billionaires, and the top doesn't have all of the income. People started massively conglomerating businesses (Unilever, Proctor and Gamble, Kraft), allowing them to take less per employee and still take more in total.
Raise minimum wage and you'll see a redistribution; it won't be from billionaires. Instead of creating 5 $250,000 jobs in the next growth cycle, we'll create 25 $50,000 jobs. There will be less poverty, more productivity, and greater wealth. Job growth will be somewhat slower; unless you jack up minimum wage insanely-fast and to ridiculous amounts (note: it has been 67% of GNI/C for decades up until 1970, and is as high as 58% in some of the best-performing nations today), you won't see an unemployment spike or the related recession.
As for high-poverty areas, those come from structural change initiating a local economic collapse. Such areas stay collapsed. Rural America is an exception: they mainly produce food there, and food becomes worth less and less of our productivity over time; they need the land to produce food, so they can't help but be left behind.
The fix for all of this is a Universal Citizen's Dividend--a form of negative income tax implemented as a social insurance. It doesn't pay an inflation-adjusted cost-of-living stipend; it pays a share.
We need social insurances--universal childcare, universal college, universal healthcare, long-term support services. This means we divert some of our great wealth to pay for these things, which stimulates the poorest areas (who pay the least in taxes) and flows wealth in to help repair them. This is yet insufficient.
Those services become more-productive over time. Healthcare, childcare, college, all become cheaper and more-effective. That means Rural America will continue to decay. The blighted Urban environments will have more success from provisioned-services insurances.
A Universal Dividend taxes a flat percentage on personal income (wage, rents not taxed as profits) and corporate profits, reflecting productive incomes. It distributes this as a flat, twice-monthly payment. The poorest receive a greater total impact, as they pay less into this; and the proportion of their income reflected by that total impact is higher, as they have less income.
While productivity improves and Rural America is bound to the land and the increasing productivity therein, thus receiving ever-less of our great wealth, the Dividend pours a share of our productivity into the hands of rural households. Those provisioned services employ workers who receive a part of this share, along with payment drawn less from the poorest than the wealthiest. This combination helps to hold up even Rural America, the seemingly-doomed corner of our economy.
This is the truth about the economy. Ocasio understands productivity--many don't--but she does miss the larger, more-complex details.
It takes 15% as much human labor to load and unload canned goods when using wooden shipping pallets versus when just stacking them directly on the truck.
Pneumatic construction tools.
The hot-blast furnace (86,000 hours of labor became 200 hours of labor).
Intensive agriculture.
Computers.
Could you imagine digging out a basement with only hand shovels?
Humans have all the same facilities, but may show up with different implementation. A little slower, a little faster.
The brain adjusts itself to reduce energy consumption in common tasks. Given similar environments, the brain will tend to adjust itself in similar ways. Put a slow kid and a fast kid in the same early learning environment and the slow kid will struggle more...at first. The brain will adjust to reduce the energy required for learning, and the slow kid will converge in learning speed with the fast kid.
In a relatively short time, the differences are such that the rate of learning allows for catching up (you can only be marginally ahead, and the educational processes aren't continuous and perfect). Then you wind up with two students of the same capabilities and capacities.
People in even slightly-varied environments tend to differentiate, however, and so one becomes rapidly interested in arts and the other in technology. Some of this has to do with actual variations: a person with a naturally-lower response to social support will naturally seek less social interaction and, diverted by technical interests, will spend more time and effort on technical problems--although a highly-social person can operate in a team on technical problems and be highly-effective, as well. People aren't naturally born with any "genetic coding for computer programming" or whatnot, so whether they become the distant artist or the distant engineer is a matter of environment.
So there isn't really much of the "natural aptitude" thing in the intellect space; there's just a lot of rapid differentiation, the pygmalion/golem effect, and so forth.
Do note that a dog's dopamine response to social interaction determines how useful it might be, just like a human's responses to social interaction can affect the human's use in certain areas. Humans who seek social interaction and attention are good entertainers; introverts who abhor distraction do not make good clowns.
Correct. In simpler terms: we need to measure the frequency of vulnerabilities per volume of code written by similarly-experienced programmers; the difficulty in teaching people to avoid those vulnerabilities; the ease in which lazy programming can create vulnerabilities; the scope of an exploit; and the stability of executing an exploit.
C#, for example, seems to be less vulnerable than Java for...some reason. I don't know why. Java seems to have failures that it shouldn't have, and C# should only be better for language specification reasons such as better-implementing interfaces and classes, or having better-documented conventions. They should both technically be equal. Someone should explore this and explain it so we can perhaps improve JVMs and CLRs based on this knowledge.
Just remember, the fastest, leanest, most efficient and compact piece of code can be replaced by something which is 5% slower, takes up 5% more memory and is 5% less efficient - but which is easy to understand, debug and maintain.
Your mentor was wrong. All of those things you do to squeeze out a bit more performance don't actually work and your code just ends up ugly and slow. Performance comes from your algorithms, and major memory savings come from using better algorithms.
Consider the B-Tree and the Radix tree. When encoding common-prefix strings, you want the Radix tree. Why? Because a B-Tree of strings will encode "/lib" pointing to "/lib/modules" pointing to "/lib/modules/4.5.1" and "/lib/modules/4.5.2" etc. Another type of trie will encode "/" -> "l" -> "i" -> "b" and so forth. The Radix tree will encode "/lib", then "modules/" and "lib", with the first pointing to a prefix of its subtrees and the second pointing to things like "c" or "g" or "ymc.so".
The very structure of the Radix tree eliminates a lot of duplicate data in memory and reduces the comparisons made. Tweaking and optimizing the Radix tree doesn't make such a gain, and your CPU and compiler will probably reach the same output code anyway. The Judy array is faster, but also much-more-complex to implement--and again is a different data structure with a different algorithm.
Various algorithms have various complexities; but when it comes to implementation, your implementation doesn't matter. The compiler will probably achieve the same SSA tree and then optimize the same output.
It's a clunky explanation. You have software X installed to handle filetype A, and you never use software X. Then you get a file of filetype A, and it opens the software. "WE CAN EXPLOIT THE SOFTWARE EVEN IF YOU NEVER RUN IT!" ... just like Microsoft Word with malicious DOCX files...
So now people are saying, "oh people need to have a living wage". But that's not what minimum wage was for!
The National Industrial Recovery Act of 1933 prohibited child labor, established maximum working hours, and also established the minimum wage. Here's what its architect stated as the purpose:
It seems to me to be equally plain that no business which depends for existence on paying less than living wages to its workers has any right to continue in this country. By "business" I mean the whole of commerce as well as the whole of industry; by workers I mean all workers, the white collar class as well as the men in overalls; and by living wages I mean more than a bare subsistence level--I mean the wages of decent living.
Throughout industry, the change from starvation wages and starvation employment to living wages and sustained employment can, in large part, be made by an industrial covenant to which all employers shall subscribe. It is greatly to their interest to do this because decent living, widely spread among our 125,000,000 people, eventually means the opening up to industry of the richest market which the world has known. It is the only way to utilize the so-called excess capacity of our industrial plants. This is the principle that makes this one of the most important laws that ever has come from Congress because, before the passage of this Act, no such industrial covenant was possible.
On this idea, the first part of the Act proposes to our industry a great spontaneous cooperation to put millions of men back in their regular jobs this summer. The idea is simply for employers to hire more men to do the existing work by reducing the work-hours of each man's week and at the same time paying a living wage for the shorter week.
So, what was the minimum wage for?
The root of the problem is that now more and more people make minimum wage and people have to live on it.
Yes, that happens when minimum wages do not keep up with productivity. Everyone earning above a wage level becomes capable of purchasing more wage-hours at a lower level. Products and services become more commodity, and the quantity demanded for such increases.
In a natural economy, this causes a shortage of labor. Wages increase, unemployment becomes incredibly low, and fertility rises. Two decades later, a boomer generation enters the workforce, creating a labor glut, driving wages down, and expanding the low-wage workforce. This cycle repeats, pumping up an ever-larger, more-desperate low-wage workforce, with the occasional economic boom and crash.
In an economy with immigration, we import workers to alleviate the labor shortage. This prevents the constriction, boom, and bust cycle; however, wages always sit at the minimum, and the poverty workforce expands as it does above.
The solution to all of this is a minimum wage tied to the per-capita income, such that wages rise when the per-person productivity rises. This applies a natural constriction to the growth of the low-wage labor force: it cannot expand beyond what would place it below a certain relative per-worker wealth level compared to our nation's per-capita wealth, else jobs become more-scarce, fertility decisions decrease, and immigrant labor inflow slows. The economy becomes stable. At the same time, the lowest-wage worker suffers less poverty by earning for their necessary time spent a fair share of our nation's great wealth.
Note the salient fact: that more and more of the labor we demand--we as consumers, making the purchasing decisions, thus determining what kind of jobs must be filled--is of a nature of menial work not quite achievable with the same labor employed to different means. Additional labor at a higher price could make and maintain machines to do complex tasks such as unloading trucks and stocking store shelves; yet our techn
Is that latin for past performance does not indicate future performance?
Being more productive means you should get paid more
No it doesn't. Being more productive means your labor time can produce more, and the labor trade can purchase more.
If we raise minimum wage with productivity, we'll compensate people fairly: we need burger flippers, grocery baggers, shelf stockers, people who are unproductive but are more productive nevertheless than trying to get machines to do these jobs in a clunky and even-less-efficient manner. Those people deserve a fair share--they invest their time to do necessary work, and they deserve a basic portion of our great wealth as compensation, not just whatever we deem is in line with how productive they are. Our society would collapse without them.
Your wages are only in line with how much we'd have to pay to replace you. Minimum wages protect workers from that, and middle-income workers who are harder to replace will be difficult to get down to the minimum wage no matter where it's set--if you're making $12/hr and we move minimum wage to $15, you'll be making more than $15/hr because why aren't we paying you just $7.50/hr now? Plenty of people work for $7.50/hr; why can't we get one of them to do your job? That's why we'll be paying you more than $15 when the minimum wage is $15.
That means people do get to purchase more as productivity increases. We don't analyze how productive you are; it sorts itself out--if the minimum wage is properly set based on per-capita productivity.
It's like looking at a "both sides" argument: vaccines cause autism and global warming is a hoax. Also, the next iteration of technology will end all jobs this time, really. The rapture is Saturday, by the way.
That's what the "integrity" part of encryption does: if you can only interact with a program via an encrypted stream, authenticated by public key, and the encryption code to decrypt and verify authenticity and integrity of the message is faultless, then you know that only those authenticated to the system can attack all other parts of the system. Your attack surface and threat actor set is minimized.
The job's created are not as many as the jobs destroyed
We either consume more (e.g. at a point, carriages and horses were for rich folk and regular people walked or road donkeys; cars are now a commodity) or we consume other things (e.g. we no longer spend 40% of our income on food, so we can buy iPhones).
allows them to have a greater part of a shrinking pie.
The size of the pie out there per individual person is getting bigger.
The hot-blast furnace allowed 200 workers to produce, in the same hours worked per worker, what 86,000 workers once produced in iron ingots. The wooden shipping pallet eliminated 85% of dock worker labor to ship the same goods. Pneumatic power tools. Computers. Intensive agriculture.
Because we don't have 98% of our workers laboring 16-hour days 100 hours per week on farms and at loading docks, we can make all this stuff. Those workers make tons of other things--many of them are doctors and nurses, researchers, engineers, computer programmers.
The monolithic approach basically insures every part of the OS is always there and ready to be attacked
That's not actually true.
Your attack surface is only what is exposed to attack. If you have nvidia device drivers loaded into memory but you don't have an nvidia video card, you can't trip a security vulnerability in the nvidia device driver because any calls to video operations will go through the Intel or AMD drivers.
To make a piece of code vulnerable to attack, that code has to first run. Unused code can't expose security vulnerabilities; a vulnerability can jump to unused code if it's already taken control of program flow, but that's a different beast (usually the target is libc, e.g. jumping to system() or execve() to download and then execute a remote shell).
Simply removing software that isn't being used doesn't remove attack surface. If you install every service in the world but only actually run your e-mail server with TLS 1.3 using RSA-AES-GCM, you can't be attacked through an HTTP server, and you can't be attacked by a TLS 1.1 downgrade vulnerability to weak DES--even though your libraries are loaded and fully-ready to support TLS 1.1 with 40-bit DES. The software's configured to not use the DES code or TLS 1.1, and the protocol vulnerability that allows MITM to downgrade TLS 1.1 doesn't work on TLS 1.2 or TLS 1.3.
I know: in the real world, we can open things with hammers, and the fact that something is present makes it a useful tool. Computers are different in that they can actually be perfectly-impenetrable, as you need a mathematically-constrained method to manipulate them (this is true of everything in the world, but you can't set a variable that says "STRENGTH = INFINITE" so a ginormous hammer won't break through your wall). The fact that a thing is right in front of you doesn't mean you can actually touch it. Installing Microsoft Office so you can use Microsoft Word doesn't expose you to flaws unique to Microsoft PowerPoint--you have to actually run PowerPoint to get hacked through PowerPoint, even though Office loads up the whole suite and only calls the filters to open Word documents because that's what you're doing.
The monoculture--the fact that the piece being attacked is the same piece everywhere--does make for broad vulnerability. The BSD TCP/IP stack, Linux TCP/IP stack, and Microsoft TCP/IP stack are all different code, so an attack that hijacks kernel memory on one probably won't work on the others.
Google is not providing a mechanism to specifically target hate mail at designated groups. Yet that is what Facebook is doing.
Google is providing a mechanism to target media to designated groups. That media could be in their interest and nobody else's, or it could be in everybody's interests but the entity producing the ad doesn't want to deal with those groups.
One of these is legal and the other isn't. Facebook's platform can't inherently discriminate between these two things at the moment: unlike with a newspaper, Facebook ads can go out without Facebook's human-driven review.
What if someone e-mailed child pornography through gmail?
You're still describing a lot of code at rest that isn't doing anything, and your solution is to take the at-rest code away, then re-introduce it whenever it's called. There won't be a thorough evaluation of that re-introduction, and it's a new place to plant modified code. Nothing's changed except how many dialogues the user has to occasionally click through without the technical expertise to know whether or not there's a threat.
It's a matter of the labor involved in farming and processing bamboo. If it takes more labor, it's more-expensive. Expense flows downstream to the consumer, which means people are poorer (you use more labor to make things, thus all human labor makes fewer things, thus people cannot buy as much because they cannot trade their labor for as much because of the laws of physics).
Oracle's Java is actually just open source OpenJDK compiled with Oracle's name on it.
ONLY true when the ARM's performance is significantly less than Intel/AMD as well.
ARM has historically had more performance per clock than x86 and x86-64; and modern ARM chips run like 2.4GHz at a watt of peak TDP on four cores.
Think about linear character matching ("abc" in "aaabc" -> "a=a, b!=a" -> "a=a, b!=a" -> "a=a, b=b, c=c" -> match) versus Booyer-Moore ("abc" in "aabc" -> "c:a = 3" -> "c=c, b=b, a=a" -> match). Booyer-Moore finds a string--faster with longer search strings--in large amounts of text with few comparisons, thus issues fewer CPU instructions.
CPUs can implement ALUs, decoders, and pipelines to execute the same instruction code in fewer clock cycles. Just like using a different software algorithm, you can use a different hardware approach.
Prefixed instructions and fixed-length instruction sets are core to ARM. Literally every instruction is prefixed. That means where you might compare for one cycle, then jump or not jump on the next cycle, ARM simply jumps or doesn't jump. One fewer cycle.
The decoder doesn't have to deal with figuring out instruction size or the content if it picks an instruction prefixed to only execute if ZF is set, so if you SUB r2, r1 and the result is zero, the next instruction that executes only if ZF is not set is just skipped and the decoder moves on.
Because the CPU will read ahead and cache (preload) the next several instructions (fetches from RAM are slow!), it's technically-possible to block out the next e.g. 10 instructions as IFZ [INSN], and have an ARM CPU internally identify the next several instructions are prefixed IFZ and just skip the instruction pointer ahead that many. Remember: every instruction is exactly one word wide; you don't need to know what the next instruction is to know where the following instruction starts. You don't have to decode the instructions if they won't be executed.
This feature frequently eliminates a large number of comparisons and jumps, trimming down the size of the code body (you'd think variable-length insns would do that, but that usually doesn't work out). More instructions fit into cache, and branch prediction becomes simpler (less power) and more-effective.
ARM also has 30 GPRs. x86-64 has 10 GPRs, plus source/destination/base/count pointer registers that are basically GPRs. A lot happens without using RAM as an intermediate scratch pad.
It's like LED lighting. A single LED might throw off light with just milliwatts of power... but crank it up so it's throwing off EXACTLY the same amount of light as a 100-watt halogen lightbulb (measured from every direction), with color fidelity that's at least as good as that 100-watt halogen bulb (none of this "80+ CRI" shit, or even "92+ CRI with weak R9"), and it's going to CONSUME at least 70-80 watts and throw off almost as much heat AS the original incandescent bulb
Halogen and incandescent bulbs are black-body emitters: much of their light is in the infrared range. LEDs are narrow emitters and use combinations of materials to emit in multiple ranges when providing white light. That means an LED operating on 100 watts of power emits about 80 watts of visible light, while a halogen operating at 100 watts emits about 20 watts of visible light, and an incandescent tungsten-coil bulb emits about 10 watts of visible light.
An LED emitting the same broad-spectrum visible light as a 100-watt halogen would consume 25 watts of power.
AMD created the x86-64 architecture, and is making inroads with Epyc. AMD also has some RISC-V work in the pipeline. I'm predicting RISC-V will be big: Intel may try to capitalize on ARM thanks to mobile space, and AMD will start shoving RISC-V (no license fees) into processors for Chromebooks and the like, then into servers running Linux for RISC-V or something.
The next Raspberry Pi might be RISC-V. It's been mentioned. Nobody's taking that seriously yet, and they're not suggesting it seriously yet.
AMD beat Intel once doing this. They invented a whole new architecture and killed IA-64.
Where is this word "huckster" coming from? I've seen it recently to describe people like Larry Kudlow.
Being "born with a high degree of innate talent" seems to be a highly-coincidental process. When we pull people born from the dredges of muddled poor-people genes into an adoption agency and give them to rich folks, we somehow always catch the ones who somehow mutated high-talent genes. Likewise, those from a long line of highly-talented individuals who are put into a poor social environment with inadequate parental, teacher, and peer support seem to always also be some sort of mutation to the low-talent gene.
That or it's more about environment than DNA.
Are you trying to say that users should not be allowed to vote for the features they want
No, I'm using vote tallying rules as an example of systems which we can manipulate, e.g. by adding candidates and adjusting campaign strategy. The point of adding candidate C isn't for C to win; it's to make candidate B lose so candidate A wins.
Systems aren't built to be insecure; they just get that way, mainly by negligence. Diligence still produces insecure systems, but the flaws are harder to find, less frequent, and often difficult or impossible to exploit for controlled outcomes.
I can design a more-secure OS; implementing it is doable, but somewhat complex; and then your application software has to implement capabilities models for the OS to apply because it can't know what any given software should and should not do (e.g. Gimp should not attempt to read Firefox's password database).
if there is a feature that most people use but which you have not used in a (sufficiently) long time, then the OS should ask you if it can remove that feature from the application. (Or applications, if it is a feature used by many of them.)
The application would need to expose information about that application code and feature. If it's not used, the code path isn't activated; but then, the code path could be activated by it being loaded, so it looks like it's in use. Each bit of code not used is never executed, but how often do you use the cosine function in JavaScript? You can't really track all that effectively, or know if you're removing a critical component.
In short: all of that has to be managed by the application itself, as the OS doesn't know anything about how applications actually work.
Folks have explored other methods of behavioral analysis.
deliberate practice is far older than Ericson, or even language. It's the way in which every predator learns to hunt for example.
Not really. Casual practice leads to a plateau when you're good enough. Consider drawing: you find a subject, you draw. You keep doing this, you improve.
With deliberate practice, you identify that you specifically have trouble with the details of eyes. The irises are always a bit off-center, the expressions are a bit off, and so forth. Instead of drawing faces or people again and again, you start drawing highly-detailed expressions, with focus on the eyes. You draw eyes again and again--but not just eyes; you identify what you can't do, and you draw those things, which generates errors. You review those errors immediately (constant and immediate feedback), consider what adjustments you need to make, and then make adjustment. You keep doing this until you've improved.
If you just draw eyes over and over, you'll just stay good enough. You'll always look at it and say, "Well it still doesn't look quite right." That's okay, and there's no real reason to improve, so you won't.
Deliberate practice breaks this limit. It allows a native Japanese speaker to speak English fluently and clearly as if a native speaker, even just in the first pass of learning; and allows a native English speaker to do the same in Japanese, getting all the little bits and pieces correct as if they grew up with the language and very culture. Most people never get there, even after decades of speaking; but they could in just a few months.
Computer security is difficult. Everything that's a flaw is exploitable--to some degree.
Plurality voting allows us to run clones. A 44% candidate is a winner because the other two mains split the vote 44-32-24. We can exploit this: 44% can have a friend run as a clone of 56%, who only needs to take a bit over 13% of the vote to make 44% win.
Majority-runoff and Instant Runoff Voting suffer a more-complex flaw exemplified in Bulington, Vermont's 2009 Mayoral election. Given candidates A and B, whereas candidate C has the qualities favored by some B voters opposite those qualities for which they reject A, candidate C will take votes from B and take many fewer votes from A. That means in A vs. B you can have candidate B win; and indeed in B vs. C candidate B wins (being more favored by those voters who favor A). When you run A-B-C, however, Candidate B has very few votes, so is eliminated.
By constructing this in such a manner, when Candidate B typically wins and candidate C does not receive a 50% majority, you eliminate Candidate B and forfeit the race to Candidate A. In an A vs. B race, B wins; by adding C, you change the winner from B to A. This requires some campaign finesse on the part of C, unless it's a matter of straight political ideology (in Burlington, A and B were liberals, with A being the progressive; C was a conservative, and so the conservatives moved from the more moderate liberal to their favored, knocking out the moderate. Liberals vote liberal, so moved to the progressive, defeating the conservative).
Notice that this isn't about integrity of the ballots, about electronic voting systems (there are some heavy considerations in using electronic voting systems), or whatnot. This isn't about whether you moved to a universal vote-by-mail setup and didn't bother to ask if Oregon's election board will ever be corrupt enough to manipulate the signature scanners or steam open envelopes and run their print-on-demand ballot maker to duplicate ballots after the USPS reports they've been properly received. It's pure manipulation of the voting rule.
Flaws. Systems have flaws.
Tideman's Alternative. Tideman's Alternative resists the flaws in majority-runoff and IRV above. It's immune to everything...practically.
In an election with 40% hard-right, 29% conservative, and 31% liberal voters, with Unified Majority using a nonpartisan blanket primary operated by single transferable vote and a general operated on Tideman's Alternative, the Moderate Conservative wins. There are 69% conservatives; but they stand with the Liberals on not liking the Hard Right candidate.
Remove the 40% hard-right and you get a Moderate Liberal. Remove the liberals OR the moderate conservatives and you get the Hard Right candidate. Every vote counts.
One problem: burying.
To bury the Moderate Conservative, the Hard Right voters have to vote HR>Progressive>MR>ML. They have to rank the Progressive their second choice. This is because Tideman's will identify the Smith Set and then eliminate everyone else; then it identifies the candidate with the fewest votes and eliminates that candidate. That tabulation repeats until the Smith Set is one candidate.
Burying fails if 30% of the Hard Right voters rank in this manner. Further, the failure can lead to the Progressive getting elected, or to the Moderate Liberal. Think about the Never-Trump Republicans who voted Hillary: in a Bernie-Hillary-Rubio-Trump race, the Trump voters would be voting Trump>Bernie>Rubio>Hillary. If Trump doesn't have sufficient votes to win, the Hillary>Bernie votes are liable to compound to produce a Bernie Sanders victory, where natural voting would produce a Marco Rubio victory.
This flaw is even harder to control when using the Schwartz Set instead of the Smith Set, although it may be a bit more fragile and prone to give a random result when a large percentage of voters attempt to manipulate the system in the same way. Considering
Once second to the US, now behind China,
With China getting further ahead of the US by the day. We really need to raise our minimum wage to help spur productivity.
if you're trying to scale that up to "anybody could be an Einstein" - I find that extremely unlikely. The further outside the normal range you get, the bigger the impact of genetic predisposition. The brain is not infinitely plastic - and like muscle, there's a limit to how far you can push it.
Do you think people achieve the full of their potential at any time in their lives? That they can achieve no more and have hit the limits of their brain's plasticity?
K. Anders Ericsson describes the "Okay Plateau," where people cease to improve. You become a decent pianist, a decent typist, a decent computer programmer, but can't become better. Why? Because what you're doing is not inflicting pain, and you're not invested in success.
The first is a matter of negative reinforcement: if you play Go and you keep losing, you feel bad. You like Go, but you can't enjoy being such a failure. By improving, that pain goes away. Likewise, the second--reward--occurs: you feel good about being able to win more games against stronger people.
At a point, you don't feel stupid, and you don't have this high ambition to be 6 dan or something. You're sitting at 4 kyu, you should be getting stronger, you complain about it, but whatever. When it comes time to push the boundaries, you have to put in extra effort and take risks which could result in failures, so you play safe right where you always play safe--less effort, and a lower chance of experiencing pain by losing.
Here's the rub: practice involves generating errors. You have to make mistakes and then correct them. You have to exceed your abilities, and then figure out why you failed. You factor that back in and the error rate falls, and you improve.
Why bother?
Why do you care? Why do you want to improve? What are you going to get out of it? Does it really bother you at all that you aren't better, or is it just something that would be nice if you could get it for free?
That's why you don't improve.
Ericsson invented deliberate practice to increase the pace of learning, the depth of skill developed, and the level of retention. He invented deliberate practice to let people push past the Okay Plateau and achieve skills they could never develop before simply because they didn't recognize their motivators and make a conscious effort to shift into accepting the effort and the reality of stumbling over their own inability for real.
The most brilliant minds of the species are the ones who are motivated and organized.
If you want to test this, take something on which you've plateaued and break the plateau. It's exhausting, but it's still trivial.
Intersection of large bodies of research on human memory (enormous topic), learning (oddly not a very big topic compared to the specifics of memory), and development of expertise (K. Anders Ericsson, notably). Genetic variation has a huge impact; it's just not controlling.
Motivation has the heaviest role. Any non-damaged human brain can operate in a manner similar to any other non-damaged human brain: you have the same organoids with the same function. Think about it like having a heart, liver, lungs, stomach, etc.: your brain has the nucleus accumbens (reward) and posterior superior temporal succulus (altruism), prefrontal cortex (executive function), and a bunch of other stuff that all does the same thing as any other brain. The real question is what do you want to do with it?
Your genetic variation tends to move the starting point, but doesn't limit you any more than most other humans. When it does, it's considered a mental illness: ADHD, clinical depression, certain learning disabilities, all of these come down to a severe deviation. There's also a neurological variation where the brain is "more awake" (you only need 3 hours of sleep--you can't LEARN that), similar to taking Modafinil, and these people are energetic and highly-motivated all the time--and with the same facilities as every other human.
So what can we do about the genetic background?
That your brain reduces energy for common and energy-intensive behavior is key. That behavior becomes automatic and favored, and breaking from that requires more energy expenditure (effort). What we call "motivation" is simply the ability to do that, and is part habit, part genetic (propensity for depression, mania). This is core to learning and habit-based behaviors, as well as things like addiction.
Further, people are extremely vulnerable to the pygmalion/golem effect: when we tell people they are less-intelligent or suffering from certain mental illnesses (notably depression, anxiety, and insomnia), they internalize this self-image and exhibit those qualities more-strongly than their background genetic factors. This forms the basis for cognitive behavioral therapy, which works well in tandem with pharmacological treatment of these conditions.
A regimen of physical exercise elevates most people to those apparent "genius" levels, but only if they apply the proper motivation. By engaging the same low-performance habits, you train your brain to operate at the same apparent low level of intelligence regardless of any motivation or inherent capacity.
Even then, how do we assess people? Look at poor rednecks: they're often genius automechanics, but we see them as stupid people. We won't recognize your expertise unless it's in something boring like math or programming--something 90% of the people you meet firmly believe is for nerds and other super-brain mutants who will never get laid. We don't think of politicians, bureaucrats, chefs, or performance artists as geniuses; we think of engineers, physicists, and mathematicians as the smart ones.
So your major drivers are mental illness (existence, treatment), health, and established habit (including habit of motivation). The basic driver of starting point--of how hard it is to learn when born--gets buffed out by your brain adjusting to reduce energy expenditure in the simple process of learning. There are two modes to that: learning to avoid learning, or learning to learn more-readily. The energy expenditure drops rapidly if there is a perceived reward or an established habit, as well, which is why we become extremely good at things which interest us (it takes more effort to stop, doesn't it?).
The question of what you're good at is one of exposure. People raised with strong exposure to literature and art from encouraging parents and role models become interested in literature and art. I learned to spell my name by dialing into a mainframe using a Commodore 64 when I was 3 years old, so of course I was i
She's only half-right.
The more we work, the more we produce, so we're effectively trading time for wealth. Without raising the minimum wage, the amount of low-end labor purchaseable by everybody a bit above the lowest-paid worker increases (and this scales at every step, so people a bit above that can buy more of those slightly-more-than-minimum workers's labor). That creates a glut of low-wage jobs.
Most of the money is, in fact, going to those low-wage jobs.
Walmart's CEO gets $4 per employee per year. Home Depot is like $120 among all their executives, and around $20 per employee for their CEO. AIG is ludicrous at $518 including the non-cash perks (usually negligible).
There are few billionaires, and the top doesn't have all of the income. People started massively conglomerating businesses (Unilever, Proctor and Gamble, Kraft), allowing them to take less per employee and still take more in total.
Raise minimum wage and you'll see a redistribution; it won't be from billionaires. Instead of creating 5 $250,000 jobs in the next growth cycle, we'll create 25 $50,000 jobs. There will be less poverty, more productivity, and greater wealth. Job growth will be somewhat slower; unless you jack up minimum wage insanely-fast and to ridiculous amounts (note: it has been 67% of GNI/C for decades up until 1970, and is as high as 58% in some of the best-performing nations today), you won't see an unemployment spike or the related recession.
As for high-poverty areas, those come from structural change initiating a local economic collapse. Such areas stay collapsed. Rural America is an exception: they mainly produce food there, and food becomes worth less and less of our productivity over time; they need the land to produce food, so they can't help but be left behind.
The fix for all of this is a Universal Citizen's Dividend--a form of negative income tax implemented as a social insurance. It doesn't pay an inflation-adjusted cost-of-living stipend; it pays a share.
We need social insurances--universal childcare, universal college, universal healthcare, long-term support services. This means we divert some of our great wealth to pay for these things, which stimulates the poorest areas (who pay the least in taxes) and flows wealth in to help repair them. This is yet insufficient.
Those services become more-productive over time. Healthcare, childcare, college, all become cheaper and more-effective. That means Rural America will continue to decay. The blighted Urban environments will have more success from provisioned-services insurances.
A Universal Dividend taxes a flat percentage on personal income (wage, rents not taxed as profits) and corporate profits, reflecting productive incomes. It distributes this as a flat, twice-monthly payment. The poorest receive a greater total impact, as they pay less into this; and the proportion of their income reflected by that total impact is higher, as they have less income.
While productivity improves and Rural America is bound to the land and the increasing productivity therein, thus receiving ever-less of our great wealth, the Dividend pours a share of our productivity into the hands of rural households. Those provisioned services employ workers who receive a part of this share, along with payment drawn less from the poorest than the wealthiest. This combination helps to hold up even Rural America, the seemingly-doomed corner of our economy.
This is the truth about the economy. Ocasio understands productivity--many don't--but she does miss the larger, more-complex details.
It takes 15% as much human labor to load and unload canned goods when using wooden shipping pallets versus when just stacking them directly on the truck.
Pneumatic construction tools.
The hot-blast furnace (86,000 hours of labor became 200 hours of labor).
Intensive agriculture.
Computers.
Could you imagine digging out a basement with only hand shovels?
Humans have all the same facilities, but may show up with different implementation. A little slower, a little faster.
The brain adjusts itself to reduce energy consumption in common tasks. Given similar environments, the brain will tend to adjust itself in similar ways. Put a slow kid and a fast kid in the same early learning environment and the slow kid will struggle more...at first. The brain will adjust to reduce the energy required for learning, and the slow kid will converge in learning speed with the fast kid.
In a relatively short time, the differences are such that the rate of learning allows for catching up (you can only be marginally ahead, and the educational processes aren't continuous and perfect). Then you wind up with two students of the same capabilities and capacities.
People in even slightly-varied environments tend to differentiate, however, and so one becomes rapidly interested in arts and the other in technology. Some of this has to do with actual variations: a person with a naturally-lower response to social support will naturally seek less social interaction and, diverted by technical interests, will spend more time and effort on technical problems--although a highly-social person can operate in a team on technical problems and be highly-effective, as well. People aren't naturally born with any "genetic coding for computer programming" or whatnot, so whether they become the distant artist or the distant engineer is a matter of environment.
So there isn't really much of the "natural aptitude" thing in the intellect space; there's just a lot of rapid differentiation, the pygmalion/golem effect, and so forth.
Do note that a dog's dopamine response to social interaction determines how useful it might be, just like a human's responses to social interaction can affect the human's use in certain areas. Humans who seek social interaction and attention are good entertainers; introverts who abhor distraction do not make good clowns.
Correct. In simpler terms: we need to measure the frequency of vulnerabilities per volume of code written by similarly-experienced programmers; the difficulty in teaching people to avoid those vulnerabilities; the ease in which lazy programming can create vulnerabilities; the scope of an exploit; and the stability of executing an exploit.
C#, for example, seems to be less vulnerable than Java for...some reason. I don't know why. Java seems to have failures that it shouldn't have, and C# should only be better for language specification reasons such as better-implementing interfaces and classes, or having better-documented conventions. They should both technically be equal. Someone should explore this and explain it so we can perhaps improve JVMs and CLRs based on this knowledge.
Just remember, the fastest, leanest, most efficient and compact piece of code can be replaced by something which is 5% slower, takes up 5% more memory and is 5% less efficient - but which is easy to understand, debug and maintain.
Your mentor was wrong. All of those things you do to squeeze out a bit more performance don't actually work and your code just ends up ugly and slow. Performance comes from your algorithms, and major memory savings come from using better algorithms.
Consider the B-Tree and the Radix tree. When encoding common-prefix strings, you want the Radix tree. Why? Because a B-Tree of strings will encode "/lib" pointing to "/lib/modules" pointing to "/lib/modules/4.5.1" and "/lib/modules/4.5.2" etc. Another type of trie will encode "/" -> "l" -> "i" -> "b" and so forth. The Radix tree will encode "/lib", then "modules/" and "lib", with the first pointing to a prefix of its subtrees and the second pointing to things like "c" or "g" or "ymc.so".
The very structure of the Radix tree eliminates a lot of duplicate data in memory and reduces the comparisons made. Tweaking and optimizing the Radix tree doesn't make such a gain, and your CPU and compiler will probably reach the same output code anyway. The Judy array is faster, but also much-more-complex to implement--and again is a different data structure with a different algorithm.
Various algorithms have various complexities; but when it comes to implementation, your implementation doesn't matter. The compiler will probably achieve the same SSA tree and then optimize the same output.