Ever feel like you’re being crushed by everything that needs to be done? I procrastinate, my tasks stack up, I procrastinate even more because just thinking about everything I should be doing makes me nauseous. In the end, I get things done only moments before they’re due and with half the effort I was hoping to put into them. It’s as if I make time my personal idol, craving more of it but always burning it away faster than I can receive it; “I don’t have enough time,” becomes not only a top excuse but a way of life, eating away my identity more and more.

If only I had more time.

Linux and site

I got home for the holidays last Friday (Dec 15th). I decided to force myself to use Kubuntu 7.10 on my laptop, since I have time now to overcome any problems it throws at me. So far I’ve been pretty successful, the only thing I haven’t been able to get working is compiz/emerald, but that wouldn’t work on my desktop either so I’ve just given up now.

Samba threw me into a loop for a while, I was trying to setup shares similar to windows, read-only and no password required. I thought I had it setup great, but it kept giving me “path cannot be found” when accessing the share from another machine. I eventually found the samba logs, saw that it said access was denied. I played around with permissions for a while, never getting the user “nobody” to be able to read from that folder. Finally I realized the external hard drive the folder was on was mounted with umask=007, meaning that other users and groups could never have permission to read from it. I removed the umask, set the permissions on the folder, and now it works great. This might be one of those things that I want to punch myself in the face for later down the road when I learn more about this type of stuff, but for now I’m the only user on this laptop so changing that can’t be too terrible.

The new website is coming along. I have a general design idea and I’m playing around with the CSS right now. I’m going with a dark theme, lighter text on a darker background. Not sure what I’ll do with the blog on there… guess I’ll find out when it’s done!

Site and stuff

So I decide to redo this site… I’d like to see it become more like a collection of various helpful things than just this blog that no one cares about. It should also be something I can put on my resume that will empress employers. Below are the sites I’m using for inspiration:

Elijah Lofgren

Elijah Lofgren’s site

Atomicspark Online

Atomicspark Online

I haven’t nailed down exactly all that I want out of the site… but it should at the very least be a hub to all my public online works. Of course, I can’t promise this won’t just become another project that gets buried, but hey, that’s life!

In other news, it’s four days until I get to go home to see my family, friends, and cats. It seems that the closer the day to return comes, the longer the days are. Blargh!

College life

Someone please save us, us college kids!
What my parents told me is what I did
They said go to school and be a college kid
But in the end i question why I did

I’m poor, I’m starving, I’m flat broke, I’ve got no cash to spend
Sell all my books for front row tickets to Dave Matthews band
My girlfriend’s at another school, I know this year will test her
I called, found out she had three other boyfriends last semester

And that’s why I say
Oh no! not for me, not for me
Call it torture, call it university
No! arts and crafts is all I need
I’ll take calligraphy and then I’ll make a fake degree

80 grand later I found out that all that I had learned
Is that you should show up to take your finals and your midterms
The party scene is kinda mean, I think it’s sick and twisted
The navy showed up at my dorm and claimed that I enlisted..

– Relient K — College Kids

This song has been the theme of the past month for me. But don’t worry, I haven’t failed my midterms. In fact, I’m not quite sure of what my grades are at this point…

The floor hasn’t been nearly as exciting as the first week during initiation, but there’s still at least one random SOMETHING per week. For example, a guy on the floor (Paco) decided I needed a shower. He grabbed my roommate and together they tackled me and started dragging me to the bathroom. It was an epic struggle against good and evil. The fight went on for about ten minutes, two minutes of which I had managed to escape with my only exit being locking myself in the bathroom. They quickly undid the lock, but I still managed to crawl away for a distance before they managed to shove me in. It’s all in good fun of course, and it’s a story that will undoubtedly get more and more epic with each retelling.

Pictured below is another random floor doing. Center is Anvil, who decided to slide up and down the hall while sitting in a box. The box broke, but he didn’t give up there! He had us duct tape the box to his arms. I’m sure you can guess how that turned out…


If I haven’t made it clear enough… I really, really like this floor and campus. Somehow I don’t think that any other campus would be quite like this. Mixing a floor of Christian guys who are all engineers is just bound to have interesting results I suppose. I even made this nifty 41 logo when I was bored one day. It’s probably my first photoshop work with an actual, real-life picture (even though it doesn’t look like a real-life photo anymore). This is actually a picture of the symbol off the wall in the floor lobby. I really like how it turned out to look like an egg with the symbol imprinted on it.

