My posts on this blog have leaned away from technical content for the last year, tending towards the introspective and music or poetry. I'm hoping to start shifting back in the other direction for a little bit and plan to write about my latest personal hacking project soon. In the interim, here are 10 favorite albums to write code to off the top of my head. I will note at the outset that I prefer ambient and instrumental music for hacking. Ambient stuff in particular seems to naturally encourage a state of "flow" for me. Also, here's a link to some C2 wiki discussion on flow as it relates to programming. Also, as long as we're throwing out great hacking music I might as well shill the mixtapes I've been working on the last two months. :) All three are pretty solid. And there's a one hour extended mix that mashes together I/Omega and Lost Without a Traceback that isn't on soundcloud. Ping me if you're interested. There are some track changeups and much improved transitions in the I./Omega half.
Hackerjams: Tim Hecker - Harmony in Ultraviolet Tim Hecker - An Imaginary Country Tim Hecker - Ravedeath, 1972 Fennesz - Venice Fennesz - Black Sea Fuck Buttons - Tarot Sport Rustie - Glass Swords Araabmuzik - Electronic Dream Four Tet - There Is Love In You Amon Tobin - Supermodified
(Honorable Mentions: Tycho - Dive, Washed Out - Life of Leisure)
If you were to proceed through the above albums in sequence, you'd start with some fantastic downtempo ambient/noise stuff with Hecker and Fennesz, shift into uptempo "noisetronica" with the Fuck Buttons, transition into the over the top and in your face Rustie, ride those dancey vocals and synths into Araabmuzik, and then start winding down with the more midtempo vocals of There Is Love In You and the outstanding groove of Supermodified.
I've been working on some of the depression issues mentioned a few posts back, making progress. Been making a concerted effort to have fun. Lots of weekend trips to Athens, socializing, concerts, that sort of thing. Starting to create things again too! I've made a mixtape for the first time....like a proper mixtape. Did it in Audacity. Didn't try to do tempo/beat-shifting or anything fancy, just 29 minutes of cutting and fading. I still think it turned out quite well for a first effort. It leans strongly in the electronic/dance direction so if that's a big turn off for you steer clear. Anyway, onwards and upwards. And to steal from Milosz and Neruda: "Yes, this is my gift to you. Above ashes on a bitter, bitter earth. To you, to the one who unknowingly has awaited me, I belong and acknowledge and sing."
The last 2 months have flown by. My time as an undergrad is coming swiftly (and happily) to an end and I'm finalizing my plans for after graduation. I said Paktahn 0.9.4 would be out by the end of February and wound up being two weeks late on that. Paktahn 0.9.4.8 is out now and my users seem to be pretty happy. At the end of the day, it's all about customer service. There were a number of bugfix/point releases to 0.9.4 due to the libalpm C library that paktahn has long used having some API changes in version 6 that needed accomodating. I found a regression in libalpm though which was pretty fun.
I seem to be staring at a lot more C code this semester than usual. Aside from paktahn, one of my classes has me working on the cl-opencv library which is a set of FFI bindings to Intel's OpenCV computer vision library. This semester has been the first time I've used CL's FFI and the CFFI library and in spite of some hiccups it's been a lot of fun. It certainly opens up a new world of possibilities being able to reuse all the C code that's already been written. I remember looking into /usr/include/ one day recently, seeing gobs of C header files and feeling joy. It almost makes me want to write and compile some C myself. ... Almost. ;) Unfortunately I have more than enough lisp software to keep me busy for a spell and I hope to have more to say on that subject very soon.
Other than school I've been enjoying skateboarding, as usual, and eating lots of Sushi. And my latest musical kick, as I'm sure some of you were wondering, is Childish Gambino. Gambino is the alias of Donald Glover who you may also know as Troy from the delightfully funny TV show Community and as a former staff writer on 30 Rock. His EP and last album, Culdesac, are available on his website for free. The guy is crazy prolific. That's all for now...
A few months back I discovered a playlist sharing service called 8tracks. It allows you to upload tracks or search among already uploaded tracks to create playlists (with a minimum of 8 songs) that you can then share with your friends. There were some light but sensible requirements on playlists, they couldn't contain more than 2 songs by the same artist or from the same album. As a listener, you could skip to the next track in a playlist but you couldn't do that more than...I think twice an hour. Otherwise, that was it. You could follow people to get informed about their new mixes and there were some commenting and tagging features. It's a simple idea but it had a slick interface and it was very easy to browse around and add your own playlist. In other words, good fun.
I immediately threw up two similar playlists I'd come up with way back in 2006 or so, listened to a playlist or two of a friends and did some work. I visited 8tracks once in a while to look for new music and meant to get around to posting more playlists of my own. I finally got around to working on a playlist over the holidays but had some nasty suprises in store when I tried to upload it. The RIAA (record labels) have forced 8tracks to remove community tracks so I have to upload each song myself AND after the playlist has been listened to once by a given listener the track order is randomized on each future listening.
Now 8tracks is doing their best to appease these foolish companies that think this will somehow help their bottom line by keeping people from listening to or discovering new music. 8tracks is also doing their best to not let this ruin the service and, if you're a Mac user, they have provided a tool that will let you drag and drop playlists from iTunes and automatically do all the song uploading for you. Why would that matter? Because even with decent upload bandwidth you're looking at spending ten minutes looking for files on your filesystem and waiting for them to upload. But I don't use iTunes, or use a Mac...or Windows for that matter.
I was really excited about 8tracks as a service and hoping to use it more in the future. I know the site is working towards rectifying the situation to restore the old functionality and I sincerely hope they find success. There are a number of reasons that this state of affairs is really terrible for them. Here are a few:
The whole point of a good mixtape involves the sequencing of tracks for coherency, flow, emotional potency and storytelling. Does the music industry really not understand that randomizing a mix at worst fundamentally destroys it or at best turns it into just a selection of songs?
I'm pretty sure it won't magically force people who otherwise *weren't* buying music (like me) into purchasing albums. Keeping people from being exposed and engaged in music is not the way to market penetration, relevance or consumer interest. Guaranteed.
One significant reason the site was such a joy was the simplicity of it. You simply searched for songs, dragged them into a list, arranged them and hit save. It was easy to use, attractive and fun. This is one of those "design really counts" moments. Forcing the user to open a file browser constantly and sit around waiting on uploads immediately limits the site to those with fast connections or patience and dedication. You've taken a potentially large market and limited it to a much smaller number of hardcore users.
Let's not even mention the fact that 8tracks has to worry about an entirely new technical problem. If they're storing each user's songs individually, how do they manage to consolidate the 8,000 uploads of Bad Romance or what have you? I'm sure you could binary diff the files or get a SHA-1 hash of them as they come in and then have duplicate files just point to an entry in a Distributed Hash Table or something. Unless they do the hashing client side (which admittedly isn't hard) they're still going to have to deal with a lot of bandwidth usage for all those identical copies being uploaded. This isn't impossible by any means, it's just unreasonable. Their is no reason this is a problem which they should have to spend their time on. It doesn't do anything to enhance the core values or draw of their site. It does *nothing* for their value proposition to me, the consumer. That said, users had the option of uploading files all along if they weren't in the "community tracks" so hopefully the developers were already doing something like this.
As I understand it, 8tracks is a side project for a number of folks and none of them yet work on it full time. It shows a delightful level of polish if that is indeed the case. A huge part of that polish came from the User Experience which has, at least in my opinion, been severely damaged by the record labels. What's so sad is that this site did nothing but allow users to discover and share new music in a fun and interesting way and it was engaging in large part because the User Experience/Design was just damn good. Given the limitations that were already there I sincerely doubt anyone was trying to avoid buying music by skipping through playlists and listening to music there. Any human over the age of 6 is smart enough to just listen to the radio (or internet radio) or navigate to filestube.com or a torrent site by now. Keep shooting yourself in the foot, recording industry. Maybe one of these days you'll get a whole red cent out of it.
I haven't written an Albums of the Year post since the end of 2005. Generally, I don't write Albums of the Year posts either because I'm lazy and don't feel like it or am a bit sensitive about running my mouth. Obviously, such a post is stuck in the realm of subjectivity and opinion but even though I listen to *a lot* of music I never am as versed as I feel I ought to be to write one of these.
This year I've tried to be more open about my music taste though, particularly through a series of "Song of the Day" posts on Facebook, a complete log of which I've been keeping here. Each entry is a song that either came on shuffle and reminded me of why and how much I enjoy it or something that was stuck in my head. I try to limit myself to a few songs per artist so as to not flood people with whatever I've just discovered/rediscovered. It's not a perfect picture of what I've been listening to this year...but then neither is my data on last.fm.
As in previous years, a big part of this year's listening10 will be catching up on albums from the prior year that I missed. I check in on a few end of year lists over the holidays and always find a lot of good stuff that slipped past my radar. As a consequence, I'll be listing 5 albums from last year that I may have downloaded but only really "clicked" for me or were discovered in 2010 along with 10 albums actually released in 2010. Then I may list a few albums I've already found for 2011 that slipped past me or some expected home run albums that weren't. I'll update this post to expand a bit on each entry in the next week or so. Let's begin.
Top 10 Albums of 2010: 1. Laura Veirs - July Flame: I can't believe I haven't seen this on other end of year lists. It's an incredible and beautiful album that deserves far more recognition than it is getting. I've listened to this at least once a month since I discovered it. It consistently thrills and delights me. 2. The Morning Benders - Big Echo 3. Teebs - Ardour 4. The National - High Violet 5. Four Tet - There Is Love In You 6. Shad - TSOL 7. Band of Horses - Infinite Arms 8. Broken Social Scene - Forgiveness Rock Record 9. Two Door Cinema Club - Tourist History 10. Tame Impala - Innerspeaker
Top 5 Albums of 2009 discovered in 2010: 1. Metric - Fantasies 2. Jay-Z - Blueprint 3 3. Jon Hopkins - Insides 4. Local Natives - Gorilla Manor 5. Bloody Beetroots - Romborama
Top 5 Albums of 2010 I'm likely to discover in 2011: 1. Flying Lotus - Cosmogramma 2. Emeralds - Does It Look Like I'm Here? 3. Janelle Monae - The Archandroid 4. Cee Lo Green - The Lady Killer 5. Deerhunter - Halcyon Digest
Top 5 Albums in 2010 that I expected to rule but were only good: 1. Gorillaz - Plastic Beach 2. Two Door Cinema Club - Tourist History 3. Massive Attack - Heligoland 4. Girl Talk - All Day 5. Band of Horses - Infinite Arms
I've been enjoying a lot of music of late and since the year is coming to an end thought it might be fun to try and think about what my Top 5 Favorite Albums I've found this year are. Obviously then this is about personal preference rather than some supposedly objective notion of quality. Hopefully I'll write a follow up piece in the first week or so of 2011 with my final thoughts/judgments.
Last.fm has some strong data-based opinions on this but they're also wrong about some things. For example, at some point I managed to play Bibio's album or a song or two off of it but then forgot and had to leave to do something. Except my player was on repeat...and scrobbling. It kind of makes me wish that last.fm stopped paying attention to scrobbles if the same track had already been scrobbled 10 or more times. Or exposed an option to enable such behavior.
Laura Veirs - July Flame (This record is staggeringly beautiful and makes me wonder how I had never heard of Laura Veirs before. I find myself convinced that everyone everywhere should enjoy this album. It sounds that gorgeous.)
The Morning Benders - Big Echo (It's insanely listenable. I just put it on and catch myself nodding my head regularly.)
Metric - Fantasies (I know, it's from 2009. I just discovered it. Deal. Need to move? This is your album. Infectious.)
Other possibilities include:
Jay-Z - The Blueprint 3 (The first half really wants to win, the second half not so much.)
The National - High Violet (It's uniformly gorgeous but too dark to be listened to as much as I'd like...)
The Bloody Beetroots - Romborama (I did listen to this a decent amount but I just don't love it that much.)
Local Natives - Gorilla Manor (For a random debut this was quite impressive but my listening tapered off after a bit and I haven't gotten back to it quite yet.)
Band of Horses - Infinite Arms (I enjoyed this album and still listen to it some but it's nowhere near as good as their previous two albums. And to be fair, I spent the first half of this year discovering and falling in love with those previous two albums so maybe they'll sneak into my final list.)
Tame Impala - Innerspeaker (Another delightful album that my listening has tapered off for.)
Teebs - Ardour (I've just started listening to this but it's *very* enjoyable. We'll see how long it keeps up.)
White Rabbits - It's Frightening (I listened to this a lot early this year but it trailed off and it's doubtful it will make it on my list though it is a solid album.)
Albums I expected to be shoo-ins that really weren't include:
(NOTE: Being on this list doesn't mean the album is not in the running. It means I expected it to be a shoo-in.)
Gorillaz - Plastic Beach (After Demon Days I was prepared for an incredible album. I was thoroughly underwhelmed by Plastic Beach though think Empire Ants is one of the better songs Gorillaz have produced.)
Massive Attack - Heligoland (This was much closer to my expectations after a few listens than Plastic Beach but I'd still put on Blue Lines or Mezzanine long before Heligoland. Hopefully the Burial remixes will come to fruition. To be fair I spent half the year waking up to Paradise Circus. It's that good.)
Four Tet - There Is Love In You (This is a very good album but I don't listen to it that much. Whether that's because of how minimal it is or not I'm not sure.)
Broken Social Scene - Forgiveness Rock Record (This wasn't as good as I was hoping but was more in the realm of Heligoland level disappointment than Plastic Beach. Meaning it's good it just doesn't measure up to previous efforts. Really, BSS will probably never top You Forgot It In People for me. World Sick, Sweetest Kill and All to All are insanely good songs though.)
Two Door Cinema Club - Tourist History (I got really hooked on a number of early singles and EPs by this band after discovering them through Bryan O'Sullivan's twitter feed. They're wildly good and infectious pop. Good high-energy music. Hell, they were the soundtrack for the first half of the year along with lots of Band of Horses. But they reworked the singles on the EPs and I think the new versions are worse. This is a really good album but not quite a shoo-in. And it really should've been. Keep your eyes on these kids.)
I was hoping I'd find an analog to last year's discovery of Jon Hopkins' Insides or Ametsub's Nothings of the North but I haven't yet. If you know of something along those lines I should be hearing, please do let me know. Granted, since I discovered those albums late last year/early this year they could make it in my final list but we'll just have to wait and see. All for now.
At over 5 weeks, this may be a new record for time without posting to this blog. That's okay though. I've had more important things to do lately. For now, I just wanted to post a song I've enjoyed today. It's by the band Hammock and titled Shipwrecked. Lyrics and song follow:
On a cold night We lay down Under starlight We breakdown Spend our whole life Seeking shelter Til the last time, Gone forever...
It's been a long time since I've posted. I meant to take it easy on myself with blogging this year but not that easy. It has been a damn crazy year so far though. Thankfully, I've had a good time writing code and picking up an old hobby or two. I've been playing Magic the Gathering again (I know, I'm a nerd). The sun is out and my skateboarding is markedly less crappy than a few months ago. But I miss writing.
Today I'm posting a piece I started a few weeks ago. I'm still not quite pleased with it (it seems a bit over the top) but I probably never will be. I think I'll just call it "Words".
I remember having words and never knowing whence they came. I often stumbled into them, embarassing myself before greater edifices to literature. Though I had no hope of greatness, of poetry, I miss that corpus into which I could pour: childish thoughts and old desperation, longings and abstract hopes for things I even still cannot name.
Where did my words all run off to? I used to fit into them so nicely. A bit of my foot in this one, a leg in that one. Even a nice place for my fingers to keep me from grasping at everything, insatiable. I wore them around proudly, pointing to each in turn and saying, "Look! Here. This is who I am."
But these days I am naked and scared to venture outdoors. I still run into words sometimes. A few in the sink with the dirty dishes, others left in a coat pocket with a crumpled bill. Yet it is only by accident we are in the same place. My words are on fire and that's how I've been.
PS: You should all pay some attention to the new albums "Gorilla Manor" by the Local Natives and "Tourist History" by Two Door Cinema Club. They're helpful, also good for the spring season. Cheers.
PPS: Special thanks to Don Gerz and Max Kelley for accidentally providing motivational material to keep blogging.
2010 has, to date, been an odd year. I'm not entirely sure what I expected but I had something more idyllic in mind. The last two weeks, I've been struggling mightily with some personal issues and come to recognize some character flaws in the process. That's never fun. In particular, I have some communication problems and there are scenarios in which I simply shut down. Without warning or even conscious recognition, I withdraw and disengage. There are some rough similarities in these scenarios but not enough for me to figure out something conclusive about causality. The flaws caused trouble in both my personal and academic life in late January and early February.
My actual school courses have been going well so far but I've been screwing up my internship and am in the process right now of getting caught back up in that department. It's quite embarrassing as this is something I had looked forward to and involves people that I look up to. Murphy's Law applies to timing of our character flaws and communications problems too, I suppose. Valentine's Day was nice at least. I enjoyed preparing some really lovely Steaks with a Cognac-Peppercorn sauce. Clearly, my life is not *too* hard.
To try and keep that positive note, I'll end with a few things that have made me happy lately: - Music by Local Natives, Band of Horses, Ametsub, Massive Attack (Heligoland is pretty solid), Fleet Foxes, Jon Hopkins, The XX and Miles Davis' Flamenco Sketches. - Writing wrappers for web services/APIs is (so far) reasonably straightforward and fun. It's nice to know that there's a ton of good data out there waiting for neat uses to be made. - I have ideas and a desire to contribute to way more programming projects than I have time for. Some are others' projects. Some I'd start myself. I maintain that this is a good thing as long as I stay focused on what's on my plate and finish one thing at a time. - I have ideas for future blog posts and github uploads. Still, I'm sticking to my "no pressure blogging" schedule for 2010. There are more important things than...well, this self-aggrandizing whatever it is. That said, I've always been surprised that I find my blog so useful for remembering where I was, what I was thinking and what I was struggling with years later. Some days it's the only way I can convince myself I'm moving forward. - Factor is a nice language and I've spent a few hours playing with it again. There are trivial and non-trivial things I like. The biggest thing is the exceptional interactive nature of the language and how well integrated it all is. From a design standpoint, I just appreciate it. It seems to get a lot of things, compromises...right. More on that another time. Factor 0.92 was released today! It's been 2 years since the last release and I'll look forward to helping test a few things before 1.0 and keep hoping for native threading before 2.0. :) PS: The Factor logo is a raptor! How has Randall Munroe *not* written an XKCD comic about this? - I've finally found a few people (3) at school that are legitimately interested in programming and care about it. It's taken over a year. That's far too damn long.
It's been a while since last post. I'm going to try to maintain that this year. If I don't have something worth putting up, screw putting something up. Maybe there will be some longer, better written essays as a result. For now, I'm putting up poetry which I haven't done in a *long* time. Wrote this one on the bus to school. Feels okay. PS: I've really fallen in love with Band of Horses first album.
Dopplegangers I can only see another in you and how she must wind up in 10 years, though I barely knew her.
So you have a husband, two daughters. Biscuits in a cafe on a cool Sunday. A man seemingly earnest, invested.
Is this what becomes of us? I remember it differently. Lazy promises I made myself about who we each would be.
The last week has been thoroughly insane in ways both good and bad. As a gift, I had my thoroughly aged Nokia 6010 replaced by a shiny new Nexus One. Much as I would've liked an N900 they aren't subsidized by any carrier and so will remain out of my price range. I've also switched service to T-Mobile and thus far been quite satisfied. Then again, coming from a phone without a data plan I have no way of evaluating the 3G I'm getting.
The holidays were good. I have a skateboard again so when the weather clears up I can get back to enjoying that. Time with mom was really good as was some peace and quiet and time to reflect. I took the opportunity to discover some new music as I usually do and also to read two novels by Vernor Vinge that I thoroughly enjoyed: A Fire Upon the Deep and A Deepness in the Sky. Careful, those wiki links have spoilers. As for the music, I've considered compiling a top 5 favorite albums of 2009 list but haven't gotten around to it. Besides, last.fm should tell you most of that. I will say I've been deeply enjoying Jon Hopkins, Ametsub and Minus the Bear this week. It's kind of an odd mix.
Moving on, I got back into code last Tuesday after a long holiday absence. I really needed the break to recharge. 2009 was a full year. I spent the bulk of the second half of last week and the weekend writing code, reading code or screwing around with configuration files...which are all things I enjoy a good bit. Over the break I had fooled around with a new window manager (StumpWM in lieu of XMonad) and started using clbuild instead of asdf-install. I also spent a little time adding a lot of projects to clbuild in case I felt like playing with them. In the course of all this fiddling, I made a fresh archlinux install in a new partition with essentially nothing but Lisp and C compilers, a tiling window manager, Chromium, Emacs and a music player. To some degree, I'm fleshing it out still. It's a dumb diversion but every now and then I just have to rip my system up a little. It's hard to explain.
On Sunday, after 3 months of work Leslie and I finally made the Paktahn 0.8.2 release. For all intents and purposes, the wait was worth it. A lot of new features and fixed bugs are present but there is still so much on my Paktahn.todo list. And of course there are bugs to fix. It's hard to explain why I'm so invested in Paktahn. Part of it is the work I've put in to date, part of it is how pleasant it's been working with Leslie and how much I've learned. Another large part is that there is great joy in having written some part of my day to day software and having a (relatively) deep understanding of it. It's kind of silly because AUR Helpers are a dime a dozen (or two dozen) but I'm still having fun.
The Paktahn release was not without some drama though. Almost immediately after the release I started having odd issues building paktahn with sbcl. The resulting executable would exit as soon as you ran it complaining of a fatal error and a lost gc invariant. Not what you want to see. The bad thing was the error was intermittent and I couldn't isolate the cause. I had issues with it in my old archlinux install as well as the new one, with old and current checkouts of my code and with a checkout of Leslie's tree. I'm pretty sure I tried it with a fresh, recompiled sbcl and also tried removing all fasls and recompiling. I got very confused in the course of all that trying to figure out what happened. I should've been taking notes. At this juncture, it builds fine again and I can't get it to act up. :( Ah, well. At least I can get back to developing. It certainly gives me some impetus to finish the CCL port I started Dec 28th.
So on to school this semester. I'm interning at a company called Kloudshare and have begun work on open sourcing a portion of their code. It's good fun and I hope to have more to share on that note very shortly. The administrative person I spoke with before break failed to get the internship registered in SPSU's system though so I spent a good deal of Tuesday getting that worked out with her. Then I had the unpleasant experience of learning that online courses are *substantially* more expensive than offline ones. Apparently, the state doesn't subsidize them because they can be taken advantage of by anyone or something like that. In my case, I was just trying to avoid an hour and a half commute both ways and try to find more time to code. I guess you really can't have it all. Now I have to jump through more financial aid hoops. Joy.
Soon I hope to have some code to show here. Maybe I'll spend 10 minutes and just throw my dotfiles up on github for the hell of it tomorrow. Other than that...I miss long form writing, poetry, essays...but my focus is elsewhere. Plus I'm tired. The rest will have to wait for another day.
Ever since I blogged about good things happening to me last week, I've been slipping into depression. And the descent became rapid. The last three days were the worst of it. I had almost completely lost my ability to function. Just getting on the bus and making it to class, that was pretty good. That was an accomplishment. There were a variety of reasons for this but certainly one of the most prominent was how overwhelmed I felt by my Algorithms class. The first test had decimated most of the class (a handful of people got better than a 60) and the second one was today. Thankfully, it was a much gentler test than the first.
It's the teacher's first semester at my school and if my sources are accurate one of the reasons the second test was so much easier is that he has received enough complaints to be on some sort of probation. Whether or not that's warranted or not I can't say. What I can say is that I came into this semester drained. Partly due to prior semesters and a bit of academic exhaustion, partly due to Dad's recent death. I was hoping my courses would re-energize me this Fall. I found that all my courses drained me. It was terrible. Thankfully, I started working on some Open Source Software and that has been a real boon to me. Being able to share my enjoyment of programming and feel productive with somebody else helped give me a boost that I really needed. It kept me afloat. That said, if I had bombed the test today I don't know if I would've been able to handle it well.
I was concerned that if I bombed the test (which seemed probable) I would be so defeated that I'd have a hard time picking myself up and making a good effort on my other courses. Bombing the second test would have meant near certain failure in the class and I wasn't in a good position to take that blow. Thankfully, I'm still in college and I caught a break. A lot of people complained and the second test was a good bit easier. Whether that's fair or not is out of my hands. In the real world, I won't get many breaks or second chances. I'll just be required to meet the bar. Period. And sooner or later I'll miss it. I will fail. At which point, I'll just have to pick myself up. But not today. Today I'm going to keep trying to float and start working on finding my optimism.
Here's a pros and cons analysis and some oddly well timed material I stumbled on today.
Cons: He's easing up on us. We already weren't understanding the material well. Now he's easing up on us.
Pros: I am not going to fail the damn class. I can study CLRS and Kleinberg-Tardos and Levitin (all Algorithms books) at home to my heart's content, this semester and/or after. I've always vastly preferred self-study and learning by experimentation anyway. :)
Tasty links that might also cheer you up: High Anxiety - Raganwald's new github-thing Optimism - Also Raganwald's new github-thing
I've been increasingly disconnected from everyone lately. School has been a fairly large part of that. After 7 months of non-stop activity including moving, the death of my father and the death of my girlfriend's father, I'm ready for a little break and a little quiet. Thankfully, from July 20th the August 24th I won't have to think about due dates and my time will be my own. I hope to be a bit more social and communicative then...but I get the feeling I'll still need to turn a few folks down to build energy back up.
The 4th of July weekend was pretty good. I wasn't as productive as I could have been but I made good headway on my CS schoolwork which would've been a real pain this week otherwise. The last class for CS is Thursday and it's the final exam. I'm hoping to do the final project in Lisp (I've already done it in C++ as required) and post a screencast of my solution to the class Google Group by then. The teacher has expressed interest in seeing it. Unfortunately, that will have to be behind my other classwork in priority. The class I'm really most wanting to be over is also the last one to end, Weapons of Mass Destruction. It satisfies a requirement for a Science, Technology and Society course and was the only such Summer '09 offered course that really fit my schedule. It's hard to explain why that class has become the one I really want to avoid schoolwork-wise but at least it will be over soon.
Battle at the Berrics 2 kicked off last weekend and while my first two predictions were spot on I also think they were obvious. My whole bracket was shot this weekend when Torey Pudwill beat Jimmy Carlin. I didn't have Carlin going to the finals or anything but I was hoping that Carlin would just edge out Pudwill first round so I wouldn't have to consider Pudwill going all the way. I also was wrong about Janoski v. Ramondetta. Some major reworkings are in order and I hope to post them soon.
Also this weekend, I checked out a Kaki King album from last year titled Dreaming of Revenge. She just seems to get better and better. I also stumbled on what I found to be some deeply amusing chiptune by a fellow named Tugboat. It's essentially an NES-style 8-bit megamix of hip-hop songs from the last few years. Cute. It seems there's plenty more chiptune where that came from and I really don't know how I feel about that.
Finally, I've got a list of tricks I'd like to land over at Brookrun before Fall semester starts and various unprioritized goals regarding lisp programming on the same timeline. I probably should also wrap up the funnyWords programs in lisp and haskell with the suggestedoptimizations and some sort of review post. What are you guys up to?
I've gotta say, I had a really good weekend. Part of that was due to the fact that I did very little "real work". I also got to hang out with twopeople I'm quite fond of. The other contributing factors were finding a delightful new album by a guy named Bibio and spending one very enjoyable evening at Brookrun Skatepark. In fact, I just happened to pick up 50-50s at Brookrun. Nothing to brag about certainly but it was nice to just try them and land a few after a half-dozen trys or so on some little box. Oh, and AT&T managed to repair my crummy phone I broke last weekend so I could put off buying a new one a little longer.
The next two weeks will not likely be as fun due to finals coming up. One class ends earlier than the others so its final is the 9th. It happens to be Data Structures, the most interesting and challenging of my courses. This week's crunch is all going to be Weapons of Mass Destruction and Computer Science. (Edit: I actually found out my last Public Speaking speech will be due the day before my Data Structures Final Exam and Final Project. Thrilling, add one to the crunch.) The week after that will be Software Ethics and Public Speaking. I have to admit, I'm less worried about the latter two. Good music should make a difference though and nothing helps listening to good music like good headphones. I'd previously owned a pair of Sennheiser HD-212s for a little over 4 years. They were definitely getting long in the tooth but I had no plans of replacing them until I accidentally left them at the bus stop back in May. There was a long search for an appropriate replacement which culminated in my purchase Saturday of some Audio Technica M50s. Thus far, I am quite pleased. They certainly make Bibio sound good.
Speaking of Bibio, the album is wonderful. I'm not sure how to explain it. It's a collage of different sounds, the guy has a very wide range of styles on display. Everything from hip-hop beat production to folk. I still really like tracks 1, 4 and 7. Seriously though, just give the title track a listen. It's lovely, isn't it? I'm also getting into Minus the Bear but haven't spent enough time listening to it to call out anything in particular. Well, maybe the song El Torrente. I've also decided to do a little bit of Rap and Hip-Hop mining to see what I can find that I like. I've always been partial to Aesop Rock and The Fugees...but that's certainly not digging deep or challenging myself. I believe Rap has more to offer. Potential listening includes: Edan, Madvillain, Ghostface Killah, The Roots, Cannibal Ox and Jay Dilla with smatterings of N.W.A., Public Enemy, De La Soul, Nas, Atmosphere, Gang Starr, Rakim, Notorious B.I.G., Madlib, Talib Kweli, Mos Def and A Tribe Called Quest.
I'll keep you guys posted on how it goes. I'm still really enjoying lisp. I intend to make it back to Haskell but I expect most of my "play code" to be in Common Lisp for a little while. I've got so many tabs open in my browser backlog that whenever I finally decide to do a linkpost it'll be positively massive. Maybe I'll try to break it up in chunks though, yeah? Anyway, that's all for now. Back to schoolwork. July 22nd can't come soon enough.
Quick thought: It may be the saddest aspect of contemporary American culture that we pursue quick fame and riches over what is worth doing.
Things aren't bad over here. School is wrapping up in the next two to three weeks so I'm about to enter another pseudo-crunch mode and I feel like I just wrapped up midterms and Spring finals before that. My plan is to try and spread the crunch out so as to not kill myself. To that end, I'll be writing a short essay on WMDs this weekend, starting CS Project 2 and hopefully starting work on my portion of the WMDs group project and my persuasive speech. My persuasive speech is about IP Law, of course. There are so many good things to say when it comes to IP Law. It's more relevant than most of my peers realize. (Note: I don't rock music ringtones.)
Also, Brookrun really is an awesome skatepark. I plan to buy an annual pass and head over there at least once a week for a good while. Unfortunately, I busted my phone skating there last night. I bailed a backside 180 launching off some pyramid. Oh, well. I needed a new phone anyway. Now I just need an intermediary phone until I upgrade to a smartphone...which has me wondering, do I really need to upgrade to a smartphone? GPS and mobile Internet would be damn handy. Plus, they double as MP3 players and I could code for it if it was an Android or (presumably) Maemo phone. *sigh* Anyway, my running of two potential smartphones (Samsung i7500, Nokia N900) has widened to three (HTC Hero) as of yesterday's HTC unveiling. None of the damn things have release dates stateside though. Get it together US Carriers.
I've also been enjoying some of my music that I haven't listened to in a while. Old stuff, like Incubus. Seriously, Make Yourself is a quite lovely album as is Morning View. They probably qualify as summer music for me but then...I listen to everything always.
So here are four songs I've enjoyed rediscovering lately.
This is just going to be a quick post before I get back to work. Things rather suck lately. And when I say things, I mean summer school. I'm just not motivated about my work. I don't really feel like I'm learning and growing as much as I could be. I'm interested in doing what energizes me and spending time with the people I love, doing what I love. Unfortunately, I've got to make it to August before relaxation can become a priority. On the other hand, I have phenomenal support from most everyone in my life, I'm happy with most aspects of how my life is going and mom and I seem to be handling Dad's death pretty well.
So what have I been enjoying lately? Pixar's Up means a great deal to me and I've seen it 3 times now, Armond Whitebe damned. I've been skateboarding a lot more and I finally got around to checking out Brookrun Skatepark with my good friend Burke, see? It's just 10 minutes away. Yes!
On the technical side, I've been playing more and more with lisp (I love it so) even though I can't stop reading the haskell reddit. Hell, Haskell is even about to wind up on the iPhone. I also have pulled down a bunch of Erik Naggum posts which I'd like to read and hopefully learn something from. Last but not least, I'm looking forward to getting a phone in the near future to replace my aging Nokia and I'm leaning towards an Android handset (the Samsung i7500/Galaxy) or a rumored Nokia running Maemo 5. Either way, it'll be August before I know for sure at which point I'll try to defend the reasoning behind my purchase.
There's plenty of other stuff I'd love to post but that's it for now. Hopefully, I'll have a chance to post more and dump some links out of the browser closer to the weekend. Back to schoolwork. :(
So, I'm trying to be productive and having some difficulties. I've been low energy since Dad died and I don't think that's a secret. I'd really prefer a vacation to four accelerated summer courses and various other responsibilities. That said, this week was midterms and I've mostly survived. The grades won't be my best ever but I also don't think there is cause for much concern. Besides, I had a 3.76 GPA last semester bringing my cumulative (at SPSU) up to 3.4. I'll live.
I'm actually trying to wrap up the last midterm right now so that I can spend the remainder of my time between now and Tuesday working on Project 1 for Data Structures, the specficiations for which seem somewhat ambiguous to me. Anyway, back to work for now.
One quick note. Battle of the Berrics 2 has started. Make your brackets, people! I've made mine, I'll detail it in a separate post soon.
So, whether you like mashups or hate them I do think they can be original and fun. Case in point: Modest Mouse vs. Ratatat. Charming. The entire Modest Rat corpus can be found here. Scroll down to the Jan 24th entry for a link to the zip file with all the MP3s. Nothing like artists giving away music.
Whether mashing up pop (rap) acapellas and instrumentals a la Girl Talk is something that requires talent or is musically good or not I'll leave to others to debate. I thoroughly enjoy Girl Talk.
I will say that I wish there were acapellas and instrumentals for the more indie stuff I listen to. It's kind of sad, I'd love to sample Marvin Gaye's Trouble Man...but there's not an acapella of it anywhere. There are other Marvin Gaye songs...but my mind tends towards mashing up stuff that doesn't have acapellas. And DIY acapellas never do sound quite right. Maybe someone will eventually make software that can extract vocals properly...I'm not holding my breath.
Off to class for now, I've got a Computer Science midterm at 5, a Professional Practices & Ethics midterm due Saturday and then CS Project 1 due Tuesday. Those 2 CS assignments (midterm + project) make up 45% of my Data Structures grade. Good times. Back later. Probably will finally touch up and post something I wrote about Dad.
So, my browser is getting full again and I feel like clearing out the backlog. Prepare yourselves for a linkpost! Also, I'll try to arrange links by progressive nerdiness or some such.
NOTE: I've been terrible at keeping up with otherpeople's blogs. If you're a friend of mine and I haven't read/commented in a while, I'm sincerely sorry. I'll be trying to catch up soon. Also, if you haven't heard about the underground sensation tearing up comedy clubs everywhere, his name is Justin Morgan and I'd keep your eyes peeled for him.
I've been hearing about a few albums that might be good and that I should check out as a consequence. They follow: Doves - Kingdom of Rust White Rabbits - It's Frightening Night Control - Death Control Danger Mouse and SparkleHorse - Dark Night of the Soul
It's occurred to me recently that I really kind of need a phone and I'm ready to take the fancy smartphone leap. I did a quick survey of the competition yesterday and narrowed my choices down to 4 models, none of which are released yet and one of which isn't even official. Don't ask me about all that. I'm sure we'll discuss this later. Here they are: Palm Pre, Samsung I7500, Nokia N97, and the Nokia N900 (because Rover is a very stupid name for a phone). Hopefully some official word about the N900 will break soon.
Okay, so there's an awesome site about Literate Programs here. If you're looking for some code to read it's probably not a bad place to start.
There was recently a great discussion on proggit about most used emacs commands. That's some handy stuff to keep track of. Between that and the emacs-fu blog I referenced two posts back I'll be learning a good while.
O'Reilly Radar put up a pretty good article on the things HTML5 will enable and the resulting scramble to the finish by a lot of big players.
There was a good discussion on the Haskell reddit about making -Wall the default for GHC, I chimed in because there didn't seem to be enough discussion to suit my tastes and though I'm an idiot I'd at least learn something. Learn I did and I'm wondering if this bug is one of those referenced in response to my comment.
I want to thank everyone who commented or sent messages for their love and support over the past week. It's been most appreciated. Things are slowly returning to normal. I wrote something substantial about Dad last night but I'm going to hold off on posting it for a bit. I want to make sure it's of the right quality. There was a write-up in the AJC, in print and online, which is alright but the obituary by Dad's college roommate (which is unfortunately not online) hits the mark much better I think. That or Mom's tributes to him on Caringbridge.
Quick (but serious) pop quiz, Compare and contrast these two quotes. They may be my two favorites. Tell me what they make you think in terms of their different approach to the benefits and drawbacks of the advance of human knowledge. I think the dichotomy between them pretty neatly encapsulates my scattered thoughts and feelings about human progress.
Civilization advances by extending the number of important operations which we can perform without thinking about them. - Alfred North Whitehead
We are living now, not in the delicious intoxication induced by the early successes of science, but in a rather grisly morning-after, when it has become apparent that what triumphant science has done hitherto is to improve the means for achieving unimproved or actually deteriorated ends. - Aldous Huxley
I'm mostly enjoying my summer courses, particularly Data Structures. It's given me an excuse to relearn pointers and learn how to actually use gcc/g++ and makefiles. I'm still a long way from being any good or knowing what the hell I'm doing though. C'est la vie. The Sixteenth Edition of the Haskell Communities and Activities report is out, in PDF and HTML. I was mostly excited to see a progress report on the Glasgow Haskell Compiler which is some top notch technology if ever there was any. Just look at the stuff they're working on! I've been poking around the Computer Language Benchmarks game recently, too. Gotta love SBCL and GHC.
There are a few pieces of software I'm anticipating a release of. Here they are with links to the blockers for each: Firefox 3.5 because I live in it, Chromium's (Google Chrome) Linux Beta and Songbird which I don't really use but track with some interest. I'm also looking forward to a new Pitivi release (which should happen today, actually) and GHC 6.12 but that's months out still. Emacs 23 should also be fun because emacs releases are so punctuated but it's a pain to find a release schedule anywhere or even a list of blockers! GEEZ! Outside of software, I'm really looking forward to Peter Seibel's book Coders at Work which appears to be reaching it's endgame.
Speaking of Emacs I've been spending a bit more time in that incredible editor trying to become more proficient and found the Emacs-Fu blog to help immensely. There was also a guide to using the extension that ships with Mercurial that I found pretty helpful in getting off the ground quickly. I'll wrap this up by posting three songs I enjoyed listening to this morning.
So, how about a personal update to go with that code madness? I have my last two finals in Discrete Math and CS 102 Tuesday. Then I get to pack and fill out change of address forms in preparation for Teresa and I moving to our new place Tuesday. Then I have about a week before May 18th when summer session starts to square away things with the old house\landlord (cleaning, etc) and relax a bit. I'm looking forward to my Data Structures course this summer as well as to the Sixteenth Haskell Community Activities Report and the release of Pixar's Up. I hope to go see Up with a ton of people when it releases. Also, Pitivi was supposed to finally drop the first release of their 0.13.x branch in April and that date has slipped a bit. Hopefully they'll put out a release soon.
Last but certainly not least, Dad has moved into the dining room and is now getting around via a wheelchair. I don't get the impression that the cancer is beginning to win and he can walk a little but odds are good he'll never be back to full mobility. Pray for him if you can and if you're interested in tracking his progress Mom is keeping a journal here.
I can't believe it's mid-April. That's just wrong. Everything is going really well but it's hard to believe how fast this semester has gone by. Last week was pretty good. It just seems like so much is happening. I'll say this, I have a really fantastic and interesting group of friends whom I deeply care about. It's good stuff. This morning was adventurous. No fewer than three trees came down in our yard. It was pretty epic.
Things haven't been easy in a lot of ways and it's been hard to keep the faith. Then again, I don't seem to be the only one that's struggling right now. Also, this is going to be another rather linkpostish entry. Sorry.
UC Berkeley has a youtube channel. More and more institutions are doing this (The Obama Administration, anyone?) and I think it's a good thing. Stanford has some too but I'm more specifically interested in their CSColloquia than anything else I've seen.
Now that Kernel 2.6.29 and an updated X stack and Intel video card drivers are downstream, the software release I'm most looking forward to is Firefox 3.5. I spend a large portion of my life in that browser so any significant updates, especially those with performance improvements, are a big deal. Mozilla is already planning for Firefox 3.6 however and they seem to have quite ambitious plans indeed. Unfortunately, one other project I've been eyeing for quite some time seems to be struggling. OpenMoko, whom I was hoping would eventually produce a replacement for my aging Nokia phone, appear to be struggling mightily and the later models I was hoping for have been cancelled I'll together. I'll be crossing my fingers for their survival. They were indeed innovating but look like they might go the way of the OLPC project. Reinvention into obsolescence.
Beyond that, there have been a few cute things on Reddit of late. A Programmer Competency Matrix got put up recently and was, of course, lambasted for being bullshit. That said, it's cute and fun and for CS *students* it would serve as a pretty decent reminder for the things they ought to really have down by the time they enter the workforce. I'm talking about the log(n) column too not just the other stuff.
I'm a little confused about CPU Frequency Scaling. I've removed cpufreq from my Daemons array due to reasons I mentioned before. Namely, it wasn't doing anything and may have actually been causing problems. Now this guy is talking about how it's fail anyway. This is the same cpufrequtils we're talking about right? How did this get so widespread as good practice? Silly herd mentalities. Shame on me!
I'm still distracted by personal code but I'm doing an awful job spending time on it. There's a nice article here about using Lisp for shell scripting. I love that kind of small practical example, even if you get looked down upon for being a newb reading it. You've got to teach yourself somehow and bootstrap yourself somewhere, right? I'm also looking forward to trying out Urwid this week to work on a user interface for Pycooker. If I have problems I can always fall back on Curses. More on the abomination of my intended progress later.
Finally, I'd like to cook these Cream Cheese Wontons sometime in the near future but I don't know where I can get some wonton skins. Anybody have any ideas? That's all I can think of for tonight. Now if only I didn't have school in a few hours.
I sort of forgot that schoolwork all bunches together for a nice crunch towards the end of the semester. Consequently, I'm juggling a fair bit at the moment. Not least because I'm also sorting out Financial Aid and Housing for the next year. On the bright side, I've got some fun projects in the works and I'm not too worried about my classes. I can say I'll be very glad to be done with the semester, even though my summer classes start May 18th. Thankfully, they all are in the afternoon Monday through Thursday.
Here are a few other things that have been going on:
President Obama gave the Queen of England an iPod loaded with 40 Showtunes. And we don't know if that's legal. Think our Intellectual Property laws are messed up yet?
Last but not least, I've been on a real John Mayer streak lately but here are two other songs that I've really enjoyed. E.Z. L.A. by The Folk Implosion is simply awesome. That whole album is, so get that. No City by Aesop Rock is also quite excellent. I still prefer Labor Days though. In other news, Mayer and the Gorillaz have albums slated to come out in the near future. You're thrilled, right?
Oh, before I forget, if you're interested in the best general write-up on SSDs I've yet seen you should read this article from Anandtech. Generally I prefer the stuff at Arstechnica but I've yet to see anyone with an article this thorough and excellent on SSDs. Well done, guys. Speaking of which, OCZ Vertex 120GB are under $400. OCZ, you've earned my faith by this one. I'll choose you guys when I have cash to blow via pricegrabber.
There are endless good recipes on the Pioneer Woman's website. I had an abundance of Chicken, I check under Entrees->Chicken and find Braised Chicken and Parmesan Crusted Chicken. I've tried the Parmesan Crusted Chicken and the Braised Chicken. The Parmesan Crusted Chicken was pretty fantastic. Braised Chicken was tasty but I didn't like it as much.
The International Lisp Conference '09 has been going on and different people have said different things about it. Andy Wingo seems to have some decentwriteups. Sadly, some of the things he say make me think of what Paul Snively said in his Road To Lisp survey (which I realize is likely quite dated), "My own thinking is that Lisp is the cockroach of programming languages: it'll be the only one left after the apocalypse. Not bad for a dead language." Maybe in a few decades I can hope I don't suffer the bias of echo chambers. Maybe not.
Last but not least I'll just note that I'm really enjoying Elbow tonight while doing math. Really enjoying it.
Last thought, does anybody else wish there was a version of House for programmers in which "Dr. House" told everybody to just shove their Gang of Four and Design Patterns, think about the problem and actually do the job right? (Note: This does not mean unstructured programming or something. Mostly just anti-kneejerk-OO. He's a cynic looking for simple and obvious solutions, not a curmudgeon.)
I've done a very poor job adhering to my schedule today. I'm still in the spring break mentality and not really wanting to work. I worked hard Monday and Tuesday. I'm not sure what happened today. At any rate, I need to remember to make myself write some Lisp, Haskell, or Python for fun this weekend. I should also probably write some C# for school.
lib6502 by Ian Piumarta. I keep hearing that the 6502 had a really nice ISA and I'm considering whether an eventual fun project (like 5 or more years out) might be to write a basic lisp or scheme interpreter targeting the 6502. Maybe I could get away with working on it some in an Architecture or Programming Language Concepts course. Somehow it sounds tricky/crazy. Could I write one in 5 months? I'm still an idiot. Maybe I won't be in a year or so.
I've put myself in a rough position over the past few days. I should've been getting more math done but that's the past. I'm having a fair amount of trouble with inductive proofs but not because induction is tricky. Induction makes sense. Remembering how to transform equations with algebra is tricky and I'm quite rusty which makes it mostly frustrating and/or embarassing.
Anyway, there's a test on Thursday and I've got 5 sections of Homework problems to get through by then. Hopefully, if I can pull that off I won't do too poorly. I got an 89 or some such on the last test. I had some extra credit that bumped it up to an A.
I've been worried about my future a lot lately. I know that to some degree I went back to school just to know I'd be able to make money when I got out. In some ways, it was a move of desperation. In others, I thought it made sense to wrap up. Trying to teach yourself to code and working full time in IT wound up being a bit conflicting for me.
The important thing is I don't just want to make it. I don't want to just get out of school and be employable but I'm not learning enough or coding enough on my own to be more than that. So I'm looking at how to impose more structure and have more discipline to get more real coding done because this shortlog is just ridiculous, even though I did write a decent amount of Haskell over the break.
I want to see commitment and I want to see commits. I want to turn this guilt into motivation and that motivation into code. I can't say I love programming yet, I'm just fascinated by it...but I think if I keep at it one day I might get there.
PS: Listening to Gorillaz, their debut album. Definitely quality. Listening to Tim Hecker's new stuff. It's nice, particularly "Borderlands". A bit of Jaydiohead. It's nice. And Panda Bear...it's weirdly pleasant, particularly "Comfy in Nautica" and "Bros".
So spring break is finally here and I've gotten nothing done the past...5 days. I threw a small get together on Friday, went to a friend's stand up show on Saturday, saw the Watchmen on Sunday, and saw the same friend yesterday to watch Synecdoche, NY...which reminded me that I just don't get Charlie Kaufman films. The Kaufman films amaze me they're just incomprehensible. I can't infer the meaning to his metaphors, usually.
That's not all I've done these past few days but you get the picture. Worse (or better) still, my social schedule is booked. I'm already hanging out with people Tuesday night, Wednesday night, Friday night and Saturday night. It's ridiculous. I'm never going to get my math homework done. Anyway, where was I?
The more I think about it the more interested I am in writing or composing music of my own and there's no question that I want to do it digitally. I may even write my own software tools to do it but that's way down the line. A lot of the trouble is I don't know how to get started making music on a machine at all. Or off one. It's sort of this big, ominous thing for me. I don't think of myself as being that creative or talented anyway but I don't care. I'm going to try it. I'm still sampling things occasionally. I just need to find some piece of software to help me string it all together.
I've been at least a little productive. I've cranked through the first few chapters of Real World Haskell and would like to keep a one chapter a day pace. The code is browsable on the new server's mercurial repo. One good thing has occurred to me these past few days. Spring break isn't wildly different than my normal schedule. Sure, I don't have homework or Tuesday or Thursday classes but I don't think that's holding me back from being truly productive or learning things I want. If I just invent the right structure for myself I think I can do still more than I'm doing now. It's something worth thinking about.
I didn't even realize I hadn't posted in over a week. I just got through the first big "crunch period" in school and did pretty well. This weekend will be relaxation and unwinding to a pretty large extent. So what's happened besides the school stuff?
I got Street Fighter IV. I am planning on throwing a tournament...details forthcoming. I already think I prefer my Smash Bros tournaments. I'm enjoying Fleet Foxes and also The Stills and Vampire Weekend at moment. Mmm, mmm, music. ArchLinux finally put out a new release for the first time in a while. They're also going to try to drop releases with each Kernel release from now on which would be pretty damn cool. A distro that releases 4 times a year? Watch out. Not that most of us Archers don't just install and roll along... This is my jam and beautifully and entertainingly explains what I'm trying to say about parallel programming and the future. It also advocates haskell a bit which is nice. This just generally talks smack about for loops which is not a bad thing. I'm so sick of for loops. I'm not going to get into my snobbery right here. Just know that the fact that I ought to learn C for the future so I can deal with the past is a little frustrating at times. Finally, I'm 3 for 3 on my berrics predictions and with any luck I'll be 4 for 4 this weekend when Marc Johnson finally fights Steve Berra.
2: Amon Tobin is awesome. Literally, awesome. My favorite two albums of his are Supermodified and Permutation but I can't choose between those two. Seriously though, just listen to Nightlife off of Permutation or Slowly off of Supermodified. Listen to those for me. Please. Tell me they're not masterfully composed or beautiful. It's all sample-based. He's staggering.
3: I'm going to be moving by the end of may. I need to save up for a down payment on an apartment (with Teresa) somewhere nearby and public transit accessible. I may also change internet service providers. If I do that, does it make sense to buy hosting from someone (I'd definitely choose a Linode 360 in Atlanta at $20/month)? I'd still keep a server at home for, uh..."file transfer operations", media serving and SSH access or some such. I just don't want to have to run redlinernotes.com off of it for bandwidth and downtime reasons.
**Computer Nerd warning: I think what follows may be the most concise explanation of what really interests me in Computer Science that I've written, namely item 5. Item 4 is prerequisites, sort of. If you want to understand some of the reasons I'm into computing and the questions that interest me you could do worse than read what follows. Note that I think Computer Science is generally one of the most interesting fields that exists because it lets you study anything: Games, AI (Psychology/Philosophy/Ontology/Nature of intelligence), Theory of Computation (Mathematical Foundations of Logic), User Interface Design/HCI (Psychology/Aesthetics/Usability), Programming Languages (Linguistics). etc...but what follows are my personal reasons, not general ones.**
The point is the solutions which were elegant or "technologically superior" did not tend to be the ones favored by the market for various reasons. Note that I am not saying we all should be using Lisp Machines. These technologies were beaten in the market for good reasons but that doesn't mean they were a direction we shouldn't pursue. Consequently, I am beginning to understand that because the foundations of this industry which has taken over the world since 1970 are in many ways fundamentally unsound that we should harbor a desire to eventually rework those foundations. Namely by the insertion of abstractions to aid the modern programmer in issues of parallelism and secure and reliable code.
5: I guess the question that really gets me is, "Where should all this abstraction be?". That is, what are the right layers in which to have the abstractions we settle upon? I think a number of things suggest that the Computer Architecture and Operating System layers are not the correct ones and that the abstractions should wind up in our Programming Languages. Backwards compatibility and the price-performance competition with existing industry being the principle obstacles to Architecture and Operating Systems. Of course, once you've figured out where the abstraction should be you have to move on to "How do we create these abstractions and put them in their place?" or the question of implementation which is for all intents and purposes much harder. This has taken way too long to write and I'm pretty spent at the moment. Hopefully, I'll get a chance to flesh out these ideas later.
PS: It's begun. Mike Miller was right. I'm doomed to be a Computer Historian...
9 months into "the real world" I'm a bit perplexed. With all this talk of industry and full-time jobs, I for some reason expected that "the real world" would expect you to be industrious. Apparently, I am mistaken and while you'd want to end up at a job that challenges, drives and energizes you it is by no means a necessity. I've been thinking about this a lot and at some point will write more and possibly even wrap up that emerging philosophy series of posts. Particularly because I've been having lots of discussions that concern economics and/or politics lately and there seem to be some tenuous strands between those things. I go back and forth on what we need to do about the majority of people that accept and have no issue with the status quo, or at least lack the drive, energy or determination to get outside, above or beyond it. I would say that's probably 90% of us and am pretty sure I am in that category myself at present. It certainly seems unreasonable to demand the peak of human achievement from everyone and highly questionable whether people would universally like being at the peak of their potential achievement, or near it. I'll try to elaborate on those thoughts enough for them to be coherent in the near future.
I'm interested in getting some of the piano work of Ravel, Satie, and Debussy. I have Debussy's Children's Corner and like that. Then again, maybe I just need more Masashi Hamauzu.
A final thought: Why are 90% of the good technical lectures on the web in RM format which I must tediously rip to download an offline copy? No, I do not trust your site to stay up with the content I want forever. Even if you're google or wikipedia. Thanks, Peter.
Wow. What a day. I've been managing to keep fairly busy lately but also enjoying myself a good deal. So what's in store today? A word about music, a bit about games, some programming thoughts (on Factor and Common Lisp) and a mention of RedLinux.
Music: Four Tet has been making me really happy for the past 24-48 hours. I've known and liked Four Tet for a few years now but I think just how good he is at what he's doing only hit me recently. Two tracks did the trick for me and both are off his album Everything is Ecstatic. One is titled 'Smile Around The Face' and the other is titled 'And Then Patterns'. I'm posting a streaming link to 'Smile Around The Face' because it's awesome. There's a pretty interesting list of his 9 most influential records here and some interviews here and here that I may read later. As a sidenote, I'm jealous of all those NCF kids and their Walls. I want to throw a wall. If I did though I'd probably be silly/lame and try to sneak this track in...
Games: I've been saying that one of my favorite things about the new game consoles is the downloadable games. Xbox 360 and PS3 seem particularly strong in this category to me though the Wii has old mainstays from Nintendo lore to prop it up. I've already mentioned echochrome and everyday shooter here in the past and they're both quite good but I don't think I've mentioned Super Stardust HD. It has been and continues to be simply delightful. Some video tips on the game were recently released as a free downloaded on the PSN and convinced me to pick up the $4.99 single player expansion pack. They also released a free patch for the game so that you could play music off the PS3 hard drive once that functionality was possible through firmware updates. If anyone who has worked on the game is reading this: Excellent, excellent work guys. Really. This is how to build a title and continually improve it, create community, etc. I look forward to your future releases.
Languages: I'm going to separate my blathering here into sub-ramblings based upon the language concerned. First up, Common Lisp. I've been having some fun working with a friend to get a simple Gmail scraper/wrapper API developed in Common Lisp that would allow me to connect to accounts grab and compose messages, etc. We were relying on a CL library named mel-base to achieve this. I've been doing development locally and in the process gotten a bit more familiar with SBCL, SLIME and ASDF-Install. I've definitely come around to the idea that there is a place for both Common Lisp and Scheme which I, in misguided form, derided some time back. There are certainly pros and cons to each. At any rate, the combination of ASDF-Install, SBCL and SLIME is pretty great. That said, I realized after a bit of tinkering that mel-base lacks SSL support even here in 2008. That means it won't work with most (if not all) of today's web-based e-mail services which require SSL to encrypt the connection to the server (you know, so people can't steal your password and e-mails). I'm quite surprised it isn't there by now but assume the maintainer has been busy. Luckily, there is a CL library for SSL called CL+SSL, appropriately. I'm very tempted to find a way to patch SSL support (with a dependency on CL+SSL, of course) into the POP3, IMAP and SMTP folders in mel-base and contribute the patch upstream for the next release. I have no idea what I'd be doing really and I'm fairly intimidated but it seems like a good start and a reasonable place to help and try my hand. There are some other people who have pursued this though that I should get in touch with first to make sure no patches are already in circulation for SSL. Next up, Factor. I've been interested in stack-based languages since I first learned of them and still am quite intent on learning Forth in the near future. Possibly as my first non-lisp language. I stumbled into some blog entries by Phil Dawes on why he likes Factor and has enjoyed learning it. He also has an excellent post digging down into the versatility and usefulness of the compiler. Speaking of which, the Planet Factor blog offers some of the clearest insight into the development and internals of a programming language I've ever read, particularly one as young as Factor. Keep an eye on this one. You've got one more year, Slava. I want my 1.0.
RedLinux and Logos: I'm solidifying "plans" for the v.08 update to RedLinux. You can catch a glimpse at the changelog. I also have some logo designs (Thanks, Neil!) for the lambdabang, I just need to decide on size and color. Once I get a logo for RedLinux, I'll start working on the web page for it and get the ISOs up. End of September? We just might be able to do that.
I'm in Chicago on business today but I'm in a short lull so I thought I'd post a Radiohead song I've really been enjoying today. This song is fantastic and it has what seem like references to the Odyssey in it but I'm not sure what I'd say the song is actually about. Your thoughts?
Radiohead - There There (The Boney King Of Nowhere)
It's an unusually late post for me tonight so I'm keeping it short as I'm pretty exhausted. Sanford, I'll get to your comment tomorrow once I can form a coherent thought.
One, I need to get motivated/cranking on SICP again. I've made progress since finishing Section 1.2 and I think Higher-Order Functions are great but I need to move forward. If you have words of wisdom/encouragement, feel free to speak them.
Two, I really enjoyed listening to a song called Green Gloves by The National tonight. When I heard Fake Empire I wondered but if the rest of the album is this good that seals it. Have they been this amazing all along and I was just missing it? Seriously, this is the first thing since Yeasayer that's just knocked me over.
I need to tryOpenBox and build a trim install from the ground up again. Maybe with Gentoo this time? Or should I stick to Arch of Foresight?
I continue to hear good things about Barack Obama. Staggering amounts of good things. It's not that Marc Andreesen is saying this. It's that everyone who's had contact with the guy is saying this. Also, he's big on civil liberties. Maybe from lecturing on Constitutional Law at University of Chicago. Hopefully that means he'll handle these fiascos a little better than the current administration. It wouldn't be too hard.
Luis Villa comes up with some great ideas and this is one of them. Also, I may finally have to try greasemonkey because adding pictures to my posts continually sounds like a better and better idea. Well, at least some of my posts. While we're on Luis though, I take RSS feed reading seriously but I don't get near 800 feeds a day. I'd be interested in hearing what he settles on.
I'm wondering if I should start contributing to Ubuntu's Weekly Newsletter. It'd be a chance to do some volunteer work for a community I do care about and I have been thinking that down the road I might like to do some freelance writing so it wouldn't be a bad way to get a feel. What can I say? Beninspired me.
I'm glad people are thinking about the future. This article from worldchanging appears particularly promising. Anyone have any formal responses to this? I'm going to work on mine along with an update of the Secondhand Standards essay.
I'm trying to really get into emacs. I want to settle on an editor and really learn it. Since I'm learning Scheme for the next year or so Emacs seems like an insanely reasonable place to start. Making it pretty seems like a good idea though.
Living with Ben was pretty bad ass. We stayed up late arguing about stuff that only one of us really knew anything about (computers or philosophy), made crazy playlists, played smash bros, and generally had lots of fun. Dan was awesome too but he just hid in his room a lot and then popped out and surprised everybody with amazingness. You wouldn't know it from looking at the guy but he was totally the comic relief.
I mention this though because Ben and I might end up living together again sometime after May. I'm for it. And just so you all know, I'm really hoping to live within around Peachtree Industrial, near Oglethorpe. So, if you know good apartment complexes, guest houses, etc, Holla.
Anyway, we worked on this one playlist for like...two weeks or something? I don't know. We came up with a first version which was pretty bad ass by itself but it diverted from the direction I had in mind originally (it started off as my baby) after the Broken Social Scene track...or maybe the Ambulance LTD track. Long story short, I spent another few days to come up with this Version 2 which pretty much sticks to my original vision. Here it is for your thoughts and enjoyment:
1. The Faces - Ooh-ooh-la 2. Blind Melon - No Rain 3. Fastball - Out Of My Mind 4. The Five Stairsteps - O-o-h Child 5. Marvin Gaye - Where Are We Going 6. The Beatles - Come Together 7. Ambulance LTD - Young Urban 8. Broken Social Scene - Looks Just Like The Sun 9. Psapp - Tricycle 10. Massive Attack - Teardrop 11. Corinne Bailey Rae - Trouble Sleeping 12. Regina Spektor - On The Radio 13. Gnarls Barkley - St.Elsewhere 14. Jamie Lidell - What's The Use 15. Elliot Smith - Son of Sam 16. Ambulance LTD. - Arbuckles Swan Song 17. Cat Power - Willie
I also just sort of got this poem in my head while brushing my teeth. This is a draft. What do you think? What would you call it?
As though expecting to hear a proclamation, any moment now, "Poetry is no longer recognized as one of the forms of art. You lot may go on about your business." No more need: to try to compress the world into words, as if we could capture what fleets from us in a phrase given the proper amount of pressure. It is true that one should write a poem only under incredible duress. That way should we ever be caught, stuffing the universe into a handbasket, we might appear less greedy. And less foolish.
Finally, I'm going to be out of town for a week. I'll be back next Wednesday. See you guys then!
Oh, hello. You're the only one reading today aren't you? You are. Welcome.
10 days? 10 DAYS? Where have I been? Busy I suppose. And in case you noticed the server being down, it turns out the router it sits behind decided to go crazy...which is almost comforting. /*This entry dedicated to Raganwald, XKCD, Radiohead, and Amazon.com for keeping me occupied and away from you guys for so long.*/ So, what's been going on?
First, I actually wrote something today. It's been a while since that happened and it felt good. It's not fantastic but it's a start and maybe I'll be able to polish it up some in the future. I don't know that it was inspired by the following Milosz quote, but the quote resounds particularly with me today so I'm shoving it in your face anyway. "There must be a middle place between abstraction and childishness where one can speak seriously about serious things." - Czeslaw Milosz, Second Space, 4. I Apologize (pg. 49)
And here's the as yet untitled poem, please file naming suggestions below: How surprised was I to learn that the dichotomy was not that of good and evil, as expected. Rather, torn between shame and the frivolity of a bottomless awe. Bound mesmerized to the spectacle of the world and all the marvelous constructions within it. I found myself vertiginous, perhaps self-aware, but certainly unsure how to contribute to so great a vista. As though asked to add new colors to the horizon, or change the sound of the ocean on a starry night. That task is too monumental for me, I said. But awe is not enough, my immense wonder is insufficient. Still, it is better to make public a frivolous and joyous etonnement than to admit to the truth: That every man is a thunderclap receding into the distance, and silence.
Second, on Friday we had the best video game tournament in probably 10 months or so, IMHO. I actually did well in Melee with Zelda/Sheik. Semifinals well. The small atmosphere and various special appearances made the evening though. Derin and Pete were both able to come and I had lost touch with Derin so that was particularly awesome.
Third, the new Radiohead album is out and it's outstanding. What's more outstanding is that Radiohead are releasing and self-distributing the album as a download via their website and you decide what to pay them for it. That actually might not be more outstanding than the album itself which could be the best thing since OK Computer. More to come but I really like it and the early favorites are Reckoner and Jigsaw Falling Into Place followed by Nude and All I Need. I'm still pretty skeptical about the last track, Videotape. There's a live acoustic version on Youtube that just sounds better to my ears.
Fourth, I figured if I'm really going to take a year off to self-study and see if learn more/better/faster/stronger/etc that I'd better come up with a sort of reading list. Thank goodness for Amazon.com wishlists. I figured I might as well include a bunch of the stuff from my earlier book lists as well. The Computer Science stuff is thither.
good music: nostalgia 77 - seven nation army, skye - feel good inc, asobi seksu - lions and tigers, marconi union - shibuya crossing, telefon tel aviv - when it happens it moves all by itself honorable mention: massive attack - dissolved girl
A tasty Neruda poem... and a real blog post soon. Promise this time. I Ask For Silence:
Now they can leave me in peace, and grow used to my absence.
I am going to close my eyes.
I only want five things, five chosen roots.
One is an endless love.
Two is to see the autumn. I cannot exist without leaves flying and falling to earth.
The third is the solemn winter, the rain I loved, the caress of fire in the rough cold.
My fourth is the summer, plump as a watermelon.
And fifthly, your eyes, Matilde, my dear love, I will not sleep without your eyes, I will not exist but in your gaze. I adjust the spring for you to follow me with your eyes.
That, friends, is all I want. Next to nothing, close to everything.
Now they can go if they wish.
I have lived so much that someday they will have to forget me forcibly, rubbing me off the blackboard. My heart was inexhaustible.
But because I ask for silence, don't think I'm going to die. The opposite is true; it happens I'm going to live.
To be, and to go on being.
I will not be, however, if, inside me, the crop does not keep sprouting, the shoots first, breaking through the earth to reach the light; but the mothering earth is dark, and, deep inside me, I am dark. I am a well in the water of which the night leaves stars behind and goes on alone across fields.
It's a question of having lived so much that I want to live that much more.
I never felt my voice so clear, never have been so rich in kisses.
Now, as always, it is early. The light is a swarm of bees.
Let me alone with the day. I ask leave to be born.
I'm studying for a Discrete Mathematics test tomorrow. Aaah!! I'm learning Predicate Calculus in that class though so that's exciting. It's fun to finally be a bit more versed in all that. It also helps that I listened to Faith, Evolution, and Programming Languages yesterday and feel like I have a better understanding of Type Systems Theory thanks to that.
Other stuff: Thinking too much, as usual. Mostly about computers but also had good discussions with Teresa and Bria about the notion of progress and whether or not we are in a state of decline. More on that soon hopefully. I need to get some of those thoughts down after the discussions have fleshed out a bit more. Anyone else have thoughts to contribute or want in on the discussion?
I really want to write something about why Computer Science as a field is provocative and unique to me. I've also sort of started my nerd/programming pdf/ebookshelf. Presently on it are the following: Structure and Interpretation of Computer Programs by Abelman and Sussman The Art of Computer Programming, Vol. 1-3 by Donald Knuth Concrete Mathematics by Donald Knuth Code Complete, 2e by Steve McConnell The Tex Book by Donald Knuth Programming Erlang by Joe Armstrong The Best Software Writing (selected) by Joel Spolsky Introduction To Algorithms, 2e by MIT Staff Learning Perl, 4e by Phoenix and Schwartz Linear Algebra and It's Applications, 3e by Gilbert Strang The Practice of Programming by Kernighan and Pike How to Think Like a Computer Scientist: Learning With Python by Downey, Elkner, and Meyers
I also have some physical copies of other books and should probably come up with a comprehensive syllabus (similar to the one I did for open source a while back and my book wish list just before summer) for CS books in the near future.
This means I'm now studying two languages for school and two in my spare time. Java and C for school and Erlang and Scheme for fun. It makes me feel a little crazy because I don't know that anyone else actually does this. If there was someone else at SPSU that was studying Erlang that would literally surprise the hell out of me and I don't know how to feel about that. *shrug*
Also, I'm looking forward to possibly switching from Ubuntu to Fedora when Test2 drops on Thursday and I'm thinking of trying FreeBSD and Nexenta or OpenSolaris in the future. More on stuff like that and hardware nonsense later.
Finally, a few songs I've been enjoying: Incubus - Talk Shows on Mute The Stills - Yesterday Never Tomorrows Guster - I Hope Tomorrow Is Like Today Zero 7 - Out of Town Incubus - Agoraphobia
John Mayer - Lenny/Man on the Side Portishead - Biscuit Muse - Stockhold Syndrome Ted Leo and the Pharmacists - Timorous Me The 88 - Over and Over Pinback - Torch Funkadelic - Maggot Brain Christopher O'Riley - Bulletproof Six Organs of Admittance - Lisboa John Butler Trio - Ocean
Muse - Supermassive Black Holes Queens of the Stone Age - Tangled Up In Plaid John Mayer Trio - Out Of My Mind Outkast - Ghettomusick My Morning Jacket - Run Thru The Crystal Method - Bad Stone John Mayer - Wind Cries Mary The Good, The Bad, and The Queen - Soldier's Tale Folk Implosion - No Need to Worry Spiritualized - Ladies and Gentlemen We Are Floating In Space
John Mayer - Sucker Broken Social Scene - 7/4 (Shoreline) Otis Redding - A Change Gonna Come Andrew Bird - Fiery Crash Gavin DeGraw - I Don't Want to Be Perez Prado - Mambo #8 Ambulance LTD - Country Gentleman Zero 7 - The Pageant of the Bizarre John Mayer - I'm Gonna Find Another You John Mayer - Comfortable
So, today has been unspeakably awesome. Things have been fun here at work, I've listened to good music, and I've read some wonderful things. Did I mention I have a kick ass new IBM Thinkpad running Linux? More on that later. First, here are some notes on the other stuff:
Songs of Summer The Good, The Bad, and The Queen - History Song Brightblack Morning Light - A River Could Be Loved Zero 7 - This Fine Social Scene Maximilian Hecker - Full of Voices Mylo - Drop the Pressure Broken Social Scene - Looks Just Like The Sun Incubus - Favorite Things My Brightest Diamond - Lucky (Radiohead Cover) Foo Fighters - Generator Broken Social Scene - Alive in 85
Literary Lines More Neruda today. This one's called Poetry. It's gorgeous: And it was at that age...poetry arrived in search of me. I don't know, I don't know where it came from, from winter or a river. I don't know how or when, no, they were not voices, they were not words, not silence, but from a street it called me, from the branches of night, abrubtly from the others, among raging fires or returning alone, there it was, without a face, and it touched me.
I didn't know what to say, my mouth had no way with names, my eyes were blind. Something knocked in my soul, fever or forgotten wings, and I made my own way, deciphering that fire, and I wrote the first, faint line, faint, without substance, pure nonsense, pure wisdom of someone who knows nothing; and suddenly I saw the heavens unfastened and open, planets, palpitating plantations, the darkness perforated, riddled with arrows, fire, and flowers, the overpowering night, the universe.
And I, tiny being, drunk with the great starry void, likeness, image of mystery, felt myself a pure part of the abyss. I wheeled with the stars. My heart broke loose with the wind.
Social Brain Dump http://news.com.com/8301-10784_3-9738924-7.html http://radar.oreilly.com/archives/2007/07/why_congress_ne.html http://www.ohloh.net/projects/3783/analyses/latest
http://www.eweek.com/article2/0,1759,2161500,00.asp it's awesome to see suspicions confirmed in reality like this.
https://answers.launchpad.net/awn/+question/10849 AWN has moved to launchpad. Significant?
Okay, I'd like to start by saying that Folk Implosion's One Part Lullaby is such a good album and I'd really forgotten that.
That being said, I'm just notifying readers not to expect the Friday Linux Lessons anymore. I've sort of...missed posting them the last two weeks due to crazy events but I've also sort of run out of steam.
Consider yourself notified. If you want me to write a Linux Lesson or help you with computer questions please tell me. This even extends to Windows and Mac users and covers questions like "Brit, how do you manage to pirate everything ever?" Just ask and I'll be more than happy to answer.
Fridays are now Q&A days. Tuesdays, Wednesdays, and Thursdays may or may not see changes soon. I'll keep you posted.
I'm back. The beach trip had it's ups and downs but I'm glad to be back and there's plenty that I missed in the computing world that I'm catching up on. I did get a few books read while I was there though and met a skateboarder and a guitarist that were fun to hang out with. I hadn't skated like that in a while. The books read: Emergence by Steven Johnson, The Mutt by Rodney Mullen, Identity by Milan Kundera, and snippets of Jerzy Kosinski's Passing By, Cass Sunstein's Infotopia and Seth Lloyd's Programming the Universe. Yep yep. More soon to come.
Edit at 5:10 PM: I also just acquired the upcoming Aesop Rock album "None Shall Pass". How long have I been home? Two hours. When did this leak? Two days ago. When is it coming out? August. Nice.
I wish I had included John Mayer - New Deep and Guster - Amsterdam in the songs of summer. They'll probably be in next week's. I also am really getting back into Amon Tobin but his jazz/samba/drum'n'bass/insanity isn't really any particular season.
Lessig made a big announcement this week. I'll cover it in the monday update. He's smart and awesome.
In response to Justin last night: Linux has as many problems as you want it to. Get your hands dirty.
Speaking of, this week's linux lesson is looking like it should be fantastic. Max, get ready. Expect to learn about <tab> at the command prompt, more permissions, man pages, and the "|" key (that's shift backslash). It'll let you do fun things like "ls -l | wc -l" and "ps -ax | grep "yourmom"" and such.
Currently setting up subversion box and building jetty\terracotta cluster. More on that in t3h future. This week is turning out pretty nice.
Also, I was at the command prompt and ran "locate yourmom" and got nothing? So, where is she?