No amount of these gimmicks will turn folks on to non-iOS devices if their friends/families/social circles are using iPhones. Messages, photo sharing, and the close paring with Apple devices is too much to walk away from.
I LOVE Jeff's work and I own his Ansible book. The setup is pretty awesome. FWIW I think you could do this with local VMs a little more easily and provision with Vagrant. Having said that, a cluster of Pis is super fun!
Yeah, using local vms is going to greatly expand access to this kind of learning. A current developer laptop is more than beefy enough, and I'd suggest that there aren't many useful lessons to learn from the pi hardware that can't be learned fully virtualized.
But if you're having fun, of course, more power to you :)
The licensing has gotten far better. First, Oracle has just open sourced the entire JDK for the first time ever, and second, instead of offering a mixed free/paid, open/proprietary JDK (with -XX:+UnlockCommercialFeatures flags), it now offers the JDK under either a completely free and open license (under the name OpenJDK) or a commercial license for Oracle support subscription customers (under the name Oracle JDK).
I really think there's something magical about beginners typing in whole projects by hand (instead of the modern copy-paste). It really helped me when I was getting started with programming.
To me, it feels like typing each character manually cements the knowledge in there much deeper than 'oh, I think I understand what I'm copy/pasting.'
Maybe that's a shallow truism by now, but I still see people struggling to learn programming via copy/paste from examples.
Learn Python the Hard Way is often blasted for adhering to that sentiment. I think it has value. I think LPtHW perhaps attracts ire first for other things, like a now dated bias towards python 2 over 3, but whenever I recommend it to beginners, people always get mad over its emphasis on memorization.
I get what they're saying (probably from dealing with too much rote school work in the past), programming is more about critical thinking than memory, but it really helps to have the core constructs memorized in a language. If you have to google "loops in python" every time, it's not going to go well.
That's a smart take. Even today when I'm learning something new I try to do as much physical typing as possible from the example because I feel like I learn it better.
The other day I had the thought of "all memory is muscle memory" - it's not literally true, but memorizing in an associated form builds up so many cues that it's worth applying to any study: do warm-ups and repetitions, speak, move, and think in sync.
I tend to think of it is holistic memory or whole body memory. The more functions you can involve subsystems in your body the more it hangs together in your brain for longer terms I think.
My first machine was a TRS-80 Color Computer 2 with a cassette tape drive; compared to the PET, due to the "generation difference" (probably in the encoding method?) - plus Radio Shack - it's cassette storage was actually really reliable.
People are still pulling old software and data off of some of their old CoCo tapes, what little problems there are typically can be solved by dumping to digital file and editing in some audio software to clean things up.
My first computer was a TRS-80 Model I. The cassette tape storage was just Radio Shack's regular tape recorder. For some reason you had to use different volume settings for BASIC and machine language programs. The volume setting was horribly imprecise and I was always having to reload programs. The Commodore 64's tape recorder was a big upgrade.