class schedule for Winter 2008 finalised [now really final]

Like usual, I waited till 12:00 to be the first one to register (of my reg. date) to see a rather typical routeY lag. Fortunately I'm not running windows, or I'd have thought my computer crashed.
ECEn 451 is VLSI class and ECEn 490 is my senior project, where a small group of Electrical and Computer Engineer wannabes will build a quadrotor, with vision (a mounted camera) and an autopilot, so it can react to what it sees accordingly.
I'm also taking the dreaded Chem 105. I've heard horror stories about it, but I can't imagine it's worse than an Engineering class, so provided I do the reading*, I should be fine.
*note, this is unlikely
EDIT
I made a fairly significant change today. I figured I should probably take Magnetic Fields (ECEn 360) while I still remember stuff about Analog Circuits, as recently I've been doing programming and Digital Circuit Design. My new schedule. 3 four credit classes......my favourite.... :(
and you can probably apply anything I said about Chemistry to Magnetic Fields, only it'll be much, much harder.
Gmail 2.0 launched!
Only a few accounts have received it so far, but it's a minor change on the outside (albeit it has been re-engineered under the hood) The only noticeable changes are its improved speed (it's really fast now, as it caches everything). Interesting to note is that it IS caching that's doing this, and not some other trick. The first time you click a label, it lags a little, but subsequent (in the same session) loads are near instant. The other big improvement is the Contacts section pictured below (and don't even think about spamming me!)
So far it seems a little rough, and crashed on me once, but it's good to see that google isn't pulling a microsoft and pulling the plug development when they get in the lead, vowing only to improve when they have competition (ala IE vs Netscape)
You'll be able to tell if you have it if you see a 'old version' in the top corner like in my pic.
Gmail finally does IMAP
and it's about time, too!
For those of you who use an email client (like Thunderbird) and have been popping off mail, you will have noticed how pop3 is just one way. If you delete an email in thunderbird, you'll still see in in gmail's webmail. This becomes even more annoying if you pop gmail from a desktop client and a phone (like I do). The best you could do was have gmail archive and mark as read when you pop it (at least that way you wouldn't receive the email as unread in webmail.
These problems are now over, as since the 24th of October (and a few days later for you unlucky ones) gmail now supports the IMAP4rev1 protocol.
Google has put up an interesting table that explains how a client can interface with the web. This is because Google uses a different approach to email. Instead of using folders, they use labels. Despite the IMA4rev1 protocol supporting labels, but clients haven't implemented it (Thunderbird 3 will). This can confuse some things, so I'll explain the changes needed for my client of choice (Thunderbird, in case you hadn't guessed).
This hasn't really been well documented on the web, as IMAP has only been available for a few days
By default, Thunderbird has it's own folders for Trash, Sent and Draft.
These should be fixed, as the only way to delete from the server is to put an email into Gmail's Trash.
Fix Sent mail and Drafts
Go to 'Copies & Folders' and set TB to save to the Gmail Sent Mail folder. That will set the internal folder flag. Then, you can turn off the option in TB. The flag will remain set, and it will appear as a Sent folder. (do the same for drafts)
Fix Trash
Make sure Thunderbird is closed and open the file 'prefs.js' located in Thunderbird/*.default/
and find a line that says
user_pref("mail.server.server2.hostname", "imap.gmail.com");
check for the number next to server. This is the server number.
create a new line underneath like this
user_pref("mail.server.server#.trash_folder_name", "[Gmail]/Trash");
replace # with your number
Fly Fishing
I should have probably posted this a while ago, but I didn't do it right away, and forgot.
An old mission buddy (and pro-fisher) Tommy Redd convinced me to go fishing. He had all the gear, so all I had to do was show up. I reluctantly agreed to wake up at 6AM on Saturday. We drove for almost an hour to Sixth Water Creek. Tommy was keen on leaving early, as being the second fisher sucks, as the fish are already scared (apparently). We fished till almost 4PM - time really went by quickly, especially since I didn't have a watch or cell reception.
So, how long exactly did it take me to catch my first fish? About 25 seconds - granted I got lucky, and had Tommy peering over my shoulder.
![]() |
| Sixth Water Creek |
bash script to automate compiling alsa in Ubuntu
Most of the laptops I've owned have had trouble with sound to some degree. The only solution is to compile the latest version of alsa manually, as most GNU/Linux distros have an out of date alsa (even the recently released Ubuntu 7.10 - Gutsy Gibbon)
This wouldn't be a big deal, but every time you get a kernel update, you have to compile alsa again. This can become a bit of a pain, so I wrote a bash script that would do it all for me.
First the script will download all alsa's dependencies. Then it will download:
alsa-driver-1.0.15.tar.bz2
alsa-lib-1.0.15.tar.bz2
alsa-utils-1.0.15.tar.bz2
it will then extract them (whilst deleting the .bz2), move them to /usr/src/alsa and compile them each.
just copy the first block of text to a text file and save as alsa_1.sh, and then the second block to alsa_2.sh and then cd to it in a terminal and type "sudo sh alsa_1.sh"
then reboot, and then type "sudo sh alsa_2.sh"
(make sure the scripts have execute privileges. (by typing "chmod a+x alsa_1.sh")
alsa_1.sh
------------------------
#!/bin/sh
#
#install necessary stuff
apt-get install build-essential ncurses-dev gettext
apt-get install linux-headers-`uname -r`
echo "downloading alsa packages..."
wget ftp://ftp.alsa-project.org/pub/driver/alsa-driver-1.0.15.tar.bz2
wget ftp://ftp.alsa-project.org/pub/lib/alsa-lib-1.0.15.tar.bz2
wget ftp://ftp.alsa-project.org/pub/utils/alsa-utils-1.0.15.tar.bz2
echo "extracting alsa packages..."
tar -xjf alsa-driver*.tar.bz2
tar -xjf alsa-lib*.tar.bz2
tar -xjf alsa-utils*.tar.bz2
rm alsa*.tar.bz2
echo "setting up alsa for compilation"
mkdir -p /usr/src/alsa
mv alsa-* /usr/src/alsa
#alsa-driver
cd /usr/src/alsa/alsa-driver*
./configure --with-cards=hda-intel
make
make install
#alsa-lib
cd /usr/src/alsa/alsa-lib*
./configure
make
make install
#alsa-utils
cd /usr/src/alsa/alsa-utils*
./configure
make
make install
echo "now reboot your machine, and run alsa_2"
#end of alsa_1
alsa_2.sh
------------------------
#!/bin/sh
#for after reboot
cp -v /lib/modules/`uname -r`/kernel/sound/pci/hda/snd-hda-intel.ko /lib/modules/`uname -r`/ubuntu/media/snd-hda-intel/snd-hda-intel.ko
cp -v /usr/src/alsa/alsa-driver*/modules/* /lib/modules/`uname -r`/kernel/sound/
depmod -a
#end of alsa_2
note, in its bare form, this will work in any distro, but my script installs the dependencies using APT (so this will only work for debian based distros - Debian, Ubuntu, LinuxMint, Mepis etc..)
also, alsa_2 is assuming kernel 2.6.22. If you have a different kernel, or several .22 kernels, you'll need to specify. Also, my script compiles the alsa-driver for intel-hda sound cards. This is the most common card for laptops (if you have an intel processor, chances are you have it). If not, replace with your sound cards name
Ubuntu 7.10 released!
Each April and October Canonical releases a new version of Ubuntu, this time code-named Gutsy Gibbon.
A quick background to Ubuntu and linux in general:
Richard Stallman founded GNU (GNU is NOT UNIX) and fought against Microsot's monopolistic view of software. He created the now common GPL (General Public License), a way to allow your code to be freely usable by anyone who won't close source it (AKA, Microsoft). The only restriction is that any modifications you make to the code must stay open source. Sounds fair, right?
It's because of this license that we can all run a linux kernel on our routers, as Linksys uses the GPL'd linux kernel 2.4, and had to open source their firmware.
So, a combination of GNU software, over the linux kernel, combined with a Desktop environment (GNOME, KDE, XFCE etc..) are what we all commonly know as linux. So it's technically correct to call is GNU/Linux, not just Linux.
Ubuntu uses debian as a base, and inherits its fantastic APT (Advanced Packaging Tool), a frontend to Dpkg. This is essentially a brilliant way to install, remove, and provide information about installable packages.
On a Debian system, you generally have the linux kernel with the GNOME Desktop environment, with GNU tools and APT.
Each Ubuntu release is synced with GNOME, and releases about 1 month after GNOME, with the current latest kernel (or .1 older) , current versions of Firefox, OpenOffice, Pidgin etc..
One of the great things about GNU/Linux distributions is that all your software is packaged together, so you run the system wide updater, and it will update EVERYTHING at once. GNU/Linux is all about efficiency. It would be pretty stupid to require each application (even the small ones) to code their own auto updater. The less time application developers have to code stuff unrelated to their program, the more time they spend making their own application stable.
So, back to Ubuntu, Gutsy comes with quite a few (considering it's short release cycle) changes.
A shiny 2.6.22 tickless kernel, GNOME 2.20, x.org 7.3, pidgin 2.21, NTFS read/write support, AppArmor security framework, GUI X config tool, fast user switching, the GIMP 2.4, and Compiz Fusion running by default on capable graphics card (with restricted driver). Also available in the repository is granparadiso (A.K.A. Firefox 3 alpha 8). Firefox 3 will be the first Gecko based browser to pass th Acid2 test. (Opera and Khtml/webkit already pass).
It's hard not to expect more from a GNU/Linux distro, but providing these kinds of improvements keep coming at this rate, the future should be good.
get it here
If you're already running Feisty, just type the following in the terminal "sudo apt-get dist-upgrade"
What BYU would be like if I was its president part2
My first speech to the faculty would start out in roughly the following way
"Each faculty member must have looked over, worked out and solved the answer to every question they assign. There is to be no guinea-pigging of students through new and potentially terrible ideas."
Why do I think this is important enough to be my first item of business?
Could it be that almost every semester a teacher (or more) tries some new and untested way of teaching/grading etc.. that doesn't quite work out as hoped?
How frequently have (after complaining) received the response "You're right, we won't do that again next semester." So basically what the teacher is saying it "Thanks for the input, next semester's students will benefit from our screw-ups on you."
On 7 September 1999 President Bateman said the following in a BYU devotional:
"It takes approximately three hours of study outside class for every hour in the classroom. If you take 15 hours of credit, you should allocate upward of 45 hours for study per week."
So, to calculate how much studying I should do per class should be simple.
I'm taking a certain Engineering class that is only 3 credits, yet 2 weeks ago, instead of the expected 9 hours of study, it was close to 30. The assigned homework was only 7 questions, but some of the questions had parts a-k, totaling around 50 questions and more than 20 sheets of paper.
A few of my friends got sick from pulling all-nighters, others had to skip work, and I got a little behind in some of my other classes.
Upon mentioning this problem to the teacher, the response I received was "Oh, I didn't realize each of those questions had 12 parts to them, sorry about that."
It was a very casual response, not realizing how BIG of a deal that simple mistake was. And all because he couldn't take 2 minutes to look at the problems he was assigning.
It's fairly frequent that we get terrible assignments, and their response seems to always be "I'll make sure I don't assign that hwk problem next semester." Well..... All I can say to that is - How does that help me? - It doesn't. If a course has been offered each semester for the last several years, with the same edition of the book, how is it possible that these kinds of problems keep happening?
What BYU would be like if I was its president part1
Based on previous posts, you should all know that my first act would be to fix the bookstore. Either make the prices of their books competitive, or at least post what books are required by what classes LONG before the semester starts.
They have complete control, and don't post what books you need until 10 days before school starts, making it very difficult for students to then find an alternate (and cheaper) source.
Both of my Parents teach at BYU, and they claim that the bookstore requires they submit a list of required books for their course several months before the semester starts, so why isn't this list made publicly available ?
Anyone who's read the previous paragraph should know the answer to that.
I thought a capitalistic society was supposed to allow for competition.
Capitalism is meant to allow for competition. Only then does the best business make the most money. (Am I allowed to say that without being an Econ./PolySci major? - YES!)



