flow is the first project I did for Multimedia Authoring, which was done with a partner (my second project was beatbox). It doesn’t do much, but it does look fairly.. sleek. It was an experiment in site navigation.
Archive for the ‘programming’ Category
Flow
Friday, August 28th, 2009Beatbox Sound Sequencer
Sunday, May 24th, 2009Here’s my final project for Multimedia Authoring II:
Go try it out! Click on HELP for a quick guide on how to use it.
The main controls you’ll want to use are the RESET button and the colored buttons on the right, corresponding to different sounds. Also, give DEMO 4 a try to see what it can do.
I’m acutely aware of the major issue with the app. Not only are the sound timings slightly off, but more insidiously, the sounds occur nondeterministically. That is, given a pattern on the timeline, you’ll hear slightly different timings each time the sounds are played. At the moment I’m not clear on how to fix it. While these mistakes are fractions of a second short, they can still be very noticable. It will definitely bother music majors.
However, I think Beatbox is fun to play with despite its faults.
If you want to try importing a timeline, give this a shot:
1200 540,160,4 638,280,4 722,160,4 512,160,4 512,280,4 302,200,4 484,200,4 694,160,4 652,200,4 456,160,4 484,280,4 694,280,4 386,160,4 512,200,4 666,160,4 540,200,4 330,240,4 638,160,4 456,240,4 302,280,4 694,240,4 456,200,4 610,280,4 358,200,4 484,160,4 540,280,4 274,160,4 666,280,4 456,280,4
The Ostrich Algorithm
Friday, January 30th, 2009I found this on Wikipedia and thought it was hilarious. “Stick your head in the sand and pretend that there is no problem” is quite an algorithm. Actually, I think I’ve used it in my systems programming labs before.
CMU Spring ’09
Friday, January 30th, 2009Two weeks into the new semester, and things are getting interesting. My schedule:
- 15-212 Principles of Programming
- 15-213 Introduction to Computer Systems
- 15-451 Algorithms
- 15-453 Formal Languages, Automata, and Computation
- 76-383 Multimedia Authoring II
Four heavy-duty CS courses and one Flash/Actionscript-based course. I’m pretty happy with that.
15-212 is basically functional programming in SML, a language I have never heard mentioned outside CMU. Ever. The underlying principles should be the same as those of more “popular” functional languages (like Lisp, Scheme, or Haskell), but come on now. Esotericism has its limits.
Here’s something interesting: 15-451 is being taught by Manuel Blum and 15-453 is taught by Edmund Clarke. They both happen to be Turing Award winners, which is like.. whoa.
So how do they stack up as teachers?
Well, actually, not particularly great. They are by no means bad, just not outstanding. After a second of consideration, this isn’t all that surprising. I’d even guess that strong research would have a negative correlation to undergraduate teaching quality, because spending time on cutting-edge research usually doesn’t get passed on to undergrads. I could be overgeneralizing, but this seems to make sense.
Blum and Clarke are old guys. They’ve got well-developed beards. We all know how old professors can be a bit out of touch when it comes to students. Still, the stuff they’re teaching makes up for it. Finite automata have been downright fascinating so far, which is not at all what I expected.
Should be an interesting semester.
Project Euler
Monday, December 22nd, 2008I’ve been trying out Project Euler, a collection of math/programming problems. So far I’ve solved 25 of them using Python primarily. At this stage, many of the problems can be solved with brute force, but interpreting them as programming problems is interesting enough in itself. My profile.
One of the coolest things about it is once you solve the problem, you can access a forum thread where hundreds of people post their implementations in every language under the sky: C/C++, assembly, Java, Python, Ruby, Mathematica, C#, PHP, Perl, Haskell, BASIC, LISP …you name it. And often these are nice solutions that use useful language idioms, at least from what I can tell with Python. It seems like a great way to learn any sort of language.

