My Go Bag


My Go Bag
2011-12-13
by Richard White

A “Go Bag” is that bag you keep by the door, and grab on the way out in case of emergency, disaster, etc. Spies might keep weapons and a passport for a new identity in their Go Bag, a pregnant woman might keep a change of clothes and a flashlight in her Go Bag… you get the idea. Some urban “warriors” (commuters, really), looking to pump up their street cred, have adopted the Go Bag term for their own use, and use it to refer to any daypack or shoulder bag that contains essential items for a day in the wild: in the car, on the bus, at work.

So what’s in your Go Bag? What do you find essential for your day in the classroom, as a teacher, as a technologist?

People tend to fall into two camps in this matter: some adopt a “everything but the kitchen sink” attitude with an eye towards hauling around everything from multiple power supplies, screwdriver sets, and water purification tablets—because you never know when you might need to purify some water, right?—and others go for the fast-and-light approach, carrying a minimum of gear and hoping that any unplanned for emergencies will be resolved by relying on the kindness of strangers.

Me, I tend to go fast-and-light.

I think it started when I was preparing to move to France for an extended period of time. I would only be carrying a single bag for the trip, so space was at a premium, and I made some difficult decisions about what to carry. Since then, I’ve embraced carrying a minimum of gear in my travels, including my commute to and from work.

So without further ado, here’s my list, with comments. Trust me, this is going to take long.

  1. Daypack
    My personal favorite right now is a Mountain Tools Stealth pack, 21.3 Liters worth of black ballistic cloth badness. It’s a simple, one-compartment, zip-open number, and so slim it’ll make you wonder how you’re going to fit all your stuff into it. Surprise answer: you can’t. You’ll have to pare down your essentials a bit, eh?
  2. Wallet bag
    I have a very thin wallet—just driver’s license, credit card, ATM card, and health care info—but even so I don’t ordinarily carry it in my jeans. I keep the wallet in a zippered pouch that also holds a ballpoint pen, and contacts solution. The pouch just keeps these other items from rattling around too much in the pack.
  3. Sunglasses
  4. Laptop
    Of course. The 15″ MacBook Pro that I use for just about everything slips into a snug Waterfield Designs Laptop Sleeve Case (sfbags.com), which itself slips nicely into the pack.
  5. Cellphone
    It’s often in my pocket, but sometimes it’ll be in here.
  6. Keys
    Clipped to a carabiner attached to the top of the pack.
  7. Papers
    The day’s paperwork is nicely contained and protected by a thin plastic folder.

That’s it.

Seriously.

What more do you need?

Okay, okay, the bag’s not full yet, and maybe the weather’s looking a little shaky for the next couple of days. You can add:

  1. Umbrella
    … and/or a light sweater or jacket
  2. Power brick
    for laptop
  3. USB cable
    to charge the phone with the laptop.
  4. PowerBar?
  5. Swiss army knife?
  6. Bottle of water?

Yeah, sure you can bring all those things. Just don’t start getting carried away, right? Fast-and-light is the way to go.

“What do you have in your backpack?”
- Ryan Bingham in “Up in the Air”

The End is Nigh

The End is Nigh

2011-12-01

by Richard White

“The End is Nigh!” For your optical drive, that is.

CDs and DVDs are still here for the moment, but not for long. Depending on how much you love your archives and content, it may be time to start thinking about a migration process that will allow you to convert your CDs and DVDs to a hard drive.

It’s an easy, if tedious, process. I did it with my documents and data last year: buy a couple of 1-terabyte external hard drives, plug one of them into your computer, plug in the nearly endless succession of CDs and DVDs that you’ve been burning data on all these years, and click-drag over to the terabyte archive.

Once you’ve spent a day or two doing that, plug in both terabyte drives and click-drag all the contents from one drive to the other, which will act as a backup of the archive.

At that point you’ll have at least three copies of your data: the original CD or DVD (which you might want to tuck away, should something catastrophic happen to both hard drives), and two copies of your data on the Archive and Backup external drives.

There are fancier ways to do this that you may already have built. rsync works magic in a shell script, and you can spend hours and days developing a system there that you can use to manage it all.

In the absence of anything fancy, though, at least get your data off those optical drives. In another three years or so, many computers—and certainly the most popular ones, including iPads and Macbook Airs—won’t have an optical drive, and you’ll have easy way to access that data. Let’s face it, the data storage on CDs and DVDs is time-sensitive anyway. Like that old slide film that your father shot just thirty years ago, that medium decays with age. If you think that Apple is wrong about that, you don’t have to look too far back to find another decision they made regarding media that was very controversial at the time. The 1998 iMac G3 came without a floppy disk slot in anticipation of what would happen throughout the industry in the years to come. By 2003, Dell was no longer including floppy disk drives as standard on their machines, and by 2007, only 2% of computers sold included floppy drives.

So, yeah. I’m not saying you need to run out right now and take care of this. But you might want to put it on your ToDo.txt list. I mean, come on. When’s the last time you bought a music CD?

Yup. That’s what I thought.

Do yourself a favor and get a couple of 1-terabyte archive drives. You’ll be glad you did.

It’s All About the Process

It’s All About the Process

2011-11-29

by Richard White


Back in the day, “Project-Based Learning” was one small but powerful attempt at reforming some of what was wrong with some of our K-12 educational thinking. The general idea was that larger term projects—hopefully projects with some relevance in the Real World—were a better context for student learning, as opposed to a series of smaller and often disconnected-seeming homework assignments or worksheets.

We also had “Authentic Assessment,” in which the tasks students were asked to perform and be assessed on were “either replicas of or analogous to the kinds of problems faced by adult citizens and consumers or professionals in the field.” (Wiggins, G. P. 1993. Assessing student performance. San Francisco: Jossey-Bass Publishers.) The typical product of an authentic assessment-based assignment would be a product that students could market at the school or community level, or a presentation to a gathering of community leaders regarding some local issue.

