Recently I’ve been experimenting with the Scratch programming language, created by the Lifelong Kindergarten Group at MIT. It’s a fun environment that uses visual programming: drag-and-drop pieces of code blocks, and control objects on a stage, and the stage itself. It has quite a bit more depth to it, than the expression “visual programming language” implies, with it’s internal messaging system, multitasking, and event-driven approach. While it was originally aimed at creating interactive graphics and animations (see this TEDx talk by Prof. Mitch Resnick on the background), it is now evolving into new territories with the Scratch Experimental Extensions.
I’m taking a few online courses every now and then since the awesome experience a few years back with Stanford’s hattrick of courses. I finish more seldom than I’d like it, but definitely learn a lot along the way. The latest one that has started this week is MIT’s Supply Chain Fundamentals course on edX, and it is already shaping up shaping up to be very influential, both in terms of to be a better professional (though at first it looks like I have very little to do directly with supply chains), and in general on how to view the world. To capture this feeling of magic when a piece of knowledge is new and this useful, I take stock here on the concepts and connections I’ve made, just after Week One.
Concepts and Connections
I’m not trying to be exhaustive, merely highlight the most “sticky” and immediately useful ideas I’ve picked up.
Push and Pull processes, the former when products are made in anticipation of demand (to a forecast), the latter when products are made in a response to demand . Pre-packaged sandwiches are example of “push”, while Subway’s sandwiches are “pull”. The former speeds things up for customers but adds forecasting and inventory burden, while the latter increases variety but adds time to fullfillment. It is important that I can play with adjusting my processes to make them “more push” or “more pull” to improve on the outcome I seek.
Looks like I haven’t done a yearly review last year, the latest one on the blog is from the end of 2013. That’s surprising, but then it’s even more pressing to take stock of 2015 and set up the coming year.
2015 – Results
This year have seen a long trip to Europe in February (Hungary, Prague, Vienna) which definitely opened my eyes to a lot of things that I probably should have understood back in high school (especially regarding history). On the other hand, I was a visitor back in my home country Hungary too, and tried a bunch of things that I have never tried when I lived there before, been there with different eyes (and would love to spend more time home again too).
The rest of the year was spent here in Taiwan, on small trips all around the north and east coast, and around Taipei City. A lot can fit into day trips, and it is fun to mix popular places with off the beaten track.
A friend from NIST recently told me about a Raspberry Pi Stratum-1 NTP server project, and that reminded me of the experiments I did with the Navspark dual GPS+Beidou receiver module. Navspark is a small, Arduino-compatible module that besides GPS can also receive data from China’s Beidou 北斗 satellite navigation system , that is currently being built. I thought it would be fun to build a Beidou-powered Stratum-1 NTP server to see how does it compare to GPS.
To have a really good really good, satellite-powered reference clock, I have to have access to a 1-pulse-per-second (1PPS) signal from the receiver. The pure USB-connected receivers don’t really seem to do that yet (looks like plenty of opportunities there!), instead I have to use separate hardware for it.
The Navspark module has a 1PPS pin (GPO3 below), and the only other pin I’ll really need is a serial pin to receive the NMEA stream of the satellite lock data (TXD1 below).