PS3’s hard to find

I just wanted to buy a 120GB Playstation 3 but apparently everyone around here is sold out of them. I figured the console has been out for a few years and the 120GB version came out in I think September, so I didn’t even consider that they would be hard to come by. The Best Buy rep I talked to said he didn’t know if Sony was intentionally trying to dry out the market or what; some online news I read said they were having manufacturing difficulties.

I found the 120GB version on Toys R Us’s web site for $299 and it said it was in stock. Not trusting that to be accurate, since every other store I checked online was out of stock, and stores I called in person were sold out, I decided to call Toys R Us. I fortunately got stuck with a phone menu that you talk into instead of the kind where you hit different buttons. I say fortunately because the speak-aloud ones are easy to circumvent: just wail and squeak and squeal different inhuman noises. It frustrates the machine and causes it to say things like “I’m sorry, I didn’t get that” and eventually “Please hold while I connect you with a representative.” Score! I got a guy who checked for me and said it did indeed appear to be in their warehouse and that there shouldn’t be a delay in shipping. We’ll see. I went ahead and ordered it from their web site; $299 PS3, $13 shipping, and $18 in taxes later, my PS3 order was placed.

Games I’m looking forward to playing:

  • Eternal Sonata
  • Heavy Rain
  • Katamari Damacy
  • Dragon Age
  • Heavenly Sword
  • Little Big Planet

If you have any PS3 game suggestions, let me know. :) Also, has anyone else had trouble finding these things?

Posted in Video games | Tagged , | 4 Comments

grumbling about personal blogs changing

This will just be a brief post to grumble about blogs that I used to enjoy that have changed such that I no longer care about their content. This is probably going to sound whiny but it’s been bugging me for a while, so of course I’ve got to vent about it on my own blog. First off, there was Jem’s blog that I read for years. She’d gripe about stupid people she found online and their web site issues, and that was mainly what I subscribed for. Then she went and had a baby (congrats to her!) and I teased her about making a mommy blog, not ever thinking she’d actually go and do it. She apparently wants to have a mommy blog, though, and that’s cool, I respect that… But I don’t care to read it.

Melissa had stopped blogging for a while but, after having a child, got back in the scene. I was worried I wouldn’t be interested in what she has to say about motherhood because, damn, I’m a far way from wanting to have kids at all yet, but it’s nice to see that I do still enjoy her posts. I haven’t seen the girl IRL in several years and it’s nice to keep up with what’s going on in her life, even if she’s in a stage beyond mine.