I’m actually a big fan of both movements, but I think it’s important to keep in mind that for our students, now more than ever, the end product is less relevant than the process by which one arrives there.

It’s a concept that bears repeating. For K-12 instruction, process is everything. The final product is less important.

Here’s why.

You’ve no doubt heard how quickly things are changing in our Western Hemisphere, technology-driven, North American world. One of the devices that I use most frequently during the course of the day, my iPhone, didn’t even exist five years ago. The web browser I use, Google’s Chrome, is one of Google’s famously beta releases that was released for the Mac less than two years ago. If your students are using technology in any way as part of their work in your class—and they absolutely should be!—then you need to be teaching them knowing that the technology is going to change.

This philosophy extends even to non-technology situations. In the AP Physics course I teach, it’s common knowledge that I don’t care much about the right answers. Hell, I’ve given them all the right answers by making the solutions available to them. What I’m interested in is the answer to this question: “Do you know how to ‘think’ physics?” Have you acquired the processing skills that will allow you to analyze a situation, develop a problem-solving approach, and execute that approach in order to arrive at an answer?

In the computer programming class I teach, when I given them an assignment to code a database-driven Address Book program, I don’t have any great need for one of those programs—there are dozens of commercially-available ones, most of them better written than something that my students will be able to come up with. But it’s the process of thinking about User Interaction, efficient coding, validating input, sanitizing input, designing and interacting with a database, that they will go on to use at some point in the future. In the meantime, the Address Book project is simply a context that allows them to explore those topics.

Do I want an Address Book program? No. Do I want them to know how to write an Address Book program? Absolutely.

It occasionally happens that a student of mine—typically a very bright and perceptive student, what teachers sometimes refer to as a “quick study”—will complain about the fact that I’ve docked them points for missing homework assignments, even though they’ve scored exceedingly well on the exam for that topic. “Come on, Mr. White. I obviously know this stuff!” This typically happens during the first semester when the topics of study—Newton’s Laws, conservation of energy—are ideas that are already familiar to them, or at least somewhat intuitive.

Second semester it’s a different story, when concepts like “charge density” and “magnetic flux” aren’t quite so easy to grasp. Students who have developed a system for working through the material are able to apply that system to the new material, while the “bright” student, for the first time finding that the material isn’t coming as easily as he’d thought it might, flounders about and wonders what went wrong.

It’s in our students interest to learn processes, ways of thinking, and ways of learning. Facts are important, of course—it’s a serious impediment to one’s study of chemistry if can’t immediately recall that the sulfate ion is SO42-—but it’s also important to know how to evaluate an oxidation-reduction reaction. That’s a process that can be used to analyze a whole series of different reactions.

Most of the teachers I know do this almost as a matter of instinct now, but it never hurts to go back and reflect on what we’re doing, especially for assignments that we’ve developed and been giving to students for years. In our Conceptual Physics class this year, we’ve eliminated the discussion on photo-sharing on Flickr—students do their own photo-sharing on Facebook and other sites all the time now, and don’t need formal instruction in that area any more—in favor of expanding our instruction on using Excel to process and analyze the data from their experiments.

Is Excel important? Somewhat. Is knowing how to create and manipulate a spreadsheet? Absolutely!

The Process. It’s everything.

Pick Your Poison: Working with Words on the Computer

PICK YOUR POISON: Working with Words on the Computer

2011-09-23

by Richard White

When it comes time to sit down and compose a text-based document, what’s your weapon of choice? Microsoft Word? Google Docs? Window’s Notepad or OS X’s TextEdit? emacs? vim?