41 Symbol

We’ve had a couple birthday pondings since my last bloggery as well. Picture below is Copper, our first ponding. We really overwhelmed the poor guy, he didn’t even bother putting up a fight.

Copper’s ponding

Of course, I should mention that I have actually been getting some work done here. For my fundamentals of engineering class (aka fundamentals of wasting time), we had to build a “cool” robot. Our team of three decided to do a maze solver. Unfortunately, LabVIEW is a truly awful platform to develop the NXT from, so we ended up doing a simpler line-branch follower. It would always follow branches in the line to the right, and would keep doing so forever. Pictured below is an early phase of the robot in which it could only follow linear paths (it did that figure eight just fine too though!). Our next project is a window washer. Mmm, fun.

Our “cool” NXT robot

I’ve also had some time to pursue some personal interests. ULX got a much needed update. I’m really proud with this update; we had our largest-ever changelog, we squashed ~99% of the bugs in the code, and we added some key things that makes ULX more user-friendly than ever before. Truly we have come closer than ever before in realizing the perfect balance of what an admin mod should be.

Shameless plugging aside, check out this gecko! He was chilling outside my window and just sat there while I took quite a few pictures. I love getting nature pictures like this, and this is probably the coolest set I’ve had to date.

Mr. Window Gecko

I have some more to talk about, but it’s getting late. Hopefully I’ll get to it next time!

All hail the chicken that was!

This post is written in loving memory of Chicken. He had a short life, but it was well lived!

Chicken was adopted by Zoot from General Mills on Wednesday while they were visiting LeTourneau’s cafeteria, handing out various products to sample. Chicken was given up under the condition the he be thrown at someone.

In order to honor and exceed the terms of the contract, it was decided that Chicken would be thrown at anyone attempting to walk through Zoot’s dorm room door, yelling “CHICKEN!” while he zipped through the air. This led to great unhappiness of one of Zoot’s suite mate, Synk. Synk testified to wearing a baseball mitt all day Thursday in preparation of random Chicken attacks.

Unfortunately, when one 41er who will go unnamed got hit with Chicken, he threw Chicken into the first toilet he came to and flushed, thinking that it would be too big to fit down the hole but forgetting that the toilets here are high-powered flesh eating machines.

Chicken’s final act in this world was to clog the toilet for a good while before the unhappy residents could fetch maintenance. Forever shall you be loved, Chicken. ALL HAIL CHICKEN!

Crunchy showing off our beloved Chicken.

Dorm life

I’m getting all settled here at LeTourneau. So far, it’s been a blast!

The upper classmen really take care to make sure all the freshmen are welcomed and feel welcomed. They have us all doing crazy tasks for them for the first week of school. For example, I had to wear a trashbag outfit to dinner tonight and we all have to wear a shirt that says “Property of 41” for the entire week. It’s all in fun, but it’s really quite awesome because it helps you bond with the other freshman because they mostly share the same fates, and helps you bond with the upper classmen due to the love-hate situation. 🙂

We were all assigned names last night in our “secret dorm meeting”. I can’t tell you all the details, but it involved holding a table for two hours and “ponding” (throwing in a nasty, awful pond) our resident assistant, Slurpee. My floor name is now zoot! My roomie’s name is Apple, and there’s other crazy/random names other people have like Play-Dough, Sync, and Dent. These names are what we’ll be referred to by everyone else (except the professors) on campus.

Here’s some fun imagery!

Our dorm insignia:


I made this and hung it on my door to get into the spirit:


Here’s Slurpee after being ponded. I was told he liked to pose for pics… guess I should have taken the tip more seriously.


Shortly after our secret meeting, greeting each other by our new names and telling our birthday to Paco (center) so they can pond us on the special day. Whoopie!


Me enduring the garbage bag torture:


Sojourn into Kubuntu

Linux is something that’s been gnawing at me for a long time now. I know so little about it, I barely manage to bumble things into working order on my servers. Using linux as a full-time desktop OS has always been a dream of mine, so I finally decided to make the dream reality last Friday. I gotta say it was a source of pride knowing that nearly everything I was using, I could take a look at the source if I really wanted to.

The first problem I ran into was my RAID. Apparently Kubuntu doesn’t play nicely with hardware RAIDs. So, I had to break it apart and reinstall Windows (Have to install Windows first so you don’t have mess around with GRUB afterwards).

