Friday, August 13, 2010

Instant File Sync? Yes, Please

One of my countless projects this summer has been a collaborative programming project with a fellow computer science student from school. This programming project involves (at the time of this posting) 280 different files, all of which are deeply intertwined so that one mistake in a file could break the entire application.  We needed to be guaranteed that these files would always be up to date, because if they weren't, we could end up overwriting a lot of work that could have taken the other person hours to accomplish.  With such a critical importance placed on the synchronization of these files, you might be surprised to find out that I rarely think or worry about it.  That's all thanks to Dropbox.

Dropbox is a service that puts a folder on your computer called "My Dropbox".  Anything you place in that folder is instantly backed up online and also synced to any other computer where you have Dropbox installed. You can access your files from any computer via the online interface at Dropbox.com, including every version of that file since you added it to your Dropbox folder. This means that if you ever accidentally overwrite your final term paper with a letter to your friend back home, you can just jump over to the Dropbox website and find a list of every revision you've made on that file. Simply choose the one you need and download it.


File backups are by no means the only useful feature of Dropbox. As I mentioned earlier, Dropbox syncs your files across any computer where you have installed it.  So if you want files from your home computer to be accessible at work, just throw them in your Dropbox folder. It's that easy. Any changes you make at work will instantly be synchronized at home, and vice versa.  Dropbox also offers mobile apps for Android [Market link], iOS [iTunes link] and (soon) Blackberry, so you can access your files on the go from your smartphone.

Dropbox also lets you share folders with any other Dropbox users.  You just click the folder, click "Share" and enter the email address of the person you want to collaborate with. As soon as they accept your invitation, your folder will appear in their Dropbox folder and you'll be ready to go.  Using this feature, I can work on my programming project from my laptop or desktop, my partner can use any of her computers, and we are still assured that we will always instantly have the latest version of our files.

Every user gets 2GB of space to start out with for their Dropbox, but you can expand this number up to 10GB by inviting friends to the service. Full disclosure: If you sign up for Dropbox using my referral link, I'll get an extra 250MB of storage. But on the bright side, so do you!

In case this is easier for you, here's the QR code for the Android version of the Dropbox app:


Thursday, August 12, 2010

If you understand this picture....

....then you know it's true.


Wednesday, August 11, 2010

A Canary in a Coal Mine

In early coal mines, there were no ventilation systems, making toxic gases like carbon monoxide and methane a serious problem.  Miners needed a way to detect these gases and give them enough time to get out of the shaft. Hence, the canary.  The workers would bring a canary in a cage into the mine, and because canaries bodies are more sensitive than those of humans, the miners would know that if the canary's singing stopped and the bird became sick or died, then everyone should evacuate the tunnel.

Knowing this background helps to explain the name of one of Google's latest projects, the Google Chrome Canary Build.  As you may or may not know, Google previously offered three different versions of their popular browser, Chrome.  Dubbed, "channels" by the company, users can install either the Stable Channel (the default choice, for those who don't want to worry about anything potentially breaking), the Beta Channel (for the slightly more adventurous...normally fairly stable, but not without a few bugs), and the Dev Channel (for developers who build extensions for the browser and need first access to new features).



Enter the Canary Build.  Google decided that the Dev Channel, which is updated once a week, wasn't getting them feedback fast enough.  The Canary Build is updated almost every night, meaning that users will have access to the latest features almost immediately after the developers write them.  Sounds great, right? Well, the trade off for that access is an extremely high probability that the browser will stop working for some period of time.  If a developer makes a mistake in the code, it could bring everything crashing down.  On the bright side, tomorrow brings another update to Canary which will more than likely fix the issue.

Google knows that there are not many people who would be willing to put up with a browser that could possibly spend a significant amount of time broken.  So they came up with a solution. While users must choose only one "channel" to install on their computer (Stable, Beta, or Dev), the Canary Build is installed separately from the user's normal Chrome installation.  What this means is that you can use Canary when you want, and experience the newest features, but if toxic gases turn your bird's song sour, you have your stable version of Chrome to escape to.