Most people have a favorite tool that they use to write with, and in a recent Thinking Stick blog post, Jeff Utecht gives 10 Reasons to Trash [Microsoft's] Word for Google Docs.” He brings up some excellent points, which are explained in further detail in the post:

  1. No more corrupt files
    A Word file that works on a student’s computer may not work on someone else’s.
  2. No more corrupt USB Keys ["thumb drives"]
    USB flash drives can become lost or corrupted.
  3. .doc .docx who cares!
    Something of a repeat of #1.
  4. Work Collaboratively
    Students can share Google Docs with each other.
  5. Share and Share a Like (sic)
    Something of a repeat of #4.
  6. Export to PDF or Word no problem
    Google Docs can be exported to these formats.
  7. Make it Public
    Google Docs can be published as a webpage for viewing by anyone.
  8. Work from any computer with Internet access
    Google Docs can be easily viewed/edited by you even if you don’t have access to your own computer.
  9. Work on the Go
    Google’s Chrome browser offers some limited ability to work on your Google Docs offline.
  10. Because it’s the future
    “We’re headed into a fully web-based world.”

Jeff does a good job pointing out some of the strengths of Google Docs, especially for high school students which is who this post is targeted towards. And it’s true that Microsoft’s Word is not everyone’s cup of tea. It’s a large, relatively expensive program with an awful interface and a boatload of features that go unused by most users.

But Word is also the de facto industry standard for creating word processed documents. Period. Anyone who is interested in sharing word processing files pretty much has to have Word in their arsenal, and I think that reasoning extends to high school students, or at least those who are able to have access to that software.

Google Docs has plenty to recommend it, and Jeff hits on some of its strengths. Its a great way of developing a shared document with someone, with the ability for two users to work simultaneously on the same file. Documents are auto-saved, and being able to access one’s work from any machine connected to the Internet can be awfully handy. In addition, Docs is free. I use Google Docs on a regular basis for some of my projects, particularly on those in which I am collaborating with someone else.

The bad news is that Google Docs isn’t quite ready for prime time for anything more than the simplest document. The challenges faced (as of 9/24/2011) by this web application fall into two categories:

  1. No offline editing of documents–you MUST have an Internet connection if you wish to work on your Google Doc.
  2. Incomplete feature set (depending on your needs), including
    1. Single style of bullets
    2. Fewer than 20 fonts available.
    3. the equation editor is a good start, but can’t express equations like

    4. etc. (there are others)

Google Docs is excellent at what it does, primarily allowing users to maintain documents “in the cloud” and sharing them with other people. But to suggest that it has become a viable alternative to the many-featured Word is jumping the gun, I think, unless you simply don’t need the features that Word provides.

And if that’s the case, Google Docs will serve you well… or perhaps you can get away with using an even simpler and more robust document creation tool: the humble text editor.

We’ve touched upon this in the past so we don’t need to belabor the point here, but a text editor allows one to write unformatted, ‘plain text’ documents without worrying about nonsense like bullets, margins, bold or italic fonts, etc. (I’m using a text editor to write this post, actually.) At some point in the future, if that plain text needs to be formatted, it’s easy to do so: copy-paste the plain text into your Word or Google Docs document, select (highlight) the text you want to format, and apply formatting from Word or Google Docs as required. Easy.

Working with a plain text file has some of the same advantages that Jeff mentions in his list above.

  1. No more corrupt files
    A text file is a text file. All computers can read them.
  2. No more corrupt USB Keys ["thumb drives"]
    That’s true if you keep your plain text files on a server, which is perfectly possible. (I’m using DropBox and the excellent PlainText app to allow me to work on my plaintext files from multiple locations.)
  3. .doc .docx who cares!
    These extensions indicate Word files. Most people use “.txt” to indicate a plain text file.
  4. Export to Google Docs or Word no problem
    Via copy-paste, plain text files can be dropped in to other documents easily.
  5. Work from any computer with Internet access
    Plain text files stored on a server can be accessed in this way.
  6. Work on the Go
    A local copy of your plain text file can easily be synched with the server later on.

In addition to these benefits, you may discover others:

  1. Plaintext improves your writing
    By allowing you to focus on the words themselves rather than what the words will look like, writing in plaintext improves your writing. Don’t get stuck on the style of your heading, or whether you should italicize a word or not. Just WRITE. You can worry about making it pretty later on!
  2. Start writing faster
    You don’t need to wait 3 minutes for Word to load up or to log on to Google Docs. Open your text editor and start writing.
  3. Smaller file sizes
    Text files are orders of magnitude smaller than the bloated files created by Word—text files don’t have to contain all that formatting information, right?
  4. Improve your Geek Credibility
    The lowly text editor is not the sexiest product out there—after all, Notepad (Windows) and TextEdit (OS X) are provided for free with the operating system. But they’re one of the most powerful tools in the geek’s toolbox. Just ask coder Gina Trapani, Google Director of Research Peter Norvig, author Neal Stephenson, and LifeHacker Kevin Purdy.

Upgrading to Lion

Upgrading to Lion

by Richard White

2011-08-13

Are you working on an Apple machine that’s running Snow Leopard? That’s OS X version 10.6—click on the Apple in the upper left corner of the screen and select “About this Mac…” to see what version of the operating system you’re currently using. If you’re currently using OS X 10.6, you have the option of upgrading to OS X 10.7, code named “Lion.”

How you go about upgrading to Lion is relatively easy to do. From you Dock or the Applications folder, launch the “App Store.app” and do a search for “OS X Lion.” Downloading the app will cost you thiry bucks—a bargain for updating this particular operating system—and following the crystal clear instructions will take a couple of hours, depending on how fast your download connection is.

Should you upgrade your system? Yes, of course… at some point. You’ll absolutely want to upgrade to the most current version of your operating system at some point, for lots of different reasons. A new OS is typically safer, more secure, faster, and in some cases required to run recent software. For most people, though, I’d recommend that you update your machine later rather than sooner.

There are three reasons why you don’t necessarily want to jump into early-adopter “update now” mode.

1. If you’re running a “production machine” which has software installed on it that won’t be able to run under Lion, you obviously shouldn’t upgrade. A silly example: I have a friend who still uses the AppleWorks word processing program that Apple stopped distributing over ten years ago. AppleWorks won’t run under Lion, so my friend is going to need to convert AppleWorks files to a different format before upgrading, or resign himself to working with an obsolete program for the rest of his life.

2. If you’re running a machine that can’t upgrade to Lion. In addition to running Snow Leopard, you need a computer that has these minimum hardware requirements. If your machine doesn’t meet those requirements, you can just chill with your old machine running Snow Leopard until you’re ready to buy some new hardware.

3. It’s often a good idea to just wait a bit until the “first release” kinks get worked out. Each new verson of an operating system—10.7.0 in this case—is typically a first draft, and despite efforts to test the system under a lot of different conditions, there is always the potential for unexpected surprises, and the release of Lion is no exception. If you’re not willing to put up with some of the inconveniences that occasionally accompany early adoption, you should probably wait for another month or two until 10.7.1 is released. That will potentially give you a much more stable experience.

There. Have I convinced you not to upgrade? Good for you. You can stop reading.

Still here? Okay, if you insist on going through with the upgrade process, here are some tips for you.

1. Do a full backup of your system.
If you don’t use Time Machine, or SuperDuper!, or Carbon Copy Cloner, then you’ve got bigger problems than installing a new operating system. Do a full backup, and come back when you’re done.

2. Set aside a couple of hours for the download/installation process.
There shouldn’t be any problems—the installation process has been extremely well tested—so just follow the instructions and you should be up and running again in a couple of hours.

3. Bask in the wonders of the new system.
You may have heard about some of these. Full-screen mode for interruption-free work. Automatic document and window saves. Automatic version control. New user interfaces and styling for Apple-branded apps like Mail.app and iCal.app. New support for multiple workspaces (“Mission Control”). Apple’s attention to detail in the user experience, as always, shines in this new release.

4. Configure your new system.
Lion works a little differently from Snow Leopard, obviously. Other changes, in addition to those listed above: Two-finger swipes on a trackpad work the opposite of how they used to. Lion tries to auto-correct practically everything one types, it seems. There are some new apps in the Dock, including LaunchPad and FaceTime. If you have any experience with an iPhone or an iPad, some of the changes in Lion are designed to bring your experience on the computer closer to what you do on a touch screen.

Of course, not everyone always appreciates the changes brought about by a new operating system. From tweaks to the user interface to new controls and key combinations, you may find that some behaviors that you really like have changed under Lion. Fortunately, many of those changes can be reconfigured to match your needs.

Here are some of the modifications I made to my own machine after upgrading to Lion, along with a brief description of why I made those changes.

  • Remove LaunchPad, App Store, and FaceTime from the Dock
    I tend to use the Dock only for apps that I very frequently use, and these are just cluttering it up.
  • Select Apple Menu > System Preferences > General > Show scroll bars: Always (instead of Automatically based on input device)
    In an attempt to clean up the screen, Apple removed scrollbars from Windows, apparently not realizing how important scrollbars are for identifying whether or not a window contains additional information, and how much information there is.
  • Select Apple Menu > System Preferences > Trackpad > Scroll & Zoom: uncheck “Scroll direction: natural”
    The default setting on Apple machines now is for a trackpad to mimic the behavior of a touchpad, and this doesn’t work for me. On my iPhone, while I’m perfectly comfortable swiping a document UP to look further down that document, that’s because that’s how I would actually interact with a real piece of paper under my finger. For Macs and PCs, for the last 25 years, that’s not how mouses and trackpads have worked, and I continue to use PCs with trackpads that don’t follow Apple’s new convention. They knew this was going to be controversial when they introduced it, and that’s why they wisely provided the option to change this behavior via that checkbox. I’ve unchecked it!
  • In Mail, select Mail > Preferences > Viewing: check “Use Classic Layout
    Some people are really happy about Apple’s new 3-vertical-pane layout. I prefer the old one, thank you.

    If you ARE going to use the 3-vertical panes, consider changing this preference: Mail > Preferences > Viewing: List Preview: “1 Line”. This will allow you to see more of your messages at one time.

  • Select Apple > System Preferences > Language & Text > Text: uncheck “Correct Spelling automatically”
    Damn you, Autocorrect! I love spell-checking when writing a formal document or pounding with my big thumbs on the iPhone’s tiny screen-based keyboard. In most other circumstances, my computer trying to second-guess me is just annoying, and actually gets in the way of what I’m trying to do. Try leaving Autocorrect on for a day or 3 and see what you prefer.
  • In Terminal, type chflags nohidden ~/Library
    Apple has chosen to hide the user’s Library folder to keep the average Joe from digging around in there and messing it up. It’s true that most people shouldn’t be dinking around in there, but I do from time to time, and it’s nice to be able to navigate to that folder directly.
  • Select Apple > System Preferences > Time Machine > Uncheck “Lock documents 2 weeks after last edit”< br />
    In another move designed to protect users from themselves, Apple think that if you haven’t worked on a document in a couple of weeks, you probably don’t really need to edit it any more, at least not without typing in your password to verify that you really do want to edit that document. I work on old files all the time, and don’t need Apple holding my hand during that process.
  • In Terminal, type defaults write com.apple.Mail DisableReplyAnimations -bool YES
    This turns off annoying Mail-related animations. To change it back: defaults write com.apple.Mail DisableReplyAnimations -bool NO
  • In Terminal, type defaults write NSGlobalDomain NSAutomaticWindowAnimationsEnabled -bool NO
    This turns off a subtle but potentially annoying zooming window effect that affects how new windows appear on the screen.

Housekeeping

HOUSEKEEPING

by Richard White

2011-07-29

It’s Housekeeping Day on the website.

Like a lot of teachers, I have a website associated with each one of my classes, and over the course of a year, that website can get a little messy. Here’s the calendar that I used in the Fall, and there’s the results of that mid-year teacher/text/course evaluation that I posted (I’m a big believer in transparency). Here’s a picture of the class from the beginning of the year, and there’s a video of all of my students trying to squeeze into one cubic meter of volume (they didn’t make it, but it sure was fun trying).

I’ve got to clean all that stuff out and get things ready for the new school year.

There’s something else that I often do at this time of year, depending as always on time constraints. I was listening to website designer Paul Boag talk at one point about managing sites, and he said something that I thought was quite profound: “Many websites have someone responsible for adding new content to the site… but who’s responsible for taking away old content?”

Not all old content should be removed, of course, particularly if one of the site’s functions is to act as a repository of accumulated knowledge. But this isn’t necessary for the vast majority of sites, and certainly not for my class websites. This year’s students don’t want to be greeted with a photo of last year’s class when they log on, and the materials that I used last year may be markedly different from what I use this year.

So it’s time to do a little cleaning, and a little pruning. (Below, see the homepage screencaps for three websites that I maintain for different groups of students I work with.)

It may even be the case that you want to look again at the design of your site. Ten years ago I was very pleased with what I felt was the optimal design of my site, until I spent an hour waiting in line at the movies with my friend Aaron doing usability studies with a pile of index cards that I’d prepared specially for the occasion. By the time we were admitted into the theater, I had a completely new perspective on how my site was viewed by someone woho wasn’t me, and the result was an enormous improvement in usability, as indicated by my students in subsequent interviews.

Switching between horizontal and vertical orientations on navigation menus can make a website feel completely different. Moving “Terms of Service” from a prominent location at the top to the barely noticeable footer at the bottom of the page is almost certainly a good idea. Switch from a fixed-width content area to a liquid layout (that resizes with the browser window)? Change themes? Colors? Rollovers? Remove graphics to make the page load faster? Add graphics to increase visual interest? Add a version of your website customized for an iPhone/Android experience, or at least make your website look okay on a mobile screen?

The possibilities for tweaking are endless, which is what makes designing for the web so fun, and so challenging.

I’m not sure I’m going to redesign my website today—that process typically takes a few days, and lots of chatting with people to find out what they like and don’t like. Today, I think I’ll just clean out the old content. That’ll take an hour or two all by itself.

August is almost here—is it time to start thinking about school yet?! ;)