The second problem I ran into was my GPU driver and my dual monitor setup. Initially I tried using the nvidia-glx-new package off apt-get, but that ended up breaking X completely. Then, I used a neat little program called envy (after installing a dozen or so dependencies for it, by hand) to install the drivers for me. That worked great! Definite thanks to the author of that one. Unfortunately, I couldn’t get my dual monitor set up how I wanted it. I was hoping for something similar to the way Windows does it, but neither of the options offered was suitable to me.

The next problem I ran into was my external hard drive. I was hoping to be able to just plug it in and be able to access it, but Kubuntu wouldn’t hear of it. It took me a long time to figure out how to get it mounted the way I needed it to be.

I tried using the native TeamSpeak client, but it wouldn’t let me speak or hear others. Apparently there’s a tutorial on how to make TeamSpeak use ALSA instead of OSS which might have fixed my problem, but it looked like it had been directly translated from another language (horrible grammar) and it would have taken a large chunk of time to figure out.

Having Firefox in Kubuntu was of course nice, it made things quite a bit easier on me. Unfortunately, I never did figure out how to get web divx movies to play. I hear it’s possible with a bit of work though.

I found that Linux, while people might tote it as extremely stable, was not very stable for me. It totally froze on me three time (Had to use REISUB to get out) and KDE froze countless times. This might be just because I was doing so much emulation crap though. Also Amarok would randomly crash and leave a repeating sound of what it was playing for the last second until I could kill it.

Now, to talk about some niceties. I used Beryl for a while. It’s very much like Windows Blinds. I found Beryl to be fun to play around with for about 2 hours, then it just became annoying. Beryl also broke what use I had of my dual display. Setup for me was a breeze, but for my friend who has an ATI card, it took the better part of the day.

I had a chance to test out the seamless windows virtualization over remote desktop. Very cool! It gave me jitters to have a start menu right there by the KDE kicker and popping up windows apps like they were native in linux. Two things you should remember using this though: Don’t use it for any type of graphical program or anything that uses sound. I tried playing a simple board game with it and it was too much for it. The graphics were horrible and it gave me a pop-up error for every sound it tried to play.

I also had the opportunity to try out World of Warcraft and Steam on both wine and cedega. Cedega couldn’t run Steam at all (crashed at login page), but wine handled it beautifully. I tried playing Geometry Wars on Steam via Wine, but unfortunately no enemies ever spawn in the game… thus unplayable. Wine did a terrific job with garrysmod (a HL2 mod). It was a little rough around the edges because I couldn’t enable AF or AA, but really entirely bearable. Two things to note about garrysmod is that it would crash if I went to a higher resolution than 1024×768 and even though it claimed to be dx9, I’m pretty sure it was dx8. World of Warcraft ran fine on both cedega and wine (didn’t care enough to benchmark) in both dx and opengl. The only issue with World of Warcraft that I could see was that I couldn’t enable AF and I couldn’t see my portrait.

As far as performance, I was very impressed. Kubuntu started up within seconds (had it set to profile) and I never noticed a slow down while running any applications, even wine/cedega. I changed swappiness to 10, but never really noticed a difference.

Overall, it’s the little things like not having my dual monitor, not being able to play divx web movies, and not having AF in games that made me reluctantly boot back to Windows. Hopefully in another year or so, I’ll be able to go back to linux and stay there!

More updates

I didn’t really have time to flesh out the details of my computer problem when I last wrote, so here goes:

After my computer froze, I naturally reset it. After doing this, I left the room to go do something productive while it booted. When I came back, the screens were black. I’ve had other computers randomly not POST before, so I once again reset it. Alas, the restart button didn’t do anything. I then tried to shut it down, no dice. So, I moved onto trying a hardware shutdown (holding the power button). That didn’t do anything either!

Seriously worried that there was something wrong with my computer at this point, I flipped the PSU power switch (yes, that killed it). I take a quick look inside the case to make sure everything’s okay in there and it doesn’t smell like burned electronics. Looks and smells fine!

I’ve had a case of a dead computer that came back to life when I gave it a good cleaning, so I decide to do the same here. I was very thorough, so it took me all day to do this. When everything was put back together, I threw the switch. Nothing happened. The fans didn’t even spin up this time. Ready to pull my hair out at this turn of events, I call my brothers who are also skilled with computers.

