This post is likely to be a bit scattered. Partially because I need to get back to doing homework in a minute but also because my brain has been in a lot of places lately. So here's a linkpost with thoughts on IP Law, Linux and other stuff. I also have a bunch of Lisp links but I'll dump those separately later...after I get some homework done.
I keephearingabout stupid moves by Microsoft lately. It's very confusing because in many ways my opinion of them has improved over the last few years. Not that I'd ever want to use a Windows-based OS again. I'm just too happy in Linux land. My point though, is that the company clearly has an old culture of anti-competitive wonkiness and a newer culture that seems more focused on creating good products and less on market manipulation. Maybe it's all just weird management stuff though. Hopefully that will change sooner rather than later. On the other hand, Sony seems to be getting their console act together between dropping prices and actually putting out effective advertising for perhaps the first time in history. I'm also quite pleased with Google taking a (more official) stance on Data Portability. It's something I feel pretty strongly about though I won't speak more about it today.
My hatred of AT&T seems to be perpetually growing. The FCC is trying to come up with a more formal definition of broadband and the carriers are, in my view, trying to make that definition demand as little of them as possible. Generally, I've gotten to a point where I hate telecoms. So, I have a message for them: Give me fiber, or whatever wireless connectivity you're pimping this week, and shut the hell up. In other news, IP Law is still completely ridiculous and I can't begin to summarize or explain that here. I can offer an example or two though. The first is a list of seven felonies with less severe penalties than music piracy. It's meant to be humorous. It's sadly surreal. I'll actually let that be enough of an example for today and link to a discussion of what fair use might look like in the 21st century and a curious idea of making digital property "stealable". Last but not least, I'm at least glad that good arguments against software patents are being made to the Supreme Court. Crossing my fingers on that one!
Peter Seibel's Coders at Work has finally come out. I was looking forward to the book for a good while and have been enjoying reading the interviews. LtU recently posted about it also. I've got 7 of 15 knocked out. I've been surprised that the two interviews I think I've enjoyed the most were with Simon Peyton-Jones and Brendan Eich. I was expecting the Lispers or Smalltalkers to be more to my liking. *shrug* I'll likely write a review or at least talk more about it when I'm finished.
I've been following a few pieces of software (as usual). It's nice to see the competitiveness in the browser market of late. The Chrome Linux team was disbanded recently and I take it that work is now part of mainline so hopefully there will be an official Chrome release for Linux "Real Soon Now". I should also note the emerging standard for 3D Graphics on the web. Something good will come of this. Additionally, GHC 6.12 is comingalong nicely. Lots of bugfixes the last few days. Looking forward to GHC 6.12.1 RC getting out there even though I won't be using it. Rock on, Haskellers. Pitivi also made another release. Now if only Arch would get an updated pitivi package, I'd be a very happy man. Oh, and there hasn't really been any more news on the N900. I'm keeping my ear to the ground.
- Per Vognsen, perhaps better known as the mighty psykotic on reddit, has finally got a blog up and running. I can't yet understand his first few entries but I'm glad he's putting his thoughts out there on a forum he's in control of.
- GHC 6.12.1 is nearing release. The first release candidate is planned for September 14th. Even though I'm going to be focusing on Lisp for a bit, I think the Haskellers have an awesome language and I'm very impressed with the work that's going on in GHC.
- Speaking of languages that impress, the Factor developers are chugging along as usual getting alot done. I do hope Slava releases 1.0 in the next year though. :) I won't go over all the specifics but you can read about the progress on Slava's blog. It's a pretty enjoyable peek into compiler hacking. Also, though I hoped the ARM port would be revived it appears PPC will receive that attention. C'est la vie.
- Snakes on the web was a talk given at a recent Python conference and proved pretty interesting. As I mentioned, I'm increasingly getting into webdev so hearing an inside perspective on the state of the field was fun.
- Finally, the R7RS process has gotten underway and the current proposal is to split Scheme into two separate languages. One for academia and one for industrial use, or one big, one small essentially. I don't know how I feel about this. But at this point I'm pretty Common Lisp focused anyway. And since R6RS was essentially ignored anyway, I'll wait and see how that community responds to whatever develops. The results from R7RS are still at least a year out. Reddit discussion here and here.
Today's linkpost will focus on two topics. One is the NSA's immoral spying activities which Obama promised to fix on his campaign trail and the other is the ever expanding mire of modern Intellectual Property Law.
That said, it all made me realize just how much arstechnica is an echo chamber for my own views. In Cass Sunstein's book Republic.com and other places he is a bit more alarmist about this than I would be but he's still a smart guy and onto something. With that in mind, I should at least comment that there does seem to be some positive pressure for Obama to live up to his promise, however meager, between angry senators and increased news coverage. In addition, some hold a much more balanced view that promotes waiting and seeing. The NSA position was a major factor in my support of Obama though or at least the belief that he would bolster what are, in my view, weakened civil liberties and constitutional law...and I'm a bit impatient and touchy about it.
As for stupid IP law, the madness just goes on and on. It's hard to know where to begin. I think I blogged about this already but a quick and obvious example is a music industry group that thinks they should be able to charge you each time your phone rings if you have a "musical ringtone". As a matter of fact, they're cleverly suing AT&T over it. At least my enemies are fighting each other. But let's just break their view down for a second. So, you can buy little 10-15 second clips of songs to serve as ringtones when people call you now. And these guys think that whenever someone calls you...and that song, or clip of a song, plays in public, it counts as a public performance of the work and copyright law entitles them to money. What? The same group struggled to get girl scouts to pay royalties for singing copyrighted songs around a campfire, such as "Happy Birthday" and "Row, Row, Row". I don't normally swear on this blog but might I say, Get The Fuck Out. You have no idea what music, or culture for that matter, is good for. Just leave. I get pretty irate about this stuff. Strange conclusions are being reached about what good copyright law is doing.
Since I've been getting a new phone I've spent a good deal of time lately thinking about the telephone industry. I have several problems with it but I suppose the largest is that I don't want voice service. I really just want to be paying for data. I'm happy to pay for Data at home and Data on the go. But I think it should all just be data. This sentiment is shared by a number of my friends. While you can get data-only plans for smartphones it is not clear to me that they are truly unlimited as some are advertised. I was looking into what would be required to maintain a "phone number" if you did have an unlimited data plan with good coverage.
It seems you would need to use Local Number Portability to transfer your phone number to a virtual number provider which would then route all calls to that number to an SIP address. Then as long as you had an SIP provider that had some way to handle outbound calls to phone numbers you could get by with 3G just fine. I can't tell if Google Voice might wind up resembling such a service but here's hoping, even if that would give Google an undue amount of power in my life. Better them than ATT. There's an SIP app for Android besides the Google Voice app called SIPdroid that looks pretty good and a list of SIP service providers here. The GV Android app presently still routes calls through the PSTN. At least SIPdroid lets you route calls through 3G or Wi-Fi but routing VoIP through 3G likely violates the TOS for most mobile carriers. Oh, well.
Of course, there's an Android app for Google Voice already and it's rumored that number portability is coming to GV soon. We'll see. In addition to that, there are some other good things happening. Verizon is pushing FiOS and a group at nochokepoints.org is fighting for more competitive access to so-called "special access" lines. Finally, someone is trying to communicate how we think to the telecoms which can only do good.
Here are a few video lectures I've enjoyed that simply never could have made it to Television. Too much of a niche audience I suppose. They'll go from most comprehensible to non-nerds/programmers to incomprehensible to non-nerds/programmers. Soon I'll post up something actually productive or cool. For now, it's all school.
I still really like Giles Bowkett's RubyFringe presentation from last year. It really starts in after the musical presentation of the first seven minutes. It's good fun even if you don't program and you can see a glimmer of why programmer's would be interested in what it is they do.
I also fervently love "The Graphing Calculator Story" which I read in text somewhere before stumbling across this video.
Finally, I watched Zed Shaw's CUSEC talk last night and was forced to conclude that I both like Zed Shaw and very much like his talk.
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 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?
This week has ended up being pretty nice, if off the wall. Teresa and I were getting locked into an apartment over at the Aventine at Ashford. I'm also beginning to dig into Financial Aid applications for 2009-2010 and preparing for all the schoolwork I've got to do in April. Oh, and before I beat you with them I might as well warn you that this is another linkpost.
I'm planning on doing some hacking with a friend this weekend and was looking at data structures on Wikipedia, primarily Radix Trees and Tries(Prefix Trees).
Looking at which languages had libraries already, I found that Haskell's ByteString-Trie was written by a fellow named wren ng thorton. I chased a few links and stumbled on wren's livejournal where I read my favorite thing since the Minimal Social Compact. I may not be smart enough to follow every thread in there but I'm smart enough to know that his thoughts resonate and I wish wren the best of success. I really enjoyed Objects are a Big Pile of Fail too but for different reasons.
Yesterday was eventful. I fixed some drywall and got a book in the mail. I'm rather excited about it. Its called The Elements of Computing Systems and between the book and companion web site (see: study plan), you'll build a computer from top to bottom out of NAND gates. A minimal Operating System implemented in a High Level Language, implemented on a VM, implemented on an Assembler, implemented on Machine Code, implemented on a specific Computer Architecture, implemented from Chips and Gates on whatever substrate proves suitable. Beneath that, of course, is Physics.
Also, it's been a long time since I was regularly checking Anandtech but when Anand keeps kicking out awesome articles about SSDs and the development of breakthrough graphics products I've gotta keep checking in for more. Keep it up, Anand! He's also managed to turn me into an OCZ Vertex fanboy.
This is just a quick link post. There may be one or two comments but I'll try to keep my mouth shut and I promise I won't ramble on like an idiot about language preferences. I know I don't write enough code.
Pixar is making another movie called Up and it's out at the end of May, God bless them. I am amazed by the consistent quality stuff they churn out and really can't wait. Trailer here. Watch it!
Also on the entertainment front, I think this is rendered and not real but I wish I could pay money to play it. I spent a large portion of my childhood playing Mega Man 2 so the idea of Mega Man 2.5D is positively awesome.
HLint: Personally, I wish every language had a library like this. Hi, let me suggest more idiomatic expressions of your code. Also, the Holumbus developer's blog made me very happy in just one sentence: "There’s no reason why Haskell can’t be used to build distributed systems, so let’s do it." Damn skippy, sir. Damn skippy.
Dreamsongs by Richard Gabriel: Mob Software. Every now and then I forget about Richard Gabriel. Then I stumble across his work and remember that he's a great thinker. I particularly enjoyed the section on The Changing Face of Software.
Speaking of Sussman's comments, Jao Ortega has posted for the first time in almost a year on that very subject. He's gone into more depth on Sussman's talks than anyone else I've seen.
One last interesting point that I gathered that Vladimir made explicit from Shivers and Sussman is "that unspecified behaviour actually gave you more opportunity for expressive power" which makes me a little sad. I still haven't decided how I feel about formalism. I need to write more code first. Still, my initial reaction is not exactly positive.
Last but not least I've got to mention the work on Unladen-Swallow. The project (which has support from Google) is looking to create a branch of CPython which performs 5 times faster and get it upstream. They've already made a first release with some solid gains and I'll look forward to keeping an eye on them.
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.
Copyright is really going to struggle to figure out the 21st century and the consumer products it's bringing. Just check out this Ars Technica piece revolving around the kindle. New media is continuing to eat old media's face. (See: newspapers folding)
Miru Kim takes pictures of herself in abandoned industrial complexes and urban ruins. It's rather interesting and at the very least there are some good photos. She feels compelled to take them nude though so it's NSFW. She also gave a lecture about it. The Bennett School is interesting and the Catacombs and St Jacques are just crazy. I don't know what I think.
If you think Computer Architecture isn't in the middle of drastic upheaval for the first time in two decades, read this and then punch yourself in the face. Okay, so maybe that's not as indicative of the upheaval as it could be but I don't have a solid link explaining the shift to multicore architectures (probably) featuring simpler individual cores. Anyway, it's fairly interesting that the industry heavyweight (i.e. Monopoly) may have to completely reinvent itself depending on what the market does at this crucial juncture.
I know you readers care about multicore support in Programming Languages. Neat GHC mutterings in a new paper. Can we expect GHC 6.12 in the next few months? While we're on Haskell, I thought that this library to automatically generate typesafe bindings to C code was pretty f-in awesome. If we have to deal with the legacy of C code, this should help tons. Hackage gets more useful by the day. Other papers? You got it. Lambda the Ultimate helped me stumble on this interesting approach to Compiler Optimization from some smart doctorate seeker named Ross Tate.
A while back an article called Hard Work and Practice in Programming got posted to both hackernews and the programming reddit and generated a lot of comments. It was both discouraging and motivating at the same time. I'm afraid of all the work I'd have to do to know all I want to know but I'm slowly moving in the right direction. That's actually what's been distracting me lately and what the title of this post is about. I want to be ahead of the curve and able to deal with parallelism. There are few programming languages in which that's even possible and that'll only become more pronounced and important in the coming years. Moreover, I know that whatever I end up doing with programming the language I write code in makes a difference to me in how much I enjoy it.
Some languages I like more than others, some paradigms feel more productive or sensible to me than others. Unfortunately, my tastes lean towards the esoteric which means that to work professionally in the languages I like it might require a Phd unless the market starts adopting them pretty quick. Or at least a Masters. There's a lot of mathematics involved and I could stand to brush up on my Calculus as it is. Ah, well. I really just need to shoot a sheepish e-mail to Don Stewart or Bryan O'Sullivan asking what I can do beyond getting my BS and writing Haskell and Lisp to be prepared to get jobs at a place like Galois.
Then again, I think part of my concern is that while getting a job writing High Assurance would at least be fun, challenging and use Haskell, I'm not sure my passion is in somebody else's software. On the other hand, I haven't figured out what I want software to do for me yet. Hopefully working through the BS will point to some ideas. I still have the idea of a social network for self-schooling or autodidacts lingering in the back of my head. School's fine but I've always wanted a bit more flexibility than I've been able to get at the institutions I've attended.
Speaking of the math involved, I've been harboring an interest in Category Theory lately due to Haskell and I really enjoyed this man's story. I may be a theory learner myself. I definitely appreciate working through the abstract in SICP a lot more than working through some arbitrary example in CS class. Anyway, there's more to gather from this and maybe with a bit of work I'll actually be able to tackle Herstein's Topics in Algebra. It's been calling my name for a little while. Well, more later. I've got a midterm to finish.
My browser is filling up with tabs and I'm tired of it so it's time for a link dump. There were probably also things from my Google Reader that I wanted to post in here but that thing moves so fast I can never keep up with it. Honestly, it's impossible. Maybe I should start reading less.
This year is starting to come together nicely. I'm enjoying school a lot and as far as I can tell so far I've been kicking ass and taking names...not that I should brag about it. It's not like I'm in a really tough school and it's not like I'm far into my major. Oh, well.
I still find the two most interesting topics in Computer Science to be Operating Systems and Programming Languages. We're still so early in the computer age. I think there's a long way left to go. I don't have anything smart to say about OSes and PLs because there is too much I have left to learn. Instead, in the next few days I hope to talk a bit about Emacs and LaTeX. I swear by that text editor at this point. The more you use it the more you get sucked into it I suppose...but I can imagine switching from Firefox to Emacs for browsing.
Now then, about those links: - First of all, there are some notes from a POPL 2009 track that I found highly interesting here. I hope that things are indeed shaken up as much as they suggest over the next 10 to 15 years. There is cause for optimism as much as despair. It's been posted on LtU and hopefully some good comments will turn up there.
- The Scheme Language Steering Committee is going through an election soon and I'm pretty interested in taking part. Naturally, they have a fantastic lineup of nominees. I'm one of those people that's a little dissatisfied with R6RS but I am unaware of the historic RnRS before R5RS so I should probably read up before voting. Who am I kidding though? I'll never find the time. We'll see what happens.
- Following up from the first article, the links here to the original article, follow up, and LoperOS are all fairly interesting. I'm actually pretty happy with the state of computing as it is these days but I don't have to write code professionally...and I'm certainly not opposed to escaping todays methods\tools\PLs\OSs\ISAs\etc.
- There have been some interesting thoughts on the economic stimulus lately. I think three of my favorites are this one, this one and this one. This post talks about how to spot economic BS which is of course also useful in these hectic times. We'll still forget these lessons in a scant few years, I fear.
- Bruce Sterling has a good bit to say about the State of the World in 2009 and though this is one hell of a thread there are some extremely interesting views present. It's definitely worth a half hour or so of reading, even if you can't finish it.
- While we're on the not quite computing train, I might as well mention the wonderful works of Elizier Yudkowsky again whose recent series on Fun Theory has provided some throught provoking material. *shrug* Maybe it suits you maybe not. Here is a summary. There has also been some talk on Overcoming Bias about Obama's Inauguration and Setting the Bar now. That's certainly worthwhile too.
- Speaking of Operating Systems and Foundations of Computing and all that bull, here's something worth reading/thinking about. I haven't actually used Plan 9 but there are (I think) some very good comments in this thread and things worth pondering.
- This is interesting if only because it seems reasonably honest/unbiased and explains many of the pros and cons of a broad array of languages. That said, I don't see any concatenative languages represented and that makes me a little sad.
Between Google Code University is pretty cool but what I'm really excited about is their Summer of Code. In the past I've read about it but if I can learn enough and get my act together quickly enough I may actually be able to participate this year! We'll see. A friend offered to mentor me for LispNYC if I can come up with an appropriate project and I'm both flattered and excited but I've got a lot to learn between now and then before I can do anything really useful. Back to my lisping. On a related note, I would keep my eye on this site over the next few months. I expect we'll all be seeing some really neat stuff.
Finally, a few tangents. Some of the stuff people create in LittleBigPlanet is astounding. Theseguys need to stop their home computer office wars...but I think I can say I actually prefer my setup to theirs. I've made good choices based on my needs, so have they. That's enough for now. I should try doing something actually productive. Later guys.
As a word of warning, my blog may be a bit flooded with good old "linkposts" for the next few days. The biggest reason for that is I had a few old sessionstore.js files laying around that I had saved for one reason or another with good links in them. The other main motivation is that I'll actually refer back to stuff I post and/or link to in here as opposed to losing it forever. So...just thought I'd warn you in advance.
I've enjoyed trying to pick up cooking a thing or two since living on my own and I'm no master chef but I'm slowly getting a bit better. Perhaps unfortunately, I've been indulging in my darker side lately though and trying to perfect a Fried Chicken Recipe. I'm trying to come up with a good almagation by experimenting with 3 separate recipes: One, Two and Three.
The last recipe (from Google's former chef) is particularly tricky because it's industrial-sized (30 cases of free-range chicken) and uses every spice known to man. I haven't quite gotten around to converting the measurements for our portions and figuring out how much money I'd sink into a spice rack. At least the second time I made chicken was considerably better than the first. I'll take slow but steady progress.
I think next I'd like to make a Chicken Caprese. Sonya made one that was lovely back when we were dating and I've poked around for some recipes but haven't found anything quite equivalent. I remember she served it over pasta (maybe with a mushroom cream sauce). I'll probably just ask Sonya for her recipe.
I know that Teresa and I are cooking at her parents for Thanksgiving. We rather foolishly requested the task. :-) Hey, if people pay, we'll cook. At any rate, I'm planning on deviating from Turkey and running with my mother's classic Pork Tenderloin for the main course. At some point on the trip though I'm hoping to try out Pioneer Woman's Chocolate Chip Cookies and Cinnamon Rolls recipes. I already made the Blueberry Muffins and they were lovely. Pretty much everything on her site looks fantastic. Maybe it's because she starts most recipes with a stick or two of butter. *sigh* My death approaches.
I also have some recipes for Tiropetes (cheese mixture wrappred in filo bread...mmm) and Greek Meatballs that I need to try in the near future. It'd be nice to pick up homemade hummus and spanokopitta as well. Then all I would need to throw a Mediterranean cook-off at my house would be a good kebab recipe. Any pointers?
I'm also torn betweentwo Pho Ga (Vietnamese Chicken Noodle soup, I swear by it) recipes and interested in grabbing a samosa recipe or two but they're rather abundant. A Thai Peanut Noodle recipe wouldn't hurt either. But I'll probably stick to Saigon Cafe and Rose of India for the time being to be honest. Other than that I just want to cook a Peppercorn New York Strip and bribe Dusty into handing over his French Onion Soup recipe. I tried one that was decent but it didn't quite knock me on my ass like his. I'll keep working on it.
Also, I now know I'm truly far into Linux nerd territory becuase I don't give a damn about the Gnome and Ubuntu discussions about how to envision a next-generation desktop and be competitive with Apple when it comes to user friendliness. First I had to explain to my Windows friends that I didn't care about playing video games anymore. Then I had to explain to my Mac OS friends that I appreciated control, freedom, tinkerability and programming potential to aesthetics. Now I'll have to explain to the Ubuntu people that I just want a command prompt, a tiling window manager and some package repos. :-)
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.
Also, I'm not sure I buy it but there was some pretty optimistic news about Concentrated Solar Power today. I'd love to see more detailed plans and a price/time-to-completion estimate.
Finally, if anyone has any insights about why I'm getting a bad EIP value and a kernel panic whenever I try to transfer large files (or dozens of songs) with my server, feel free to let me know. I will buy you a (coffee/beer/etc). It seems related to this issue from an openSuse user. It could also be related to me using the 8139cp module instead of 8139too for my ethernet card. Whatever, I doubt i'll get anywhere but I'll be looking into it.
One of the games I'm most excited about coming out this year is called echochrome. It's coming out for Playstation 3 and the PSP. No US release date has been announced but it will land in Japan on March 19th. While I normally don't bother with writing about games, this one's special. It's one of the most novel concepts for a game I've seen in years. In short: you rotate a scene featuring an Impossible Object such that an automated walking man can navigate it. It's a perspective-based puzzle game. Here look:
Also, everybody is writing about CS Education lately which is awesome considering I've been thinking about it so much. Just look at all this mess:
It may sound like a cop-out but I think Abelson and Sussman had this right all along. We're so hopelessly early in the existence of Computer Science as a discipline that we don't have a clue what it really is yet. And when you don't know what something is, it's pretty hard to know how to present it. Or steer it's course. That's all for now.
Yes, Apple is ridiculous and anti-interoperability. That is, if you are outside their ecosystem they'd really prefer to pretend you don't exist. In some cases they have to make exceptions, NTFS formatted drives, Microsoft Office/Entourage, etc. but for the most part you're screwed. Great strategy. Loving company. Count me out. The way to foster value is through openness. Just saying. Eventually, Apple will shrivel and die and all the things they invented for however many years (besides OpenDarwin\OpenStep) will be lost to everybody.
Speaking of Apple though, we could talk about the thing they get right. Design. And Simplicity. This really is a feature and don't forget it. It matters and will make a huge difference to you and your users.
Now for a change of pace. A recommendation not to learn Rails and count on successfully doing a web startup. I think the takeaway here is don't get hypnotized by the bubble hype and think for yourself.
Time for another change of pace. To languages. So here we've got essentially a LISP dialect running on the JVM with macros, immutable/persistent data structures, an optional STM implementation, and it compiles to bytecode while staying completely dynamic? Huh. Haha. Hahahahahaha! Wow. Just wow. That's awesome. I'm gonna need to write more on this.
Showing that pushing yourself is the best way to really learn and the path to follow. Experience and schooling can't match passion. And you can defeat the qualifiers myths, generally, if you can prove you know your stuff.
Two important things to note. 1: What you do and what you know effects what you can think and how you think. 2: Programmers are going to have a hard time thinking of what's disruptive with their heads buried in code all day.
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 have gone about dedicating myself to invisible empires. I rise and the day brings visions of struts jutting out of the soil to sustain immeasurable edifices to man.
I am having fun. I can say that much. To Do list: Cookies. Essay on Radical Visions. Lots of Discrete Mathematics to prepare for Wed test. Java Programming and C Programming. Figure out what days are with whom this weekend. Note: skate will be out. Gym and Laundry. Read one of the following good things: The Wealth of Networks, Programming the Universe, Open Sources (1 or 2), Infotopia. Also Milosz and Neruda.
I have to say this labor day has been fairly leisurely. I probably should have done more homework and there are definitely some things I need to get written and posted up on the blog but I'll get to that as soon as I can. I've been feeling a bit under the weather the last 24 or 48 hours. I think I have a bit of a throat thing but hopefully it will pass in another day or two. Here is tonight's fantastic reading: Peer Production Models http://www.sauria.com/blog/2007/08/25/scalability-concurrency/ http://www.russellbeattie.com/blog/java-needs-an-overhaul http://intertwingly.net/blog/2007/08/25/Lean-Languages-and-Libraries http://bitworking.org/news/158/ETech-07-Summary-Part-2-MegaData http://redmonk.com/sogrady/2007/08/26/links-for-2007-08-27/
Wow. I have been thinking about The Concurrency Problem waaaayyy too much the last 48 hours or so. I'm coming around about STM and am really hoping I get an e-mail back from Tim Sweeney answering some questions I had. Yes, thatTim Sweeney.
All the same, I'd rather Erlang or some other message passing functional+concurrent programming model get adopted than a non message-passing model such as Haskell. Erlang just seems cleaner to me. I just like it a bit better. Perhaps that will all change as I actually start trying to write code with them (Erlang, Haskell). Anyone who feels like coming along and writing something better that has the advantages of both without the disadvantages of either feel free. What I'm trying to say is, feel free to invent NBL.
Okay, here's what I've been reading: http://www.algorithm.com.au/talks/concurrency-erlang/ http://patricklogan.blogspot.com/ http://patricklogan.blogspot.com/2007_02_04_patricklogan_archive.html http://lambda-the-ultimate.org/node/1277 http://lambda-the-ultimate.org/node/2048#comment-25151 http://www.tbray.org/ongoing/When/200x/2007/06/07/Concurrency http://enfranchisedmind.com/blog/archive/2007/08/13/323 http://enfranchisedmind.com/blog/archive/2007/02/08/191 http://www.dehora.net/journal/2007/08/phat_data.html http://tech.puredanger.com/2007/08/14/concurrency-terracotta/ http://www.cincomsmalltalk.com/userblogs/ralph/blogView?showComments=true&printTitle=Erlang,_the_next_Java&entry=3364027251 http://www.defmacro.org/ramblings/concurrency.html http://yarivsblog.com/articles/2006/08/16/why-erlang-is-a-great-language-for-concurrent-programming And of course, the thing that started it all: http://www.gotw.ca/publications/concurrency-ddj.htm
Kernels are interesting, you've got Linux, BSDs, Solaris, Darwin\XNU, whatever powers XP and Vista. But they're really just parts of the stack. All the same, they're really important parts of the stack. Infrastructure will always matter. It's just not the focus now. What we're building with it is the focus. The OS is irrelevant in so much as it's just an enabler. This sounds obvious and stupid. I need to think more on what I'm trying to say.
Maybe the processor industry going massively multicore is the only way to force software developers to take advantage of the power that's already there. By forcing them to adopt new programming conventions they force out 30 years of cruft code and development methodology that is bug-prone. Goodbye imperative, hello functional.
Okay, that's it for now. Sorry for the linkflood\social braindump.
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?
I'm not sure if I'm going to post a Linux Lesson tomorrow. I'm pretty sure I will but I almost would rather teach myself some Python Programming and post a few explanations and/or code snippets. We'll see what happens. I've been reading a blog lately by this guy Steve Yegge and it's amazing. Seriously. I just read an article he wrote last March today called, "Moore's Law is Crap" and it was one of the most entertaining, wonderful things I've read in weeks. The guy's just dynamite. His essays\rants swing from hardcore nerd discussions about compilers and syntactic structure to the usefulness of math and being happy with your job. That might not sound like much of a swing but I think it is. Did I mention he works for Google? Anyway, here's a snippet I really liked today.
"I don't know why I blog. I'm just compelled; it just happens whether I like it or not. Don't read too much into my blogs. My opinions change from day to day. The only things I've learned, the only universal constants, are that I don't know very much, and that public whale explosions are just about the funniest thing human beings can experience during our stay on Earth. I don't know why that is, either." - Moore's Law Is Crap by Steve Yegge