Thank God for Mac OS X

Thank God for Mac OS X

by Richard White

2011-07-24

There’s a line that rock climbers sometimes trot out when they feel like exulting in the glory of their source of creativity.

“Thank God for the rock. Otherwise, we’d all be surfers.”

In the same way, it has occurred to me on more than one occasion to say to myself “Thank God for Mac OS X. Otherwise, I’d be using Linux.”

Now the reality of the situation is that Mac OS X and Linux share a common ancestor: UNIX. Actually, the Mac OS X running on all current Apple computers really is UNIX at its core. I’m thankful to the Mac platform in part for giving me a jumping off point from which to learn about UNIX, and later on, Linux. In 2004, O’Reilly published Learning Unix for Mac OS X Panther, by Dave Taylor & Brian Jepson, which turned out to be a great to begin discovering some of the inner workings of the OS X operating system.

One of the best things about OS X, then, is the fact that one can peek under the hood and play around with things a bit. This has always been the case with computers, of course, but OS X’s use of UNIX means that there’s a fairly large base of users with UNIX experience that can assist one in playing with the system, or even running other software on the system—UNIX-based software—that actually isn’t part of the official OS install.

This past week, Apple released the long-awaited 10.7 version of the OS X operating system, named “Lion.” Apple has continued to improve on OS X over the years, and this release included some major developments that many users are going to find very appealing, including autosave, built-in version control, and updates to many Apple apps.