My brothers advise me that the PSU is usually the cause of these problems in a computer, so I borrow a compatible PSU from a friend and try once more. Again, nothing. I remove the memory and sound card and repeat. The fans spun up this time, but no POST beep. I notice that the HD light is solid and there’s no power light. Crap!

The rest is rather unexciting: I got an RMA number from Asus (my motherboard manufacturer) and sent it off. Cue where I am now.

I called Asus this morning to check on my RMA, and to my surprise they gave me a fedex tracking number for the replacement! Now, I should be overjoyed that the new motherboard will be arriving in two days, but there’s a downside. I was using a ThermalTake Big Typhoon CPU heatsink/fan, and you have to irrevocably stick a mounting plate on the back of your motherboard in order to install it. I had to leave this mounting plate on the motherboard when I shipped it off. So, I quickly ordered a new heatsink this morning that’s supposed to be comparable to what I had and pay an extra six bucks to rush shipping. Hopefully it’ll be here when my motherboard gets here!

Running my own garrysmod server has been interesting. It’s a lot of money, so I’m just hoping that sporadic donations and clients will help keep it afloat. I’m not sure I’d have the heart to kill it simply due to lack of funds though. Besides, it’s always priceless when the players do something like this. It has also been nice to run a server because it’s helped me focus my scripting efforts. Imagine that, it’s easier to know what to do with an admin mod when you’re actually running a server!

Now, to go away from computers… Pippin’s doing fine! He jumped our six foot fence yesterday so apparently his physical strength is back too. You have to wonder if the poor little fella knows how close to death he was (most people would put an animal down than hospitalize them).

I went hiking with a friend a few days ago, and it really makes me realize how much I’m going to miss the mountains and drinkable water here in Utah…

Still breathing

Yes, it has been a while since I’ve written. Why? I really don’t know.

Unfortunately, my nice, new computer I just bought last October decided to die on me a couple weeks ago. I was messing around in that hell-spawned program iTunes when my computer froze — never to return. Thus, I naturally blame said application. It’s going to be at least three weeks from today until I have my good ol’ computer in working order again.

Going back to conducting affairs from my laptop, I have a new-found appreciation for my desktop. I’m trying to run all the applications I could run on my desktop, but everything’s going four times slower. Garrysmod is nearly impossible to run/play, which is a shame because I have a boss who’s no doubt wondering why my code updates have come to a grinding halt as well as a new not-so-cheap dedicated garrysmod server. Still, perhaps all this worked out to my benefit because now I have more time for miscellaneous tasks like getting ready for my move to Texas and writing on my blog.

Speaking of Texas, I should mention that I graduated from high school last week. I’ve decided to follow the family tradition of attending LeTourneau University. It’s a pretty neat growing Christian university geared toward engineers. The only downside is, of course, that it’s located in Texas; it will be fun to finally get away from Utah though!

On the same day my computer died, I received a call from our local air force base inviting me to come back and work for them again this summer. This is very exciting news for me, as I loved working out there. I learned an inordinate amount of information, and have used most of what I learned at least once since then. Of course, there’s the extra benefit that this job has a good possibility of continuing throughout college (yes, even out of state. I’ll just work whenever I come home), even has a chance of paying for a Master’s degree down the road.

This last weekend one of our cats, Pippin, mysteriously stopped eating or drinking. We promptly took him to the vet, who ran an analysis on our unfortunate kitty’s blood. The tests revealed nothing, so Pippin was sent home with some antibiotics and we were told to force water down him. Now, for those of you lucky enough to have never tried — forcing liquids down a cat is maddeningly difficult, impossible in the quantities required. However, we stuck to this regimen for two days with no improvement.

When we realized Pippin would probably die of dehydration before he got over what was ailing him, we took him back to the vet on Saturday. The vet still had no idea what was wrong, so we had to leave Pippin there for hospitalization over the long three-day weekend.

It turned out that Pippin had a urinary tract infection. We got some extra meds for this when we picked him up Tuesday. It’s now Thursday, and Pippin’s doing much better. He’s almost back on track with his old diet, and seems to be taking enough liquids.

