The Blog of Maxim Porges

Archive for January, 2009

  • monome

    Ever since I discovered that I enjoyed programming as much as synthesizers, I’ve been looking for ways to combine the two.

    To this end, I was planning on buying a Chameleon several years ago, but it had two big strikes against it: it cost a fortune, and had a really low-level Motorola DSP-based programming interface that didn’t run on OS X (boo). Plus, I think they stopped making them.

    Anyway, I just came across the monome while trolling the Virus forums. The monome is still somewhat overpriced but has a variety of pretty flexible programming options, including a few scripting languages that look dead simple to pick up. Plus, there are a bunch of apps out there for the monome already, so even if I can’t be bothered to learn how to program it I can have it make noises and flash lights at me. :)

    Check out some videos of the monome in action. Most of these are using the mlr application for sample looping.

    2009.01.18 / no responses / Category: Uncategorized

  • Flex Camp Miami – March 6th, 2009

    Brian Rinaldi is organizing Flex Camp Miami, which takes place on March 6th, 2009. For a mere $30 you can get your Flex on, and enjoy Florida during the one part of the year when your face won’t melt off when you step outside.

    The event is being sponsored by both Universal Mind and Adobe, so you know it will be the hotness. I’ll keep you posted as more details arise. Since I’ll be presenting, I’ll also be posting my topic description to my blog once I have it finalized.

    Please let me know if you have any questions or suggestions and I will forward them to Brian, or you can just hit him up directly on his blog.

    2009.01.16 / no responses / Category: Uncategorized

  • Farewell, Steve Jobs

    As I’m sure you will have seen in the news today, Steve Jobs announced his decision to take a leave of absence from Apple to focus on his health, with plans to return to the company in June 2009. However, as sad as it may be for Apple fans to accept, I believe that this is the last we will see of Steve Jobs at Apple in the role we have come to know him since his return to the company in 1997.

    Steve has done an amazing job restoring the company back to its former glory in the last eleven years. Apple is back on the rise, with recent reports indicating that Macs make up 10% of the world’s computers; this is astonishing considering that they were in the low single digits before Steve’s return. Add to this the roaring success of Apple’s music business with the iPod and iTunes, and the sensation they caused with the portable computer-with-a-phone that is the iPhone, and you have one hell of a legacy for any CEO to claim proud ownership to.

    Steve narrowly escaped death several years ago during his brush with pancreatic cancer. The strain Steve contracted of this normally incurable and fatal disease turned out instead to be a rare and treatable form, but his battle with it has clearly taken a physical toll from which he may never fully recover. Many are speculating that his latest problems, while not a resurgence of the cancer, are side effects of his former condition.

    So, what will the future hold for Apple? I believe more of the same success they have had in the recent past, although perhaps with slightly less personality than they have had with Steve at the helm. Many do not realize that Tim Cook ran Apple for some time while Steve was secretly dealing with cancer, and nobody knew the difference. There’s no reason why things should be different now, especially since Apple is so much stronger now than they were during their last stint without Steve.

    Steve’s role at Apple is a visionary one in which he makes decisions about the long term direction and strategy for the company in a world of technology that is constantly changing. But Steve’s not writing code, building hardware, creating marketing pieces, or managing the daily operation of Apple’s vast network of stores. People need to realize that the team Apple has built in recent years is capable of doing all of these things independently of Steve, and doing them very well. One need only watch a video of Jonathon Ive describing one of Apple’s products to see that the passion, talent, and ability for sheer greatness at Apple is not limited to Steve Jobs alone.

    So, while Apple will certainly be different without Steve, they won’t be so different as to not be able to continue their present successful course. I can easily see Steve staying on with Apple as a member of the board, lending his insight and strategic vision to the company while Tim Cook and the rest of the executives continue to operate Apple as a media-savvy, cash-rich, and quality-conscious powerhouse.

    I can’t pretend to not be saddened by this turn of events. My life has been enriched by Apple’s products, without which I’d be forced to languish in Linux, wallow in Windows, poke at an inscrutable interface on any of the hundreds of crappy mobile devices out there, and/or deal with second-rate productivity software instead of the polished beauty of OS X and its surrounding apps. As a technology professional, my world is truly better because of what Apple has brought to the market. Having been a Mac user for the past eight years, I find myself leaning toward the qualities of Apple’s best products when making decisions about the software that my team is building at Highwinds: simplicity, immediacy, and beauty.

    But enough about Apple. Steve Jobs was one of two guys who literally changed the course of the world in the late eighties. Steve has almost singlehandedly added a strong force of yang to the technology industry’s many proponents of yin. He’s also a husband and a father, and at the present time a human being dealing with the scary proposition of health problems in the time of his life when he should instead be looking forward to a long and well-deserved retirement.

    They say that the light that burns twice as bright lasts half as long, but I sincerely hope this is not the case for Steve Jobs. I wish him both a speedy recovery and a long and happy life.

    2009.01.14 / no responses / Category: Uncategorized

  • Blu(-Ray) Completes Me

    I picked up a copy of “The Dark Knight” on Blu-Ray tonight and Jessica and I watched it on our new PS3. The quality of 1080p is really pretty stunning, especially for a movie like this that was so lovingly shot in IMAX. Anecdotally, if you decide to pick up “The Dark Knight”, be sure to get the special edition since the behind the scenes stuff is plentiful and top-notch – they have a great story in there about how they wrecked a $300,000 IMAX camera (one of only four in the world) during the filming of one of the chase scenes.

    I must say that Blu-Ray is a tremendous improvement over DVD. The interactivity of the menus for the special features really lets you feel like you are getting “in” to the movie as you dabble around behind the scenes, and having interviews in 1080p gives you clarity that makes it like you’re sitting in the room with the guys being interviewed.

    The only downside of all this extra visual quality is that I now want a Tumbler more than ever… I guess I’ll have to settle for the remote-controlled version until I make enough money to commission my own full-size model.

    2009.01.09 / no responses / Category: Uncategorized

  • Lack of Top Level Error/Exception Handling in Flash Player

    We’re getting ready to do a pretty significant re-architecture of our StrikeTracker console for its 2.0 release, and as part of the process we want to put in bullet-proof error notification for when things go bad or slip through QA. StrikeTracker is coded on top of the Flash/Flex platform, so we are limited to the capabilities in the ActionScript 3 language.

    Typically, in Java apps I have used a standard three-layer app with service, business, and data slices. Exceptions are dispatched through the usual Java mechanism, some of which can be handled at the various tiers and dealt with without making it up to the user. When things go really bad (when exceptions are either un-trapped due to programmer error or un-trappable because they are unrecoverable such as a database failure) I have used AOP interception to log the unhandled exception and notify appropriate parties.

    So, we figured that there would be something similar in the Flash Player. Turns out we were wrong. While there are some basic ways to trap errors in Flash (using try/catch) and error events (using the onError listener on the main Flex Application tag), it is still possible for an asynchronous process to throw an Error outside of a try/catch with no way to trap it. Typically in the consumer Flash Player, unhandled exceptions result in things “not working” (i.e. the app just seems to be unresponsive to the user’s demands), but with no notification to the end user of the error that just happened. If you have the Flash Debug Player, you get a modal Error dialog with the stack trace – definitely more useful, but not something that an end user is going to be able to see and report (unless they are running the Debug Player, which is rare). Obviously, neither situation is ideal, especially because an end user may get an error in the consumer player and have no way to let the developer know what broke. Likewise, the developer has no way to trap and log/communicate the error so that they can diagnose and eliminate it (or at least add a handler for it).

    There has been a bug/feature request open on Adobe’s JIRA site for better exception handling for over eighteen months, but outside of mentions that it might get handled during Flex 3 (which it obviously didn’t) there is no firm timeline stated for when this might be resolved. I could understand this being delayed if adding a global error listener would cause backward compatibility issues with existing Flash/Flex apps, but I can’t imagine how it could; apps that don’t listen to the error channel will continue to not care about the errors as they do today.

    So, if you are a Flash/Flex developer and want proper exception management in Flash, go and vote on the issue. Global exception handling is a feature in any self-respecting development platform, and the Flash player should be no exception (pun intended).

    NOTE: to vote on any issues in Adobe’s bug tracking system you will need to create an account. This only takes a minute to do, and they don’t spam you so rest assured that this is a worthwhile exercise for you as a Flash/Flex developer.

    2009.01.09 / no responses / Category: Uncategorized

  • Farewell, 2008

    Another year slips in to the ether. 2008 was a transformative year for me in so many ways.

    Jessica and I got engaged after almost six years together.

    I finally figured out what I wanted to do with my career, and took the first step to making it happen.

    I re-prioritized my work/life balance. It’s not perfect yet, but I hope the trend will continue.

    I made my scouting trip to the west coast, which was everything I hoped it would be.

    I turned 30, my best birthday yet. It was a chance to look back with family and friends and be truly humbled by everything I’ve been blessed with.

    I participated in my first election. I’m hoping the guy I voted for can set the country back on course to being the place it was when I first got here in 1993.

    I got a new MacBook Pro, a Blu-Ray player, and an Access Virus Ti. Meaningless chachkis perhaps, but I still love my gadgets.

    But best of all, for the first time in a long time, I found myself waking up happy pretty much every day of the year.

    I hope 2009 brings as much happiness, surprise, and excitement to your life as 2008 did to mine.

    2009.01.01 / no responses / Category: Uncategorized