I'm also having some success with this.

As a mechanical engineering major, the challenges are different, but I'm also having some success with Ubuntu in my classes.

I'm thankful that the commercial Matlab programming language supports Linux. (Hopefully the first of many commercial programs to support Linux) I couldn't use any of the free alternatives, because I actually needed the Matlab GUI for various reasons.

For most of my typed assignments, openoffice works great.

On the other hand, there have also been some letdowns. I had to use MS Excel for one of my classes that dealt with some very advanced features that don't work the same in alternate programs, and I was also expected to learn some highly obscure GUI features of excel.

Also, I need to use alot of drafting/CAD software for my classes, and almost none of it has been ported to Linux. For this reason, I dual-boot.

We're making progress, but we need commercial software companies to realize that Linux is starting to really matter, and we need to accept that commercial software isn't evil, it's just not free.