I personally have been using Canary for a week or two now and I've only had a few problems that made me fall back to Chrome (Beta channel, if you were wondering).  If you're interested, the Canary Build can be downloaded here.

Tuesday, August 10, 2010

God's Number

Bet you didn't know God had a number. Well, He does, and people have been trying to figure out what it is since 1980.  Confused? Let me explain.

In 1974, the Rubik's Cube was invented.  Most people think of the cube as a brain puzzle, something you play with until you get bored and bury it in the back of a closet or drawer. Mathematicians, however, are fascinated by the puzzle. Solving the cube consists of making a certain number of "moves" to rearrange the squares and the next move always depends on the current position of the squares.  Therefore, an algorithm must exist that can achieve a solved cube.  There are actually many different algorithms that can be memorized by us humans, and most of the require at least 40 moves.  Naturally, given that we are mere mortals, if God went about solving a Rubik's Cube, he would use a much more efficient algorithm than we would.  With the rise of computers that are accessible and affordable, people have been trying to discover exactly how many moves God's algorithm would take to solve a cube.


The estimates for God's Number (the maximum amount of moves God's algorithm would take) have varied throughout the years, with the first guess being 52.  Now, in July 2010, using computer power donated by Google, a group of mathematicians has sorted through all 43,252,003,274,489,856,000 positions of the Rubik's Cube and proven that God's Number is 20.  You can read more about exactly how they did it here, but don't plan on memorizing their formula...as the name suggests - there are so many possibilities, only God could memorize them all.

Monday, August 9, 2010

It's Watching You...

During yesterday's outing to Chicago, between Giordano's pizza and some urban geocaching, we made a stop by Chicago's newest art exhibit.

Yes, that's @davidpkoch lounging in front of the giant eye.
The enormous eyeball is modeled after the eye of the artist, Tony Tasset.  The whole thing is made of 24 pieces of fiberglass and was painted by Tony and a whole crew of assistants.  If you want to check it out, head over to Pritzker Park on the corner of State and Van Buren.  But you better hurry...the exhibit will only be there until October 31st.

Saturday, August 7, 2010

The Thrill of the Hunt

Last summer, my mother kept telling me all about this new craze she'd been reading about, geocaching.  The basic concept is that there are millions of containers of various sizes hidden around the world.  Treasure hunters can find the coordinates of specific "caches" on websites like geocaching.com and then enter those coordinates into their handheld GPS units and be led to the package.  Finders take a small trinket from the cache and leave a new one in it's place, and also sign the log book in the cache, so others will know they have been there.

Since the only GPS we owned at the time was for vehicles and wasn't precise enough to find specific coordinates on foot, I didn't pay much attention to the whole thing.  But now that my new phone has built in GPS, we decided to give geocaching a try.


The whole process was actually surprisingly fun.  Upon arriving at the GPS coordinates, the cache can be anywhere within a 25 foot radius, so you still have to do some searching to find it.  If you're lucky, the original planter of the cache will have left a hint for you to help narrow down the location of the "treasure".

Sound like fun?  One more thing I forgot to mention...all of this hunting must be done without drawing attention to yourself or letting others know what you're up to.  We have to make sure the Muggles don't get wind of what's going on, after all.

Friday, August 6, 2010

Room with a View

I just discovered that my new phone can take automatic panoramic pictures.  You just take the first picture and then slowly move to the side and the phone takes the next picture automatically when it's lined up right.  I've played with quite a few panorama programs and this is by far better than any other picture I've stitched together.



Of course, my bedroom isn't the most breathtaking view, but hey, we can't all have a view like this one in our backyard.

Wednesday, August 4, 2010

Free Money's Always Good, Right?

According to the Wall Street Journal, Bill Gates and Warren Buffett are pretty darn persuasive.  They've convinced over 40 people, mostly billionaires, to give half of their fortunes to charity.  The project is called the Giving Pledge and was announced by Bill and Warren about a month and a half ago.  Of course, these people aren't legally obligated in any way to give up their cash, but they've publicly said that they're going to, so I don't think they'd want the bad publicity of backing out.

