UVSC BYU U of U etc was"Software Engineering (was Re: Java)

Tom Hanks tjhanks at forgeglobal.com
Fri Feb 16 10:45:20 MST 2007

Well, I'm glad to learn that BYU is changing to meet the market demand.  
Ten years from now, BYU could be number 1.


Michael Brailsford wrote:
> I have to agree with Hans.  I think BYU's CS program is excellent.  I, at least, learned far more than most of my colleagues.  When we swap stories about projects and things we did in our classes, they are constantly amazed at the breadth of concepts we covered.  I have spoken with people from very good engineering universities, Missouri - Rolla, for example (Don't laugh, look it up).  The education I received is very similar.  The projects at BYU far outstrip many of the projects my coworkers had to do.  I mention to them that we wrote our own networking stack at BYU, or own FAT12 filesystem, our own RPC, our own graphics processing engine from the pixel and scanline level up to 3D rotations, a Linux Kernel scheduler, Linux system call, modula-like compiler, etc...  Well you get the idea.  They always ask, "You did all that?  I wish <insert university> did that with us.  All we did was small projects and one senior project".  I have had interviewers remark that they have worked with X number of engineers from BYU and they were some of the best they have ever worked with.  I simply do not share the view that BYU is somehow a poor CS program that ill prepares its students as software engineers.  BYU CS program is very fertile ground.  The professors are open to letting us do those tangential things which Hans mentioned.  I did nearly all my projects on Linux, eschewing the ready made helper libs that only worked on Windows, my grades might have taken a hit, but I learned a great deal more.  The vast majority of the engineers here never used anything other than Windows for their projects, and some were actively discouraged from using Linux, apart from their one semester course on Unix.  Stop giving BYU an undeserved hard time.  Its CS program is excellent.  If you were ill prepared while at BYU, I think you need to do a little introspection.  If you just went through the motions, just doing the minimum to complete a project/assignment, then you would have a poor education from any university, despite probably having great grades.  You would be ill prepared no matter where you went.  
> I think BYU did a poor job encouraging students to do internships with employers.  I think they did a poor job helping with placement.  I think they poorly prepared me to search for a job.  But they did an excellent job teaching me what I need to know to succeed in my chosen field (once I got in).
> -Michael
> ----- Original Message ----
> From: Hans Fugal <hans at fugal.net>
> To: plug at plug.org
> Sent: Friday, February 16, 2007 9:53:08 AM
> Subject: Re: UVSC BYU U of U etc was"Software Engineering (was Re: Java)
> On Fri, 16 Feb 2007 at 02:13 -0700, Scott Paul Robertson wrote:
>> They still take CS as a Science. If you want server administration you
>> go to the IT department.
> BYU has a good CS program. BYU's CS deptartment is not a great vocational
> programming program, and there's no reason it should be. If you're
> interested in getting up to speed so you can go be a code monkey for the
> rest of your life, BYU CS is not the place to do it.
> If you're interested in a good university education in Computer
> _Science_, which is at least as much theory as coding practice, BYU is
> pretty good. If you're interested in Software Engineering, BYU is better
> than some but probably not the best (at least wasn't, maybe the changes
> spr mentions will affect that). 
> If you're interested in Computer Science graduate school, it seems to me
> that BYU is an excellent choice. I have often found that what
> I learned at school has little bearing on the knowledge or experience I
> need for a job. I made/make most of my money doing system administration
> (thank UUG and PLUG), VOIP (thank Jared Smith), web programming (if this
> was a focus at BYU CS I would almost certainly have majored in music),
> and C programming (C?  what's that? We teach Pascal/Java/<insert
> industry favorite teaching language here>).  But my preparation for
> graduate school, which based on my experience here at NMSU is nothing
> short of "very well prepared", traces back strongly to my BYU time.
> Undergraduate research, a strong focus on theory, lots of coding (yes,
> you code a lot at BYU. I'm surprised at how little actual code people at
> other schools write. That doesn't mean you learn to code _well_ per se,
> but you do do a lot of coding), and at least in my experience the
> professors were willing to let you go your own way if you had a good
> idea and a dose of passion (excellent preparation for research
> activities). I also attribute some of my preparation to what was then a
> disadvantage - my tendency to go off on tangents and do cool things just
> for the heck of it, regardless of what the assignment actually asked
> for.
> Incidentally I consider the department here to be of good quality. We're
> smaller than BYU's department, and the student body is perhaps more
> uniform in level (you get all kinds from moderately intelligent to
> brilliant at BYU, which is fairly unique). The dept. here is focused on
> Linux/UNIX which suits me fine, we have some outstanding faculty (_the_
> expert on graph theory was faculty here until he passed away a couple of
> years ago), and it was rated far above BYU CS in one of those silly
> magazine ratings when I was looking at graduate schools. 
> I can't speak as to whether BYU prepares you well for CMU, MIT,
> Stanford, Princeton, Berkeley, etc. But for NMSU and similar schools
> you're sitting pretty if you did well at BYU.
> In summary, I've seen a lot of good coders at/from BYU. I've seen some
> pretty lousy ones too. I've seen some people good at theory, I've seen
> some people lousy at theory. If you want a good theoretical background
> with a lot of coding practice (but perhaps not enough guidance, though
> the changes may affect that), BYU is a place.

More information about the PLUG mailing list