To be hired to develop on a platform you should know the fundamentals, which mainly means intimately knowing the major patterns for the platform (e.g. delegation, factory, prototype, facade, etc).
The TEALS program is for high-school. The demographic is primarily Juniors and Seniors, but some Freshmen and Sophomores. Computer Science doesn't count toward the core science requirements in most states(I've taught in Kentucky and New York and neither does). As an elective class you generally get kids signing up who are either really interested or who's parents/guidance-councilor push them, either way they are generally pretty engaged. Ideally, the kids should be ready to take the AP computer science test which will hopefully make it easier to get into the college they want (if they are actually interested in programming).
These online self-guided lessons are great, but not a replacement for classroom learning.
Despite Android having a much improved java engine, it's still lacking in a lot of ways:
- - no Java8 Lambda goodness on Android(and likely never will be)
- - Dalvik still has garbage collection slowdowns at inexplicable times...
- - To use native code you're running many things through the JNI, which is not elegant
Espionage is not science. blah blah blah...
Espionage can be science!
"The most exciting phrase to hear in science, the one that heralds new discoveries, is not 'Eureka!' but 'That's funny...'" - Isaac Asimov
Past Performance Is Not A Guarantee Of Future Returns...
In reality computers solder USB all the time for lower-bandwidth devices(e.g. Bluetooth, WebCam, SD reader, InfraRed, ethernet, WiFi, etc). It's dramatically cheaper and slightly more reliable than including a full USB port because you don't have to worry about charging phones(1000ma+) on a port that will only have a 250ma device on it or buy all the interconnects. The actual chips for most of this stuff are pennies. To build the same thing with interchangeable interconnects raises the power budget, the component budget, and the QA budget...
The main quote comes from a teacher who works for a think tank(that needs funding) talking about conversations he had with other teachers... not stuff he's done himself.
"I've spoken to a number of nursery teachers who have concerns over the increasing numbers of young pupils who can swipe a screen but have little or no manipulative skills to play with building blocks – or pupils who can't socialise with other pupils, but whose parents talk proudly of their ability to use a tablet or smartphone."
- Separate Office - I get bored and many questions are much more difficult to ask via Chat... why the fuck bother coming to an office building, but work from home
- Open plan with everyone scattered - interesting that you talk to more people on a day to day basis, but nearly as hard to actually communicate as when you have an office.
- Open plan with similar people grouped - You can see when people aren't stupid busy and actually talk about issues that are happening. You still run into other departments, but not as often
I'm an iOS developer.