Wednesday, October 31, 2007

Got some work cut out.

I need to come up with some magical math equation that draws this shape. Yeah. Or something similar. I will be drawing it with Cairo (Jordi Mas asked me to try and write a similar puzzle to that one, which is why I need that shape). Considering I dropped trig halfway through the year, I don't think I am quite the guy for the job, but I will see what I can do. I also started doing some testing with Gentoo and creating a LiveCD with that (I really like it since it is a lot more flexible than Ubuntu). It is uber fast too, though quite a bit more work to get it there. It is fun though! I also started working on a Queue plugin for Banshee (crossfading is next ;-)). Personally, those two things are really keeping Banshee from opening a complete can of whoop-ass on any and all music players.

Happy Halloween!

I almost did it

Every morning, before I shower, but after I eat, I read my RSS feeds. Beth Massi is one of the blogs I read. She is a VB coder for MS and is quite the smart person. She deals very heavily with XML (as VB is the best IMHO for XML parsing and such). Here was what I woke up to:

Tuesday, October 30, 2007

I can't wait

I can't wait until technology allows me to grep my house for things I have misplaced. The basic layout of my house would be exactly as the Linux filesystem. / (root) would be the whole property (front yard, backyard, shed, house, etc...), then you would have /frontyard, /backyard (if the shed is in the backyard, /backyard/shed), /house, etc... This would make it extremely easy to search for things. If I know my favorite pair of boxers is in my room somewhere, I would perform a ls /house/upstairs/master_bedroom | grep fav_boxers. If I don't know where my keys are, just ls / | grep keys. Obviously, for security reasons, it would run OpenBSD since it has had only 2 security vulnerabilities in 10 years.

My "schedule"

M W 10:00-10:50 AM -- CSE 1310
M 7:00 - 9:50 PM -- CSE 1310
M W 4:00 - 4:50 PM -- CSE 1104
W 7:00 - 8:50 PM -- CSE 1105
M W F 8:00 - 8:50 AM -- MATH 1302
M W F 9:00 - 9:50 AM -- ENGL 1302


It may change at registration, but that is what the advisor set up for me.

I can take it

Personally, I say bring it on.

Monday, October 29, 2007

In the mean time...

