[Tfug] Cheap Memory = Lardy Men = UofA Comp Sci Program
Bowie J. Poag
bpoag at comcast.net
Fri Dec 21 21:56:34 MST 2007
void myOpinion (void)
{
// I'm not the best coder in the world. Yeah, I know, unbelievable. :)
But here's my $0.02, as someone who has to do it for a living:
I would agree... When I attended U of A about 7-8 years ago, their Comp
Sci program was kind of lame. I felt at the time that it didn't go very
far toward preparing students for real-world coding. In retrospect, I
was right.. They didn't prepare us for real-world coding, nor did they
emphasize good coding habits, or even begin to teach topics such as
what's good coding philosophy, what open source is, everything that
everyone knew was going to be commonplace in the future. They touched on
none of it. It was more like "Oh, it runs? Great! A+ for you. Next?" I
would have preferred it be something more along the lines of "Oh, it
works? Great. You get a D+. Now go make your RPN calculator applet
lightweight, so it doesn't require 39MB to run on this machine. If you
can do it in a memory footprint of less than (x) and still keep it
readable, you get an A."
/* Speculation: I think their biggest problem can be boiled down to one
word: Java. Like alot of other Universities with their dick stuck in Sun
Microsystem's mousetrap, they were slowly talked into folding Java into
their curriculum... eventually, enough pillow talk got them to ditch C
and shape their entire curriculum around it. They bet the farm on the
industry moving toward OO, and in particular, Java. */
Simple procedural programming is still the dominant method of getting
stuff done, not OO.. For most things, OO is exactly what it appears to
be. Unnecessary, time-consuming, slow, bloaty overkill. My time as a
student would have been better spent learning how to be a better
procedural coder, and THEN open the door to OO concepts later. I mean,
what good is it learn how to carry around an OO-centric 300 pound Swiss
Army Knife with 117 different attachments (of which you'll only use
maybe 2), when all you really need is common sense? Ditch the knife and
use your head, for cryin' out loud. Don't teach me WHAT to think--Teach
me HOW to think. How do I make my code fast AND readable? How do I
collaborate with others? How can I be more strategic in my approach to
problem solving? What does it mean to write truly portable, streamlined,
orthogonal code? How do I maintain my code over it's lifespan? I got
none of that at UofA, sadly.
Ugh... and to make matters still worse, UofA relegated assembly language
to the CE track, and away from CS, which in my book, is criminal. Sad,
and criminal. Worse, they tried to line up SML/NJ in it's place, like it
taught the same concepts.. good lord..
vomit(UofA);
exit();
}
Jude Nelson wrote:
> I agree--coders should be forced to learn on low, low-end hardware
> (even if only in a VM) and earn the privilage of using faster, better
> systems. That's how I learned--I started Basic and asssembler on a
> TI-83+ graphing calculator (23k RAM, 16 MHz Zilog z80 [8-bit], 1.5 MB
> flash ROM), and moved to C on a TI-89 graphing calculator (191k RAM,
> 12 MHz Motorola 68k processor, 300k flash ROM, 32k code segments [the
> 68k has a 16-bit data bus but was 32-bit internally]), and moved to
> Palm OS devices (wow! a whole megabyte of heap space!), and then
> finally to PCs.
>
> And how does the U of A teach CS students to code? With a 16 GB
> quad-core 64-bit server, with Java 5 of course! Seriously, how do you
> even *use* that much horsepower? My dual-core laptop with 2 GB RAM is
> only justified in that I need to be able to do my homework off-line
> (oh, and show Compiz Fusion to those foolish enough to think Vi$ta is
> the Second Coming).
>
> Regards,
> Jude Nelson
>
More information about the tfug
mailing list