
Research Tools class - rkda
http://vislab-ccom.unh.edu/~schwehr/Classes/2011/esci895-researchtools/
======
stevenbedrick
This looks like an excellent class, and fills a _very_ important educational
niche. We taught something vaguely similar a couple of years ago geared
towards molecular biologists and clinical researchers, and it turned out to be
extremely popular. Most of our students had less than zero programming
experience, and pretty much all of them were able to put what they learned to
practical use. The point of the class was teach them just enough, about enough
different things, to get a feel for what sorts of problems could be easily
tackled programmatically.

For example, one student realized part-way through the class that she could
write a script to automatically process the lengthy and complex output of a
particular laboratory instrument instead of doing it by hand, and by the end
of the class was able to not only write that script but modify and extend it
to deal with a slightly different model of the same instrument. Other students
figured out that Python was easier to use than SAS for some types of data
reformatting and analysis. Nothing fancy, just the sort of day-to-day hacking
that we all take completely for granted- but it's incredibly useful for
working scientists to be able to do that sort of thing for themselves, and
courses like this one give them a real leg up.

It looks like the UNH course had some really great content- seriously, check
it out or send a link to your scientist buddies.

------
pgbovine
Cool! I love how universities are acknowledging that there is a fast-growing
"long-tail" of programmers who are scientists and data analysts, and that they
need different sorts of programming training than CS majors ...

Reminds me of Greg Wilson's <http://software-carpentry.org/>

------
systemizer
I'm a student at MIT, and we would never see a course like this in the course
catalog. I still haven't decided whether this is a good or bad thing, but I
believe we need to find a middle ground: Do we take a theoretical approach or
an implementation approach?

I've been unimpressed by MIT's ability to teach "coding." In fact, no classes
actually teach you the art; you find out by experimentation in problem sets.
However, as a result, you adopt a lot of bad habits that will make you less
marketable to any company; you're code probably sucks.

I know this is a bit off-topic, but I applaud UNH for teaching such a class.
It is important to teach the "tools" and the "technology" rather than the
theory; at least to the point so you know what applications are out there to
help.

~~~
mayneack
1.00, 6.00, IAP Matlab, IAP Python, I'm sure there are more, but those were
just the options I considered when I was starting out (I went with 6.00).

Sure the catalog is very coding light, but they assume you can figure it out
on your own if you need it or can apply what you've been taught in 6.00/1.00
to many scenarios and learn from that basis.

These classes are not required in EECS, but required for the other engineering
majors (you can, of course, substitute 6.01 if you are ambitious).

~~~
systemizer
"...but they assume you can figure it out on your own if you need it or can
apply what you've been taught in 6.00/1.00 to many scenarios and learn from
that basis."

But that is the problem. Most/all MIT students teach themselves how to code,
but that doesn't mean their code is clean and legible. Many times, the code
quality is very bad because they develop bad habits in the process of teaching
themselves. MIT needs an actual course about coding.... maybe a required HASS
about how it should be considered an artwork.

------
pflats
This is pretty cool. As a mathematician, I feel like they should get to R
instead of, say, how to use IRC or emacs, but I'm sure that's just my bias.

When I was an undergrad, every 3rd year student had to take a class that
involved write a 20-page position paper. Those of us in the hard sciences were
required publish in LaTeX, which drove the English professors running the
class crazy. It was good practice, though.

The closest our school came to anything like this was informal seminars the
math department would run, with seniors and grad students tutoring sophomores
on how to use R, MATLAB, LaTeX, and similar.

We even did ALP for the actuaries among us. I love the language, but trying to
teach it is another story.

------
shallowwater
This looks like a very cool class. I did a masters in ecology, and I got an
R-based stats class that was not enough stats to get me up to speed on stats
or enough coding/R for me to do much of anything. There was a lot of cursing
and naming things 'fuckihatemylife'.

Maybe I'll try and revisit this on my own. I run into so many situations where
I KNOW there has to be an easier and less-human-error-prone way to have a
computer do data manipulation for me, but I don't know enough to actually put
it together.

------
ojeffmo
I went to UNH for my undergraduate program followed by MIT for my masters and
I totally agree that the middle ground between the theoretical approach and
the implementation approach is the goal, however, I believe that BOTH need to
be taught for the full experience.

As a working man now, I feel that the implementation approach is more
beneficial for getting a job done, but as an entrepreneur I can say that the
theory is what really gets you steps ahead of your competition.