So, tomorrow I have an appointment with a Comp Sci professor/advisor about my schedule for next semester. Since I am not undeclared, apparently I meet with whichever professor is present at the time the lady at the front desk tells you. Right now, I am declared as a Software Engineering major and I don't see that changing unless something happens in my head that makes me hate computers. Have you ever seen the movie Antitrust? If you have, do you remember the scene in the coffee shop when Milo asked the chick if someone ever just hands her code and she says maybe once, but she reconfigured it anyway? That is what I do. I try to look at the code of the programs I use most just so I know what is going on under the hood (that was how I found the rather severe Gaim bug (BOF) about a year and a half ago back).
I am compulsive, I know it, and I enjoy every minute of it. I love learning how things work (code isn't the only thing I take apart, clocks, radios, blenders, hair dryers, anything with gears really). I am sure whoever my wife will be will eventually leave me because I will take her hair dryer apart, forget to turn down the variable resistor down (yeah, they still make hair dryers with those) and burns half the hair on the left side of her head.

Anyway, in the mean time, watch this.

Saturday, October 27, 2007

Harumph.

Yes, harumph. You know why? Stubbs the Zombie keeps freezing. I guess this is someone telling me I need to get to work.

Friday, October 26, 2007

Antitrust Rocks

If you can get past the cheesiness of the movie Antitrust (you probably wouldn't notice it if weren't a computer geek), you should love the movie, too. Every time I watch it, I feel like calling in sick for a week, moving my bed and computer to the garage, and going on a coding spree. Then, I can get a really hot girlfriend like Rachel Leigh Cook or Claire Forlani. It is instinctual really, IMHO. If you don't get that feeling, you either aren't a human, or a programmer.

So far, not impressed

I installed Gutsy on my Dell Inspiron 1501 last night. I can tell you right now I am not impressed. At all. Some aspects have been great, such as the fwcutter package for my wifi card. But they have been far and few between. I find that when playing music on it, the music will pause and jump while the computer is idle. This thing has 2 gigs of DDR2 RAM and a dual core processor, the OS in question should be flying. But no, it is very sluggish. When loading a page in Firefox, my computer will literally freeze, my music will stop playing, and everything just stops until the page loads. That is even with all my little tweaks and optimizations. I have been running Ubuntu since 4.10 and have never had this much trouble (I have even gone through Slackware 9 and had less trouble). Now, in the Ubuntu dev's defense, I have gone through a couple machines since 4.10 and this is a relatively new laptop (only about 6 months old).

Another thing I really am not enjoying at all is the heavy GNOME environment. On openSUSE 10.3, it is great. Quite the speedy little thing. Since both are using GNOME 2.20, I really don't see a reason for my desktop to be this slow (it takes about 2 seconds for the Applications drop down menu to initialize).

This is a personal preference, I know, but I don't understand why Gutsy ships with Compiz installed by default. I really do hate all the eye candy stuff (except the cube, that is probably the most efficient desktop feature I have ever used), but all the wobbly windows, flame and water effects, etc... is just too much. I am highly considering downgrading tonight back to 7.04 (possibly side grade to openSUSE 10.3 which is on my desktop ATM and rocks).

BTW, thanks G-Mez for the link to the Lifehacker RSS feed.


EDIT: I will leave Gutsy on for another week or so just to let the updates come in and if it isn't improving, I will side/downgrade...

Thursday, October 25, 2007

Lack of RSS frustrates me...

Why don't Lifehacker or Toothpaste For Dinner have RSS feeds? In my perfect world, every website I am interested in would have RSS or ATOM so I never have to open up firefox except for when I want to google something or someone sends me a link. I use evolution to get all my mail and I use liferea to get all the planets I read as well as XKCD, Dinosaur comics, Questionable Content, Woot, Slashdot, GNOME files, art.gnome.org, some ebay accounts, and others... Lifehacker and TFD seem to be the only ones I read that don't have RSS. In fact, Lifehacker is owned by Gawker, who also owns Gizmodo and they have RSS. Wtf?

I love cats (not the animal)

Personally, I think one of the most useful tools in linux is cat (it is short for conCATenate). I use it for all sorts of things like sending text files through a pipe (stdin) to other tools such as sed. In fact, that is how I usually upgrade my system:

cat /etc/apt/sources.list | sed -e s/feisty/gutsy/g | sudo tee /etc/apt/sources.list ; sudo apt-get update ; sudo apt-get dist-upgrade

That sends the text file sources.list to sed (stream editor), replaces all instances of feisty with gutsy, and sends the end result to tee which writes the end text to the new sources.list. It then updates apt and upgrades my system accordingly. The reason I like this is because I can ssh into my box remotely and upgrade my system without the need of a GUI (I know there is ssh -X, but it can be dead slow over a bad connection).

Other good uses of cat are joining multiple files together (in conjunction with tar and split, you can do some pretty powerful stuff with backing up your data). Let's say you have a couple different PDF's that you would like to join into one, you would do something like this:

cat pdf1.pdf pdf2.pdf pdf3,pdf > new_pdf.pdf

Now you have all your PDF's in one handy one. This also works if you have a movie that is broken up into parts such as Stephen King's The Stand:

cat The\ Plague.avi The\ Dreams.avi The\ Betrayal.avi The\ Stand.avi > Stephen\ King\'s\ The\ Stand.avi

The result is a nice 2.7 gig file that has all the parts in it.

Ok, so putting files together is really useful, but what about taking them apart? split can help us. Let's say you backup your system to a tarball every week and the resulting tarball is several gigs and all you have is a CD burner. How do you get those backups back to your computer quickly using CD's?

split -b 650m backups.tar.gz

That breaks up your backups tarball into x amount of 650MB files (they are named by default aa, ab, ac, ad, etc...) that can be put together with cat after being transferred to your host machine.

Wednesday, October 24, 2007

What will I do?

What am I doing on Halloween? The past couple years, I just handed out candy which I really don't want to do this year. What will I be? I could start working on my costume if I knew what I was going to be (I would like to be Stephen Colbert, but chances are that won't work out).

%: sh brainstorming.sh | grep good_idea > ~/good_ideas.txt

Monday, October 22, 2007

Wasting time between builds

