pwlk blog Journaling since 2007

29Jan/122

Smart Player Piano

Intro

Two years ago (Spring 2010) I was working on my Senior Design Project for the Tech Expo at Duke Energy Convention Center.  My project was titled, "Smart Player Piano".  The whole project and experience was very rewarding a lot of fun.  It wasn't until a couple days ago when I received an email from someone at the University of Cincinnati saying they saw a copy of my poster hanging up, that I realized I never really 'released' my project to the public.  So, here it is, the story of my project, Smart Player Piano.

I won't go into too many details about the project because it is all been said before and will be supplied later.  The quick and dirty of what Smart Player Piano does is that it takes an image, dots on a page, and converts them into notes like a player piano does. What makes this different is the "Smart" part.  Throwing a bunch of dots on a page wouldn't sound good, so using some basic music theory chord progression, the pixels are modified to sound better.  Some of the features of the project were:

  1. Import/Export images
  2. Import/Export midis
  3. Drawing abilities
  4. Adjust tempo
  5. Max smart adjustments intervals
To see all the details, check the end of the post for power point/design doc/poster/handout and the project available for download.

Pictures

Smart Player Piano at 2010 Tech Expo

Standing by my booth at the 2010 Tech Expo at the Duke Energy Convention Center. Ready to show the world ... or at least the engineers of Cincinnati ... Smart Player Piano

Smart Player Piano with Advisor Dr. Anca Ralescu

Standing with my advisor Dr. Anca Ralescu in front of my booth at the 2010 Tech Expo

Kids enjoying Smart Player Piano

One of the most rewarding aspects of presenting the Smart Player Piano was the reaction it received from all the kids that came to the Expo. I was honored to receive the "Young People's Choice" award out of all the projects at the expo.

Kids enjoying Smart Player Piano

The kids loved getting their pictures taken and seeing what it looked like once it was imported into Smart Player Piano. Then they could hear what their picture "sounds" like before and after it was "autofixed". More than once I had a chaperone come by saying that they were nearly to the bus to head back to school and the kids would still be talking about Smart Player Piano enough that the chaperone would come back to see what all the talk was about.

Presenting to IEEE Cincinnati

In addition to the Young People's Choice award, I was honored that Smart Player Piano was selected as "Best in Computer Science" at the Tech Expo. With this award I was invited to an IEEE Cincinnati meeting to present my project to some of the engineering professionals around Cincinnati.

Docs

Here are a few docs that I put together for Smart Player Piano

Application

Annnnnnd here's the actual project.  As with most coding projects that you haven't looked at in more than ... a few weeks, I'm a little fuzzy on how everything is laid out.  What I've done, which I think will work, is zipped up all the project files along with my demo directory that contains some fun midis and images and have a README in the root.  The README should cover how everything is organized.

Closing

And that's about it.  Hopefully you enjoy Smart Player Piano.  Feel free to leave comments below for questions/comments/concerns.  I had a lot of fun with this project and hope you all do the same.

16Dec/110

Investing in Facebook

So the title of this post might be a little misleading.  Most will think this post is about money and Facebook.  Afterall, Facebook is going public soon... but here we are talking about a different type of investment, your time and energy.

By now you have most likely have heard about the new look Facebook is taking with Timeline.  I've only been playing with it for a few minutes, but in one word I would have to describe it as: mesmerizing.  Facebook has taken your usage history and created a virtual story album.  Not just pictures, not just words, but a complete story.

I was quickly drawn to as far back as the timeline would take me, to when I joined Facebook back on September 8, 2004.  I wanted to see what my story said some 7 years ago.  Short shout outs and messages from friends that I still carry on with today as well as friends I have lost touch with spread across the timeline.  I'm telling you, this is mesmerizing.

This is also genius if you ask me.  Facebook has always been a way to not just interact and socialize with others but to really put together and see the image that you share with the world.  When you see pictures of yourself and how you evolve through days ... months ... years, one can be very introspective if not a bit narcissistic.  You can see yourself in situations in hindsight that may please you or may embarrass you.

But there is a dilemma here.  While it is a debate on its own of whether or not Facebook owns the information you post on their site (this is not the moment for that debate), there is nothing but certainty that Facebook is in complete control of the format that your information is displayed.  You realize this fact all the time when they change the format (much like the new Timeline) and you either love or hate how the site evolves.  This poses the issue of you investing your time and energy in personalizing Facebook to be your go to source for social awareness.  What if you spend all this time making your Timeline look exactly as you please only for Facebook to change the format again ... or ... go away completely.

What would our social media world do if Facebook went away tomorrow... How many photos would you have just lost?  How many "friends" would you lose contact with or never even think about again?

Each year I make a photo album book for my wife as a birthday present.  It has a few dozen pages of the highlights of the past year with a few comments here and there.  I know those aren't going away.

