Additional profile information on Alfred Thompson at Google+
Interesting article from David Lemphers on Why you should have a degree in computer science or computer engineering. Short answer - professionalism. That and transferable skill, better and more widely usable problem solving ability and better software in general. I believe David works for Microsoft in Australia but other than that I don't know anything about him. But he makes a lot of sense and he writes in a very colourful way!
I've known some very good self taught programmers in my time but in general give me someone with a degree any day. Especially in a young person. Someone who has been around a few years (like 15-20) will have had enough time to get past the bias of the young towards the tools they learned on. But so too will someone just out of school with a good degree under their belt. And I don’t want to wait 15 years for someone to get seasoned.
Oh sure there are schools where one language (usually Java) and one operating system (usually Linux) is enough and their graduates are one dimensional but they are the exception. Please tell me they are the exception. A good education in CS or software engineering will expose one to multiple ways of doing and looking at things. It's several years well spent in my opinion.
There is some good discussion on this at David's blog in the comments in case you are interested.
BTW I found this via Jason Haley's daily Interesting Finds list. Jason reads a lot of blogs and links to ones he finds particularly good. I get a lot of interesting links there.
Do you have students who like to stay on the leading edge of technology? Are they already looking at web sites and magazines for information about Windows Vista and the upcoming new version of Microsoft Office? If so then we have a web site for them - http://www.room4experiments.com
From the web site:
Daniel Shapiro talked to a group of teachers last week and one of them suggested that we need to find IT internships and co-op opportunities for high school students. I think this is a great idea. When I was teaching high school CS a number of companies called me looking for students who wanted to work in IT or CS part-time or over the summer. I was able to place a number of students in such jobs over the years. I think it worked out very well for them.
One student had learned a bit about networking by helping manage the school's network. He was able to build on that knowledge in a part-time job that he held for a number of years while he was in high school. He was able to learn far more in that part-time job than he could ever have learned in a regular high school class. When he went to college he was able to parley that knowledge into a job at his university where after graduation he works full-time now. Other students worked in software development and got huge head starts in their professional careers.
Now not every high school student is up to this but those that are can have great learning experiences. I think that the companies who make these opportunities available also get a lot of value from these partnerships. I say that because many of these companies called time and again asking "do you have someone like [ ] who worked for us last year?"