Thursday, 11 February 2010

Open Source Media Framework

Open Source Media Framework (OSMF) is an open software framework for building robust, feature-rich video players and applications based on the Adobe® Flash® Platform.

Anyone have any experience working with it?

Designing with Progressive Enhancement

Designing with Progressive Enhancement is a practical guide that both explains the principles and benefits of progressive enhancement, and explores detailed examples to teach you how, where, and when to implement specific coding and scripting approaches that embody broadly accessible development practices.

I just pre-ordered the book. You should too if you do anything in design or user experience.

Wednesday, 10 February 2010

Perfection kills » Javascript quiz

“The quiz mainly focuses on knowledge of scoping, function expressions (and how they differ from function declarations), references, process of variable and function declaration, order of evaluation, and a couple more things like delete operator and object instantiation.”

I missed 3. How about you?


“Uniform masks your standard form controls with custom themed controls. It works in sync with your real form elements to ensure accessibility and compatibility.”

An excellent jQuery plugin for styling forms. It even supports theming, though not through the ThemeRoller.


Underscore.js is self described as “a utility-belt library for Javascript that provides a lot of the functional programming that you would expect in Prototype.js, but without extending any of the built-in Javascript objects.” The usefulness of this little library becomes apparent after reading though the documentation. I’ve already integrated it into a couple of projects where I needed a robust, yet lightweight core.


GrepCode is an extremely cool code searching tool for open source Java.  The most useful feature, in my opinion, is the ability to find code responsible for a specific stack trace.  While they have a few usability issues to iron out, this is definitely something worth adding to your developer toolbox.

Using Bcrypt with Spring Security

Password security is a popular topic. The most basic tenant of password security is to have no password at all. Wait, what? That’s right, no password should be stored in your database, ever. Instead, store it as a hash, along with the salt, and throw the original password away. Ask 10 different developers, and I’ll bet that MD5 would be offered as the most popular solution for this problem. Though, if you’ve explored the linked content, you’ll have undoubtedly noticed that Bcrypt is mentioned more than a few times.

“Bcrypt is a cross platform file encryption utility. Encrypted files are portable across all supported operating systems and processors. Passphrases must be between 8 and 56 characters and are hashed internally to a 448 bit key. However, all characters supplied are significant. The stronger your passphrase, the more secure your data.”

For us Java developers, there’s jBCrypt. It is an “implementation of OpenBSD’s Blowfish password hashing code” and offers a rather simple API. A quick web search yields a bit of information on using jBCrypt itself, but nothing on integrating it with the Spring Framework. Given that this is a topic of interest to me, I’ve put together a simple, yet comprehensive example web application to demonstrate an integration of jBCrypt, Spring MVC, Spring Security and Hibernate for hashing user passwords. There are three areas I’ve focused on in this example, user creation, user authentication and changing the user’s password. Continue reading

Server-side stream recording example updated

With this being my most popular blog topic, I felt the time has come for a little update. (You can catch up on the original here.) Frankly, there’s not much too it. The server-side code didn’t change much, just an update to take advantage of the built-in logging support of Red5. Both clients have been completely rewritten using ActionScript 3. (I know, it’s about time.) Continue reading

jQuery Transmit file upload plugin updated

Having finally gotten a few hours to myself, I’ve updated the jquery-transmit file upload plugin to support Flash 10. Because of the security restrictions added in the most recent revision of the flash browser plugin, the calls to trigger the file selection dialog needed to occur in the SWF itself. To achieve this, the SWF is placed on a layer above the links triggering the dialog. You should be able to successfully edit the HTML to your liking without much consequence. Though, you should be careful not to rename any of the ids or classes. The plugin relies on them to place the SWF and resize it as necessary. As with the initial release, the plugin should be considered a work in progress and is not yet suitable for a production environment. Hopefully, this fact won’t deter you from giving the plugin a try. Source and downloads are available at googlecode. As always, constructive feedback is very much appreciated.