I really don't think that Facebook is going away any time soon.  But it sure is interesting to think about how much time we invest in a site that is, in reality, completely out of our control.  Love the new Facebook Timeline, hope it sticks around for a while ... but I don't think I'll be dedicating large numbers of hours to updating every little "about me" box.

Ps. Yes, I know you can download your Facebook profile.  But it really isn't the same now, is it?

29Nov/110

The Value of $0.99 – Frustrations from a Developer

One of the many ways Apple changed the world was by giving a single dollar, real monetary value.

The App Store opened up a whole new and exciting world for software developers to flex their digital muscles and see where the wind could carry them.  I have only recently begun my trek into the world of app development, but in these few months, my eyes have truly been opened to the monetary value of digital media.  Now I am careful to say "monetary" value, because many things can have value, but only certain things have monetary value.  And by value, I mean what someone would be willing to trade for the product or service, monetary value ... obviously, money.

The Internet brought out the pirate in all of us.  Moving songs from one computer to another ... it really didn't feel like stealing ... it was just like moving the files of a group project from a classmates computer to yours, simple.  Record labels fought it, lawsuits against individuals (sorry I don't have the references right now, I may fill them in later).  But iTunes saw the problem and countered with a solution instead of a push back.  Offer individual songs for an affordable price!  Amazing...

Years pass and the iPhone/iPod Touch/iPad come to life and the App Store is born.  Apps on sale for $9.99 and selling well.  Competition drives the price down.  Apps sell for $4.99 and sell well.  Competition drives the price down.  Apps sell for $0.99 and sell well.  No where to go but free...

An interesting thing happened.  For the price of an impulse purchase candy bar at the grocery check out counter, one could purchase an app of any sorts that would keep them entertained and fixated for hours.  But where one would not think twice about that impulse purchase that gave them pleasure for the car ride home, they would spend an hour looking for reviews and YouTube videos on whether or not this piece of appware was worth their $0.99 (+ tax).  And of course I include myself in this audience.

Why do people feel the need to be so stringent on their $0.99 app purchases while a candy bar is so much easier?  Is it for the mere fact that an app is not (well sorta) tangible?  Is it that there are too many choices on the App Store to really make an impulse purchase?  Is it the presentation of the App Store?  Is it that you are only making a $0.99 purchase while the candy bar is just a percent of a fraction of the groceries in your cart?  Should we be selling app specific gift cards at the checkout counter?

I'm no marketing genius.  I wish I were.  I wish I had the answers to these questions, but I don't.  I think the answer is probably a little bit of 'yes' to most if not all of them, though.

But from the other side, now I am a developer of apps.  I see the thousands that enjoy and endlessly praise my apps while they are free but refuse to touch them as if they were a plague when they cost $0.99.  I see the negative reviews people leave complaining that they have to pay for additional functionality in an already fully functional FREE game.  I see the faceless users belittle my hours and days of late nights and weekends by saying, not worth four quarters.  I know ... I'm whining.  But it fascinates and frustrates me to no end because I don't understand why the dollar holds such a high value in the App Store.  The consumer has every right to do all the things I have mentioned in this paragraph.  I as the app developer, work for them.

What it really comes down to is this though ... whoever can take the app store aisle of a grocery store and turn it into an impulse purchase at the register type of experience ... those will be shoes worth walking in.

7Aug/110

Paw Apps LLC

I have been hard at work for a number of months now on a new project, Paw Apps.  This is a company started by my brother, Tyler, and I to get into the App market.  Right now we are hard at work developing our first app which will hopefully be released sometime in September.

There won't be too many posts on here, my personal blog, regarding announcements for the company, we have a separate blog over on http://www.pawapps.com for that.  This is just a quick note out to let the great Internet know what I've been up to lately.  Obviously you can see that in the past year or so the regularity of posts on pwlk.net has drastically decreased.  It's ok though.  I have no plans of stopping this blog, but for the time being, most of my efforts are being spent elsewhere.

So check out http://www.pawapps.com for all the latest and greatest from Paw Apps LLC.  Look forward to seeing you there!

23Jul/112

Issues with upgrading to OS X Lion

Upgrading to OS X Lion has been an awful experience.  So many things have gone against the phrase I have always used in reference to Apple, "It just works!"

I wanted to put together a quick post of issues I have had with the update and the way the issues have been fixed in case anyone else is getting the same headaches that I've been getting.

First, I do believe it is relevant to give some details on my MacBook because it is getting up there in age ... I guess.  Things are starting to slow down.  No comparison to the days of having to reformat Windows at least once a year, but things are starting to slow down.

My MacBook Specs

13-inch Late 2007 Processor 2.2 GHz Intel Core 2 Duo Memory 2 GB 667 MHz DDR2 SDRAM Graphics Intel GMA X3100 144 MB Software Mac OS X Lion 10.7 (11A511)

 

Desktop Freezes after logging in

