Viewing the ‘General Programming’ Category
When digging through XML, e4x is definitely your friend but it can be tricky sometimes. I recently came across a situation where I needed to find all nodes with a certain namespaced attribute. I didn’t care what the attribute’s value was; I just needed to know which nodes had the attribute. Continue reading »
No Comments »
Rain, where I work, has released yet another super-duper app. It’s called Piano Marvel and it’s set to revolutionize how people learn how to play the piano. I’m not a piano player myself, but I do remember taking piano lessons as a kid. I hated it. It was monotonous, inconvenient, and felt like a chore. I wasn’t intrigued and I don’t believe I was the only kid that felt this way.
A while back, Guitar Hero hit the gaming industry by storm and kids flocked to learning the guitar. Sure, it wasn’t a real guitar, but it was still an instrument of sorts and kids were still learning hand-eye-ear coordination, rhythm, and other music essentials. The game was a huge success, bringing in over $1 billion in sales in the first 26 months and set an industry record.
Why such a difference in my experience learning how to play the piano years ago and kids learning the pseudo-guitar with Guitar Hero? Guitar Hero provides objectivity, benchmarking, competition, and addiction. You can play with your friends in a fun atmosphere. Piano Marvel takes these concepts and applies them to learning the piano. Students play along to accompaniment, see exactly which notes they hit and when they hit them, and earn trophies as they complete increasingly difficult exercises. They can practice whenever they choose and can even battle it out with their piano-playing comrades. Continue reading »
9 Comments »
The company I work at, Rain, has officially entered the iPhone development arena. This week we released an application for Kelly Clarkson (i.e., Sony BMG) called Kelly Clarkson: Open Mic. While I didn’t personally work on this application, I am proud of my co-workers and their serious skills at taking the app from scratch to the big show. Continue reading »
No Comments »
Businesses win customers when they deliver what customers want. Customers get what they want when they can customize products to their own preferences. At Rain, where I work, we recognize the profit potential that clients can achieve with this concept and have created many applications allowing users to design their own products. How do we do it? Let’s talk SVG.
Suppose we create a simple product designer containing a single rectangle. The user can rotate, scale, position, and color the rectangle. The rectangle will then be printed in spectacular fashion on the customer’s very own poster. So, Jim hops into the application and moves the rectangle to the center of the poster, doubles its size, colors it blue, then rotates it 45 degrees. He then saves his design.
How is Jim’s design saved? That is, how is Jim’s design described in such a way that (1) he can later re-open it and continue modifying his rectangle and (2) a printing shop can print his poster at virtually any size without degrading its quality? Continue reading »
No Comments »
As you might know, designers can come up with some pretty funky ideas that don’t always match up with the default functionality of the framework you’re using. The pro is that your app turns out fresh and unique. The bad is that you’re the one that has to make it work. Of course, that also might be why you have a job.
Recently I received a comp from a designer that looked more or less like this:
Continue reading »
No Comments »
For those who don’t know, Nimbus is a Flex MVC framework (or micro-architecture for the technically-inclined). Sponsored by Rain, we develop it primarily for use on our applications but make it available for public use and encourage the community to contribute.
Nimbus pulls core concepts from Cairngorm but is meant to cut out a lot of the plumbing developers groan about when they hear “Cairngorm.” It’s light, but it’s not fluffy. Baked in are those rare and tasty flavor morsels you thought only existed in those Funfetti cupcakes your grandmother bakes with love on your birthday. Continue reading »
2 Comments »
While I learned a fair share at Adobe MAX 2008, I’d like to focus this post on meta-learnings. What are meta-learnings? I’m not sure yet, but here we go:
- Gucci is to Hollywood as writing books is to nerds. I don’t remember the number of times I heard someone flaunting his/her authorship on a book, but I’m quite positive it surpassed the fingers on one hand. Writing books is the new black when it comes to tech.
- Adobe is very in-tune with their customers. One of their general sessions was focused on presenting how Adobe is addressing specific customer problems. Key corporate leaders presented in real style and with what seemed to be honest sincerity. Being that I’ve seen the problems firsthand, I can honestly say they seem to know what their customers need and how to get there. At one presentation, a member of the audience asked something related to accessing the screen dimensions of a cell phone an AIR application is running on. I then overheard one of Adobe’s team members on the back row ask another team member, “Do you know if we do that?” The other one said, “I don’t know, but let’s take a look at it.” How many times can you ask a question about a product and get the immediate attention of the development team behind it? Continue reading »
No Comments »
If you’ve read my article on Action Message Format (AMF) you’ll already know that AMF is a super-duper way to transfer data between a Flex/Flash/AIR application and its server-side counterpart. Essentially when the client application makes a call to a service, the server can return a Java (or PHP, Python, .NET) object and when it gets back to the Flex application, wallah, its converted into an identical object in ActionScript. Similarly, if the client application sends an ActionScript object to the server during a service call, it arrives as an identical Java object.
While that’s impressive, when it comes to implementation in a medium-to-high complexity system there are questions that still need to be answered. In this article, I’d like to address where to translate custom AMF classes.
Continue reading »
9 Comments »
Recently I implemented Jonathan Schemoul’s SmoothGallery and ran into a few issues. I’m certain there’s at least one other person out there searching desparately for answers, so here they are Continue reading »
4 Comments »