How to not squander a Sputnik moment
CNN Money declared software architect the Best Job in America. Having run a software architecture practice based in the Twin Cities for the past 10 years and consulted for many of the most innovative and successful companies, I could not agree more. The work is as interesting as it gets, and a mix of technical and communication skills are required to be good at it. You don’t have a ringside seat to the new technologies like smartphones, iPads and Cloud applications, you are in the ring!
I was disheartened to learn how substandard Minnesota’s computer education is, scoring 9 percent on a recent K-12 Computer Science report. For context, Massachusetts, Florida, Idaho, Oregon, California, Ohio, Nevada, Georgia, Iowa and Indiana all scored over 90 percent. Given the importance of computer technology to everything from financial and healthcare systems to cutting edge biotechnology and robotics, it’s not a comforting result for Minnesota education.
The score is worse still when you consider Minnesota’s technology legacy – including Medtronic, Cray, Secure Computing, Slackware Linux and many more. One is reminded of the joke: What’s the best way to have a small fortune? Answer: Start with a large one.
Squandering hard-won technology advantages is no laughing matter. In a piece Intel founder Andy Grove wrote for Bloomberg, he discussed some impacts:
Consider this passage by Princeton University economist Alan S. Blinder:“The TV manufacturing industry really started here, and at one point employed many workers. But as TV sets became ‘just a commodity,’ their production moved offshore to locations with much lower wages. And nowadays the number of television sets manufactured in the U.S. is zero. A failure? No, a success."
I disagree. Not only did we lose an untold number of jobs, we broke the chain of experience that is so important in technological evolution. As happened with batteries, abandoning today’s “commodity” manufacturing can lock you out of tomorrow’s emerging industry.
Technology is a business where it’s hard to get ahead and easy to fall behind; after all, there is no moat. Once you have a lead, it’s imperative to do everything to keep it – Intel is a shining example here.
In my work, I have trained several thousand software developers from all across the globe on software architecture related matters, ranging from seasoned professionals with decades of experience to people with one month of Java programming training. Some observations from these experiences that I have may be useful in helping Minnesota computer education.
There is no substitute for ‘Hands On’
Software architecture is first and foremost an exercise in building. Does anyone think that by watching “This Old House” on TV that they can refurbish an Arts & Crafts home in period style? It’s the same with building software; you need to get your hands dirty, reading and writing code. Good software is the result of accumulating experience. To do this means practice at building software, not consuming technology like iPad apps.
Be prepared to be surprised -- you can do better
Because they are always learning, children are an inspiration to scientists. Teaching software development to kids should be as surprising to the teacher as the student. In the “Last Lecture” the late Carnegie Mellon Computer Science professor Randy Pausch recounts the first time he taught a class called Building Virtual Worlds. There was little instruction on what to do in the projects, and when he reviewed the student’s projects he was completely blown away.
It was only a few weeks into the semester and the students exceeded his expectations for the whole year. He called his mentor and asked him what he should do, his mentor said in effect, “You obviously have no idea what these kids are capable of doing. So you go in there tomorrow and you look them in the eye and say ‘that was pretty good, but I know you can do better.’ ”
There is no cookbook approach to building, but schools can identify technology platforms that lead kids in the right direction and give them tools to understand and develop logic that underlies great software. There is a fantastic example being taught in schools today called Scratch a free, open-source project from MIT that enables a K-12 student to build sophisticated programs. The tool is not an A+B=C exercise, but rather a platform that empowers kids to explore, test, build, and in effect turn their own mental Rubik’s cube until they find the combinations and permutations that work.
It doesn’t have to be about computers
As great as software architecture is, kids in school today will have way bigger and more interesting opportunities. I mean no one practicing in the software architecture field today actually studied for this in school. Who ever heard of a Webmaster in 1988? What’s much more important in training a next generation of technology professionals is how to think about technology and the life cycle of building something.
There are good examples on these currently in schools today. Many schools have initiatives around Lego Mindstorm robots. These are not your average Legos (as great as Legos are!); instead you build robotic vehicles and assorted projects that can explore and interact with the real world. The programming is done on the computer, but the result roams the world. Google sponsors a $30 Million Lunar X Prize, where students compete to design and build robots for space exploration. The winners’ robots will be built using “real” materials, and Google’s prize money will send it to the moon to transmit data and images back to earth.
Chess clubs are another great way to teach critical thinking and logic required to develop new solutions. It’s about as low tech as it gets. There are no fancy computers required or huge prize money, just an 8x8 board and a sentient opponent. But the power of patterns, permutations and combinations apply well beyond the chess board.
So there are three examples – Scratch, Mindstorms and chess club – that already exist in some way, shape or form in most schools in Minnesota today. Are they enough? Why haven’t they helped? Why is Minnesota’s score 9 percent?
I think the answer, as the answer to so many kid questions are, is found in the work of Antoine de Saint-Exupéry, the author of “The Little Prince”: “A designer knows he is finished not when there is nothing left to add, but when there is nothing left to take away.”
Study a picture of leading computer scientists – pick your favorite: Bill Gates, Sergey Brin, heck Seymour Cray. What do you see?
Relentless focus. The sheer amount of data and activities that compete for kids’ attention means Scratch, Mindstorms robots or chess will be just another 20-minute activity; these need deep focus and attention to detail. Critical thinking and logic must be prioritized.
Gunnar Peterson is a managing principal at Arctec Group, a Twin Cities based consulting firm, and a visiting scientist at Carnegie Mellon. He maintains a popular blog.
More like this
Recent Stories
Most Commented
-
30 comments
-
26 comments
-
26 comments
-
21 comments
-
19 comments
Comments (1)
I am a systems engineer with an ABET-certified bachelor's degree in software engineering, issued to me in 2004 from Monmouth University in New Jersey. My degree program was specifically designed to teach me "how to think about technology and the life cycle of building something." This degree program was developed in the late 90's by former employees of Bell Labs.
Where am I going with this? The author is working with old intel in regards to the education opportunities available to students today. Perhaps there are no such degrees available in Minnesota at the moment, but they are available. That particular problem has already been addressed.