To once again change the subject, I’ve been considering what project to take up for the summer as is my annual tradition. My ideas include:

  • Some AI in garrysmod. Maybe some intelligent weapons platforms, or just general AI demonstrastions (flocking, leading, etc). AI is and always has been my passion, so this would be pretty neat.
  • I’d like to do some work with an ogrelua combination, but this would be a huge project spanning years. If I start now I’d be lucky to have something to show for my college senior project. I may write more about my ideas for this at a later date.
  • Ulysses Universe. A friend of mine would hurt me for putting this on my consideration list (he’s been reminding me to finish it every day for months now), but every time I think of what’s required in the next step to do this script I suddenly remember I somewhere else I need to be. Basically, Ulysses Universe (UU for short) is implemented in garrysmod and is a real planetary system. This means you can launch things in orbit, walk around the planet, etc. This script can be broken down into four major components:
  1. Gravity. By far the simplest to implement, I’ve rewritten this component multiple times until I was happy with how it worked and how it was optimized.
  2. Player angles. The players’ angles have to be rotated while they walk around the planet. It took me a while to figure out how to do this, and I just recently realized I probably took the entirely wrong approach (has a nasty bug when you go to the bottom of the planet).
  3. Player movement. By far the hardest thing to implement, because of the complexity of the physics system. You have to keep track of moving objects under the player, apply force to said objects so they can tip and fall, and of course make sure players can’t walk through walls. This has to be completely reimplemented because the default hl2 system has no allowance for it whatsoever. Even worse is that this would require the prediction for player movement to be redone. In the end, there’s no way this is going to be anything like VALVe’s movement system.
  4. Niceties. Things like an easy swep to launch things into orbit, a compass, hud, etc. These are always fun to implement.

Okay, enough typing for today (3 AM). Hopefully I’ll have more updates soon!

Flight of the nightmare

This past weekend I had the opportunity to fly out to Texas to visit LeTourneau University for a scholarship competition.

Since me and my family always think ahead, we got tickets at a great price 3 months before the competition. Thankfully, the university offers a program that would pay us back for the tickets if they’re under $300. Seemed like everything would go great…

Thursday, my mom took me out to the airport and dropped me off. I went to the self check in with my e-ticket in hand, but for some reason it wouldn’t let me check in. It just gave me a piece of paper saying to go to the regular check in counter.

Off I went to the nearest available American Airlines representative, and handed him my e-ticket. Then, I waited for a good 15 minutes… When my patience finally broke, I pointedly asked, “Are you checking me in or should I go to another counter?” The rep curtly responded that there was a problem processing my ticket and he was trying to contact headquarters to find out what the problem was. After waiting another 15 minutes (I wasn’t worried too much about the time, we had been informed that the flight was 2 hours late anyways), he informed me that there was a credit card dispute so he was unable to give me my ticket. However, he offered me the generous alternative of buying the ticket there at the counter for $1600. I asked if I could get back to him.

Stepping back from the counter, my mind raced; we always payed off our credit card bills on time and had a high credit limit. Besides, since we had bought the ticket so long ago, we had already paid for the ticket out of our pockets. What could have possibly gone wrong? I couldn’t afford this ticket now, I couldn’t go to another airline because American Airlines was the only one who flew to the city I needed, my mom hadn’t bothered to take her cell phone (luckily I had mine) and my brothers were unreachable at work, and last but not least, I’m not even 18 yet! Of course, there’s the factor of the event I was supposed to be participating in too. A scholarship like this could very well make the difference between being able to afford the luxury of eating and not; it was imperative I attend.

By this time, I was more than just a little upset at this whole ordeal. I had my e-ticket, and I had heard nothing from the credit card company or American Airlines about this. I decided to call a relative who lives in the area I needed in Texas. Luckily he was available, and after explaining my situation to him, he was able to agree that he would be able to arrange a way for me to get to the university if I flew into one of the more distant cities on another airline.

So, I spent the next half hour running to different airlines asking how much their airfare was, if they had any sort of discounts I could qualify for, etc. Eventually, I settled on SouthWest airlines who gave me a discount for being a minor and was able to get me there the soonest. It was about 10 AM at this time and it was going to get me there at 5 PM, making two completely out of the way stops along the way. Thankfully, the flight there and the trip to the university was uneventful.

In the end, we got a hold of our credit card company and pinned them down for this. They “accidentally” contested the charge on our behalf without telling us. After several threats, we got them to agree to pay the difference in tickets. That’s really the least they can do considering how much more time it cost me to go this route, it got me to the wrong city, and cost others’ time to have to make the two and a half hour drive to pick me up from this out of the way airport.

I’ll try to post on the actual competition later. For now, I gotta finish unpacking! 🙂

A commentary on culture, theology, and programming