Monthly Archives: July 2011

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?

Building Your Own PC, part 3 – Assembling the Pieces

Building Your Own PC, part 3 – Assembling the Pieces

by Richard White

2011-07-04

So, you’re building your own computer, and you’ve received shipments from Amazon and newegg.com that contain the components that you’ve so carefully selected. Those boxes are piled up in some corner of the apartment, and you’ve managed to set aside a few hours in your schedule during which you can get to work assembling everything into a working computer.

Be aware that this process may take no more than an hour if you know what you’re doing. In my case it took several days of here-and-there work, and that’s not including the week I had to wait for my replacement CPU to come in.

Yeah. There was a replacement CPU that had to arrive.

As previously mentioned, there was a slight hiccup in my ordering: the motherboard I’d ordered, which is perfectly compatible with the Intel i3 CPU I ordered, isn’t compatible with the Intel i3 CPU I ordered.

Confused? I was, too.

The CPU pins are NOT aligned correctly with the socket on the motherboard. Big problem!

It turns out that there are slightly different builds of the i3, some designated 1155, and some designated 1156. These two versions of the i3 chip have different pin configurations, and are completely incompatible with each other. It turns out I’d ordered an 1156 motherboard, and an 1155 chip.

Someone doing a little more research than I’d done might have figured this out… or maybe not. I’d actually cleared my order with a couple of practiced “build your own PC” guys who do this on a regular basis for fun, and they hadn’t known about it either. So… yeah. When the chip wouldn’t fit on the board the way it was supposed to, I did some more digging around on the Internet and eventually figured out what had gone wrong.

These numbers should have been the same--who knew?!

This, boys and girls, is why you keep the old packaging, at least until your machine is up and running. I printed out a return label from the Amazon website and sent back the CPU, and ordered the correct one to replace it. A week later, I was again ready to start building.

The motherboard with the CPU installed, the heatsink/fan over the CPU, and the RAM inserted into the memory slots.

Follow the instructions on whatever website you’re using to guide you in this process. My workflow went like this:

  1. Unpack case and power supply, and install power supply in case, using instructions included with case.
  2. Unpack motherboard and CPU. The instructions included with your motherboard will be awesome! Use them! Find latex gloves (from an old first aid kit) to wear while handling the CPU, or be really, really careful to only hold it by the edges. Install CPU on motherboard.
  3. Install heatsink over CPU.
  4. Install RAM onto motherboard.
  5. Install motherboard into case.
  6. Install drives (CD-ROM, hard drives, etc) into case.
  7. Attach cables from power supply to motherboard and drives.
The motherboard in the case, with the power supply in the lower left, and the disk drives in the lower right.

Theoretically, the computer is ready to go at this point, but… something almost certainly went wrong. A cable attached incorrectly, or a switch on the motherboard that’s in the wrong position. Who knows? Don’t close up the case completely just yet…!

  1. Attach monitor, keyboard, mouse, and power cable to the back of the computer.
  2. Power monitor on, then computer
  3. Play with BIOS as required for your system, following the instructions included with your motherboard.
  4. Install operating system of your choice, typically by booting from a CD, DVD, or USB install disk.

In my case, I ended up installing Ubuntu 10.04 LTS on my computer; this took another hour or so to run through the install process. Followed by an additional hour or so installing updates. If you’re installing Windows, make sure that you also install anti-virus software (AVG is probably the best of the free ones, although you’ll have to search around a bit on the site to get the free version, and not the “free trial”).

And over the course of the next few weeks or so, as I used the machine, I ended up installing additional software on there, as well as copies of all the files on my laptop. That was the original intent of this machine for me, after all: to backup my current computer, and archive other files that I want to hang on to.

Something I’d strongly recommend that you do immediately: create a small text-file on your computer that you use to keep track of software installs, modifications to the machine, etc. Every time I install a new piece of software, I write down the date, the software, and the license key if there is one. Having a list of all the software and modifications to your machine will be invaluable in case of trouble, and can be used as a resource when you end up moving to a new machine at some point in the future.

Keeping the Brain Flexible

Keeping the Brain Flexible

by Richard White

2011-07-02

They say that keeping your brain active is an important part of trying to stave off the natural effects of aging on brain function. This may be good advice on a neurological basis, but I think it’s even more important for teachers to stay cognitively active.

This is harder to do than you might think. I’ve spent a good part of my teacher prep time for the last ten years or so trying to devise materials and methods that will allow me to me less cognitively active. “If I put these materials on PowerPoint slides, I’ll be better organized (i.e. put less future thought into creating my lessons).” Or, “if I assemble a great test bank of questions now, I won’t have to work as hard when I need to write a unit test on this material next year.”

There’s nothing wrong with this, of course. I’m just about the biggest fan of “Work Smarter, Not Harder” there is. But being more efficient isn’t necessarily doing my cognition any favors.

Our brains, it turns out, like to be puzzled. Which brings us to vi, now vim.

What’s vi?

