Content from 2008-12
That said, there were mistakes along the way and things I could've handled better. My curriculum was a bit too ambitious, especially in the face of full time work. It would've been better to start with HTDP than SICP in all likelihood given my level of programming experience. I could've done better (i.e. tolerated) hanging on to my job in spite of the recession though it's probable I wouldn't have re-enrolled in school if I'd followed that route. Perhaps most importantly, I think I could've thrown myself into a real programming opportunity with my friend Will more than I did. I maintain that a lot of that stuff was way over my head but I probably could've managed if I'd just tried hard enough. So I'll keep trying harder.
I've been meaning to write a post for almost two months now called almost mistakes. I'm not sure if it's failed to materialize because I don't know what I want to say, don't know how to say it or some other reason. The original inspiration came from a night of conversation about education over at Oglethorpe and from me looking back on the last few years. A lot of times I feel like an idiot for following my heart. Leaving Oglethorpe to play with computers, leaving SPSU to study Lisp\CS, mentally checking out from TVS because I found it soul-sucking whether that was my own fault or not. The last few years are a blur. So much has changed and I remember it all so differently. It seems like a discontiuous function in which the line disappears between -2 and 2. I know there are good reasons but sometimes I think I should've just buckled, hunkered down, procured a degree and moved on. I'd at least be making decent money now, right? Not relying on student loans and such. I'm not sure when that post will materialize, or if, but it's been on my mind a lot.
Other than that there's plenty of interesting news afoot so I'll try to talk about that a bit tomorrow. I've been trying to do at least something with myself lately though it's been very hard these last two months. I had a pretty good structure September-October. I was unemployed but productive. It got harder late October to present. Granted I re-enrolled in school, went through financial aid for the first time and got loans sorted out (what a mess) but I really haven't flourished otherwise. Motivation is tricky when the future is uncertain, I suppose. I'm enrolled but it still hasn't picked up. Enough for now.
1) It has a dock. I really wanted something with a dock since I'll be commuting with this puppy everyday for a while.
2) It weighs under 4 lbs, under 5 in the laptop bag with a power cord, and gets over 6 hours of battery life under most use scenarios, sometimes as much as 9 hours.
3) It's relatively affordable compared to similar ultraportables and I'm a big Thinkpad fan. This model also avoids touchpads which I dislike and ships without an optical drive which is a plus. After all, how often do you really use your optical drive? Save on weight. Save on power. There's a DVD/RW in the dock for when you're home anyway.
I've had it since Monday and the results are in. It's a lovely, lovely little machine and any complaints I have would be directed at software rather than hardware. That's the way it should be. I had it shipped with Windows Vista Basic because there was no option to have it shipped without an OS or with Linux and having it shipped with XP meant adding the cost of XP to the purchase price. You effectively purchase Vista and XP. Ridiculous. Therefore, the first order of business was to get Vista scrubbed off and XP SP2 installed. Now, it may seem ridiculous to worry about running XP instead of Vista but I'll cut it short and just call it a personal choice rather than defend the decision. I believe there are performance and compatibility reasons to do so as well. Google around and decide for yourself.
I have an XP Pro disc but if you try to install from it the installer blue screens. There were two separate problems in my case which both needed addressing. The first being that my disc was XP SP0 and XP SP2 is required to recognize some of the hardware. The second being that even XP SP2 needs a driver added to recognize the Intel Storage Controller unless you want to fiddle with BIOS settings for the controller before and after the install. I decided the best path was to Slipstream Service Pack 2 and the requisite drivers onto my XP install disc. Slipstreaming is inserting new updates, service packs or fixes into an old installer for a given piece of software. The program I used to do it was n-lite. Microsoft kindly offers a free download of SP2 and Lenovo, of course, offers a download for the Intel Storage Controller Driver. I should note that you still need an original XP disc for n-lite to copy down to the hard drive and modify before you burn yourself the updated (slipstreamed) version. When slipstreaming the Intel Drivers make sure to select textmode drivers instead of PNP and select the Intel ICH9M-E/M SATA AHCI Controller as the device to support. That about does it for Windows. Afterwards it's just the normal grab all the drivers from Lenovo runaround.
Linux has proven to be a bit more interesting. I used gparted on a LiveCD to shrink Windows' NTFS partition to 30GB of the 160GB drive in the laptop. Then I fired up the latest ArchLinux64 CD to install that. Afterwards I found that neither the ethernet card nor the wireless card in the laptop was recognized by the old kernel version. My solution was to grab my trusty USB Flash Drive and another PC, head to mirrors.unixheads.org (my Arch repo mirror of choice) and follow the links down to the most recent x86_64 kernel package. I downloaded the package onto the Flash Drive and then installed it with pacman -U, hooked it to a wire and grabbed the iwlwifi-5000-ucode package and added iwlagn to the modules array in /etc/rc.conf to enable wireless. Goodbye, networking problems.
I had stated that I'd be making a dual RedLinux v.014 release in the near future on i686 and x86_64. Apparently I didn't do my homework though as I found that the flashplugin and virtualbox-ose packages are only available on i686. Granted, flashplugin for x86_64 is in testing as Adobe finally released a 64-bit alpha for Linux recently. They've been dragging their feet on 64-bit Linux support for years...so tentatively go Adobe. That said, it could be a while before that moves from testing to extra. Apparently there might be legal issues. While perusing the mailing lists to learn more I stumbled upon some big transitions in the ArchLinux camp. There are lots of reasons this will likely end up an exciting and good thing but I'll be keeping a close eye on it. As for virtualbox-ose, I just traded it for the virtualbox_bin aur package. In the process I lost a little software freedom but I gained some features. I then asked pacman to go download and install about 70 or 80 packages (2gb worth) set up a few config files and called it a day.
The next morning however, I found a few things amiss. The most serious issue for me at the moment is that when docked on the Ultrabase, Linux failes to pump audio out through the dock's headphone port making the use of external speakers a pain. There's a bug filed in Launchpad but I can't find anything in alsa's bugtracker because you need an account to browse it. That could surely do with a bit more openness. At any rate, I'm not sure how soon to expect a fix on that as it's surely not affecting many people so I'm keeping my eyes peeled for workarounds. There is nothing on the ALSA mailing lists either.
After that, my main concern was getting suspend working. Yes, I can hear your groans but it's not that bad. I promise. The issue was a some sort of concurrency related nastiness in the current xf86-video-intel driver that was causing problems on resume. A nice workaround script was posted here to get it to work properly by disabling one of the cores during the suspend operation. A new XServer with improved Xrandr (display hotplugging) and xf86-video-intel driver will release with Kernel 2.6.28 in January which will also conveniently fix the issue of dealing with the external monitor connected to the Ultrabase. It presently only detects it when booted up on the base and the resolution options are less than perfect. The new drivers will indeed be nice. I also got to learn a bit about pm-utils and cpufrequtils throughout all this. Both of which you should install to get the most out of your battery life. Oh, and powertop. Glorious powertop. Hell, check out all of lesswatts.org while you're at it.
That's most of what I've been up to for tuning at this point. Next is probably just a little xmodmap and /etc/sudoers magic to get a few of these functions keys doing what I want. Then I'll probably just wait on alsa, kernel and xorg/xf86-video-intel updates. I'll also probably end up using lxrandr to play with the Xrandr settings when the new release happens. The other fun thing I learned in all of this is just how well loved Thinkpads are and a few signs of their support among linux users through things like the Ubuntu X200 Owner's Thread and the linux-thinkpad mailing list with their discussion on maximizing battery life.
For now, I'm very happy with the new machine and probably will continue to tweak settings for a while. Turning knobs is fun after all. I also got a 1TB external drive for backup with the laptop and a Scorpius M10 mechanical keyswitch keyboard for use with the dock. The keyboard is lovely except for some spacebar sticking so I'm filling out a form to get that replaced. Ah, the joys of computing.
I've been wrestling with financial aid a lot lately. I'm excited about going back to school in the Spring but figuring out money always seems to be a bear. That seems to be true out of school too though. Most of the financial aid paperwork is done though, I've accepted some federal aid and I'm waiting on some private loans. Oh, the debtors joy. Also, I've got my schedule worked out and it's Tuesday-Thursday only so I'll be able to spend the rest of my time learning and hopefully pick up a part time job! Observe:
Technical Writing - TCOM 2010
TR; 10am - 11:15am; Atrium Building J-213; Jonathan Arnett
Prog and Problem Solving II - CSE 1302
TR; 1pm - 2:15pm; Atrium Building J-217; Jon Preston
Same Class - Lab
T; 2:30pm - 4:15pm; Atrium Building J-201L; John Vande Ven
Global Issues - POLS 2401
TR; 4:30pm - 5:45pm; Atrium Building J-101; Jason Seitz
Discrete Mathematics - MATH 2345
TR; 6pm - 7:15pm; D-Classroom 235; Jennifer Vandenbussche
Of course, I have to look and recall all the lost credits from Oglethorpe. Why am I taking Global Issues again? Oh, right. Transfer fail. Moving on.
Speaking of...a Lenovo X200 is on it's way to me and should arrive tomorrow. Damn you, online package tracking! My Thinkpad A31 just wouldn't cut it for commuting to SPSU. I tried that in Fall 2007. 45 minutes of battery life and temperamental wireless doesn't make for a good student laptop. I've also been working on RedLinux a bit lately and should be making a dual 686 and x86_64 release of RedLinux version 0.14 sometime next week. I'm also hoping to read some Lessig/Benkler or maybe one of the Open Sources books soon. I'd be wise to work through some of Spivak's Calculus or Head First Java before starting back at SPSU. We'll see. That's all for now.
This blog covers 2015, Books, Butler, C, Dad, Discrete Math, Displays, Education, Erlang, Essay, Gaming, Gapingvoid, HTDP, Hardware, IP Law, LISP, Lecture, Lessig, Linkpost, Linux, Lists, MPAA, Milosz, Music, Neruda, Open Source, Operating Systems, Personal, Pics, Poetry, Programming, Programming Languages, Project Euler, Quotes, Reddit, SICP, Self-Learning, Uncategorized, Webcomic, XKCD, Xmas, \"Real World\", adulthood, apple, careers, coleslaw, consumption, creation, fqa, games, goals, heroes, injustice, linux, lisp, math, melee, metapost, milosz, personal, poetry, programming, ragequit, recreation, rip, strangeloop, work
View content from 2015-05, 2015-03, 2015-02, 2015-01, 2014-11, 2014-09, 2014-07, 2014-05, 2014-01, 2013-10, 2013-09, 2013-07, 2013-06, 2013-05, 2013-04, 2013-03, 2013-01, 2012-12, 2012-10, 2012-09, 2012-08, 2012-06, 2012-05, 2012-04, 2012-03, 2012-01, 2011-10, 2011-09, 2011-08, 2011-07, 2011-06, 2011-05, 2011-04, 2011-02, 2011-01, 2010-11, 2010-10, 2010-09, 2010-08, 2010-07, 2010-05, 2010-04, 2010-03, 2010-02, 2010-01, 2009-12, 2009-11, 2009-10, 2009-09, 2009-08, 2009-07, 2009-06, 2009-05, 2009-04, 2009-03, 2009-02, 2009-01, 2008-12, 2008-11, 2008-10, 2008-09, 2008-08, 2008-07, 2008-06, 2008-05, 2008-04, 2008-03, 2008-02, 2008-01, 2007-12, 2007-11, 2007-10, 2007-09, 2007-08, 2007-07, 2007-06, 2007-05