Thursday, February 15, 2007

Random...It's just like a mini-mall!

Clever, and fascinatingly awful at the same time. Why can't our local commercials do this?

Thursday, February 08, 2007

Wine Consumption vs. Violent Crime: The Implications are clear...

Wine and Violent Crime


This morning, I just started using a new little app? Any thoughts on the appropriate word, all? It's called Webwag (, and it's a nice little Ajax interface that allows you to customize your home page as a portal. You can add widgets from any web page and basically customize your home page experience. It's nice, but I do with you could make the widget layout any width you'd like. I've not gotten the hang of customizing colors yet, either. Nonetheless, I do like having my Twitter stream, Newsvine, Digg, and Flickr pictures all available in one spot.

Tuesday, February 06, 2007

Twittering and Such...

Over the past two weeks, I've been Twittering with the gang at PSU to explore this technology and see where it might lead. Twitter is essentially a social networking application from Odeo that asks, "What are you doing?" You can use IM, SMS, or the Web to interact with the application, and you get a running stream of what you and your friends are up to at any one time. Initially, most people are rather skeptical that it is even remotely interesting; but it's easy to get caught up in the stream of "stuff" coming through.

On my Mac, I'm using Twitterific, a handy little app that sits and updates you (and from which you can update, too). From home, I generally use the Web interface. I was using my phone at first, but it quickly became clear that my text-ing plan wouldn't handle the load.

Educational uses? I was intrigued by the fact that it can use SMS to update people. My reconception of our current syllabus builder would be able to use this technology to update students when their syllabus has changed. A quick text message letting them know what the change was would be excellent. Combine that with a few other changes I want to make (okay, more like a lot of changes), and the tool may garner broader use than it has previously.

Monday, November 13, 2006

Newsvine Groups

From Newsvine...
"Newsvine Groups are a great way to read, write, and discuss topics and articles with people sharing common interests. Find a group below that you're interested in, click on over to the group's front page, and you can request admission from there. Alternatively, you can create your own group and invite anyone in that you'd like."
This is a wonderful addition to the service, and could really enhance our courses. Imagine creating a Security and Risk Analysis group and inviting any and all to join it--students, faculty members, businesses--the list could be endless. Each person could contribute by posting, commenting, and ultimately extending our classrooms beyond a single course and CMS. It has the capability of extending communication and learning across campuses.

Friday, September 15, 2006

Object-Oriented Programming and Education

This post is one I started a long time ago, and am just getting to finishing. Hopefully, some of it still resonates. :-)