That’s not the Roman numeral “6,” that’s actually the two letters “v-i”, pronounced “vee-eye,” and referring to a text editor that was originally written back in 1976 by Bill Joy. vi has since gone on to become the power text editor of choice, beating out by a healthy margin gedit, emacs, and all the others in a recent survey.

Wait… what’s a text editor?

If you don’t know about “text editors” yet, you don’t know what you’re missing. Text editors allow you to write simple, unformatted, text-based documents without, say, having to wait 5 minutes for Microsoft Word to launch. Another advantage includes the fact that “text is text”—you don’t have to worry about whether you have the right version of a proprietary software package to open a file (Microsoft’s 2004 software won’t open its 2008 .docx files, for example.) The disadvantage to text files is that they don’t support even the simplest formatting: bold text, italicized text, underlined text are not available. You get text, and that’s it.

I use text files for lots of different things, from to-do lists to lesson plans, from journal entries to coding programs and websites. So I’m kind of a fan. On the Mac, I started out using BareBones Software’s free TextWrangler for awhile before deciding to pony up the big bucks for their professional-level BBEdit. I played around with emacs for a bit, and recently have enjoyed working in TextMate.

All of these are perfectly awesome text editors, and well worth your time, money, and attention.

You may have noticed that vi is not on that list.

vi, for me, has been super difficult to learn. It’s what people call a “modal” editor, meaning that you have to switch between 2-3 modes while working with your text—inserting text is different from editing text—and that process of switching back and forth between the two modes is difficult for me, cognitively.

Doing the difficult thing

So that’s why I’m learning vi this summer. It’s the most popular text editor for geeks by a large margin, it’s amazingly powerful, AND I get to try to learn something new that my brain has to struggle with?

Sign me up!

That’s what I’m trying to do this summer that’s difficult for me. What are you doing to keep your brain plastic? Something creative? Something challenging? Something you don’t already know how to do?

NOTE: If you’d like to try vi for yourself, it comes pre-installed on Apple OS X and any Linux distro—launch a Terminal and type vi to try it out. Fair warning, though: you’ll want to Google “vi tutorial” or something similar for advice on getting started.

Windows will have to install vim by following the instructions here.

Good luck!

Building Your Own PC, part 2 – Design and Ordering

Building Your Own PC, part 2
Design and Ordering

by Richard White

2011-07-01

There are two reasons you might have for wanting to build your own PC:

  • You have a need for a new computer, or
  • It’s just so frickin’ cool, building a computer.

Ideally, both of these reasons would apply.

In my case, I needed a new machine to replace an old PC that had finally completely failed; the hard drive in the old hand-me-down PC wouldn’t even boot anymore, so I figured it was time to create my own “dream machine.”

If you’ve read the Ars System Guide—highly recommended before embarking on this journey, and to be consulted along the way—you know that their Dream Machine refers to high-end powerhouse computer complete with solid-state disk RAM and a screaming fast graphics card, usually for running processor intensive games under Windows.

My dream machine, however, is a little more utilitarian. For my purposes, I simply needed a machine that I would use for backups of my other machines, and to store and potentially serve media at my house. I don’t need fast booting on this machine, nor even a dedicated graphics card—in my research, I selected a motherboard that had onboard graphics that would be just fine for my purposes.

The money I saved in using a lower-end processor was instead spent on hard drives that would be used for my backups and media. Because these are backups, and even backups need a backup, I eventually ended up with 4 one-terabyte drives: one for the system and media, one for the backups, and the other two mirrors of these first two. (For the more technically inclined, I did not configure these drives as a RAID. I’m simply rsyncing the drives on a periodic basis.)

So that’s my machine. You’ll obviously need to figure out what kind of machine you’re looking to build.

Once you’ve got that sort of figured out, then you can start really looking through the guides to see what kinds of recommendations they might have for you. And for a first-timer, it really does make a whole lot of sense to get some advice from the experts. There are so many different technical considerations that govern whether or not the different components will work together, your chances of designing your own computer—case, power supply, motherboard, processor, memory, hard drives, and graphics card—successfully but without guidance are virtually nil.

Even following someone else’s guidelines, you’re going to face some challenges.

Ordering the various components of your machine consists, then, of poking around on sites that sell these things. Just about everyone I spoke with in the course of building my own machine orders from newegg.com and Amazon.com, who both have a good selection, multiple shipping options, and user reviews that provide yet another data point in your decision on whether to order this hard drive or that hard drive. I ended up ordering my hard drives from newegg.com rather than Amazon for example, because several people complained on the Amazon site about how the drives had been shipped to them. I got my case and power supply and newegg.com as well, because there was a discount for buying them together there.

It took me an evening to finally get my newegg.com order put together, and the next day I finished up with my Amazon.com order. Here’s what I ended up order from each one.

In preparation for next time… can you see the mistake in one of my orders below? Can you determine which part I ended up having to send back??!

Summary of order from newegg.com

Order from Amazon.com