I hate waiting for my SquashFS roots to finish building (on my dual core laptop, it can take anywhere from 3 1/2 - 5 minutes, on my single core desktop, it takes 12-15 minutes). Usually, I work on my laptop since I hate staying in one place for more than a couple hours and most of my free time is spent doing some kind of work on my laptop. Most of you probably think I have the most boring life of all, go to work and work on computers, then come home and work on computers (though I do hardware at work and mainly software at home). I need to find something worth doing in the times mentioned above that could make me a teeny bit productive. You can't really start looking at any code, that can consume many hours before you realise how much time has gone by. I guess I could start organising the music in my Misc folder, all 6 gigs of it...


BTW, I wrote this while a SquashFS root was building. If you have any suggestions, I will gladly listen to them.

I need a new system...

I have so many projects/hobbies on my plate now, I need to specify a certain day to work on such and such codebase, rebuild and work on such and such ISO, etc... Now, with gbrainy, banshee, the LiveCDs, the POS System, and some various other just test programs, I find myself switching to one arbitrarily in the middle of another and forgetting where I was at when I go back to what I was doing before and starting over or really screwing up some code I had written. I think I will do that tonight in the hotel, or maybe on the 9 hour flight back to Atlanta tomorrow ;-). Maybe not whole days dedicated to one project (though that would work best with big ones like the LiveCD), but say, until 7:00 PM on Monday, work on gbrainy, until 10:00, work on banshee, then a cup of tea and bed. That sounds nice. I guess this is what it is like to be an adult :-(...

Sunday, October 21, 2007

MENSA Approved

MENSA is supposed to be a society of geniuses, right? You would have thought they would have thought about creating a sort of MENSA certification for OTC and OTS things like food, clothes, medication, etc... Seriously, when they give the approval/certification, the maker of said item could then put on the box the following:

MENSA Approved! If you were smart, you would use them too.

Then, in return for the certification/approval, the maker of said item could donate x percent of the sales per quarter. Obviously, MENSA would have to watch what they approve and only approve one item from each category (1 bottle of shampoo, 1 pair of jeans, etc...) just to keep the competition up (you know, give the cert/approval to the highest bidder). Personally, I think this would be a great idea.

WARNING: The use of generics and stereotypes here are strictly so no one gets their feelings hurt.

Why do I think this? The average person believes they are not average and are smarter than the average person. They would think, Hey! I am smart! and would be more inclined to buy that product because A) It stood out in their mind and B) It insults all those people that aren't as "smart" as them. I know that is a long shot, but I feel comfortable saying I think it would work just as well (if not better) as the current things they put on products (100% Pure!, Makes your hair shiner better than the rest!, Not tested on animals!) because it would be something new. Now, I don't know how many people in the general public actually know what MENSA is and that could certainly put a damper on this idea if the percentage is quite low, but I think it would be a nice experiment.

Friday, October 19, 2007

To read or not to read?

One of my favorite blogs to read is Richard Burridge's Blog.

His posts are always very interesting and never boring (to me). Today, he posted a link to a quiz that told what kind of reader you are. This is me:

What Kind of Reader Are You?
Your Result: Literate Good Citizen

You read to inform or entertain yourself, but you're not nerdy about it. You've read most major classics (in school) and you have a favorite genre or two.


Looks like I am the same as Mr. Burridge...

Maybe, someday...

Obviously, the above image isn't real, but I couldn't help thinking that when I saw the giant poster. I have been without internet for about 3 days now-ish, but have gotten a lot of good work done. So far, I have been able to keep my "at least one beer a day" pact pretty well, though when I did miss a day, I made up for the next ;-).



