22
Sep 09

MIT Cubeclub to Host Competition, Nov. 14

cubeclub_homepage

First off, sorry I haven’t written a post in so long. Things, have been pretty crazy around here, as usual. Nevertheless, I’m back at MIT for my 4th and final year, and I’m getting back into the swing of things.

So, you may remember I helped found the first MIT Rubik’s Cube Club last year. Well, it’s our second year going strong, and we already have a WCA (World Cube Association) official competition scheduled for November 14th, 2009, in Room 4-370 at MIT. Full information can be found here.

We’ll be hosting the following events:
1. 3×3×3 Speedsolve
2. 4×4×4 Speedsolve
3. 5×5×5 Speedsolve
4. 2×2×2 Speedsolve
5. 3×3×3 One-Handed
6. 3×3×3 Blindfolded
7. Rubik’s Magic
8. Rubik’s Master Magic
9. Pyraminx
10. Rubik’s Clock
11. 3×3×3 Multiple Blindfolded
12. 4×4×4 Blindfolded and 5×5×5 Blindfolded (depending on interest)

I myself am planning on competing in the first 11 of the 12 events listed, if I can handle it. But we’ll see how it all plays out.

If you’re interested in getting more information about the club, check out our website or send us an email (cubeclub-officers@mit.edu).

07
Apr 09

Stats (April 2009)

I am happy to announce that yesterday, this blog hit 22 subscribers. Thanks to all of you who enjoy the blog. More awesomeness coming soon.

Statistics are provided by Google’s Feedburner API service. Chart made with jQuery and jscharts using the canvas html element (non-ie) or vml (ie).

(This post contains a static image of this blog’s stats on April 6, 2009. For stats up to today’s date, check out the stats page.)

blogstats-april-6-2009

10
Mar 09

“Pluto” Still Fighting to Be a Planet

Update April 8th, 2009: Listen to “Pluto” Here »

Last Friday I finished writing my first large work for orchestra, entitled Pluto. Those of you familiar with both the ongoing debate as to Pluto’s planet-hood (fyi, it’s not) and “The Planets”, an orchestral suite by Gustav Holst, may get what this piece’s title is getting at.

Although the truth is I didn’t compose the piece with Holst in mind. In fact, I had a hard time titling this piece because it changes feel so many times. I think the piece is best described as being heavily thematic, following the somewhat-recent trend of Hollywood film music to use a lietmotif, or “recurring theme” which holds the piece together. Overall, the piece has heavy influences of film composers John Williams and John Powell, 20th-century American composers such as Aaron Copland, and touches of Jazz.

The main theme is comprised of the notes C, F, G or scale degrees 1, 4, and 5 (1C 2d 3e 4F 5G) played in ascending order. Originally the theme is presented in a major key. In the middle of the piece, the theme is presented in a minor key. The piece finishes in a major key.

View the piece here: http://issuu.com/adamit/docs/pluto.
Grab the pdf here: http://polymath.mit.edu/portfolio/pdf/Pluto.pdf.

Or view in the embeded player below: (will likely not work in RSS feeds or other syndication services such as Facebook)

15
Feb 09

Rubik’s Cube Difficulty Graph

I started cubing (Rubik’s cubing, that is) about 4 months ago. I can now solve the 2×2, 3×3, 4×4, 5×5, 6×6, and 7×7 cubes, the sudokube (sudoku + Rubik’s cube), the pyraminx, the megaminx, the pyraminx crystal, and a variety of other little (non-cube) Rubik’s puzzles. I helped found (and am a member of) the MIT Rubik’s Cube Club, for which I made the website. And ever since I learned the higher-order puzzles (namely the 4×4 through 7×7), I’ve had the idea of making this silly graph. So, here it is, at last.

rubiks-graph-70percent

03
Feb 09

IE7 Flash Embed Bug
(Re: The DOM is a Mess)

It’s somewhat ironic that I happened to notice a paticular DOM bug today, of all days. Today, John Resig posted a blog entry called “The DOM is a Mess” in which he described–and posted a video link to–a talk he was asked to give at Yahoo recently.

As the title suggests, the talk was about how javascript is inextricably linked to the DOM, and how this entanglement has caused DOM-specific javascript to have lots of browser-specific bugs. In one of his slides, John says:

Nearly every DOM method is broken in some way, in some browser.

This is hard to believe, I know; but it’s true.

So, back to why we’re here. It just happens to be a coincidence that the day I watched John Resig’s video, I found a particularly nasty bug in IE. Now, I know I’m using the word bug loosely. I have yet to actually figure out what is causing the error. It is possible the error lies with flash. But as you will see in a moment, it is certainly very peculiar.

I noticed the bug when I was testing this very blog in IE 7. Here’s the wierd behavior:

Whenever I would refresh, leave, or close a tab in IE7 of a document which contained an <embed> element, I was receiving an “Object required” error. If that isn’t strange enough, the error seemed to always occur on “Line 53, character 3″ regardless of where the <embed> tag was in the page.

Here is my bug report page with bug isolated: http://polymath.mit.edu/projects/ieBugs/objectRequired/ieError.html.

Fortunately, I found a very simple fix. (Found here.)