Some users, however, found some of the improvements to be less-than-satisfactory. In an otherwise clean and minimalist User Interface, for example, Apple’s iCal application sports a faux-leather and torn paper skin that is almost universally abhorred by users, for a lot of different reasons: the leather is inconsistent with the overall OS theme, the real life stitching and leather texture don’t contribute to one’s understanding or use of the application, the fake torn bits of paper on the upper margin are silly…

Fortunately, the power of the community stepped forth, and someone came up with a package that allows one to equip that calendar with a skin more appropriate to the UI, and made it available online: http://macnix.blogspot.com/2011/07/change-mac-os-x-107-lion-ical-skin-to.html. Thanks to the carefully written instructions there, my iCal calendar is back to looking like it should.

Apple’s Mail.app program received some interface changes as well, and that got me thinking about investigating some other ways of working with my email. Of course many people have already gone over to using a Web-based email system—Google’s Gmail is the most popular—but I still like the idea of being able to read and compose emails when I’m not actually connected to the Internet; I like having an email “client” on my local machine.

If you’ve used Apple’s Mail, or Microsoft’s Outlook or Outlook Express, or any one of a dozen other programs that run on your local computer, you might be interested to hear about another alternative, one that may appeal especially to the geeks among you.

Next time, we’ll see how to install a modern version of the Terminal program pine on your UNIX-based OS X machine.

Perfect Passwords, Every Time

Perfect Passwords, Every Time

by Richard White

2011-07-20

Man, I am really getting tired of all this talk about passwords.

Okay, okay, I’m one of the people who has been talking about them, but… still. Seriously. Can’t we all just learn how to create awesome passwords and be done with it?

You know all the don’ts, right?

  • Don’t use words found in any dictionary, English or otherwise.
  • Don’t use any personal information: names, dates, social security numbers…
  • Don’t use the same password for multiple uses/websites
  • Don’t use a password that is too short.

And then there are the dos, which can be a bit overwhelming.

  • Do use a mix of letters, numbers, and special symbols.
  • Do use different passwords for different sites, and change your passwords regularly.
  • Do use a longer password.

I probably don’t need to spend a great deal of time explaining the rationale behind these rules, which are well-founded. Bad guys do try to guess your passwords, both to important things like your bank account, and seemingly trivial things like your email (which they can use to get your bank account passwords). Bad guys use computer programs to try to guess your passwords. Bad guys look at passwords stolen from other places like Sony and try to use them for your other accounts.

It’s a jungle out there. But here’s how you can deal with it. All you need is a system.

It needs to be your own system, of course. You don’t want to reveal your system, your pattern, your trick, to anyone else, because then they’ll know your system, and will be able to guess your passwords. Not good.

But I’m going to show you my system, and you can use something similar, and then we won’t ever have to talk about how to make good passwords again, mmm-kay? :)

Here’s what you need:

  1. A root
  2. A place indicator
  3. Padding
  4. A time indicator

Let’s see what those four items mean, and how they can be used to create a good password.

1. A root

The foundation of your passwords is a good root password, sufficiently random that no one will be able to guess where it came from. You will use this same awesome root for every site you use. My personal recommendation is to use the initials of a favorite song lyric or passage from a book.

Some examples:

“In the beginning, God created the Heavens and the Earth.” ItBGctHatE
“Ob-la-di, ob-la-da, life goes on, bra” Oldoldlgob
“We, the people of the United States…” WtpotUS

