Additional profile information on Alfred Thompson at Google+
The Microsoft Innovative Educator (MIE) program provides trainers the opportunity to deepen and expand their skills on integrating technology in their teacher training to positively impact teaching and learning. MIE participants will leave the two-day event with tools and training materials that support engaging, hands-on professional development.
These seminars are designed for trainers who have responsibilities for training educators on the integration of technology in the classroom. It is encouraged to have small teams from schools and districts attend as there will be time set aside to develop a professional development action plan that can be used to train teachers how to incorporate Microsoft technologies into teaching and learning.
Teams attending should include those who have a responsibility for developing and/or implementing professional development in their district/region/state. Specifically, a strong team would include any combination of people representing education roles, including education technology director, curriculum integration specialist, administrator, teacher trainer, or master teacher leader.
In addition to learning new hands-on project-based, student-centered activities for K-12 classrooms, attendees will receive:
Seminars are held at Microsoft offices (unless indicated otherwise) and laptops will be available during the training. Attendees will be asked to share a best practice using a Microsoft tool (Office, Windows, or free tools) during the training.
Before the workshop, please make sure you have:
· Registered for the Partners in Learning Network (PiLN), http://us.partnersinlearningnetwork.com/
· If you do not have an active Windows Live ID, you will be connected to the site to sign-up for one before returning to the PiLN. Create a new email account or use your existing Hotmail, Messenger, or Xbox LIVE Windows Live ID account.
We’ve designed these seminars for teams of education professionals who teach or train other professionals. Each seminar attendee commits to:
SAMPLE AGENDA ITEMS
Introduction to OneNote
OneNote in the Classroom & Cloud
Project-Based Learning Activities for K-12 classrooms
Office Web Apps
Right Clicks, Tips & Tricks for Office and Windows
Accessibility Tools for Windows and Office
Best Practices from Participants
Teacher Resource Guides
Microsoft Free Tools for Teachers & Students Part I
Partners in Learning Resources
Your Own Workshop
Reflection and Prep for Day Two
Microsoft Free Tools for Teachers & Students Part II
Reflection and Evaluations
Register here: www.microsoft.com/innovativeeducator
All workshops will be held at Microsoft offices. Address and directions available on the registration site.
Do beginners even need to learn sorting algorithms? Let’s face it most modern programming environments have a sort function built in. In the so-called real world just about the only people who write sorting algorithms have PhDs in math or computer science and have likely published papers in peer reviewed journals on the sorting subject. So why take up time in a first programming course to talk about sorting? Because its good for them! Well sort of.
I was looking through the first textbook I wrote some 11 years ago and finding that it include both the bubble and selections sorts. Now these are terribly performing sorts. No one uses these. Quick sort perhaps. Maybe Insertion sort. Bubble sort? What was I thinking! As best I can recall I was thinking about helping explain how arrays worked with loops. It was more about developing an algorithm and seeing how it worked with real (or realish) data. Oh and if I recall correctly, the publisher asked me to make sure I covered sorting and searching. But maybe that is me trying to blame someone else. In a more advanced course one would use different sorting algorithms to learn about algorithm complexity, performance and probably also discuss Big-O notation. That works as a good excuse to talk about different sorting algorithms for many.
Students understand what sorting is all about. Well they don’t understand all of what it is about but at least if you ask students to sort data by hand they can usually do it. In fact asking students to sort data, perhaps on index cards, and asking them to think through the process they use can be very helpful. This helps them understand the complexity. The value though is really about understanding algorithm creation and translating that into code. Having to involved a number of important concepts like arrays, loops, and decision structures is also a good thing.
I think today I would teach the Quick Sort. It has all the goodness of other sort PLUS it involves recursion. Recursion is still a bit of magic to me. What it has taken me a while to really appreciate recursion I do now. The typical recursion example is really looping – things like calculating the Fibonacci Sequence. That’s not a bad thing but an application that requires recursion is better, my opinion, for getting students to really appreciate its power.
But I wonder if there are better algorithms to use as teaching tools? We, the teaching community, should probably be looking for some. Perhaps some that students are actually likely to have to implement some day. What do you think? Are sort algorithms essential? Why? What sort or sorts do you think students should learn? Or is there a better problem that solves the same issues in learning programming and algorithm development?
Last Friday I drove down to Cape Cod. Just over the Cape Cod canal via the Bourne Bridge is Upper Cape Tech. They have an outstanding culinary arts program and while I really did enjoy lunch and conversation in the culinary arts restaurant I was mainly there to talk to students about careers in computer science. I was able to talk to the 10th and 12th graders who are part of the computer program at UCT. I talk to students quite often and there are various ways of going about it. (Note if you are in driving distance from my home office in southern New Hampshire I would love to come and visit your school and talk to your students.)
I can go the old PowerPoint way with lots of pictures and abstract talk about careers and how exciting things in the industry are. I do that from time to time with general audiences. Students are career technical schools, especially those already in computer programs, are a bit of a different audiences. I have a warm place in my heart for them. These schools seem to have a greater than average share of out of the box thinkers. So what do I like to do there? I like to show off exciting technology rather than PowerPoint slides.
Obviously I brought my Kinect. The demo programs that come with the Kinect for Windows SDK are great for bringing students a look into the magic of software. The Skeletal view lets me show the depth perception, the VGA camera and of course the skeleton tracking. And just to make it real we took a short look though the code. I think I need to work up a little code from scratch demo for next time though. That would be even more cool. I think a couple of the students were thinking about what they might do with Kinect given how interested they were in what languages they could code for it in. (C#, C++ and Visual Basic BTW)
I also demoed a little Windows Phone coding and installed my Whack Something Game for Windows Phone 7 on my Phone live. I also showed them how easily Visual Studio would create a new project from that one targeted at Windows or Xbox 360. We talked a bit about the input differences on different platforms as well.
And then I took questions for about half an hour. For me that is by far the most fun. A lot of questions come up time and again of course. But always some new ones. I have to admit that Friday was the first time someone asked where they could get a Microsoft log shirt like the one I was wearing. I really appreciated the warm welcome I received at Upper Cape Tech from students and faculty alike. I hope to be back or perhaps have them up to the Microsoft office in Cambridge in the near future.
Basically my message for students is that computer science is about world changing technology. It is fun, it is exciting, it is constantly changing and if you have a passion for it you can have the time of your life. I’m even more excited about computer science than I was almost 40 years ago when I took my first programming course. TO me that is what it is all about.
By the way, you really want to watch and show others this Kinect inspiration video called the Kinect Effect