Additional profile information on Alfred Thompson at Google+
First a true confession – regular expressions are a pain for me. Oh don’t get me wrong, I think they are wonderful things in their place. I took a couple of compiler related courses and I studied them seriously. But somehow I still struggle with them. I am apparently not alone in this. I heard a talk once where the speaker (not sure who they were quoting) said “Say you have a problem, and say you decide to use regular expressions to solve it, now you have two problems.” Everyone laughed. Though since this was a serious computer science audience I’m sure a couple of people were thinking “I don’t have a problem with regular expressions” but were too polite to say anything out loud.
I do however love to parse strings. No, really I do. Does that make me weird? Probably not as much as other things but let’s not get into that. Not all programming languages support regular expressions and many software tools that allow some level of programming also don’t support regular expressions. That gives me an excuse to avoid regular expressions from time to time. Recently Clint Rutkas, a very bright guy who probably has no trouble with regular expressions, was asked for help parsing strings using Excel. He blogged about it here.
Did you know that there were string parsing and manipulation functions in Excel? I’m sure I’ve seen them in function lists but honestly I never paid much attention before. We don’t often think of spreadsheets as programming platforms but clearly they are. There are functions and expressions to build. There are decision structures like IF and VLookup (one of my favorites). There is even conditional formatting which I really like to use to highlight activities. And the list goes on and on. That’s not even including Visual Basic for Applications which lets people create and use their own functions. How many of us really use all this functionality? Not many of us.
And that is something I see as a problem. We have this powerful tool available for people of all backgrounds and jobs and interests and yet most people only use a fraction of the power that is there. Suppose more people understood how to program though? Suppose that thinking computationally was a natural and developed part of their processes? Suppose people were more aware of the possibilities? What would they do? Computer spreadsheets have already allowed people to do a lot that was never practical before. If more people could use the programming capabilities to even a little bit higher of a degree spreadsheets would become even more powerful and more useful.
I have been remiss in following news at Very Silly Games this summer. Fortunately for me Brian Scarbeau has been paying better attention. From his blog I found out that Rob Miles is about ready to release some curriculum materials for teaching programming using XNA.
Rob has written a great text book called Microsoft® XNA Game Studio 2.0: Learn Programming Now! that I know a lot of teachers are using. Having some curriculum materials from Rob seems very interesting to me. Rob says “It will be based on the book and will take the form of PowerPoint presentations and some structured practical work to go alongside.” I have no doubt that a lot of people will find Rob’s materials helpful.
Check out Rob’s announcement here and if you are interested sign up to get an advanced warning via email when its ready for review.
I was reading a report by the New Hampshire Employment Security's Economic and Labor Market Information Bureau (ELMIB) today. Yes I am that sort of wonk sad to say. You can see the report here BTW In any case, in this report they compare projected annual need for jobs/professions with the projected number of people being turned out from educational/training programs. Some numbers stuck out of course. They project a need for 1,202 new teachers a year (on average) and the state is turning out 671 a year. Well that doesn’t work out so well.
In computer and information science and support services they project a need for 825 a year with 364 completers a year. That doesn’t work out so well either. Well unless of course you are one of those people looking for a job in the field. But if you combine the shortage of teachers and the shortage of computer science professionals the chances of meeting the needs of computer science education look downright scary.
It’s a sort of chicken and egg problem. We need more computer people who can teach to turn out the computer science professionals we need. But without enough computer science professionals there is a real incentive for people who could teach computer science to get a higher paying job in industry. There is no easy solution.
Perhaps the best solution is to re-train some of the more experienced computer professionals to become teachers. Now that is somewhat counterintuitive since these are the highest paid computer people. But I have run into more than a few people who feel like they have made their money in industry, are fairly well set for retirement some day but want to give back to the community while they are young enough to work and too young to really retire. From time to time some companies have created programs to make this transition possible by giving financial support for training and a bridge of sorts in income.
What’s in it for the companies? Well they save some money in salaries in the near term as long as they can find people at the beginning of their career to bring online. And of course they are helping to develop the pipeline of people they need in the long run. There is that altruistic helping the community thing that more companies really do believe in than are given credit for as well. The transitioning professions get a smooth way to satisfy their desire to contribute to society. Students win the most though. They get dedicated teachers with a wealth of experience. To be sure not everyone becomes a great teacher but many industry professionals have developed strong presentation skills and have a passion for sharing what they know with others. And that is something one can build good teachers with!