These are already some pretty good little passwords, but they’re too short (susceptible to random guessing) and they aren’t going to be different based on place. Let’s fix that.

2. A place

We’re going to add, on either side of your root password, one or two characters that are unique to where that password is being used. For this exercise, let’s say that we’re just going to add a single letter before and after our root, and those letters (according to the system I’m using, are the first and second letters in the place name. If I’ve selected “WtpotUS” as my root password, how does that affect our passwords?

User password on my Windows computer WWtpotUSi
Amazon account password AWtpotUSm
Bank account password at Chase CWtpotUSh

Notice how cool this is: Even if someone were to see me typing in my Windows password, without knowing my system they wouldn’t have any idea which of those letters are the root and which are associated with the Windows machine. They wouldn’t even know to look for such patterns, there’s so much entropy in that password.

So now I have a reasonably good password that’s different for different situations. For some people, that’s good enough. But we can do better, and very easily.

3. Padding

We haven’t yet used any special characters in our password—#, &, %, (, @, etc.—and using special characters is an easy way to increase both the complexity and the length of our password. For my situation, I’m going to use the three characters “!@@” both before and after my passwords. My passwords now are:

User password on my Windows computer, with padding !@@WWtpotUSi!@@
Amazon account password, with padding !@@AWtpotUSm!@@
Bank account password at Chase, with padding !@@CWtpotUSh!@@

4. A time indicator

It may be that you want, or need, to change your passwords from time to time. Some systems require this, and other people just think it’s a good idea. One possibility is to include some sort of date signature in your system, but keep in mind that it can’t look like a date signature; otherwise, someone who learns one of your passwords is going to have a big clue about your other passwords.

In my system, I try to change my passwords every 3 months or so, starting on my birthday in February, and append to that the digit of the year. So my passwords from February to April in 2011 will have a 21 included. From May to July the passwords will have a 51 included.

User password on my Windows computer, with time indicator for February – April, 2011 !@@WWtpotUSi21!@@
Amazon account password, with time indicator for May – July, 2012 !@@52!@@
Bank account password at Chase, with time indicator for November, 2010 to January, 2011 !@@CWtpotUSh111!@@

And that’s all there is to it.

Okay, okay, I know what you’re saying: “I don’t care about changing my passwords every three months.” Fine. Leave #4 off your list.

Or, “Can’t I just use once special character for my padding, rather than three?” Of course you can—make your own system, based on similar parameters: high entropy (disorder) in your password, and greater length (in order to discourage brute force attacks).

Or, “Do I really need a system this complex for my Webkinz subscription? Probably not, but I know some 8 year olds who are pretty darned protective. Use your password system at your discretion.

It bears mentioning, too, that if most of your passwords are used on the Internet, then a service such as LastPass or KeePass might be valuable to you. They offer true entropy, and site-specific passwords managed by a single master password. Of course, relying on a third-party to manage your security can have its problems too.

Using and maintaining passwords is hard work, but it’s increasingly important that we all have a basic working understanding of what’s involved. Root – Place – Padding – Time is a useful, customizable way of creating and remembering stronger passwords.

Good luck!

How-To: Password Protecting a Website Directory with .htaccess

How-To: Password Protecting a Website Directory with .htaccess

by Richard White

2011-07-19

A friend of mine who maintains a website for his classes recently asked me how to go about creating a password-protected folder for the site. He wants to store materials on there that would be accessible to his students who would use a Name and Password to browse the folder.

In other words, when a user tries to go to a certain location on this teacher’s website, he wants them to have to authenticate with a Name and Password before they’ll be allowed to enter the site.

Here’s how you password protect a folder, in three easy steps.

1. Create the folder that will store the protected material.

For our example, we’ll assume that my account on the webserver is called rwhite, and the website files are all stored in public_html. In that directory public_html, create a new directory “secretstuff”, which is where we’ll be storing our password-protected materials. This folder should have a permission of 755.

(There are lots of different ways to “create a folder”, depending on how you manipulate files on your server. You might ssh in to the server, you might use Dreamweaver or Coda, … If you’re not sure how to manipulate files and directories on your server, learn how to do that first and then come back here!)

So in terms of your websites directory structure, here’s what we have so far (your files and directories will look different from mine–the ones shown are for example only):

/
|---home/
    |---rwhite/
	|---logs/
        |---mail/
        |---public_ftp/
        |---public_html/
	    |---about.html
            |---index.html
            |---secretstuff/

2. Use a text editor to create a text file called “.htaccess” in the folder that you want to protect.

To keep unauthorized users from peeking inside the directory secretstuff, you’ll need to add two additional files to your website that will instruct the server under what conditions it should display the contents.

The first file is a text file called .htaccess that is stored in the secretstuff directory. Note that this filename doesn’t really have a name—it only has an extension (the eight letters after the period). That means that this file won’t show up in most directory listings unless you specifically tell your computer to list ALL files.

Use a text editor—Notepad, TextWrangler, BBEdit, TextMate, vi, emacs, nano, edit, whatever—to create the .htaccess file in the secretstuff directory. The file .htaccess should include these four lines:

AuthName "Secret Stuff"
AuthType Basic
AuthUserFile "/home/rwhite/.htpasswds/public_html/secretstuff/passwd"
Require valid-user

Be sure to save the file with the name .htaccess (including the period in front!). That file should have permissions 644.

What does all of that mean?

First of all, .htaccess is used by the Apache web server to do all sorts of things on your website, and you probably already have a few .htaccess files sprinkled here and there on your site—we don’t want to mess with those. This particular .htaccess file in the secretstuff directory is simply being used to control access to that directory.
The four lines in that file, in order, say:

  1. Display this name in the authentication dialog box.
  2. Use Basic http authentication.
  3. Find the file containing passwords at this location on the server (see step 3 below).
  4. Make sure user has been authenticated before giving them access to this folder.

The only really tricky part about this step is the location of the password file. Note that the .htpasswds directory listed here is NOT contained in /home/rwhite/public_html—placing that directory in a publicly-accessible folder is a security risk. Instead, the .htpasswds directory is contained in /home/rwhite, which is not accessible by a browser. That location IS accessible to Apache, however, which will look at that location to find out which users will provide what passwords in order to gain access to the protected folder.

So here’s what we’ve got now:

/
|---home/
    |---rwhite/
	|---logs/
        |---mail/
        |---public_ftp/
        |---public_html/
	    |---about.html
            |---index.html
            |---secretstuff/
		|---.htaccess

3. Use a text editor to create the text file called “passwd” that we’ll place in the .htpasswds directory.

As discussed above, the passwd file will be be located someplace where a browser can’t get to it. Here’s where we’re going to put it.

/
|---home/
    |---rwhite/
	|---.htpasswds
	    |---public_html
              	|----secretstuff
		    |---passwd
        |---logs/
        |---mail/
        |---publc_ftp/
	|---public_html/
            |---about.html
            |---index.html
	    |---secretstuff/
		|---.htaccess

Note that if you don’t already have a directory called .htpasswds, you’ll need to create it, and then nest inside it the public_html and secretstuff directories. (Although some tutorials will instruct you to place a single .htpasswd file in those location, creating a directory will give you more flexibility later on, should you choose to create additional .htaccess authentications.) The .htpasswds directory and those nested inside it should all have permissions of 644, as should the passwd file itself.

Now, what actually goes IN the passwd file? For our purposes, it’s going to consist of a single line: the Name, a colon, and then the Password that a user will need to get into the password-protected secretstuff directory.

Assuming we want to allow ImaStudent to access the directory using a password of 123456 (not a very good password, obviously), that one line in the file passwd will contain both of those pieces of information, and look like this:

ImaStudent:EdQXJLHVRhCFo

Whoa, whoa, whoa. Where did EdQXJLHVRhCFo come from? That doesn’t look like our password 123456 at all.

That’s because EdQXJLHVRhCFo is an htpasswd “hash” of 123456. Apache is so security-conscious that it doesn’t even want to know what your real password is—it only wants to store a “hash”, or one-way coded version, of that password. When a user enters their password into the authentication box, that hashed password (the EdQXJLHVRhCFo, converted from 123456) will be compared to the hashed version in your passwd file.

So how do you know what hash to include in your passwd file?

There are a few ways to do this. One way is to go to a website like this one and enter your password into the indicated field.

Or, if you wish to do it yourself on the computer, open up a Terminal and on the command line, type

$ htpasswd -ndb ImaStudent 123456

…and you’ll get a line that you can paste into your passwds file.

Once you’ve got everything put together, try going to the page that you’ve created and see if you can see anything. If all works as planned, you’ll be confronted by a dialog box that looks something like this.

By typing in the appropriate Name and Password, the browser should proceed to display the previously hidden contents of that folder!

There’s one more thing you may need to take care of, however, depending on how you want to use the new secretstuff folder. If you’re going to use it to serve up regular webpages like index.html then you’re all done: once a user’s attempt to access the directory is authenticated, those pages will appear just as in any other directory.

You may, however, wish to just dump a bunch of files into that folder that students can access. They might be text files, or Word documents, or graphics. If this is the case, it may also be that your webserver doesn’t by default allow these files to be “indexed,” or listed, and you’ll get an error message like the one above.

This is easily fixed. In your .htaccess file—the same one that we were working on in step 2 above—add a fifth line:

AuthName "Secret Stuff"
AuthType Basic
AuthUserFile "/home/rwhite/.htpasswds/public_html/secretstuff/passwd"
Require valid-user
Options +Indexes

This line will allow this directory’s contents to be Indexed, or listed, even if there aren’t any html files to be displayed.

Now students are able to view or download those files simply by clicking on them in the browser window.

You Win Some, You Lose Some

You Win Some, You Lose Some

by Richard White

2011-07-06

It was an interesting school year for me at my school site. As is usually the case for anyone working with technology in education, there were some accomplishments achieved that gave me a strong sense of satisfaction, and there were some disappointments that left me feeling frustrated or annoyed.

In the interest of trying to put everything in perspective, I thought it would be fun to go over some of the highlights. I believe there’s a lot of value in sharing these experiences, particularly as so many of us occasionally feel like we’re working alone in our efforts to improve the use of technology in education. Some of these events may resonate with you. Some of my frustrations may give you a new sense of hope about how much progress you’ve made at your own school. Some of my successes may only increase in your dismay at how glacially slow things seem to move sometimes.

Regardless, we’re all doing the best we can to push things along in the right direction. There are some wonderful things happening at my site that aren’t included here because they have more to do with infrastructure: our IT director increased bandwidth to the school this year, for example. Also, new construction at the Lower and Middle School has included the installation of Epson Brightlink interactive projectors in every new room.

Here’s a quick recap of what happened during my school year at the Upper School:

  • All K-12 teachers were required to have a webpage for each class they teach.
    Our head of school made the good decision to require all teachers to have an official school website-affiliated webpage. Specific requirements were developed by a committee I served on. Ed Tech staff did a good job offering workshops to help prepare less tech-savvy teachers with the transition. The committee also recommended that an appropriate administrator follow up with teachers who needed additional “encouragement” in keeping their pages up to spec, although that never happened, so implementation and use of webpages is not very consistent.
    IDEA: A
    IMPLEMENTATION: A
    FOLLOW-THROUGH: C
  • iPads purchased for classes next year
    A Social Sciences teacher and an English teacher, both technologically-experienced, proposed that a set of iPads would be useful for students in their elective courses. The iPads would store course documents, and be used in class and at home for reading those documents, and taking notes on them. The proposal evolved over the course of the year, and was approved by our Ed Tech committee and by the school’s Tech Director. We’re all looking forward to seeing how this pilot program works out.
    IDEA: A
    SUPPORT FROM SCHOOL: A
    IMPLEMENTATION: We have high hopes
  • Offsite Humor Website “busted”
    I was co-author of an unofficial website that lampooned the Upper School director (with his permission). The site was “busted” by other staff members, who went to that same director with their concerns. The creative “alternative social media” site went underground after that, and the whole affair left a bit of a sour taste in everyone’s mouth.
    IDEA: A
    IMPLEMENTATION: A
    MICROMANAGERIAL RESTRAINT: D
  • Lori Getz came to talk about online safety (Technology Night for parents)
    After years of advocating for a “Parents Technology Night” without any success, one of our school directors decided to invite Lori Getz to speak on the subject of Cyber Safety to our parents and teachers. Lori’s message was appropriate, especially for our Lower and Middle School parents, and I’m glad that someone chose to bring her to the school. The Education Technology Committee had absolutely nothing to do with that decision, however, leaving me to wonder how strong a role we play at the school.
    IDEA: A
    RESULT: A
    IMPLEMENTATION: C-
  • Technology Curriculum at the Upper School
    There are now two technology-related courses in our Upper School: a Social Media course and my Intro to Computer Science class. As measured by enrollment and reputation among students, both electives have been very successful, which I consider a minor miracle itself at our strongly traditional prep school. In the case of the programming class, the IT staff have provided support well beyond what many schools would offer.
    COURSE CURRICULUM: A
    IMPLEMENTATION: A
    RESULTS: A
  • Online Test Calendar trial scrapped
    For several years, the school has been searching for a way to coordinate and manage the tests that students take in their classes. A paper-based test calendar has worked well enough, and there was an attempt this past year to explore a means of putting that calendar online, permitting increased access by students, teachers, and parents. After several meetings and prototyping sessions, I and another teacher concluded that we don’t currently have a good solution to offer the school in this area, and the Upper School director supported us in that analysis.
    IDEA: A
    EXPLORATION PROCESS: A
    DECISION NOT TO IMPLEMENT A BAD SOLUTION: A
  • Student access to network increased
    After an increase in requests for student access to the Internet, the school’s IT department created a WiFi hotspot near the administration building, where students can use their own laptops on the Internet. Content is filtered, but social media sites such as Facebook are not blocked. In my opinion, it’s an important step along the way to providing something that students already have on their cellphones and iPads: full Internet access all the time.
    IDEA: A
    IMPLEMENTATION: B
    HOPE FOR THE FUTURE: A
  • Automated backups of teachers’ computers implemented
    After many years of discussion, our school has begun offering an automated backup plan (Crash Plan) for teachers’ computers.
    IDEA: A
    RESULT: A
    IMPLEMENTATION: C+ (for delay)
  • LearnAPphysics.com grew
    A personal project, this database-drive website provides free, daily practice problems (via email or Internet) to students and teachers who sign up. Subscriptions increased to 3500+ over the course of the year, meaning that I’m spending part of the summer investigating inexpensive email solutions that won’t result in the emails from the site being tagged as spam.
    IDEA: A
    FEEDBACK FROM USERS: A
    FUN IN MANAGING EMAIL: D
  • Request for Professional Growth Support denied
    With the proven success of the LearnAPphysics.com website, I decided this year to expand and that and develop a LearnConceptualPhysics.com website as well. My school is very generous in supporting a number of professional growth and curriculum development projects with funding: teachers submit an application, and may receive up to a maximum of $4000 for their project. My proposal was not funded for a number of reasons, including lack of money (other projects were deemed more deserving than mine) and concern about who would own the materials I’d be developing for the site.
    IDEA: A
    FINAL PRODUCT (I’ll be proceeding with the project, without school funding): A
    INSTITUTIONAL SUPPORT: C (This would have been an D, but the chair of the Professional Growth committee was very good about communicating with me.)
  • Evaluation of school’s educational technology will happen next year
    The school’s Educational Technology “Department” has been charged with doing a WASC-style self-study next year, despite the fact that no such department actually exists. To make things even more confusing, I (a chair of the Ed Tech committee, and the one usually tagged for chair duties), wasn’t informed that such a self-study would happen, at least not until after someone else had already been selected for the role of chair of the committee.
    IDEA: B
    IMPLEMENTATION: D
    ANTICIPATED RESULTS OF SELF-STUDY EVALUATION OF TECH AT UPPER SCHOOL: C+
  • Changing Upgrade Cycle from 4 years to 3 years
    Technology is moving at such a pace that power users using a 3.5-year old laptop are suffering. Our school has been generous in providing teachers with a new computer every four years, but it’s my contention that that’s far too long, especially for advanced users, who have resorted to buying their own computers in order to have the power that they need.
    IDEA: A
    REALISTIC PROBABILITY OF SUCCESS DURING ECONOMIC DOWNTURN: 0.1%

I hope these examples serve to illustrate how difficult it can be to make progress, even when teachers have good ideas and a school genuinely wants to proceed in the right direction. Lack of funding, fear of setting the wrong precedent, fear of botching an implementation, etc., are all logistical realities that we and our administrators have to struggle with.

Despite the challenges I faced, it seems to me that it was a pretty good year, all in all.

How do these experiences compare with your own, at your school site? What kinds of progress did you make this year? What frustrations did you experience?