This was the one that really stood out to me. MOOCs, bootcamps etc are wildly popular now and vary massively in quality. It's very easy for candidates to look good on paper but not actually know the technical side as well as they should. More importantly, software engineering is one of the few jobs where you can get a (somewhat) quantitative measure on prospective performance so it's natural to take advantage of that.
I'm not saying that All Coding Tests Are Good, but they do provide a modicum of certainty in a very uncertain environment.
The canonical source for learning Scala from scratch (at least, when I was learning a couple of years ago) is the Coursera course by Martin Odersky, one of the language's founders. It appears that the course has grown somewhat, but you can still find part 1 here: https://www.coursera.org/learn/progfun1
I took the course - unfortunately, and to be honest, it didn't have the approachability and "fun" of Zed's books. To me - it felt very dry, academic, and quickly became a chore to complete rather than a joy. I need the version aimed for "C- python programmer" / newbie rather than "eager CS student" or "experienced Java dev".
I think you underestimate how much having something tactile, with buttons and LEDs, can really shift how younger students perceive learning. I volunteer teach a group of 8/9 year olds an intro to programming class and the difference between teaching them Python using CLI-esque tools and making things light up on the micro:bit is astounding.
5-11 -> Primary School
11-16 -> Secondary School
16-18 -> Further Education (often called college, or Sixth Form)
18-21/22 -> Higher Education (University/undergraduate)
Some secondary schools are large enough/have enough expertise to have a Sixth Form as part of it. Some children go to "preparatory school" until age 13 when they enter a secondary school.
I heard a good rule of thumb to follow when drawing Feynman Diagrams is that the fewer lines there are, the more probable the occurrence of the event represented by the diagram. So at the simplest case, a single line representing an unchanging particle, is far far more likely than any two particle interactions (3 lines) and so on.
This is true if the system you're trying to describe is weakly coupled.
If the theory is strongly coupled, then in fact more and more complicated diagrams count more and more. In this case the method of Feynman diagrams because basically useless---in the case you describe you know you can get most of the answer from a simple calculation (of the simplest diagrams). But if more complicated diagrams count more (as in strong coupling) then you don't have a place to start, because whatever diagram you pick to start at I can make more complicated and be confident that my new diagram counts more than the pieces you've computed.
In that case we need a different approach, the most generic of which is lattice field theory
Roughly, though it is actually the number of vertices and depends on the particles involved (obviously a diagram representing something very unlikely is less likely than some normal process)
I think that's just the nature of the query. Every single one of the first page of organic results for me is exactly the same: http://imgur.com/cypF0He
This is the big next step that a lot of people were expecting - where in-depth studies into all of the competitors occurs and it's gradually revealed that this defeat device game has been played by almost everyone in the industry. It'll be interesting to see the repercussions for the automakers, but inevitably this'll end with sweeping legislation changes and reform of the testing protocol and standards.
This is a very good bet. The "defeat device" turns out to be using a feature of the ECU platform provided by the ECU supplier. It would be surprising to find that VW was the only maker to cheat, when the cheating mechanism was available to everyone.
There are some markets, like voting machines, where requiring open, buildable, verifiable code is good practice. Cars might be another.
I was thinking of voting machines as well and think publicly verifiable code and hardware would be a good thing for cars (I don't think it's good enough for large scale elections, but that's another topic).
ps. just reading this in a post from Bruce Schneier[1] that is currently on the frontpage as well[2] which is about cheating software as used by car manufacturers and the IoT that is coming up:
Voting machines could appear to work perfectly --
except during the first Tuesday of November, when it
undetectably switches a few percent of votes from one
party's candidates to another's.
The only problem is that hardware to verify ECU code is an actual car of particular model with equipment to analyse exhaust. Or very precise mathematical model of it which would be much more expensive and would probably require super-computer to run.
It was a response to the large numbers of new models being introduced (each with a couple of engine + transmission combinations), such that the EPA and NHTSA were unable to keep up with the testing load each year.
In hindsight, those agencies should have been staffed better. Additional legislation (which is sure to come, if only so Congressmen can appear to be doing something about the problem) wouldn't have helped, as the cars didn't meet existing laws as it was.
I'm not saying that All Coding Tests Are Good, but they do provide a modicum of certainty in a very uncertain environment.