Anyway, Richard says I need to try a black and tan (I think), but I haven't had a chance to order it, just regular beers. I have seen some very cool castles and am in Switzerland right now. We weren't expecting them to not take Euros, so we had to get some Swiss Francs...100 SFC is about 85 dollars USD. Today was quite interesting (well, the past couple days, but I will save you on the details). I walked in to this place called Data Quest, hoping to get a new WLAN card (I will later find out I don't need a new one). As soon as I walk in, I realise this place is a Mac retailer. So, I just brush that off and continue to look for a WLAN card that looks like it might be supported by Linux. I walk up to the girl behind the counter and ask if she speaks English and she does, so that makes it easier for me. I ask her if she has any WLAN cards for a laptop and she walks over to a display and starts talking about Macbooks and Macbook Pros, so I stop her and tell her I need one for a real laptop. She kind of looks at me for a second and goes on with the Macbooks. I stop her again and say I don't run Mac OS X, I run something else and that I just need a basic WLAN card. She starts talking about how Windows is such an inferior OS and how I should really look into getting a Macbook because they "just work" (the reason I was in the store was because Linux "just worked"). I say, that's ok, I run a real OS. She laughs, says that Windows isn't a real OS, starts talking about viruses, spyware, etc... I tell her I whole-heartedly agree and that is why I don't run Windows. She becomes very quiet as does the rest of the 4-5 people in there. Apparently they had been listening in on the whole conversation. Well, what else can you run, she asked. I say I run Linux and I walk out of the store. Owned. The reason I was in there was because my onboard WLAN card had gone out (or so I thought). On my laptop, if I press the FN+F2 keys in Windows, it turns my wifi card off and that never worked in Linux. While I was on the train to Switzerland, I was playing around with the FN+F? keys because in 6.06, most of them didn't work. I noticed that a lot of them did work now in 7.04. I didn't know the WiFi one worked too, so I unknowingly turned off my WiFi card. After I realised what I did (after I bought the new WiFi card), I turned it back on and it "just worked".

Ubuntu 7.10 was released while I was without internets, so I hope that went nicely. I am hoping to upgrade as soon as I get home and get over the jet lag.

In Switzerland, they speak half-french, half-german, so between that, and my bad german, I understand maybe 20% of what people here say.

Saturday, October 13, 2007

New Puzzle MathMissingNo.cs

I just finished up my second puzzle, this is turning out to be quite the productive day... This puzzle gives you one number, the operator, and the total, and you must figure out what the missing number is. It is a much more difficult variation of the MathOperator.cs puzzle as that was you have two numbers and a total and you figure out what the operator is...

Rock.

Everytime ;-)

Everytime I come here, it is in German. :-)

I am in Rothenburg right now (took a train from Hannover, definitely the best part of the trip so far...not the train, being in Hannover...anyway, train from Hannover to Steinach, transferred to another train to here this morning). Personally, I am not impressed. The town is very fake (think Disney World meets old German town, pinnochio-esque). I decided to rest a bit while my grandparents took a tour of the church here, catch up on some email, blogs, and other stuff. Last night, I patched up the English and Galego translations for gbrainy, wrote a small math puzzle for gbrainy, and emailed them to Jordi Mas. The puzzle took a good bit of last night and the train ride today (it gives you two numbers and a total, the user decides which operator makes the two numbers equal the total...not too difficult, but a good warmup) and the translations only took about 15-20 minutes. One problem with the puzzle is the inaccuracy when it comes to floating-point numbers. Division is the only one that has this problem, but the int -> float -> int conversions wreaked havoc on the total variable and if statements determining the correct answer, so floating-points were taken out for now (anything and everything with a decimal gets rounded to the closest whole). Who knew math was fun! Anyway, back to the trip...