<embed id="ieFixID"></embed>
<script type="text/javascript">
window.onbeforeunload = ieFix;
function ieFix() {
	var ieFixElement = document.getElementById("ieFixID");
	ieFixElement.parentNode.removeNode(ieFixElement);
}
</script>

The idea is to use the onbeforeunload event to remove the <embed> element before you leave the page. I’m still not 100% sure why this solution works, but hey, it does. So let’s not complain.

If anyone has seen this bug before and has any insight, it would be much appreciated.

31
Jan 09

Seeqpod API = Free MP3 Search Engine

Seeqpod is a great website for finding free music on the web quickly. They offer an API which allows web developers (like me) to create websites and applications which access Seeqpod’s database. I recently created a website, called Freemusic, which allows users to access Seeqpod’s music in a much more user friendly way. Users can share direct links to playlists they’ve created using the site. And all of the music can easily be downloaded from the original source that Seeqpod found it in.

Here’s a screenshot of the site:

freemusic

Lastly, I feel like it needs to be said that the site itself stores no music files or indexes of the locations of music files on the internet. It merely is an engine for querying the Seeqpod database. If a user finds a song in Seeqpod’s database which has been uploaded to the internet without permission of the copyright holder, then this user should not download or listen to this song.

<nerd talk>
The site uses the following technologies: javascript, ajax, php, seeqpod api, and the jw flash player.
</nerd talk>

18
Jan 09

Cool Collages from Your Photos

When I created the Canvas project a few months ago, many of you were wondering if a future release would exist where users could upload their own photos. Well, you’re in luck! Collage does just that.

Here are a couple of collages made with the site:
http://polymath.mit.edu/projects/collage/?photo=49704b8d5fb42 (mona lisa)
http://polymath.mit.edu/projects/collage/?photo=49704be3d73bd (barack obama)

Check out Collage here.
Check out the project page here.

collage

13
Jan 09

Update! Simple DropDowns for All

This is an update to my previous post on this project, entitled Simple DropDowns for All.

Simple DropDowns (SDD, for short) is now out of beta (version 0.4) with a new Version 1.0 release.

Check out this screenshot of the new documentation page:

dropdowns_version_1

There are several new features in the new release including the much requested onmouseover (as opposed to onclick) activation of the dropdowns, and better event handling for hiding the dropdowns after use. Also, the documentation and usage has been simplified so that the title element now only used to point to a hidden div containing the dropdown menu’s contents.

The new script can be downloaded here:simpledropdowns.js (or minimized: simpledropdowns-min.js).

The homepage for the project is here: http://adam_s.scripts.mit.edu/dropdown/.

And the google code project homepage is here: http://code.google.com/p/dropdowns/.

09
Jan 09

Music Page Uses SoundManager & Smartlook

Tonight I’ve been hard at work on a new music page. The new site utilizes two really cool javascript libraries which are brand spankin’ new.

soundmanager_smartlook

One is called SoundManger (which has just released a much anticipated version 2), and the other is called Smartlook (from the guys over at ISSUU).

SoundManager is a javascript library which makes playing sounds on a web page really easy. I used it on my new site to turn a simple list of mp3 files into a cool-looking audio playlist.

Smartlook is a javascript library which works in conjunction with an ISSUU account. ISSUU is a great site for publishing your documents (.pdf,.doc,.xls,.ppt,etc.) online. It features a really clean flash player and uses top-notch document conversion tools. Smartlook is their newest service. After generating a key based on your ISSUU account id (you can do this by logging into ISSUU and going here) and including the smartlook.js library in you website, all of your .pdfs, .docs, .ppts, and other supported documents that your website links to become links to the issuu flash document viewer for that document.

Basically, the code allows you to skip the step of having to upload your documents to ISSUU before you embed them in your page. Smartlook automatically uploads your documents to ISSUU using you account, and redirects all of your links to documents automatically. It’s pretty sweet. Check out how I used it to display pdfs of musical scores I published here.

05
Jan 09

Simple DropDowns for All

I was looking at Youtube the other and was noticing they use a ton of dropdown menus.


Examples of dropdown menus found at YouTube

Examples of dropdown menus found at YouTube

When I looked through YouTube’s code, I had a hard time finding out how they were generating these. It turned out they had a pretty elaborate script which relied on several other youtube resources. So I decided to write a standalone version that looks just as good, performs even better, and has a tiny footprint. Here’s what I came up with:

Example Dropdown Menu: Example Dropdown Menu

Doesn’t it look great? And it’s incredibly simple to use.

How To Use

1. First, download simpledropdown.js script.
2. Next, include the following line of code in your website:

<script type="text/javascript" src="simpledropdowns.js"></script>

3. Create span elements with the class set to "dropdown" and place the text you want to fill the dropdown menu
with in the title attribute, like so:

<span class="dropdown" title="Menu Text">Drop Down</span>

That simple code will create this menu: Drop Down.

To create something fancier like the menu “Example Dropdown Menu” above, or to learn more about how the dropdown menu can be used in your website, check out the SimpleDropDowns project home page here. The script also has a Google Code project page here. Enjoy!

« Older Entries