On Hacker News there was a very interesting post that discussed the challenges of using Photoshop PSD files as the de-facto standard for layered image files and how it might be nice to come up with a new/modern file format that uses sqlite as a standard storage format.
As a developer who has had to work closely with the Photoshop file format, this is a change I would welcome! Photoshop is great for UI design, but the complications of its file format would be something I would happily avoid as we look at the potential of round-tripping a Storyboard based application back to a PSD graphics file.
Storyboard shortens the feedback loop from customers back to designers on UI/HMI issues and does it not only in a simulated environment but on the actual embedded target(s) that will be used to build the final product.
Storyboard Suite’s speed of development and deployment means that discussions can focus on optimizing the UI experience rather than simply delivering content to be built into the product.
Storyboard allows this wide deployment by strongly enforcing the Model-View-Controller (MVC) pattern and using Storyboard IO as a generic event interface to drive the user interface.
Just down the hall from the Crank Software booth was the Mathworks booth where they were showing off their Matlab and Simulink tools which are great for building and modelling complex system behaviour and observing expected results. Since these results are representative of real world data, it seems that it would make an ideal input source for a Storyboard based application.
… a quick chat with one of the Mathworks developers gave me the insight I needed to quickly put together a data binding from the Simulink tool to a Storyboard application:
The key was to use a UDP data stream and then create a small UDP server that could receive the data and then forward it along to a Storyboard application using an event over Storyboard IO.
The concept of building blocks of functionality with consistent and reliable interfaces is what makes LEGO work so well and it is something that software developers are always striving to achieve with libraries and functions we develop as well. In Storyboard this manifests itself as a consistent design model with re-usable graphical elements that can be shared throughout your application design. Plug-in new image assets and the UI will automatically adjust to show the updated content in all locations where those assets were previously used.
While many UI’s talk about Model-View-Controller (MVC) patterns, Storyboard strongly enforces the decoupling of the UI from the system logic through the use of our cross platform Storyboard IO allowing UI development to proceed in a data driven manner independent of the sources providing that data. Run the UI you develop in Storyboard on your desktop, your tablet or your deeply embedded target and plug-in the data through simulation, testing frameworks or real hardware interaction … it all just works!
This Storyboard release extends our integration with mobile platforms by introducing iOS support and a tighter integration with Android Java APIs. The new timeline animation editor and recorder makes the creation of rich visual effects easier than ever before and by adding OpenGL 2.0 custom shader support we’ve opened the door to creative and engaging designs that have previously only been achievable with time consuming software development build and compile cycles.
You don’t have to look far to see Storyboard 3.0 technology already being put to use. The QNX CAR concept team, working with the pre-release versions of Storyboard 3.0 assembled a stunning HMI going from HMI concept to deployment in just 8 weeks just goes to show how powerful and enabling a good HMI framework and system abstraction layer can work together.