Hannover and Bierbergen were absolutely amazing. They are probably the most peaceful towns I have ever been in. The inn-keeper in Hannover was so friendly and nice, he didn't know very much English (most of the places we have stayed were very limited in language), but between me and my grandpa, we figure things out pretty well. We took a train -> bus -> bus to Bierbergen to see where grandma's great great great grandpa came from. She left her folder with all the her family info on one of the buses, so we got there with nothing to go on. When we got off the second bus in Bierbergen, the town looked deserted, but a lady came around the corner pushing her baby stroller about a minute after the bus took off. Grandma stopped her and luckily she spoke some English (actually, better than what we were expecting). Grandma explained who we were and what we were doing when the lady said "Oh yes! Please, come with me!". She started pointing out houses saying "Lege there...und there...Lege...Lege..." and it turns out she is also a Lege (my grandma's surname). It is pronounced Leeguh in German, not Leggy, like we say it. The town is full of Leges and there are many in the cemetery (the town is tiny, you can walk the whole thing in a couple hours max and everyone seems to know each other). The lady (Jana) invited us to her house and showed us the phone book with half a page of Leges. Jana called the pastor of the local church (the church was built in 1770-ish) and he came over and talked with us, gave us his address so we can mail him the information and he can look the info up in the church records. Then, we were going to go back to Hannover, but we missed our bus, so we had to wait for the next one which took a different route than the previous one. Overall, we got to see parts of Germany most people (even the natives) don't get to see (most didn't even know what/where Bierbergen was).

Wednesday, October 10, 2007

Business Post Stuff


Just a pic of vesamenu.c32...I need to work on the color scheme a bit, I know. I won't show a picture of the desktop yet, but it rocks. I created icons for all the functionality you need for IT and SysAdmin stuff (virus scans, mounting, data recovery, etc...), eliminating some of the menus from the boot screen.

Day 1 in Germany - Dusseldorf

First day in Germany was spectacular. Mein deutsche ist nicht gut, aber ich habe fein bis jetzt getan (that was probably horrible). We are in downtown Dusseldorf right now, in a small hotel. We really just walked around and explored today after the 9 hour flight from Atlanta to Dusseldorf while we waited for our room to become available. The people here are really nice, but I still try and not let them know I am American until I have to. Most of the shops I have gone into, I have been able to at least not sound American, though I know my accent is horrible. It is 9.05PM here now, 2.05PM CST. The Euros are much easier to use than American currency IMHO, the coins actually mean something here, but I am afraid that the Traveler's Cheques I got pretty much suck. It took me 10 minutes to get them exchanged for Euros because of all the paperwork. I will just use my Visa from now on at ATMs (as long as it isn't too expensive). BTW, 50$ USD converted to $30,98 EU with the exchange rate (and I am sure with some tax taken out), but not bad. Every time I google something, it pops up at google.de. Which, the internet in this hotel sucks, absolutely the worst "high-speed" I have ever used. It took me 20 minutes to upload six 3 MB pictures. And for some reason, when I am doing high FIFO stuff (remastering ISOs mostly), my internet slows to an absolute crawl, nothing loads.

Gute Nacht!

Saturday, October 6, 2007

Automagic NTFS-3g mounting?

I dunno if this would work... I need a computer to test it on...

fstype=$(get_fstype "${devname}")
if is_supported_fs ${fstype}; then
if "${fstype}" = "ntfs"
fstype="ntfs-3g"
fi
mount -t ${fstype} -o ro "${devname}" $mountpoint || continue
if is_casper_path $mountpoint; then
echo $mountpoint
return 0
else
umount $mountpoint
fi
fi

Friday, October 5, 2007

LiveCD updates

Got vesamenu.c32 working (it appears the crashing I was experiencing in QEMU is more a bug in QEMU than in my programming). It definitely looks better than the regular menu.c32 as you don't need to reduce the quality of the background image to 256 colors. It also has a lot more features that I will play around with tonight (shadows and stuff). I am finally realising how slow my desktop really is with all this remastering I am doing. It takes 12 minutes to just build the damn squashfs, then it has to update all the md5sums (not horribly slow, but slower than my lappy, which has 2 GB RAM), then it has to rebuild the ISO, which takes about a minute and a half. Really, the building of the squashfs is what is killing my productivity. I hate just sitting around waiting for something to finish.

BTW, to fix the QEMU bug (well, not fix), I just installed VirtualBox which is like VMware, but free and has an open-source version. I setup a virtual machine in it with no HD, just the CDROM and use that to test the ISOs now.

Bug Reports

openSUSE 10.3 is great. I love it. But it sad when Windows beats it at it's own game. What am I talking about you say? It is a known fact that the Windows crash utility in inherently worse than anything *nux has ever had....but this makes me wonder.


Your application has crashed. Information about the crash has been successfully collected.

However we are working on GNOME debug server to handle correctly this information.

Some news

As you may or may not have read, I have been elected as the DFW LoCo (Local Community) Team Leader for Ubuntu (kind of weird since I run openSUSE mainly). Anyway, I am really looking forward to getting down and dirty with other Texas teams such as Houston as soon as I get back in the country. I am planning on doing a lot of work over my vacation (yes, I plan on working, I love what I do!), espcially on the 22 hour flights to Germany and back. I am bringing my laptop with me, so when I have access to internet (Starbucks anyone?), I will be on AIM, IRC, and check my mail. I still need to get one of those nifty 110 > 220 V converters, I bought the complete opposite thing today at Fry's (220>110V), but it was only 15 bucks.

Geoff is coming down this weekend (tomorrow, I believe) and we are gonna party hardy at the Coffee Haus on Mesquite behind UTA Saturday night (if my memory serves me, they close at 12 on Saturday) and we will probably have a small Armagetron LAN there while listening top music, sipping on tea and coffee, and eating some delicious sammiches.

It is a bit late, but openSUSE 10.3 came out yesterday! I installed RC1 on my desktop on the third to beat the rush of people on the fourth, and my plan seemed to have worked, I only had to get a few updates, 'tis a sexy beast. A few quirks have been bugging me lately (like unable to connect to X server through sudo, you have to su yourself, then type whatever you want in), but YaST/zypper have improved dramatically. Zypper is almost as fast as apt, now we just need to work on the lack of repos/packages for SUSE.

I don't know when my next blog post will be, but if I don't see you later, good afternoon, good evening, and goodnight! (10 points to whoever tells me what movie that is!)

Wednesday, October 3, 2007

Almost done!


Almost done!

Tuesday, October 2, 2007

Hi, I'm a Mac (douche)!

Trent brought up a really good point today while /me was talking with him on AIM. All Macs are PC's, but not all PC's are Macs. So these "I'm a Mac, I'm a PC" commercials are complete bull. PC stands for Personal Computer. If you use your Mac to visit sites such as Facebook, MySpace, Digg, etc... You are using it for personal reasons, making it a personal computer. I can see the reasoning behind Apple wanting to separate themselves like that, trying to make a distinguishable line between real computers and Macs (the fact that Macs suck seems to not be enough of a distinction), maybe it is just me, but it makes me hate Apple even more. Personally, I think that they are headed down the same road as MS is. (BTW, Macs get viruses, for all you mac people who think they don't.)



Me and Geoff decided that most people who need a tool like Clonezilla, probably already have something that they are used to and know how to use quite well. That being said, I took Clonezilla off the LiveCD (brought the ISO down to 340 MB w00t!). Just bugfixes today, working on the menus mainly, trying to decide whether I should use vesamenu.c32 or just menu.c32. vesamenu.c32 opens up a lot more options, but then again, more options means more possible bugs. Will discuss with Geoff later.

Monday, October 1, 2007

Just an update

Got the "Start A Virus Scan" menu working _properly_. It mounts either /dev/hda1 (ide) or /dev/sda1 (sata) with ntfs-3g, so if you know the partition you will be scanning is either A) not NTFS, B) not s/hda1, or C) both, you should also know how to start the clamscan (the antivirus) from the default system, but I know in the shop, 90% of the computers I repair fall under the "Start A Virus Scan" category (though some are becoming more prevalent with repair partitions as the first partition, but they are FAT32, so mounting them will fail and no damage can be done...yet). I might just have to make a couple preseeds and a separate menu for the various types of virus scans (FAT32/IDE, NTFS/IDE, FAT32/SATA (I have never seen this), NTFS/SATA) then when they select which one, they will choose which partition to scan (that might even be an advanced menu). Rock on!

