Archive for the ‘Adobe’ tag

Go for JavaFX. HTML5 is not a panacea… yetFebruary 17th, 2012

blue-infinity is not just keeping up with the latest trends and technologies: It’s at the forefront of technological knowledge. We focus on what will bring added value to our customers.

Jan Stenvall, a blue-infinity Java consultant, has written a White Paper covering the subject of JavaFX. The reason for the White Paper is to keep colleagues and customers abreast of these trends and technologies to bring clarity and guidance for future investments and decisions.

 

This post picks up the thread from previous b-i blog posts about Rich Internet Application frameworks. And as they stated, it is far too early to declare the death of Flash and Silverlight. These two products are still ruling the market of rich UI frameworks. They are mature and have a broad market penetration. But Flash for mobile has reached its end-of-life and the future for Silverlight is uncertain, according to a “Building Windows 8″ blog that says that Internet Explorer 10 will be plugin-free.

However, the companies backing Flex and Silverlight are reviewing their business plans and are turning, slowly but surely, their attention towards HTML5. In parallel, interest for Flex and Silverlight is declining; the trend is clearly visible on Google Insight for Search (Google 2012).

Figure showing relative interest levels of Flex, Silverlight and JavaFX

Relative interest levels of Flex (red), Silverlight (yellow) and JavaFX (blue). This diagram was computed with Google Insights for Search.

HTML 5 is still in its infancy, and still will be in the near future. This technology is certainly not a complete replacement for Flash or Silverlight. For example, accessing the native platform and device capabilities is still limited in HTML5.

These frameworks, including HTML5, may be valid options under many circumstances, but will not answer the call for more sophisticated, complex and richer web experiences.

This gap in the market paves the way for JavaFX which has been updated to face the modern enterprise challenges. With the strong backing from Oracle, JavaFX is a serious contender in the UI framework arena. Since it is built using Java, in concert with and for the Java community, it means that huge investments and the amassed Java knowledge can be reused. This minimizes investments and brings a faster return on investment.

According to the TIOBE Programming Community Index (TIOBE 2012), Java is still the number one rated programming language. Java has a long track record and has been proven in the enterprise environment. This, along with a strong Java developer community, will empower
the adoption of JavaFX.

A feature comparison with more mature frameworks like Flex (Flash) and Silverlight, shows that JavaFX is still a bit behind. But Oracle pushes JavaFX onto the market with the motto that Java is everywhere and JavaFX will be piggy-backing.

The unique selling point is the ubiquity of Java: It leans on the enterprise-proven Java language. And in that sense, the future for JavaFX is looking rather good.

Oracle has issued a private release of JavaFX Scene Builder and it will be followed by a public release anticipated for early 2012. It is currently available to preselected partners for beta evaluation. The JavaFX Scene Builder is written with JavaFX 2.0 APIs. Oracle is eating its own dog food.

The JavaFX Scene Builder will have these features:

  • Simple drag and drop positioning of GUI elements
  • Graphical FXML editor
  • Strong  mapping to JavaFX APIs
  • Set and preview JavaFX properties and effects
  • CSS setting and previewing
  • Fully written with JavaFX version 2.0 APIs!

The JavaFX community is gaining momentum and there are several third party frameworks and libraries. The following section shows a selection of community-provided frameworks:

JFX Flow (http://www.zenjava.com/jfx-flow) is a free, open source framework for developing rich, interactive and user friendly web-style GUIs for desktops using JavaFX (2.0+). JFX Flow combines the powerful feature set of Java FX (styling, animations, FXML, etc.) with a simple ‘web flow’ style framework.

MigLayoutFX2 (http://www.miglayout.com, formerly called MigPane) is a wrapper for MigLayout, one of the most powerful layout managers for Swing.

DataFX (http://www.javafxdata.org) is a project that aims to make the process of using JavaFX ListView, TableView, and TreeView controls easier, more functional, and more powerful. It provides various data source adapters to ensure convenience around populating JavaFX
controls.

RedFX (http://www.redfx.org) provides functionality that allows JavaFX applications to share data with each other and with server applications without the need of writing lots of specific boiler plate code.

Read more about JavaFX on http://fxexperience.com. “Tour de Flex” JavaFX equivalent: JavaFX Ensemble: http://download.oracle.com/otndocs/products/javafx/2.0.2/samples/Ensemble/index.html

Love is in the AIR 3, and Flash Player 11September 20th, 2011

Last week Adobe developers pushed out  release candidate versions of the new AIR SDK and Flash Player 11. 
These two major developments contain an unsurprisingly exhaustive list of new enhanced features and performance improvements, across mobile, desktop and TV; but here I’ll focus on what I consider to be the most exciting developments.

One of the key features of AIR 3 is the Native Extensions (for mobile), which now allows developers to extend runtime with ActionScript libraries and native code, taking advantage of the built-in features of each platform and device specific capabilities. Whilst it’s a big step in terms of the previous limitations, one code won’t fit them all, and the native portions of an extension are written with the corresponding development tool.”

The mobile part of the SDK also includes the Stage Video Hardware Acceleration, which improves the high definition video playback experience - something which I thought was pretty poor on iOS with AIR2.7. Security has also been improved, with Encrypted Local Storage now available when storing sensitive data on the phone. In regards to iOS support, Background Audio Playback has been added, and we also have at last the Front-facing Camera Support on Android!

Adobe didn’t forget about desktops and T.V., with Stage 3D offering a brand new architecture for 2D/3D accelerated graphics rendering – this exciting new feature is also a part of the Flash Player 11 release note.

Others key benefits of the 11th version of Flash Player are the Native 64-bit support (Windows, Mac & Linux), a new JPEG-XR compression format and support for the efficient H.264 video standard.

The release notes containing the full list of new features can be viewed here

If you would like to give AIR3 a try, it can be downloaded from Adobe Labs, whereas Flash Player 11 can be found here.

Adobe + HTML5 = EdgeSeptember 1st, 2011

Programming without code? Well…

Five months after releasing Wallaby, an experimental tool designed to convert Flash animations to HTML5, Adobe has once again established it’s position as a major player in Web technologies with Edge.

Adobe Edge allows you to create rich animation directly in HTML5 (using CSS and Javascript) without a line of code.  

It reminds me of Flash in the late 90′s, but can be run on mobile devices which do not currently support Adobe’s Flash player.
 

Basically it’s pretty much the same; creating a new project will open a blank “stage” in which you can import image files (JPG, GIF, PNG or SVG) and add basic shapes and texts. The properties of each type of asset can be modified (transparency, size, position, colour etc.) and animated using “keyframes” within the timeline. The animation preview is rendered using Webkit, and Adobe claim the animations have been tested on Android, iOS, and other Webkit-based browers along with Firefox, Chrome and Internet Explorer 9. 

Publishing your animation will result in a bundle of files: HTML, CSS and Javascript; and it appears that it can be easily integrated into an existing HTML file without change. Its currently a preview version and is far from being perfect, but what we are seeing at will release another preview or (fingers-crossed!) a final release.

With the technology only in the preview stage, industry voices are expressing mixed opinions about Edge. According to netmagazine.com, there are concerns regarding the absence of SVG and canvas, which many would expect from a HMTL5 tool. Adobe have responded by reassuring developers that this is by no means a complete product, and that Edge will be evolving rapidly. We will have to wait and see what happens; in the meantime, this discussion can be followed over at the Edge forum.

Adobe offers an overview of Edge in the video they released in late June (below), however you can now also download the preview version from Adobe Labs and give it a try – let us know your thoughts!

 

 

To Infinity and Flash Player 10.3May 2nd, 2011

Whilst currently working on their next major release, Adobe Flash Player 11 (which will include the next generation of “Molehill” GPU-accelerated 3D APIs), Adobe Labs has made the first Release Candidate of the new version of Flash Player available for Windows, Mac and Linux (and mobile devices in the near future).
The main goal of the previous version (10.2) was video improvement and hardware acceleration, so it seems logical that Adobe has focused on audio - and by extension, video-conferencing  - in this latest version, concentrating on areas in which HTML5 cannot fulfil.

This update features enhanced user privacy protection and several Audio and Control Panel improvements:

  • Control Panel: in previous versions the panel was a remote SWF hosted by macromedia.com. Now, it is native, and can be accessed directly from the system preferences or the control panel.
  • Privacy Control: thanks to better integration with browsers, users will easily be able to clear the local flash storage. (Firefox 4, Internet Explorer 8+ and future versions of Safari and Chrome)
  • Microphone Enhanced Options: to provide a better online experience (in-game voice chat, conferencing, telephony etc.), Adobe has added several new functions to the Microphone API – noise suppression, automatic gain control and voice activity detection.
  • Video Analytics: 10.3 makes the implementation of Adobe SiteCatalyst easier. Providing media measurement for Flash, it allows companies to obtain real-time, aggregated reporting of how their video content is distributed, what the audience reach is, and how much video is played; with two lines of code.

You can download Flash Player 10.3 RC from Adobe Labs website if you feel like testing it before the official release.


Adobe CS5 Master Tour 2010 in HamburgOctober 18th, 2010

Recently, I had the chance to attend the Adobe CS5 Master Tour 2010 in Hamburg. Jason Levine, Greg Rewis and Terry White led a very entertaining presentation and gave lively demos. Playing the part of a fictitous agency, they offered a day which focused on multimedia and complete design processes, from conceptual design (creative web design, print and video) to output through all media channels and devices. What they also mentioned, is that the designers and developers in Hamburg were part of the new Adobe Creative Suite 5.

Adobe Photoshop CS5

With the new release, Photoshop has improved the very cool Content-Aware-Fill tool, which enables you to easily remove objects from an image, by filling the space with the surrounding background - it even matches light, tone and objects.

Adobe Indesign CS5

From its roots as a piece of complex print software, this layout package has evolved into an easy to use, rich interactive document tool. Without any knowledge of how to develop a Flash page, the designer is now able to create interactivity, motion, sound, and video to be added to documents and presentations. With the ability to export to a Flash file, it can also be used to produce files for use in Flash presentations. With digital magazines become increasingly popular since the release of the iPad – these improvements have made Indesign incomparable.

Adobe Illustrator CS5
 
Illustrator has been the designer’s choice in vector based layout software for many years. Each update offers new features which make this powerful and complex piece of design software even better. The latest release boasts a new 3D tool, allowing 3D objects to be created with ease.

Adobe Flash CS5
The most impressive development with this latest version of Flash is the ability to create iPhone apps. As most of us know, Steve Jobs is not the biggest fan of Flash, but with this new release, it is possible to create an application ready for export to multimedia devices including the iPhone. This is great news for many developers, who may not be comfortable with the very complex iPhone development software Objective C. Thanks to Flash 5, we can look forward to many more creative and cutting edge apps for the iPhone in the future.

Flash, Flex & AccessibilityMay 28th, 2010

On the contrary to what you might think, Flash and Flex can be fully accessible.
Since Version 6.0 of Flash Player in 2006, Macromedia has thought about accessibility by implementing a screen reader that is compatible with Microsoft Active Accessibility to support playbacks of flash websites.

In 2009, Adobe released version 9.0, the first player to allow rich media to be accessible to people with disabilities. In doing so, they tried to perfect their support for people with any disability (visually impaired, mobility impaired, hearing impaired etc.) and provided numerous accessibility specific components and a guide of best practice.

In the past year, the Adobe team has worked hard with Freedom Scientific in order to make Flex fully compatible with their famous reading software, JAWS. They have also worked with The Paciello Group and SSB BART Group (two consulting companies specializing on web accessibility) to ensure that the new Flex 4 will provide accessible standard controls. Today, the new Flash Builder contains a large selection of accessible components to provide support for users with disabilities.

Making Flash and Flex accessible has not been about a matter of technology, but of wise preliminary planning. Accessibility needs to be a developer’s concern during the early stages of a project, and should be focused on throughout the whole development process rather than postponing it until the end. If you’re interested in finding out more about Adobe and Accessibility, their blog follows their efforts to making rich media more accessible to all.
http://blogs.adobe.com/accessibility/

Flash is dead. Long live Flash!May 20th, 2010

Adobe Flash has been a common target of criticism  for about 10 years now. When it was DHTML’s time, we heard “Flash is dead!”. Then came Ajax, again amid cries of “Flash is dead!”. Now we have HTML5 and guess what? “Flash is dead!”.

So why do some  people have such a pessimistic views on Flash when the technology is very much alive?

In my opinion, it’s always interesting to look at an argument from both sides. Critics argue that

“Flash is a commercial product, it’s not a standard”.

Ok. Right. So what? The “standard” idea is at best optimistic, at worst completely hypocritical. Since the creation of the www, every company does freestyle with W3C specifications. I have never, ever, ever seen a web project without compatibility problems between IE, Mozilla etc. If we all followed standards as they were written, we can forget about videos and motion design and say bye bye to YouTube,  small online games  and the most visually exciting websites this last decade. I didn’t go into this business because I like data, I’ve gone into this business because I love to share and live nice moments.

“You need a plugin to see flash content”.

Right. You need a plugin for Java, you need a plugin for pdf, you need a plugin for SVG, you need a plugin for Quicktime and for everything but HTML and Javascript. Can you do the same things with HTML and Javascript? No. That’s why you need a plugin that takes all of 20 seconds to install, what a pain…

“Flash is not accessible”.

Since 2003, Adobe has put a lot of effort into improving accessibility and they’ve pretty much succeeded. My preferred answer to this argument is: “Ok, HTML development can provide accessibility but when is the last time you cared about that in your projects?” Most of the time: never. It’s not a technical problem, it’s a people problem. You wanna make your web projects accessible? So just do it! Whatever your technology is, it’s just not a major concern in 80% of cases, let’s face it. Flash can do the job as well as any other technology now, especially for video accessibility.

Aside from these three major arguments, it’d take hours for me to write down all the things I’ve heard or read on this subject over the years. If you want to hear more, check with your favorite search engine, you’ll have fun, it’s an endless story…

Before we go any further, have a quick look at what Steve thinks of Flash here : http://www.apple.com/hotnews/thoughts-on-flash/

So now, since the success of the iPhone and Steve Jobs’ very audible attacks on Flash, the critics are out yet again, hailing the end of Flash technology. I’ll admit that I’m not as smart as Steve, but I will try to answer his comments, point by point.

Read the rest of this entry »

Test-Driven Development with Flash BuilderNovember 1st, 2009

At the Adobe MAX 2009, it was interesting to improve my knowledge in the Test-Driven Development (TDD) and see the new features of Flash Builder 4 in action.

The Unit Test Agents of Flash Builder 4 are simplifying most of the work for you. They can be extended to higher levels just like the old FlexUnit would do, but on top everything now is included in the SDK, well integrated and well documented. TDD is very important for us when working on major or critical applications, since it  allows us to reduce errors and bugs. Even though you might increase  development time in the beginning by finding errors, incomplete or even missing functionalities, you will  end up with less problems to solve gain the time that would be spent debugging the app.

TDD is a great way to deliver with agility an almost bug-free solution in this very competitive business environment.

Flex UI testing with RanorexOctober 22nd, 2009

Adobe Flex technology is getting more and more popular, and  we have started to build even quite complicated applications using Flex. However, the UI behaviour in Flex  is generally more complex than in HTML/JS/CSS and we quickly realized that we needed a testing tool which could record and replay user actions sequences to help us detect UI issues.

Looking around for testing tools, we came across some open source frameworks  such as FlexMonkey and SeleniumFlex. We also tested the following commercial tools :

  • HP QTP
  • IBM Rational Functional Tester
  • Borland SilkTest
  • RIATest
  • TestComplete

Unfortunately, most of the time, we were quite disappointed with those products because of poor documentation and insufficient user actions record/replay support:  During  one of our tests, we discovered that certain user actions, such as contextual menu selection or drap & drop actions, were not correctly detected or, even worse, were not working anymore.

One of the issues with these tools is probably that they use common techniques and/or underlying frameworks to automate Flex applications, such as External Interface, Microsoft Active Accessibility or Flex Automation … moreover, you should note that using Flex Automation SWCs files requires a Flex Builder license.

Enter Ranorex (http://www.ranorex.com), which, since its lastest version, can also automate Flex applications. Ranorex provides its own automation framework and therefore does not rely on Flex Automation.

We were able to quickly use it to record everything from from simple to complex testcases,  fine-tune and run them. Components are identified by an Xpath like dialect (RanorexXpath), which is automatically written for you when recording or when using the Ranorex Spy tool : this makes writing test script a lot easier. There are also interesting features such as imaging comparison, user friendly test reports or test script debugging and much more.

Scripts tests are actually .Net executables writtent in C# or VB.Net and Ranorex Studio IDE is based on SharpDevelop, a open source .Net IDE . It means using this tool requires some basic knowledge of .Net, which can discourage some people. On the other side, writing script tests on a .Net architecture makes it  possible to use specific .Net features or 3rd party libraries to integrate with NUnit or Microsoft Products like Visual Studio or Excel.

MAX 2009: What’s new in the Adobe World ?October 8th, 2009

max09MAX 2009 started with THE announcement : if Apple doesn’t allow the Flash Player to be on the iPhone then… it’s the Flash Player who will go for it.

With Flash Player 10.1,  announced to be released in the first half of 2010, Adobe will give a new compiling option in the Flash professional  interface : compile for iPhone! The trick is to transform the Flash content into a compliant iPhone application. Cleaver…

Just forget those painfull days searching for iPhone developers or spending budget to create a web version AND an iPhone version –  now you can have both in an easy way. And the good news isn’t finished yet… the same Flash Player 10.1 will be able to deal with multi-touch capabilities, be it  for your iPhone or all your others multi-touch devices. If we also add P2P support, then it seems we’ve got some great solutions in our hands to offer innovative and highly user-friendly products.

Multi-touch features

There are several ways to build multi-touch devices. More and more companies like HP are releasing multi-touch products and it’s clearly a rising technology since 2007, with the release of the iPhone and the public annoucement of Microsoft Surface. So, we’ve got more and more multiple devices, all the brand new OSs (like Windows Seven) will be natively multi-touch – but what about the APIs to develop for these devices ?

Read the rest of this entry »

Adobe LiveCycle: a new way of model-driven developmentOctober 7th, 2009

Model-driven development is a new feature of LiveCycle Data Services which allows us to build and maintain data-driven Flex applications with an unprecedented level of productivity and flexibility.

At Adobe MAX 2009  in Los Angeles, it was amazing to see how easy it now is to create and keep your application in sync.

Simply by dragging and dropping tables directly from the new RSS Data Explorer you attach data to grids and generate forms automatically. As easy as 1 2 3 ;) I’m looking forward to get my hands on it. The downside is that LiveCycle is not free.

More about this to come.