When everyone around me (Facebook, blogs I read) seemed to be going baby-crazy, I considered Rose’s blog to be a bastion of what I find entertaining in blogs. She wrote funny, über-personal entries about her family dog, the assholes she has to deal with in retail, and her musings about the weird things in life. I just read an entry today though saying her blog will go in a more technical, professional direction, and this saddens me. I read Eric Lippert’s blog, Joel Spolsky’s blog, Ars Technica, and Stack Overflow for technical stuff. Rose’s blog was a break from all the geeky, technical things in my life, like a more personal Not Always Right-Reddit duo written by a single person. So hers is another blog from which I’ll probably unsubscribe. :(

As it stands, I read the blogs of a couple folks I know IRL, Melissa’s blog, and Leslie’s blog. I’m going to have to scrounge around some in people’s link lists to see what other blogs I might enjoy, because the ‘Personal’ folder in my Google Reader has slim pickings.

Posted in Opinions | Tagged | 9 Comments

convenient file searching with Ruby, grep, and file

For my Linux kernel class, I often know that some struct exists somewhere, or remember seeing a macro defined in some file and it might be useful, but I can't remember where I saw something. I also end up trying to track down all the places a particular function is called, and don't want grep to go digging through every... single... file in the entire kernel directory structure when I only care about .c files. So, I dug up a lengthy combination of file and grep that limits grep's searching to particular files. I'm lazy about remembering this and retyping it on different computers, too, though, so I wrote a quick Ruby script to do it for me:

Ruby

#!/usr/bin/ruby

unless ARGV.length >= 2
  puts "Usage:  #$0 file_extension query"
  puts "\tExample: #$0 '*.h' 'struct list_head'"
  exit
end

unless ARGV.length == 2
  extra_args = ARGV[2...ARGV.length].join ', '
  puts "Warning:  extra arguments ignored: " << extra_args
end

file_extension = ARGV[0]
query = ARGV[1]
command = "find . -type f -name '#{file_extension}' -print0 | xargs -0 grep --line-number --color -H -o '#{query}'"
system 'clear'
puts "Searching #{file_extension} for \"#{query}\"..."
system command

Here's sample output on my Mac:

Searching *.rb for "puts"...
./finder.rb:4:puts
./finder.rb:5:puts
./finder.rb:11:puts
./finder.rb:22:puts

And here's some sample output from a Linux machine:

Searching *.c for "struct task_struct"...
./fs/fcntl.c:414:struct task_struct
./fs/fcntl.c:423:struct task_struct
./fs/fcntl.c:462:struct task_struct
./fs/fcntl.c:481:struct task_struct
./fs/fcntl.c:490:struct task_struct
Posted in Programming | Tagged , | Leave a comment

merge sort, the eater of nodes

I’m so tickled to have completed an assignment for my Linux kernel class. The specification was as follows:

Modify the algorithm that allocates a file descriptor for the open() and socket() calls. Implement a per-process variable availableFileDescriptor whose value is always the number of the first available file descriptor. Make sure that when a process closes a file descriptor and or a socket, availableFileDescriptor is properly updated. Use your driver harness to compare the performance of your modified kernel with the original kernel, both for situations in which the original algorithm should work fast and situations in which the original algorithm should not work fast. You might want to remove the restrictions in the kernel on the setrlimit(RLIMIT_NOFILE,...) call.

I banged around on that thing for almost two weeks, variously getting a modified kernel that would a) segfault immediately, b) fail to reach the login prompt and just kind of hang out, or c) reach the login prompt but fail to allow me to log in. Turned out one of my main problems was that the sorting function I was using, an implementation of merge sort that I had found posted on a Linux kernel mailing list, was eating my nodes instead of just sorting them. It would delete one at a time in a sneaky fashion. I thought I had checked the thing, and who knows, maybe it worked it at first and then I changed something that caused it to grow an appetite for my struct type. At any rate, I replaced the function with my own implementation of selection sort since it was quick and easy to implement. Upon doing that, things started to behave as I expected, and it was a short road to getting my modified kernel to work properly then.

Poor Jon was sick this past weekend and so he did a lot of sleeping and sniffling. This actually worked out okay for me because, while he slept, I worked on my Linux project. He still has to go to work this week, which sucks for him, and his job is in Cincinnati, which sucks even more because of the traffic. I’m hoping he’ll be well by this weekend so he’ll be back to his usual self, plus the two of us could then go to Carly’s birthday party.

Posted in Class, Daily life | Tagged , , | Leave a comment

big-blue-man date

I was walking with Mark to our cars after class today and he told me about his plans for a date he has this Saturday. We go to cross the street and a couple girls walk in front of us, cutting us off. Mark, unperturbed by other matter occupying a space in which he wanted to be, keeps going at the same speed, so he and one of the girls bump into each other. Maybe one of the girls apologized, I don’t remember, but Mark, still plowing on, cries “Watch out people!” which, after a surprised pause, made me laugh. I mean sure, we all think such things or even grumble incoherently under our breath, but we don’t say them aloud. Or at least I don’t, because I worry people will think I’m rude or something. Mark didn’t sound annoyed-rude, more like dry, why-don’t-people-watch-where-they’re-going amused. One of the girls apparently heard Mark, because she looked back over her shoulder with this annoyed look on her face and I tried to not laugh so obviously for fear she’d think I was laughing at her. So after the girl looks back at us, though I don’t think Mark noticed, he cries “Big blue man coming through!” due to wearing a large, puffy UK-blue coat. We’re across the road at this point and I can’t stop laughing. As we branch off to go to our different cars, I continue our conversation about his upcoming date with “You do have a way with women, Mark.”

Posted in Funny | Tagged | Leave a comment | Current music Paradise Circus by Massive Attack