Troubles...

I am having troubles with Clonezilla (and maybe chntpw). With Clonezilla, for some reason, I get an unknown stanza error in the /etc/event.d/tty* (this causes the image to not boot right, for those not technically savvy). After a bit of chrooting, I found that there is no /etc/event.d/ folder, thus there is no /etc/event.d/tty*. I went ahead and created the folder event.d and added the scripts for tty1-6 (usually, just adding stuff into folders like this is a bad no-no and can severely break stuff), but it didn't actually do anything. No problem was fixed, but no problems were created either. So I am still at a stand still. I have added all the features I will (a feature-lock, if you will), so all development is 100% bugfixes now (yay!). The reason I say I might be having problems with chntpw is when I burned the test disk for my boss, we tried to boot it up in one of the machines and remove the password for an Admin account. Well, it hung at "loading kernel" (it works fine in QEMU, which really doesn't make sense to me, but maybe I am missing something). That was the first and only machine I have tested it in, so I am not too worried right now. I have the XP Recovery Console listed as a feature, though it is completely broken. Hopefully, I will have it working by the end of the week. Anyway, yesterday, I brought the Ubuntu LiveCD down to 300 MB which leaves 400 MB for tools and such, and with what I have now, the total ISO size is 448 MB, so small enough to fit on a 512 thumbdrive with room to grow. Otherwise, good, productive weekend.