I downloaded Lion from the app store just fine, ran the installer  just fine, it took about an hour for the full install.  Upon reboot, I log in at the fancy new login screen and my Desktop shows just fine.  But that's it... I quickly realize the seconds on my clock are no longer ticking and I can't click on anything.  The cursor still moves around, but nothing is responsive.  Strange... I rebooted.  Same issue.  I do some searches online and come up with nothing.  It is about 11pm so calling Apple support is not an option at this point in the evening.  Finally I decide why not and reboot again.  Magic of all magic it works!  I know this isn't the fix you were hoping to hear ... but I have rebooted a few times since and I have not had the issue with the frozen Desktop since.

Installing Xcode

This really rubbed me the wrong way.  They released Xcode 4 for Snow Leopard and charge $5 for it.  Then when Lion comes out they just open it up for anyone to download for free?  What?!?!  I'm all for free, but what the heck, Apple?  Why charge $5 if you are just going to open it up for free a few months later?  Ugh...

Anyways... So I try and run Xcode as one of the first things after installing Lion and get that message about needing to update Xcode because my current version is not compatible with Lion.  Ok, fine ... where is the update?  Maybe it should have been intuitive that the new Xcode was a new app in the App Store, but since I already bought Xcode from the App Store I would have thought that it would have updated in app or at least been in the updated apps section of the App Store.  But neither was the case.  I did find it in the App Store as a brand new app and started the download.  I then kicked off the installation and got the "To continue installation please quit: iTunes".  I had seen this issue in the ratings of Xcode and wasn't too surprised when I saw it popped up.  So I went into Activity monitor and killed the iTunes Helper process.  Nothing changed.  I had left the install to work overnight so who knows how many hours it had been sitting on the quit iTunes prompt, so I decided to kill the installer and reboot.  I re-kicked the Xcode installation again (#2) and went about my business.  I made it all the way to "waiting for other installations to complete" and got stuck again...

Well, thanks to an article on TUAW, I deleted the lock file and rebooted:

First, hop into Terminal and change directories over to /private/var/db/mds/system. Then remove the mds.install.lock file (you'll need to sudo rm, so be prepared to authenticate as root). Finally, reboot your system (sudo reboot).

(via TUAW)

I thought that the install had completed and tried to launch Xcode but was greeted with this popup:

Xcode error

When will it stop?!?!?!

 

Ok, fine.  I re-kicked of the Xcode installation again (#3).  Keep in mind that this installation is not a short process... it keeps dying at the end.

This time around I have made it all the way to the Updating Files... screen and it has been sitting there the entire time I've been writing this post.  I was hoping it would complete so I could finish off this post with a happy ending, but it doesn't look like it is going to be the case.

I'm very frustrated with this entire process.  I haven't spent much time in Lion yet, but I am yet to see anything on the surface that is a real big improvement over Snow Leopard.  If anything, the computer is slower and choppier.  Maybe I'm just in a bad Apple mood right now, but I don't see why so many issues have come to light.  If it has to do with my late 2007 MacBook ... well that is a shame and rather unnacceptable.  Ok, I'll give my end rant tag </rant> and get back to work at trying to figure out what the heck is happening to my computer.

Best of luck in your upgrade to "the world's most advanced desktop operating system" ... eh

*Update: Xcode problem solved

I did a big no no in the world of problem solving.  I consciously changed more than just one variable and then repeated the test, so I really am not completely sure which was the cause, but they might even be related.

There is a pdf /Developer/About Xcode.pdf that I opened up and started reading to see if any helpful hints could be found.  It mentioned that the entire /Developer directory was created with an Xcode install.  So I decided to rename the current /Developer directory and give it another go, hopefully starting from fresh.

But I also...

I also decided to look more into the previously mentioned TUAW tip and tried it again.  I removed the lock, but this time after rebooting the OS, I checked to make sure that the lock file was still gone.  To my surprise it was not!  mds.install.lock had been retouched at a timestamp of when the computer was restarted.  I don't know exactly what mds does, and someone please correct me if I'm wrong, but I believe it deals with indexing in Spotlight.  And I did notice that spotlight was still indexing (pulsing dot in the magnifying glass or click the magnifying glass to see the status).  I decided to wait until Spotlight was done indexing before kicking off the Xcode installation once again.  I didn't have to way all too long.  When the indexing was complete I checked for the .lock and it was still there.  I did a quick remove but this time did not reboot.  I went straight into Xcode installation (#4).

Slow slow slow ... but eventually, I heard the nice tone that for some reason Apple decided to double as installation complete and iPhone message tone.  Installation complete!

What I took away from this process was that Xcode installation is finicky.  And the best way to go about it is with a clean slate.  Reboot your machine right before attempting to install.  Make sure no other applications are running while you try and install.  And if something does go wrong... try and wipe everything (sudo mv /Developer /Developer-old).  Thankfully, that seemed to work for me.  Yay for getting back to code!