?

Log in

No account? Create an account
Who, me? [userpic]

Choosing a course

November 26th, 2007 (12:22 pm)
current mood: geekery
current song: geekery

I'm trying to pick a course for next semester (on the assumption that I won't get permission to count the undergrad course). My options are:

Human-Computer Interaction
Basically the science of user interface design. Ten or fifteen years ago I would've jumped at it; today I'm not so interested—I've read more usability stuff than most programmers, which puts me ahead of the pack, and I haven't written a UI in...call it 10 years. For work, anyway.
Artificial Intelligence
Kind of interesting, but I think the Machine Learning course I'm taking this semester will be enough. (The one draw of the AI course is that I'd be programming in Lisp...)
Computer Networks
This is certainly an area where I could always stand to learn more; but, based on the description in the catalog, I'm not sure it would teach me more. It covers TCP/IP in passing and then focuses mostly on ATM, apparently in the belief that ATM is The Network Of The Future. In reality, it's more like The Joke Of The Past. (It may be significant that the instructor is listed as "Staff", meaning they haven't yet found anybody willing to teach the course.)
Advanced Embedded Systems
An interesting option. Involves building an embedded system from scratch—hardware and software both—and interfacing it to a PC. Somewhat beyond my skills, but fun, challenging, and useful. The only option that offers any threat to my 4.0. Oh, and I'd have to spend extra time on campus, working in the lab.
Computer Security
I really should learn more about security, but it's always seemed...dull. I probably know as much as Every Developer Should Know; and, beyond that, if I'm in a group that has special security needs, it's better to get an actual expert.
Robot Design
Hands-on work on the Handy Cricket robot board. Taught by Fred Martin (formerly of the MIT Media Lab, where he worked on stuff that fed into Lego Mindstorms and the Duplo Intelligent Train—which Arthur has :-), who also designed the Handy Cricket. He's apparently a really good teacher; most of the exciting stuff happening around the department is robotics-based. Also, he does a lot of community outreach, helping high schools set up robotics classes.

I think I really want the embedded systems course; the time commitment is the unknown variable. The professor didn't want to hazard a guess at how much time it would take; he said it depended strongly on my background in computer architecture (strong, I think) and logic design (weak).

[Edit: Adding Computer Security, which I missed before, and Robot Design, which I skipped because I thought it wasn't an option. It's actually at least as doable as Advanced Embedded Systems: the lab work can be done at night, and usually-but-not-guaranteed takes about one night per week.]

Comments

Posted by: C. Virtue (cvirtue)
Posted at: November 26th, 2007 05:34 pm (UTC)
Wedding

Being concerned about your grade point average is foolish. Worry instead about value for $ and Time spent, instead. Which gives the greatest value?

Posted by: Who, me? (metageek)
Posted at: November 26th, 2007 05:49 pm (UTC)
That's not my concern

I'm not really concerned about GPA; that's just a metric of how challenging it is.

The embedded system class offers the greatest value, because it's (a) useful to a wide range of potential employers, and (b) stuff I can't easily pick up on my own, since it requires having access to the hardware lab.

The (a) part is strengthened because there are several interesting employers in or near Chelmsford that work in the embedded space; the (b) part is weakened because I could buy similar hardware myself.

The open question is whether the extra value of the embedded system class is worth the extra cost—there may be lab fees (though probably not much), and it'll have a greater cost in time.

The second greatest value is probably either AI or computer security (which I forgot to list).

Posted by: metahacker (metahacker)
Posted at: November 26th, 2007 05:49 pm (UTC)
phd

Do you know anything about any of the professors? A better professor is worth more than a better class, IME.

Taking something that runs counter to your research is a good broadening step.

Posted by: Who, me? (metageek)
Posted at: November 26th, 2007 06:02 pm (UTC)

Do you know anything about any of the professors?

Some. I think I had the professor for computer security once before, for Fundamentals, and he was pretty decent. The AI professor is the one I currently have for Machine Learning, and I don't care for his style.

There's also Robot Design, which is taught by Fred Martin, who has a good reputation in the department. He got his start at the Media Lab, and has had some real-world influence (including two of the programmable Lego kits); and he's done a lot of work reaching out to local high schools. I decided not to take that last Spring because I would need to do the lab work during the day...wait. <digs up old email>...that's wrong: he said it would have to be done on campus, but didn't say anything about during the day. But that's the same challenge with the embedded systems course...OK, I've sent him a note asking if I'd be able to work on it at night.

Taking something that runs counter to your research is a good broadening step.

Oh, yes. I've done some of that, though: language design, compiler construction, and machine learning.

(Really, languages are what have interested me most, but they're underrepresented in the department.)

Posted by: JT (learnteach)
Posted at: November 26th, 2007 06:33 pm (UTC)
Hmmm.

Man, TCP/IP basics at a graduate level? I guess I've worked in the field too long.

Embedded Systems: Microcontrollers 2.1 usually. The real value is having people around who have been through the traps before and can warn you about them; that's not so prevalent.

Security experience is hot in marketing (as you know) but does need to be considered at all levels. And basic robotics will cover some of the embedded systems stuff.

Now you're making me want to go back to school. :

Posted by: Who, me? (metageek)
Posted at: November 26th, 2007 06:48 pm (UTC)
Re: Hmmm.

Man, TCP/IP basics at a graduate level? I guess I've worked in the field too long.

Well...basic to me, anyway. I've been doing TCP/IP for 13+ years now, and I've always dug into the details. And then I wrote a TCP/IPv6 stack as part of my thesis.

The real value is having people around who have been through the traps before and can warn you about them; that's not so prevalent.

That's a good point.

Posted by: ((Anonymous))
Posted at: November 26th, 2007 07:38 pm (UTC)
Re: Hmmm.

Oy, then it will be TRUELY basic for you! Wow, that's a cool part of a thesis.

Posted by: Who, me? (metageek)
Posted at: November 26th, 2007 07:48 pm (UTC)
Re: Hmmm.

Oy, then it will be TRUELY basic for you!

Well, there's plenty to know beyond the implementation—for example, routing is a pretty deep problem. I'm somewhat knowledgeable on routing—probably more so than I need to be—but a long way from expert.

Wow, that's a cool part of a thesis.

Thanks. The thesis is a microkernel whose IPC is IPv6, so it was a pretty essential piece. :-)

(Oh, and who's this? learnteach still?)

Posted by: C. Virtue (cvirtue)
Posted at: November 26th, 2007 07:58 pm (UTC)
Re: Hmmm.

I think you're right, it's still Learnteach.

(Deleted comment)
Posted by: C. Virtue (cvirtue)
Posted at: November 26th, 2007 08:28 pm (UTC)

You could ask Pat what she thinks about a security course.

Posted by: Karen (klwilliams)
Posted at: November 26th, 2007 08:36 pm (UTC)

Come on, it's got to be Robot Design, so we can live through you vicariously.

Posted by: C. Virtue (cvirtue)
Posted at: November 26th, 2007 08:41 pm (UTC)
Kids_school

And you'll be ready to keep up with Arthur in a few years!

Posted by: Who, me? (metageek)
Posted at: November 26th, 2007 09:07 pm (UTC)
Arthur

Yeah, that has definitely occurred to me.

Posted by: C. Virtue (cvirtue)
Posted at: November 26th, 2007 09:11 pm (UTC)
Re: Arthur
lolcat medieval hat

I see it as a family thing. You and Arthur designing and making robots, me and Elizabeth sewing them sparkley pink fairy dresses....

Posted by: Who, me? (metageek)
Posted at: November 26th, 2007 09:10 pm (UTC)
Vicariously

Come on, it's got to be Robot Design, so we can live through you vicariously.

Heh. Come to think of it, that could be an actual rational argument: doing something that my coworkers will want to hear about could help me with my usual problems getting to know people at work. :-)

16 Read Comments