Ukulele Overload
I picked up a ukulele a few weeks back when I was in North Carolina. I had been learning to play the guitar, but I wanted to branch out to something different. Little did I know how much of a following they actually had.
There are plenty of chord generators around for all sorts of stringed instruments around, but I knew next to nothing about actual music theory, so I made one for the ukulele. It probably lies sometimes and fails in all sorts of ugly ways. It's based on my understanding of this document.
There are some very entertaining people sharing ukulele videos on youtube:
- http://www.youtube.com/user/jaaaaaaa
- http://www.youtube.com/user/sweetafton23
- http://www.youtube.com/user/ukebucket
- http://www.youtube.com/user/seeso
And I was surprised at how many good sites there were for tabs, chords, and lessons:
- http://www.giantflightlessbirds.com/ukulele/
- http://ukulelehunt.com/ - hehe
- http://ukuleleunderground.com/ - lessons
- http://nwfolk.com/uketabs.html
- http://yirmumah.net/ukulele/
- http://www.chordie.com/ - can show ukulele chord images
I noticed this week's Bigger Than Cheeses was about ukuleles. A recent xkcd strip wasn't about ukuleles, but I'm glad I wasn't the only one who put the two together.
About
Trying a new trac blog plugin. Apparently I need an "about" post. I imported all of my old posts, and they're still around on the wiki. I might have lost some versions. *Shrugs*.
Remembering How to Rotate a Vector
For no reason that I can remember, I was recently reminded of a solution to a homework problem way back from my first semester in college that I thought was creative. Having not had anything to say here for four months, I thought it would be fun to dig up the code and take a look.
The challenge was to rotate a vector in place using constant extra memory and less than O(n2) moves. There was very little additional information. I remember scratching my head for a while and then coming up with this crazy scheme involving the greatest common divisor which I drew out in great detail with boxes and arrows explaining how everything would move. I was disgusted that I couldn't arrive at a way to remove the gcd function entirely.
Now that I look, I see it is an early problem in book Programming Pearls. Their solutions can be found here. Algorithm 3 is the closest to mine, and they indeed don't need to calculate the gcd ahead of time.
Oh, and I was sloppy with whitespace and some other details back then.
/* Euclid's algorithm for calculating the greatest common divisor of two numbers. Taken from page 58 of "Data Structures & Algorithm Analysis in C++ Second Edition" by Mark Allen Weiss. */ int gcd(int a, int b) { while (b) { int r = a % b; a = b; b = r; } return a; } /* Rotates a vector i steps, using minimal moves. This requires an "extra" calculation of the greatest common divisor of i and v.size(), but this algorithm still wins out over rotating v one element at a time i times, because this is O(n) while the latter method is O(n^2) */ template<class T> void rotate(vector<T> &v, int i) { int size = v.size(); int factor = gcd(size, i); i %= size; int p; for (p = 0; p < factor; p++) { int n; T temp = v[p]; // Pull out one element so we can shift everything forward. for (n = (p + i) % size; n != p; n = (n + i) % size) // Until we get back to where we start, shift each element forward. v[(n - i + size) % size] = v[n]; v[(p - i + size) % size] = temp; // Put back original element. } }
Cory Can Read
I have been recommending reading material weekday morning for a handful of people for just over five weeks, now.
I make no claims to any of it being interesting, relevant, or entertaining, and I am not even sure how it will proceed from here. For the most part it has been programming-related articles with a mix of random things that amused me from the Internet.
Colored Quote Bars
It has long annoyed me that Thunderbird sometimes treats the '>' characters in excerpts from diffs as reply markers and draws a blue line instead of the actual characters from the E-mail.
I finally found some talk about how to disable that feature here.
Put this in ~/.thunderbird/*.default/chrome/userContent.css:
blockquote[type=cite] {
padding-bottom: 0 ! important;
padding-top: 0 ! important;
padding-left: 0 ! important;
border-left: none ! important;
border-right: none ! important;
}
Set the following options:
user_pref("mail.quoted_graphical", false);
user_pref("mailnews.display.disable_format_flowed_support", true);
And the bars go away. Along the way, I noticed that if format=flow is included in the Content-Type header, Thunderbird does the right thing. So, the source of these E-mails is partly to blame, but I am happy that there is something I can do about it for now.
The Quest for a Hat
Hat Quest
I don't know what got into me, but I got a hat and made a little adventure game about it.
Comments
I have not allowed comments in a long time. Let's see how well this works out...
Would you like to see a movie?
Thanks to movie nights on Thursdays, MST3K Mondays, and going out to see movies on Fridays, I have been watching a lot more movies than I previously did. Here is a list of movies that I can remember:
- The Adventures of Buckaroo Bonzai Across the Eighth Dimension
- Amores Perros
- Big Trouble in Little China
- Clerks II
- Conan the Barbarian
- Crank
- District B13
- Drunken Master II
- Hudsucker Proxy
- Lock, Stock, and Two Smoking Barrels
- MST3K (Rifftrax) - Star Trek V
- MST3K - Hobgoblins
- MST3K - The Day the Earth Froze
- Mission Impossible III
- Scotland, PA
- Snakes on a Plane
- UHF
- V for Vendetta
- Wordplay
- X-Men III
Allergies!
At least I no longer suffer from allergies. I only suffer when I am not taking a copious amount of antihistamines. And then only when my ensuing itchiness, despondence, lack of sleep, and inability to focus on anything get in the way of what I am trying to do.
Dear The Food Industry of America,
Feel free to take the following ideas to do with as you please.
Sincerely,
Cory
Triangle Peg Board Puzzle
That is what I get for eating lunch with a bunch of programmers.
Rocking Out at Jordan Road
In about a week, VV is moving its office across the river. In a musical experience never to be duplicated, we got the band back together for one final performance at the old place.
Degree Spam
Ten days of classes left, and I get spam like this:
Good jobs require a universityy education. Now you can get one in just a few days, and you'll also get that paper on your wall''
Sounds like a good deal to me.
Tony Hawk's American Sk8land DS
Read what the reviewers are saying...
- http://ds.ign.com/articles/667/667731p1.html
- http://www.gamespot.com/ds/sports/tonyhawksamericansk8land/review.html?sid=6139957
- http://www.gamerankings.com/itemrankings/launchreview.asp?reviewid=642968
Then see what players are making.
Math is Scary
http://rinse.unprompted.com/share/pumpkin.jpg
x = 2c / (-b +/- sqrt(b2 - 4ac))
Tony Hawk's American Sk8land
- http://ds.ign.com/articles/661/661073p1.html -- Tony Hawk's American Sk8land brings the series back to its roots on the Nintendo DS system. This portable version is pure Tony Hawk: fast action, tons of skate moves, clever parks with tons of grind rails and vert ramps, and dozens of unique challenges to accomplish along the way.
- http://media.ds.ign.com/media/740/740721/vids_1.html (videos)
- http://www.1up.com/do/previewPage?cId=3144993&did=1 -- ...we're seeing one of the best examples yet of 3D graphics on the portable console. But that's just a small part of why we're excited for Sk8land, which is looking to be one of the most feature-packed DS games we've seen since the system launched.
More Notebook Ninja Publicity
Notebook Ninja was on Attack of the Show on G4TV last Friday. The hosts gave it really positive comments and talked about it quite a lot, and people raved about it in the forums. Far more people have downloaded it now than I ever really expected. Cool!
o/~ There's no time. Hurry up! o/~
I have been up to a whole lot of no good lately.
I did not <a href="http://acm.cs.rpi.edu/~cory/projects/Chalk/">chalk</a> nearly as much as I would have liked to, but a friend and I did manage to decorate the sidewalk outside the DCC with Mario, Luigi, and Link.
To recap, this semester was very full of game-making. I had a blast working on all of these projects, learned a lot from them all, and probably wasted too much time playing around with every one.
<ul> <li><a href="http://www.unprompted.com/updates/Projects/flagfu1.html">Flag Fu</a></li> <li><a href="http://www.unprompted.com/updates/Games/princess.html">Princess</a></li> <li><a href="http://www.unprompted.com/updates/RPI/ink.html">Notebook Ninja</a></li> </ul>
I have a new game in the making, now. I will be sure to provide details as things develop.
I have only gotten good surprises, grade-wise, which is to say that my mobile robotics grade was higher than I expected based on some of my early grades in the class, and the rest were good.
I am spending the first half of the summer in a really nice apartment furnished just about right for me from a friend who had to leave town before the lease expired. After that I will be back in my RPI closet.
Today was my first day back at work. It started something like this.
<ul> <li><i>6:00 AM</i> - wake up</li> <li><i>6:01 AM</i> - fall back asleep</li> <li><i>8:00 AM</i> - alarm goes off</li> <li><i>9:00 AM</i> - wake up</li> <li><i>9:01 AM</i> - oh crap, I'm going to be late</li> <li><i>9:30 AM</i> - oh crap, I'm early</li> </ul>
After that, it was good to see lots of familiar faces and to start figuring out what is going on with my project.
This update was brought to you by "death" macaroni (macaroni and lots of cheddar cheese) and those cookie dough rolls which yield cookies when dropped in an oven for a dozen minutes.
Notebook Ninja
<img src="http://nninja.unprompted.com/manual/game2.jpg" alt="Notebook Ninja Screenshot" width="320" height="240">
<a href="http://nninja.unprompted.com/">Notebook Ninja</a> is now pretty much done. All that remains is to present it on Monday.
It was briefly mentioned in the <a href="http://acm.cs.rpi.edu/~cory/archive/documents/nn_times.html">New York Times</a> after we showed it off at the RPI Game Symposium. We have had a lot of people play it, now, and the general response has been great.
Princess
<img src="http://acm.cs.rpi.edu/~cory/archive/images/princess.png" alt="Princess" style="float: right">
This weekend I competed in an <a href="http://retroredux.parsons.edu/">24 hour Game Jam</a> targetting a new Atari Flashback console with three other people I know from <a href="http://www.vvisions.com/">Vicarious Visions</a> and classes.
Our game can be found <a href="http://acm.cs.rpi.edu/~cory/flashsmack/">here</a>. I didn't see any other teams working on anything quite like ours. The whole thing was a lot of fun.
Update: We won "Most Innovative Game!"
<ul> <li><a href="http://acm.cs.rpi.edu/~cory/archive/documents/retroredux-nytimes.html">New York Times Article</a> (<a href="http://www.nytimes.com/2005/04/06/arts/design/06game.html?ex=1113451200&en=0231f95dd4f16662&ei=5070">original</a>)</li> <li><a href="http://www.gamasutra.com/php-bin/news_index.php?story=5239">Gamasutra article</a></li> <li><a href="http://news.com.com/Images+An+angry+Atari+princess%2C+bull+and+ninjas/2009-1043_3-5656760.html?tag=cd.top">CNET coverage</a></li> <li><a href="http://www.gameinformer.com/News/Story/200504/N05.0404.1800.08849.htm">Game Informer</a></li> <li><a href="http://games.slashdot.org/article.pl?sid=05/04/07/2116212&tid=202&tid=156">games.slashdot.org Article</a></li> </ul>
Fun with Ink
As a CS major at RPI, I am required to take the Software Design and Documentation course, which involves working on a group project, producing excessive documentation along the way. Given the choice of anything to work on, my group is working on a stick figure "street brawler"-style video game. It's coming together really well so far. <a href="http://acm.cs.rpi.edu/~cory/archive/images/nn.png"><img src="http://acm.cs.rpi.edu/~cory/archive/images/nn_thumbnail.png" alt="Notebook Ninja" align="right" /></a>
Meanwhile, my network programming class has had some really dull lectures. Some friends and I have taken to various games involving drawing and writing on a piece of paper and passing it around to pass the time. Various disturbing creations can be seen here. The latest [http://acm.cs.rpi.edu/~cory/archive/images/netprog/comic0004.jpg comic] is particularly noteworthy.
Haiku
Today we Haiku.<br/>Do not speak without counting.<br/>It's five-seven-five.
getaddrinfo<br/>deprecates gethostbyname.<br/>You can use either.
So bored in netprog<br/>that we would not talk in prose.<br/>We just wrote haikus.
I'm Human
[http://www.wxplotter.com/ft_loser.php?im <img src="http://www.wxplotter.com/images/ft/lsr.php?val=9676">] [http://www.wxplotter.com/ft_nq.php?im <img src="http://www.wxplotter.com/images/ft/nq.php?val=8783">] [http://www.wxplotter.com/ft_weird.php?im <img src="http://www.wxplotter.com/thetester/images/php/wq.php?val=8279">]
I am just killing a few minutes before my next class, and putting off some homework.
Flag Fu
<img src="http://acm.cs.rpi.edu/~cory/archive/images/flag1_thumbnail.png" alt="Flag Fu Screenshot" style="float: right" />
I have not had this much free time since about a year ago, so I have enjoyed being able to take the time to work on one of my projects. FlagFu?, for lack of a better name, is my recent attempt at creating a multiplayer sidescroller.
During school and in the past in general, I rarely have gotten so far on random projects like this, but this thing went together pretty quickly, and as it is, this meets my original goals for a solid prototype.
Plenty of work still needs to go into it for it to become something that someone might call "good" or "fun," but I am hoping for some art and some very specific programming help from other people to get to that stage.
Graphs
Graphs...
<a href="http://www.unprompted.com/rrd/"><img src="http://www.unprompted.com/rrd/graphs/zim.unprompted.com-percentload-1d.png" alt="A graph of system load" /></a>
Yes, a big chunk of that load is from generating the graphs.
Cory Island
My projects for 3D Computer Graphics are all available [http://acm.cs.rpi.edu/~cory/projects/Programming/College%20Course%20Work/3dcompgraph/ here]. I wish I had more time to work on the flight simulator, but I am happy that it went together so smoothly.
Ray-Tracer
I made a <a href="http://acm.cs.rpi.edu/~cory/archive/images/ray3.png">ray-tracer</a> for 3D computer graphics. Fun stuff.
Oh, and don't play "Go Fish" with marked cards.
3D Computer Graphics
I am halfway through midterms at this point. I have been up to a bunch of different fun things.
Most notable of my classes are 3D Computer Graphics and Computational Vision.
I posted some of my graphics projects [http://acm.cs.rpi.edu/~cory/projects/Programming/College%20Course%20Work/3dcompgraph/ here]. I may share some of my vision projects, but they are not as fun to use.
Katamari Damacy
I went to Crossgates mall on Friday to watch a movie, but it was interrupted around half an hour from the end by a fire alarm. Doh!
I did manage to escape the mall with a really neat game I have been awaiting for several months, now. [http://www.namco.com/games/katamari_damacy/ Katamari Damacy] is an incredible Play Station 2 game. I wasn't prepared for the story, music, and feel of the game to be so entertaining. I highly recommend picking up a copy.
Unemployed
After eight months at Vicarious Vision on a co-op, I am once again unemployed.
Classes start next monday. My schedule is odd and still unsettled. Basic Drawing is for freshmen only, so I will have to drop that, but I have not decided on a replacement yet. I may leave it at the rest of the courses for a solid 16 credits of computer science courses.
rss