Object-oriented programming (OOP) is different than procedural programming, but it still has some similarities to education. In OOP, you write objects, not procedures. There may be procedural information within the object, but OOP is more about what something is and what it can do rather than telling it what to do. Wikipedia puts it much better: "The idea behind object-oriented programming is that a computer program may be seen as comprising a collection of individual units, or objects, that act on each other, as opposed to a traditional view in which a program may be seen as a collection of functions, or simply as a list of instructions to the computer. Each object is capable of receiving messages, processing data, and sending messages to other objects. Each object can be viewed as an independent little machine or actor with a distinct role or responsibility" (

OOP is similar to problem-based learning (PBL) or constructivism. The instructor or instructional designer still begins with the objectives (or desired outcomes), but then he/she develops what occurs in the classroom differently.

For problem-based learning, the instructor designs a real-world open-ended problem which students work collaboratively to solve. Sometimes, students are required to engage in inquiry to determine what information they will need to solve the problem, and there is built-in reflection on the problem-solving and collaboration that occurs during the activity. The teacher's role in PBL is to act as a facilitator, providing information to students as they ask for it. How does this relate to OOP? To my mind, elements of the "problem" in PBL are similar to the objects created by programmers. Each may (or may not) be used, and each can "act," if you will, more or less independently within the problem context.

Even more than PBL or constructivism, however, is the idea of learning objects. The idea of Learning Objects (LOs), and Learning Object Repositories (LORs) is one way the education community has attempted to realize the flexibility of using the object-oriented model for teaching. The biggest problem I see that we've run up against so far, however, is the educator's internal "need" to serialize the teaching/learning process. IDs are very caught up in the elements of teaching and learning that are valuable but that also tend toward the procedural. Directions, objectives, assessments, etc., are all very important, but there is an implied "order" to these things that makes construction of LOs that much more difficult.

Is it worth the struggle? Yes. But there is more work to do before we can really say we've "gotten" it.

Programming Paradigms and Education: Post 1

Lately, I've been thinking a lot about how programming has some similarities to education. It may be a stretch to call instructional design a type of programming, but I do see some areas of similarity. And while students aren't programs in any way, shape, or form, most educational models rely on the idea that students will learn when instructed in particular ways. Likewise, programming presumes that some output or action will occur based on the programming code.

Specifically, I was thinking about the differences between procedural programming and object-oriented programming, and how each of these relates to education. This post will cover my thinking about procedural programming and education. The next post will discuss my thoughts on object-oriented programming and education, and the last post in the series will outline what I'm thinking about in terms of a newer model of instructional design that's related to these earlier posts. Thoughts, suggestions, and corrections are, of course, welcome.

Procedural Programming
In procedural programming, a programmer will write step-by-step instructions for a computer to execute in order to obtain a particular result. These can be in function calls or subroutines, but they are still step-by-step instructions. The program tells the computer, "First you do this, next you do this, etc., etc.," until you finally end up with the result. Wikipedia describes procedural programming as follows:
Procedural programming is sometimes used as a synonym for imperative programming (specifying the steps the program must take to reach the desired state), but can also refer ... to a programming paradigm based upon the concept of the procedure call. Procedures, also known as routines, subroutines, methods, or functions (not to be confused with mathematical functions, but similar to those used in functional programming) simply contain a series of computational steps to be carried out (

To me, procedural programming is much like the traditional model of education: students are given instructions on how to do something (e.g., solving a math problem, diagramming a sentence), and they do it. Subroutines in education include the "mini-steps" required for more complex procedures. Remember diagramming a sentence and all those little lines that came off of the phrases? Or the steps in completing a chemistry lab?

Step-by-step instruction abounds in education. First do this, next do that, etc. etc. Directions for putting together a piece of furniture and instruction regarding how to find library resources are both examples of instruction where the procedure itself is the lesson, and the outcome is that the student can "do" the procedure.

On a larger level, the class itself is like procedural programming: you start with an anticapatory set and move through the stages of teaching. Both Madeline Hunter's direct instruction model and Gagne's Events of Instruction are examples of procedural instruction models.

Unit or topic planning also involves the use of procedures. You begin with lesson objectives and move through a systematic method of developing activities that lead students toward meeting those objectives. Curriculum planning is the same. What are the outcomes of the course, and what procedures will meet those outcomes? Procedural. Like procedural programming.

In fact, instructional design itself relies on procedures. Remember the ADDIE model? Analysis, Design, Develop, Implement, Evaluate--one, two, three, four, five. Of course, ADDIE is recursive in that it's possible to revisit an earlier stage when you're later in the process, but it is rarely presented that way.

The problem with procedural education (and quite possibly procedural programming) is that it doesn't deal with complexity well. Procedural teaching is all well and good for simple concepts that really are step-by-step (like putting together the piece of furniture), but they don't work as well for real-world messiness. And it's naive of education to think that students can take procedures which have been given largely out of context and apply it to a problem where the correct action is not always so clear.

This is not to say that there is no room for this type of teaching and learning. On the contrary, Madeline Hunter, Robert Gagne, and the ADDIE model are quite useful if they are applied appropriately. The problem arises when we try to apply these models to all teaching and learning activities, or even to all instructional design procedures. We need more tools in the toolbox, which is where my thinking about object-oriented programming comes in--in the next installment.

Monday, September 11, 2006


I've been thinking a lot about some of the "Web 2.0" community-based technologies, and frankly, I'm somewhat surprised that Newsvine doesn't often make the list of sites that are useful (educationally or otherwise). Newsvine strikes me as exponentially useful for thoughtful community building. And unlike Facebook and MySpace, which are both good for social stuff, Newsvine enables thoughtful conversation around topics that are easy to connect to educational content.

Newsvine, essentially, is the same as Digg but with less technology coverage (and a nicer interface, IMHO). It covers more general news in addition to its technology offerings. The entire AP wire is up there, in addition to articles from other news sources seeded (i.e., posted) by members. Members can also write their own articles. Members tag their seeds or original articles, which then become searchable and commentable. Voting on a story pushes it "up the vine," thus increasing its "vineacity." Their metaphors, not mine. :-)

I've created a special account for the College of IST here at Penn State so that I can use it to enable faculty to enhance course content with current news articles. For example, an instructor in our security and risk analysis major can tag news articles about identity theft with an "ist" tag, and students anywhere in the PSU system (or outside it, for that matter) can find them by entering the URL for the IST account followed by the tag. The URL will give you all the articles written or seeded with an "ist451" tag.

Students who have accounts on Newsvine can then vote on the stories, comment on them, or write their own posts in response, which in turn can also be commented on. I envision all the students enrolled in the same course across multiple campuses then being able to interact with each other and create a larger community that's still on-topic and theoretically "within the course."

Pretty cool, huh?

Cool Firefox Extensions

This past weekend, I downloaded and installed two very cool extensions for Firefox. The more I use Firefox, the cooler it gets, honestly.The first is the Colorful Tabs extension, shown to me by the very intelligent and tech-savvy Nikki Kauffman. This extension gives different colors to each successive tab you've opened in the browser, allowing you to find where you were by color as well as by title. The other neat thing it does is it renders the new tab in italics until you've visited that tab. Nice feature. It is very useful for people who are visual in their approach to things, as well as people who are into color-coding.

The second extension only works on Windows, but it is also very VERY useful. It's called IETabs, and it allows you to open an IE page from within Firefox itself. It works because the IE code is part of the operating system. You can view pages as they would appear in IE, and even run pages that are only "usually" available and working in IE right within Firefox. For example, I was able to launch and play Toontown (Active X controls required) without ever touching IE. I also finally was able to pay my Verizon Wireless bill online without switching browsers (there is usually an error on my PC in Firefox when submit time comes).

Both extensions can be found at