Additional profile information on Alfred Thompson at Google+
I just found a new web site that collects a lot of existing security information and adds some new stuff in a pretty interesting and dare I say fun format. The HelloSecureWorld web site is new and "brings non traditional ways to provide security awareness and education among the developer community - Virtual lab environment, hands on labs, tutorials, videos, play attack defender games and much more."
While I understand that the main audience is professional developers my feeling is that those who aspire to be professional developers will find this a valuable resource as well. The goal is to make learning fun and you know how I feel about fun in education. :-)
[Thanks to the %41%43%45%20%54%65%61%6d blog for the link!]
The SIGCSE mailing list recently had a long discussion about plagiarism in the context of philosophy of teaching statements being submitted with applications for professorial jobs. While the discussion on plagiarism was interesting what got me thinking was my the idea of a statement of teaching philosophy. Specifically what was mine?
When I think back on the best teachers I ever had, ever worked with, and what I saw as what I copied about them several things came to mind.
I think that the best teachers are knowledgeable in their subject. That seems obvious of course but I've seen too many teachers who were forced by circumstances to teach outside their area of expertise. In my own case I once taught a course using Java when I wasn't that comfortable yet with Java. I had the concepts down but I think there were times when we got bogged down because my knowledge of Java was lacking. On the other hand when a instructor knows a lot more than what is required for a course everyone can move faster and learn so much more.
Enthusiasm is one of those things that is contagious. When students see that an instructor really gets into what they are doing - into the subject and into sharing what they know - they tend to come along better. Oh sure there are those who say "what a nut job. How can anyone enjoy this stuff?" but by and large human nature is to wonder what is it about this subject that has this person so excited. On the other hand if the teacher is bored with the subject how can anyone ask the students to get excited about it?
In some ways fun follows naturally from enthusiasm. After all something you love doing and learning about is almost by definition fun. But somehow we have a lot of people in education who think that learning it just too serious to have fun with. It is almost as if they think that if the medicine doesn't taste bad it can't work is translated into learning.
I've had teachers complain to me that students using Visual Studio for Visual Basic or C# get caught up in the fun of creating GUIs. I have seen students get too wrapped un in creating the user interface of a program to the extent that they lose focus on the main part of the project myself. But honestly I have seen that with console applications as well as GUI ones. I came to see that as a teacher issue, in fact as a "teachable moment" that I could turn to advantage, more than as a tool issue. When a student finds some fun in a project the challenge for the teacher is not to discourage the fun but to channel the fun into areas the student needs to learn more about and to grow the student beyond the narrow vision they are caught up in.
I was thinking today that I could easily write a textbook to appeal to teachers who want to put "education" above fun. The book would be nothing but console projects that involve strictly mathematical or practical business or scientific applications. Games would be banned from the book. The book would avoid sports related projects - no calculating baseball averages/statistics for example. Perhaps we could calculate lift v. drag for airfoils? Hmm, might not work as I found that calculation utterly fascinating when I studied it. But I'm geekier than most so maybe it would work. Hard to say. OK just nothing I would enjoy in the book for starters. If anyone reports enjoying anything we'll pull it from the second edition.
The book would explain each concept one and only one way. We'd stay as old school as possible and draw students through the same concepts in the same order as those of us with 30 years of experience learned them. No short cuts. If it was painful and slow for us to learn it should be painful and slow for today's students to learn it. When we're done we'd have students just as far along as we are - though of course no further. No sense in pushing them ahead and getting them all excited about future possibilities.
On second thought maybe I couldn't write that book easily. It would be no fun and getting the enthusiasm to work on it each day would be difficult. I guess I'll have to stick with fun stuff and let the teachers who want to suck the joy out of software write their own books.
I love software. Writing code is fun for me. Discovering new ways to do things, new features in a language or a code library is a fascinating process for me. Being able to use Intellisence to find new things is, to me, a wonderful advantage of something like Visual Studio. Does it reduce the need to memorize things? Perhaps. Is that a bad thing? Perhaps not. Real life is an open book test. And honestly I really want students to learn and remember what is possible more than I want them to learn the specific spelling of a specific method. Another language or platform may use different terms but as long as they have an idea of the possible they will find out how to do it. Concepts over specifics is my motto.
Not all teachers feel the same way and they are entitled to their opinion. But for me, I want some fun and enthusiasm in my classes. In the long run those things lead to more knowledge and that to me is the goal of the classroom.
BTW if you are looking for fun stuff I highly recommend:
I received some information about some new offerings from Microsoft learning last week and thought they would be worth sharing with others. If you are looking to upgrade to Visual Studio 2008 now or in the near future these resources may help you jump start your learning.
Free Visual Studio 2008 e-book
If you want a book to get up to speed quickly on Visual Studio 2008 this free e-book may be a good start for you. There are also some special training offers there.
Find Classroom Training on Visual Studio 2008
There is a new one day training course being offered at training centers all over the county. This course teaches new development features available in Visual Studio 2008. Read about the course and find local training near you here.
Visual Studio 2008 Free E-Learning for Visual Studio 2008
There is a new free online course, "Developing Enhanced Web Experiences with Microsoft ASP.NET AJAX Extensions", for people who want to incorporate ASP.NET and AJAX.