You can argue all you want about the usefulness or uselessness of charitable organizations, but I think it's fair to say that giving away a few billion dollars can't be a bad thing, can it?

Tuesday, August 3, 2010

Evaluations and Java

Evaluations. You know them. We all have to deal with them at times.  Whether it's an evaluation of the college course you just finished and you're saying all the frustrated things you've wanted to scream at your professor all semester, or it's a chance for you to endlessly praise your counselor at the end of a glorious week of camp.  Personally, I always hate filling out evaluations. I can never think of what to say or how to say it. Today I got the chance to be on the other side of the evaluation.

I was handed a 8 inch high pile of filled out evaluations when I got to work this morning, with the assignment of typing up all the answers to the questions.  I'll admit, it was kind of cool to see the overall themes of the mini-essays.  Without knowing anything about the event ahead of time, after reading through the evaluations I could tell you exactly what worked and didn't work, what they should add more of and what should be left behind.  Another thing I learned? People have terrible handwriting.


I was also reminded today of how much a little programming knowledge can come in handy.  The top half of these evaluations was a group of five statements with check boxes ranging from Strongly Agree to Strongly Disagree.  Maybe I'm not as computer literate as I thought I was, but I could not for the life of me figure out an easy way to keep a tally in Excel.  Or Word.  Or even on paper, when you have so much data.  It's just too slow.  My solution?  See for yourself:



The basic idea is that you click a button and the counter for that button increases. I'm sure the reset button is self-explanatory.  Actually, this is usually one of the first programs that beginners learn to write (although they usually only include one button).  So believe it or not, the 15 minutes it took to write this in Java saved me about 5 minutes on each set of evaluations, paying for itself, time-wise, in about 3 sets (There were at least 25 sets).

Seeing as my internship will be over in less than two weeks, I emailed this program over to the lady who had given me this assignment so she'd be able to use it after I left.  I would never have guessed someone could get so excited about pressing a button to make numbers change.

Monday, August 2, 2010

The quest for an online music app

Last fall, I started using a website called Lala.  Lala.com let you upload your entire music library and then stream it from any computer with an internet connection.  Unfortunately, Apple bought Lala and announced they were shutting it down.  On May 31st, Lala users were greeted by this image:


Apple offered to give users credit for any songs they had bought with in the Lala store, but that didn't solve our problem of no longer having a way to stream our music online.  I tried using Pandora for a while, but I didn't really like it. There were audio ads, you couldn't pick exactly what song you wanted, you could only skip a few songs if you didn't like them...all in all, Pandora was just too restricting for me. It wouldn't let me do what I wanted to do.

After Lala had been shut down for a while, I read a news article about another website, grooveshark.com, that was offering former Lala users a free one month trial of Grooveshark VIP access, no strings attached.  Of course, who says no to free stuff?

I tried Grooveshark. One of the first things I noticed was that it was amazingly simple to find exactly what song you wanted and play it. You could add songs to your queue and save them as playlists...pretty much any of the same things you could do in iTunes or any other desktop music player.  Also, at any point, you can click the "Radio" button and you instantly have the equivalent of Pandora, except you have unlimited "skips" and can add specific songs at any point in the playlist.



With a VIP account, you get a bunch of other features too.  VIP users can upload their own music collection for listening on Grooveshark, the ads on the right sidebar are removed, you get the first look at new features, and you have access to Grooveshark mobile apps, which are available on every smart phone. The best part? VIP access is only $3 a month, or $30 a year.

And no, Grooveshark isn't paying me to advertise them.  I'm not getting anything out of this.  I just like sharing my discoveries with people. I'll probably be doing that a lot on here, so try and get used to it.

It's About Time

I've been avoiding this day.  I always told myself I didn't have anything to write on a blog.  That there was no point in starting one, no one would read it anyway.  But lately I've been finding that my posts to Google Buzz and Twitter are getting lengthy and it occurred to me that maybe I do have enough to say for a blog.

So here I am. I'm not promising to be exciting, controversial, risqué, dramatic or any of the other things that usually call attention to a blog, but every once in a while you might read something here that interests you...that you didn't know before.

And that's what makes it worth reading, right?