Canadian Cybertech assists with Clean Technology adoption ranging from software systems architecture, system design and advancement of user experiences/security. We have over 25 years of experience helping companies gather the full and auditable requirements for IT projects to ensure success.
Monday, May 24, 2010
Video Tutorial on LiveCycle Data Services Model Driven Development
Enjoy.
Friday, May 21, 2010
Flash Player 10.1 on Google TV
Read the rest here
Video:
Thursday, May 20, 2010
AIR 2 for Android Public Beta!
By joining this Public Prerelease program, you will have access to a beta version of the AIR SDK with support for Android. Before signing up for this program, there are currently limitations that you should be aware of:
- In this early stage of development, you should be comfortable with using command line tools.
- Flash Professional CS5 now has a new extension that allows developers to publish directly to Android-powered devices. The extension adds a new AIR for Android publish setting that works in the shipping and 30-trial versions of Flash Professional CS5.
- The Flex 4 framework has not yet been optimized for mobile devices; for this prerelease, we recommend building applications using ActionScript only. We're currently working on creating a highly productive, cross-platform solution for mobile development using Flash Builder and Flex, which we expect to be available in public preview by the end of this year.
- You will be able to build and test AIR applications on Android devices, but you will not be able to deploy on the Android Market or share them with end users
- You will be subject to terms of an NDA which allows you to display your application publicly, but you will not be permitted to disclose anything outside of Licensee’s own personal development experiences of a beta Android application(s) using this beta AIR SDK.
If you are interested in joining our Prerelease program, just go here:
http://labs.adobe.com/technologies/air2/android/
I'm going there now!
Wednesday, May 19, 2010
Some more Adobe HTML5 love!
In parallel, Adobe is now offering a new Dreamweaver CS5 HTML5 Extension. This pack brings enhanced capabilities for HTML5 and CSS3 to web designers and developers using Dreamweaver CS5. The update and more information is now available on Adobe at http://bit.ly/DWHTML5.
HTML5 is going to be huge for everyone!
Saturday, May 15, 2010
Seaport Cafe, NYC - a place that really sucks
This place has the worst food you can imagine and a fixed gratuity even though my wife and I waited over 30 minutes to be given menus and another 30 minutes to get our food. But hey - why hurry when the tip is already built into the bill? When the food arrived it was cold and stale. The tomatoes were white (unripe), lettuce wasn't washed and the buns old and frightful. I wish I had check out the Google reviews first as it seems everyone else agrees this is the worst restaurant ever - http://maps.google.com/maps?oe=utf-8&rls=org.mozilla:en-US:official&client=firefox-a&um=1&ie=UTF-8&q=seaport+cafe+new+york&fb=1&gl=us&hq=seaport+cafe&hnear=new+york&cid=0,0,12350209958079735554&ei=HuPuS4yhLormswP6gd28Dw&sa=X&oi=local_result&ct=image&resnum=1&ved=0CBMQnwIwAA
The worst part is the complete lack of understanding of the process of waste. Everything came in plastic containers. Here is a photo:

The plates = all plastic, all condiments individually wrapped or in more plastic
Cutlery = all plastic, wrapped in more plastic
Orange juice = served in plastic, plastic lid, straw and wrapper on the straw
The servers are indicative of a society where they are only the second generation in their bloodline to walk upright, some of them probably still have relative who live in caves and trees.
The list goes on an on. Shame on you Seaport Cafe!!!
YOU HAVE BEEN WARNED! STAY AWAY!
Monday, May 03, 2010
Technoracle’s Top-10 reasons for using Flash Builder 4 for Flex 3 Projects.

The top ten reasons are presented in random order (I’m a pretty random guy). Also note that this article does not get in to the compelling reasons why someone would want to use Flex 4 instead of Flex 3. The reality is that many of the developers I have spoken to work on large scale, long term enterprise Flex projects and rewriting them in Flex 4 is not something up for negotiation. If you are one of those, this article caters to you. I could write another ten pages on the beauty of Flex 4 and the new Spark component architecture but I am a lazy Adobe employee and this is probably the only blog post I will write this week. Here is my list.
1. Enhancements to ASDoc integration. By far, my most favorite feature of Flash Builder 4 is the tighter integration with the ASDocs and the enhanced information available during the development process. Any time you hover the cursor over a reference to a component, ASDoc information is available as both a popup menu (can be disabled) or via the ASDocs tab.

This is so powerful for developers for a number of reasons. One is that you instantly have access to the information about that component/class without having to migrate to another screen or window. This includes full inheritance and a plain text description of what it does (brief version). The second is that there are embedded hyperlinks to the documentation of related classes so you can get a feel for whether or not you are using the right component or class. The new addition of information about which language version of the Flex SDK the functionality appeared in as well as which Flash Player and AIR runtimes is also very useful.
2. The ability to use multiple SDKs. As mentioned above, Flash Builder 4 lets you start new projects in Flex 4 but also finish up existing projects in Flex 3 with the aide of all the enhanced developer tooling. Even if you’re just going to do Flex 3 for the short term future, this is the IDE you want to be on.
3. Pair code highlighting. Whenever you hover over a component declaration or named object, Flash Builder highlights all instances of it. This even works across both MXML and AS as shown below.

This one feature alone has saved my sorry developer behind so many times when I’ve made typos.
4. The Network Monitor. This is another one of my favorites and, if you will indulge me, a totally kickass addition to the IDE. As an SOA guy, I spend a lot of my coding time working on remote calls to services. The Flex Builder 3 IDE hid most of the details from the developer making it difficult to debug an application when something went wrong. The Network Monitor gives you the raw messages in both a logical and raw data view. You can easily spot malformed headers, get direct access to SOAP fault messages, and see HTTP, AMF, and raw text results in real time. Below is a typical HTTP request.

And here is the accompanying response.

This tool makes it so easy to debug both simple and complex message exchanges in a variety of protocols.
5. Enhanced Data Centric Development features. My record for setting up a new project, using the Web Service wizard to inspect a WSDL instance, generate the stub code, generate a form for the service call, optimize it, save it, compile and run it is 26 seconds! Do I need to say more? Not really but I will. The Flash Builder team also answered the biggest developer request which was access to the generated code to inspect and modify. For example, here is the generated code for the service call above. Note that the parameters for all the details of the call are clearly spelled out in plain ActionScript for you to inspect.

But wait! That is not all you get. This code is from the super-class. If you want to modify this, there is a sub-class stubbed out with the starter code, which allows you to override permissible operations or functions without messing up the generated code! IMO this is a very cool feature.

6. Fix Code Indentation. OK – this blows the SAP “pretty printer” away. If you are like me, code is art. I see beauty in well written and properly indented code. If you are fine with code that is indented like a drunken lemur had access to a random number generator that controlled lead in spaces on each character, you might not use this feature. If you want to create code that can be displayed in the Louvre, check this feature out. Here is the art-less heathen coding style that multiple quick fixes can create just before the “Correct Indentation” is used.

and here is the work of art that results:

Beauty is in the eye of the developer (since it all gets compiled into a SWF anyways).
7. Fiber Plugin. The Fiber (a code name for a data model driven methodology for development) is one of the coolest client and server-side technologies ever made. When you use the Data Model plugin with Flash Builder 4 and a supported application server like LiveCycle Data Services 3.1 running on JBoss, there is simply nothing better for developing a client with full CRUD capabilities with the Flash Builder 4 IDE. This one feature alone should be the holy grail for many J2EE developers looking to cap a great enterprise application with an awesome GUI written in Flex. Flash Builder 4 gives the developer a “view” into the servers’ data capabilities via HSQLDB running on port 9002 (default).

What is awesome is that these tables can be simply dragged directly into an existing project, which then creates service calls for all major CRUD operations. Generating a graphical user interface is as easy as dragging and dropping a service call onto a datagrid or right-clicking and selecting “Generate Form”. Rather than repeat everything in this blog post, I would direct you to the tutorial posted at
8. Easier FlexPMD Integration. If you are a Flex Developer and have not tried FlexPMD yet, do yourself a huge favor and try it out. FlexPMD is an open source tool that helps to improve code quality by auditing any AS3/Flex source directory and detecting common bad practices, such as:
* Unused code (functions, variables, constants, etc.)
* Inefficient code (misuse of dynamic filters, heavy constructors, etc.)
* Over-complex code (nested loops, too many conditionals, etc.)
* Over-long code (classes, methods, etc.)
* Incorrect use of the Flex component lifecycle (commit Properties, etc.)
Flex PMD can be easily installed and run on any Flex project to find out how well ( or not ) your coding practices align with industry conventions. Of course my own code generates very few exceptions (if you believe the last sentence I have a bridge to sell you).

9. Automatic Event Handler Generation. One of the top things I get errors with is catching an event and passing an event object to the event handler. Flash Builder 4 has a very cool feature whereby in the code complete, the IDE offers to create an event handler for you automatically.

This now makes me also want a new feature in the future. I would love to have the ability to have this generate the click handler as an ActionScript class inside of one of my packages in my project.
10. Automatic Getter/Setter code generation. This is a feature I haven’t personally used but am looking forward to trying on larger projects. When following enterprise Flex coding practices and conventions related to OO methodologies, developers often find themselves performing the same basic patterns over and over. By automating some of these patterns, developers can free their time from the more mundane programming tasks. When you create a variable in Flash Builder 4, you can right click and select “generate getter/setter” and Flash Builder will build the code for you. Below is the result from such an operation.

Thursday, April 29, 2010
Flash Player Gala preview release!
From the release:
"Gala allows developers to preview Flash Player with hardware acceleration of H.264 video on supported Mac computers equipped with the following GPUs: NVIDIA GeForce 9400M, GeForce 320M or GeForce GT 330M. The hardware acceleration functionality in the Gala preview release of Flash Player is expected to be included in an update following the release of Flash Player 10.1."
Read more or sign up here.
Friday, April 23, 2010
Tutorial: Dynamically Changing PDF form labels
How to add a 2D bar code to your LiveCycle Forms
Thursday, April 22, 2010
Using LiveCycle ES2 on the Cloud
1. Download and install the LiveCycle ES2 trial. You will need the libraries in the SDK folder to complete this exercise - https://www.adobe.com/products/eula/livecycle/es/trial/
2. Get access to a cloud account via the Adobe Enterprise Developer Program - http://www.adobe.com/devnet/aedp/dev_exp/.
Here is the video tutorial:
LiveCycle Services Discovery Plug-in for Flash Builder 4 is another component you may wish to download. Tutorials on using this will be forthcoming shortly. With this plug-in you can quickly build Flex and AIR applications that invoke a LiveCycle service through remoting endpoints. You must have an installation of Flash Builder 4 before installing the Modeler.
Some great LiveCycle ES2 links
1- Adobe TV: Introduction to LCES2: http://tv.adobe.com/watch/getting-to-know-livecycle-es2/adobe-livecycle-es2-introduction-for-developers/
2- LCES Overview: http://help.adobe.com/en_US/livecycle/9.0/overview.pdf
3- Preparing to Install LCES2: http://help.adobe.com/en_US/livecycle/9.0/prepareinstallsingle.pdf
4- Tutorial on installing the LCES2 Turnkey Solution http://help.adobe.com/en_US/livecycle/9.0/tutorial_turnkey.pdf
5- Installing your LC development environment: http://help.adobe.com/en_US/livecycle/9.0/install_dev_enviro.pdf
6- Creating your first LC application: http://help.adobe.com/en_US/livecycle/9.0/createfirstapp.pdf
7- LCES2 full documentation set: http://help.adobe.com/en_US/livecycle/9.0/lc_doclist.html
Wednesday, April 21, 2010
Flash on Mobile: An exciting future!
The Adobe AIR team has already posted some pre-release snapshots of AIR running on Google Android devices here - http://www.adobe.com/devnet/devices/demos/
If you are interested in developing AIR and Flash Applications for the Android operating system, there is a pre-sign up you can access here:
As OSP moves forward, expect to see more news about Flash over multiple screens.
Flash and Standards:
Some people have asked in the past that the Flash file format specification be placed into the hands of a Standards Development Organization (SDO), similar to what has happened with PDF going to ISO. This is something I believe Adobe would do if they could, however in the unique case of SWF and the manner in which it became what it is today, it is unlikely to happen.
A further clarification is also worthy of noting. When people say "make Flash a(n open) standard", they really are speaking of the SWF file format. "Flash" is really an entire platform since it includes development tools, runtime plugins and environments, server side tools, side channel communications methodologies for dynamic bandwidth compensation, several servers (Flash Media Server, BlazeDS for example), binary encodings (AMF) and more. The SWF file format is a standard as it sits today. The SWF file format is published here. AMF is also published as an open specification as reported by Slashdot.
I would assert that the SWF file format is a de facto standard. Adobe cannot change it radically based on the fact they care about their community. Flash has to always be backwards compatible to play older versions. It is a pure illusion that Adobe controls Flash and can do with it what they want. The community would rebel.
I would see that the OSP project becomes a collective where more than just Adobe has input into the future of Flash. It will be good to see Google, RIM, Intel and others working directly with Adobe to build improvements into the SWF specification and beyond.
Mobile also brings some unique challenges for developers. Over the next few months I plan to bring some of these to light on this blog.
Tuesday, April 20, 2010
My Open Letter to Apple
Before I comment on this, there are a few things I want to say. First, I have used Mac computers as my main machines for the last few years and find them generally good machines. I also own an iPhone but recently switched to the Android powered Nexus One. This was not to view porn but because I truly believe the Android devices are going to be the best. I am not one to nitpick and bitch that a new SDK agreement apparently bans Flash development tools for the iPhone. I won't dwell on the fact someone at Apple is also apparently using the company's strength to bully developers into following Apple's business plan blindly. I am focused on the future of our industry, society in general and what I personally believe is best.
So what is happening here????
In my opinion, a line has been crossed. On top of the porn statement above, a ban of a cartoon application based on what a small group of people believe is the moral direction YOU should follow. As reported by top10.com:
"Apple believes that allowing an app which contains images that mock celebrities and politicians to go on sale on the App Store would be in violation of the terms and conditions of the platform.
Fiore had proposed launching his NewToons app, but was rejected in December for the perceived vulgarity of his work."
UPDATE: An anonymous user below (in comments) suggest that Fiore's application has now been added back to the App Store. I have been unable to actually find it in the App Store however I did find a credible source which states that Apple is going to "Fix the Mistake". http://www.poynter.org/column.asp?id=134&aid=181700
I guess we have to wait and see.END_UPDATE
My own company, Adobe, does not tell me what to think and what to write or not write on this blog. They understand that my thoughts are my own and on blog posts like this I am clearly speaking for myself, not the company. This is why I am proud to work for Adobe.
I am drawing my line in the sand today. Why? Because, if you allow tyranny to breathe and prosper, there will be no one left to hear you when you scream for help. I don't know what their agenda is but these latest moves are completely unacceptable to me. Here is my public letter to Apple:
Dear Apple:
It has been fun, but you are no longer "cool". You have made some great gadgets and computers in the past, but others are open and you are not. While you have brought society some great things like the iPod and iPhone, this was in the past and your current antic of censorship is unacceptable to me. You see, in Canada, we have rights. We have the right to a free and open society. I will not subject myself to censorship. The result of your actions is that I will not develop for your mobile platform, nor support it. I will also be returning to a combination of Ubuntu Linux and Windows 7 for my main work machine. You see, I have the faith that people can decide for themselves what is appropriate for them and what is not. I do not believe that any one group has the right to make decisions on morality for the rest of us. I do not wish to live in such a society.
As far as applications go, you should allow developers to develop with any tools they want and judge all application submissions fairly based on the quality and performance of the applications. These should be done using clearly published rules and be consistently enforced. Would this not achieve the end result of a rich, robust app store filled with quality applications? At any rate, I do not see how it could be worse than having a plethora of fart noise generator applications, of which only 3 really work. Do you really think the quality of applications is based only on what development tools are used? I disagree.
Respect developers! I think it is not too late to change your mantra. I write this letter in an honest appeal that you hear how your actions are being taken. Developers are usually at the top of the technology adoption curve and several developers are beginning to have issues with you. What you really need to hear is that these same developers are the reason for your success. We are the ones who are asked "what computer should we buy" by our family and friends. When you piss off developers, there is a cascade effect that will eventually affect sales.
Respect individual rights! I have never looked at porn on my iPhone, but I don't want someone else deciding what is and what is not appropriate for me. I do not want Apple employees deciding whether or not a public figure can be questioned. Accordingly, my iPhone now rests harmlessly in it's box while my Google Nexus One is being used. I get tons of people asking me about this phone (read here) and I will keep promoting it while making sure my circle of friends understands the censorship and control issues.
It has been nice, but now it is time for me to move on. Ubuntu 10.4 is out and looks pretty damn nice. Microsoft seems to have learned from Vista and Windows 7 appeals. The Google Android phone is already better than the iPhone and I am excited to started developing Android apps. I can use Java, Flash, AJAX and any toolset I want.
I am committed to standards such as Flash, HTML5 and XML. Not gonna look back. PDF, Java, Silverlight, Android, Linux, Flash are all here to stay.
Please consider the reason I am writing this letter. I do believe you are capable of making some great stuff and doing some great things. I want to encourage you to reconsider your recent actions and hear what we, the developers and computer users of the world, are saying.
Respectfully,
Duane Nickull
Wednesday, April 14, 2010
Adobe MAX 2010
Wednesday, March 31, 2010
AR/Copter RC helicopter at Where 2.0
Monday, March 22, 2010
Duane's World - tutorial on LiveCycle cloud, SAP TechEd
Sunday, March 21, 2010
Flash Builder 4 Released!
So what is Flash Builder 4? Easy--it is the next product in the Flex Builder line. For those of you not familiar with Flex Builder, it is simply the best way to build enterprise Flash applications. I personally tried the Flash professional authoring tools and had a tough time. The first time I tried Flex Builder, it spoke to me. Events, objects, bindings and a host of other standard OO programming concepts.
Flash Builder 4 works with Flex 4, the successor to the Flex 3 SDK. Flex 4 has the new Spark skinning and component architecture. This offers substantial improvements over the previous component architecture and reflects the top asks from many developers who wanted Adobe to push the framework to a new level.
There are over 90 new features in this release. You can also use multiple SDKs so your Flex 3 projects will drop right in. Rather than repeat all the text, read about it here.
So what are you waiting for? Download the trial now!
http://www.adobe.com/go/try_flashbuilder
I also want to personally thank the entire Flash Builder team for this release. This sets the new standard for Flex.
Have a drink on me all!
Monday, March 15, 2010
Running BlazeDS on 32 bit Ubuntu Linux 9.04

There really isn't that much to get BlazeDS up and running on either of these systems, largely thanks to the ease of use built into Ubuntu. Here are the instructions to get it up and running.
1. Grab the Vancouver build of BlazeDS from here.
2. Unzip it to your desktop. Ubuntu 9.04 makes this simple as all you have to do is double click on the *.zip package, the same as OS X or Windows.
3. Check to see if you have a JDK configured and installed. To do this, grab a terminal and type in "javac" and see what comes back. If you have not installed a JDK before, you will get a message similar to this one:

4. This means you have to use a great feature of Ubuntu. The apt-get command is a powerful command-line tool used to work with Ubuntu's Advanced Packaging Tool (APT) performing such functions as installation of new software packages, upgrade of existing software packages and more. It can even update the O/S. apt-get has numerous advantages over other package management tools available in Ubuntu for server administrators. Some of these advantages include ease of use over simple terminal connections (SSH) and the ability to be used in system administration scripts, which can, in turn, be automated by the cron scheduling utility.
5. Run the command "sudo apt-get install sun-java6-jdk". This will install the Sun Java JDK. I chose this one over the others as I consider it the reference implementation for a JDK. Once you hit enter, you will be asked for your admin password and then the magic begins. I swear this was the easiest Java install I have ever done in my life. Thank you whoever created this tool at Ubuntu!!!

6. At some point during the install, you will be hit with the Sun license agreement. There will be a little (yes)

7. When this completes, you should be able to type "javac" into the command line and see the proper output (basically a prompt asking you for options).
8. Navigate to the folder where you saved the BlazeDS build from step 1. Using the terminal, chmod it to make it executable ( chmod -R 755 BlazeDS/ ). Chmod makes the file persist in a mode of "executable" if given the 755 argument. You may have to change to su to do this. This can be accomplished by typing in "sudo" in front of the command.

12. Navigating to /etc/alternatives/java also revealed that this too was a symbolic link. The real target was /usr/lib/jvm/java-6-sun/jre/bin/java. This means that the real value for $JAVA_HOME will be /usr/lib/jvm/java-6-sun/.

16. With your terminal, navigate to the BlazeDS root folder, then change directory to the "sampledb" folder. Type in the following: "sh startdb.sh". The sample database should start up.
Tuesday, March 09, 2010
New Tutorial - How to set up your Model Driven Development
LiveCycle Data Services ES2 is an important component for many companies migrating to a three-tier architecture for enterprise RIA development. The advanced Message Exchange Patterns (MEPs) it enables are unparalleled and very robust. This article is aimed at developers and distills the essential steps needed to set up model-driven development with LiveCycle Data Services ES2 and Flash Builder 4 beta 2.
In this tutorial, we'll share these steps to help you get started quickly and walk through building a simple application using a new technology that brings model-driven development to Flex developers. The model-driven development process is really cool. We were able to write a basic CRUD data grid and form to work against a back-end database with minimal lines of code. Below is a screenshot of the finished project.
Monday, March 08, 2010
What does my race/ethnicity have to do with Olympics?
Ethnicity: (it is on this web page)
Two immediate thoughts came out of this. First I wondered how to classify myself. Although I have relatively white skin, I do read books from other cultures and try to live some of their ideals. Buddhism is a particularly large influence on my private thoughts although most of you would never guess it. As I pondered this though the bigger picture entered my head and I asked the first question I should have.I guess I am missing something here. Can anyone shed some light on this?
Monday, March 01, 2010
Duane's World - Interview with David RR Webber
Musical guest Matt MacKenzie lays down some 1980's flavour house groove with a great backbeat and ambiance. Code and Tunes gets into how to set up LiveCycle ES for Java Developers plus some tips on how the OASIS EML might be implemented using Adobe LiveCycle ES2 and PDF.
Vancouver City Centre Florists use Deception business practice

The price clearly says $84.99. When I clicked through I was presented with a form that also said my card would be billed for $84.99, this of course being the advertised price. I completed the transaction. The receipt sent to me did not indicate otherwise and simply said thank you order received:
Since the last price they showed me was the $84.99, I thought all was good. The flowers got delivered. But wait!! When I got my credit card statement, I was billed $182.49. See below:Friday, February 26, 2010
Flash Player 10.1 build 3 rocks!
So what has been done? The major changes in beta 3 update include support for hardware video
decoding on more netbooks and PCs. From the product management (in their words):
"The Broadcom Crystal HD chip is a video decoder chip found in newer Pine Trail netbooks, like HP's Mini 210, while the GMA 500 chip is in many netbooks, from Dell's Mini 10 to Sony's Vaio netbooks and others."
There is also some enhanced hardware acceleration on many other hardware platforms and chipsets. What many people have noticed seems to be an improvement in performance on both PC and Mac devices although I have not yet run any tests. Tests are hard to run in any event due to the way the garbage collection works. Flash Player uses the same Mark-Sweep pattern as the Java Virtual Machine and just because something is "marked" as memory that may be reclaimed, it does not immediately get reclaimed until the memory is required. This is because in some cases, running the GC may take more CPU time than the memory being reclaimed would provide as a benefit (which is just good engineering).
On mobile, the peephole pattern is used to only render that which is currently in use on the display list's actively viewed area. This is a cool invention.
OK - enough of me talking. Time to get it for yourself and help us test it. We have an open bug database which we encourage you to submit and vote bugs to (BTW - there are a lot of bug fixes in the latest release). Get involved here:
DOWNLOAD: http://labs.adobe.com/downloads/flashplayer10.html
LOG ISSUES: http://bugs.adobe.com/flashplayer/
FORUMS: http://forums.adobe.com/community/labs/flashplayer10/
Note that some of this blog post was copied from our internal briefing document. I do stuff like that because I am a lazy Adobe evangelist, I live in Vancouver and would much rather spend my time watching Olympic ice hockey this week ;-P
Thursday, February 25, 2010
New Flex 4 Workshop now online - NY May 13
The entire day will be run in a code camp style, each lab being chosen by participants. The presenters will come prepared to teach over 30 modules including topics such as Web Services, REST style data paging, Flash Remoting, 3D effects, working with the Datagrid, the new Flex 4 graphics packages (Spark), video, XML, graphs, integration with Java , saving data to a hard drive, storing data locally in AIR’s SQLite database and much more.
All attendees will receive a preparation guide to help them get set up with the correct software prior to the event itself. Upon leaving, each attendee will receive all the completed code and materials to re-use as reference material. Demo software will be provided for download prior to the event and resources for further learning will be shown at the end of the day.
How to get in?You must register for Flash and the City as soon as possible here. The cost is very cheap for the whole 4 days plus there will be tons of good parties etc (that is how the organizer lured me).
Wednesday, February 17, 2010
LiveCycle ES Managed Services go Production!
It is offered in partnership with Amazon, the industry leader in IAAS (yet another acronym using the suffix “
Nevertheless, this is a remarkably cool advancement for Adobe. In a time when many companies are talking about the cloud as “maybe one day in the future”, our engineers have accomplished the dream. LiveCycle ES2 modules available with
Managed Services include:
• LiveCycle Forms ES2
• LiveCycle Reader Extensions ES2
• LiveCycle Rights Managements ES2
• LiveCycle Digital Signatures ES2
• LiveCycle PDF Generator ES2
• LiveCycle Output ES2
• LiveCycle Process Management ES2
• LiveCycle Content Services ES2
The cloud architecture is simple. It effectively uses a client side interceptor to proxy requests bound to a localhost address to a remote endpoint that proxies the services. Below is depicted a typical environment for development, however the runtime is essentially the same.

Cloud computing has many advantages. First, by definition, the logical and physical network topologies no longer map to each other. This effectively allows for faster scalability. Adobe also puts 24/7 enterprise level support on this making it easier for small and medium sized enterprises to use for mission critical applications. Another advantage is that it costs far less to use the managed version as all admin tasks are shared with other users. Things like backups, monitoring and intrusion detection are done for you at a much cheaper cost. The full power of LiveCycle can be made available to your organization at a much lower cost.
To check it out, run to this URL - http://tv.adobe.com/watch/getting-to-know-livecycle-es2/livecycle-managed-services
Friday, February 05, 2010
My thoughts on HTML 5, Flash and Innovation
UPDATE: It was brought to my attention from someone who was present that Steve Jobs words' were not exactly as reported (re: "Adobe is lazy"). In an effort to be accurate, I want to state I was not in the room nor have I heard Steve say these words. I am glad as most of us like Steve and think he has given the world some really great visions and technology. It actually deeply hurt my feelings when it was reported he personally attacked our character. Competition is good for the market and attacks of a personal nature have no place in our profession IMO.
END_OF_UPDATE
I have already divulged that I work for Adobe and I want to be pragmatic and transparent in this blog post. Some may take this as a slight against Apple. It is not. Adobe doesn't rant. I rant on my own time to make up for it but this is not one of those times.
In case you haven't heard, HTML 5 is a successor to HTML 4 and it will carry a set of new features such as native video capabilities, variables, and more. The theory some have put forward is that because HTML 5 will have video, this will hurt Flash. To begin, let's look at what Flash has done. If we had simply let standards bodies decide innovation, many of the top Web 2.0 patterns would not have developed. Microsoft introduced the XMLHTTPRequest objects, which led to the rise of AJAX. Adobe created Flash for rich visual user experiences and PDF for high fidelity documents while other technologies such as microformats and browser plugins to read them have extended the base set of web standards. Several vendors worked on Application Servers and specialized server pages written in PHP, JavaServer Pages, and more. Jeremy Allaire developed ColdFusion, still working so well today I was recently in an account that had CF version 1.1 running. This is the innovation that drives standards. None of this stuff came from standards and most of it used standards whenever possible. Eventually, some of the innovation gets commoditized into standards or browsers. That's life in the tech world. It happens!
If the video bits get commoditized, so be it. Then we have to place a great deal of trust in the browser vendors to consistently implement the behaviors and user interface controls so that there is a consistent web experience. It is with this thought that I start to see fractures in the arguments of HTML 5 replacing Flash. Individually, each browser vendor will build and test their own work and generally release good quality products. Open source engines like WebKit and Firefox do well (another example of commoditization - remember when people actually used to charge money for browsers??). Let's do some simple math to demonstrate the problem facing the web.
There are many browsers on the market (Internet Explorer 8, Chrome 2, Safari 4, Opera 10[13], Chrome 3, SeaMonkey 2, Camino 2, Firefox 3.5). Many of these run on multiple operating systems (Mac OS X, Windows, Linux, Unix) and have multiple concurrently used versions of each. The matrix is roughly 5 major browsers, times 3 major operating systems, times 3 different concurrent browser versions, times 3 different concurrent operating system versions--or around 125 major variations. Now factor in the diversity of screen resolutions, bandwidth speeds. and several other factors and ask yourself this question - "is it ( highly probable || somewhat probable || probable || not probable ) that all the browser vendors will implement HTML 5 in a consistent manner?" Since this has not been demonstrated with CSS and HTML 4 today, I would think that it is possible, but some details might be a bit rough. Anyone who has developed AJAX applications or rich content that uses CSS and has performed cross browser debugging knows this. I am not saying Flash is perfect, but the fact you have a single runtime environment is appealing to many people. To that end, I don't see Flash disappearing anytime soon. People who hate Flash may jump all over this statement but I hate peas and they are still being served in restaurants and stores despite my best efforts to rid the planet of those slimy, round green vegetables.
The next consideration is how well people implement the standards, the main choices being full, somewhat, or not very well. Take PDF as an example. The PDF format is an ISO standard meaning that it is in the hands of a fully accredited standards development organization. No one vendor controls it. Adobe Acrobat and Reader are the traditional reference implementations; however others are completely free to fully implement the specification. Apple has not in Preview. Microsoft has done a much better job with PDF IMO.
Apple itself has done some great stuff to innovate the web. iTunes is certainly a great example and I will publicly state I love OS X. I own an iPhone and recently bought my 7th Mac. I drank the Kool-Aid and may change when Ubuntu 10.1 comes out. (see - I am really being transparent, even at the cost of looking like a hypocrite).
Innovation will continue as things get commoditized. This will force further innovation on the cutting edge. This is just the nature of the beast. This is not to be feared; it doesn't mean Flash developers will suddenly drop Flash and only develop in HTML (if they did in a production environment they will probably be using Photoshop, Dreamweaver, Premiere Pro and After Effects anyways so I believe Adobe is well positioned in either case). Flex certainly is not going away any time soon. I don't see any Web Services wizards being introduced in browsers or the ability to perform advanced data throttling and paging operations running across multiple browser platforms. Flex is there today.
Having said all of this, my final thoughts are that I am really thrilled about HTML 5. Adobe will be there as will everyone else. Let's wait and see how it goes. I could be wrong. It wouldn't be the first time and forking the web would be a bad thing. HTML 5 represents a great opportunity for the entire world. It represents a sharing of information, the cornerstone to any democracy. It is in our best interests to get this right and work on it together.
Some of this may be flame bait so have at it. I've worked in standards for a number of years and base my thoughts off those experiences. If you want to flame me, go ahead. I live in Canada, it's cold and I this is just my own opinion anyways. I think there are probably around 6.4 billion more opinions on this subject out there somewhere.
Ciao!
Thursday, February 04, 2010
Apple's MobileMe not Trustworthy
It started last night as I was cleaning out my inbox and found a friend who had changed their address. I logged in to me.com to make the changes to my master records for my address book only to discover that Apple's cloud said I had no contacts. Now this frightened me a little (I still have local back ups) so I contacted them. Within 12 hours my contacts were back again. It was an older copy, however, so I had to fix multiple details. I relaxed a bit and slept.
Today, I got an even worse message. I have the same (you have no contacts) message (see below).

Since I was logged in on another machine, I tried to refresh that page only to now get a message that says "Your MobileMe contacts are temporarily unavailable".
FAIL!!!
Let me repeat that again:
FAIL!!!
Since MobileMe offers only chat support, I could not really tell them about this and how I felt. I asked the person twice directly "Has Apple had an event or has my data been corrupted?". The first time there was no response and when I asked the second time, the reply was "I am not aware...". So, what can we infer from this (other than Apple might have issues with their cloud)?
I think the first thing is that we really need a cloud users' "Bill of Rights". I want to be notified if my data becomes corrupt, lost, stolen, exposed, etc. It is MY data, not Apple's. If they have had an event, I believe I am entitled to know about it. The generic messages just tell me that MobileMe is not enterprise ready nor should it be trusted.
UPDATE:
An Apple rep got in touch with me and worked with me. There are sync issues with MobileMe and they are aware of them. To be fair and balanced, the Apple employee was timely, professional and courteous as well as understood my frustration. While I am skeptical of MobileMe being enterprise ready, I will be giving it another chance for a year.
Thank you Apple! Your customer service was good.
Tuesday, February 02, 2010
Duane's World Episode 23 - MovieSet.com and Flex Key Events
After watching this you will want to try out MovieSet.com to get special behind the scenes footage from great movies like Avatar, Trailer Park Boys and more.
Monday, February 01, 2010
New Chaos Theory algorithm for Lotteries?
For those who are uninitiated, Chaos theory is focused around "order from chaos". I live my life in total chaos and find myself thinking about it a lot. Is Chaos really Chaos or is there something else? While many had pondered the theories of Chaos, Edward Lorenz, a meteorologist, is generally credited with the first experiments around 1960-1962. He used a computer to digest 12 distinct models for predicting weather. The experiment predicted what the weather would be, although not accurately.
I have believed that Chaos itself is just a pattern that we have an incomplete understanding of. For example, if you look at weather patterns, is it possible that we are missing some key criteria or have failed to understand a vector that affects the weather? Such forces may be difficult for humans to comprehend. The Butterfly effect and small variations in initiating conditions could explain much chaos. This leads me to my next thought.
What if there are certain types of brain waves that affect physical matter? I know this sound crazy but let's just explore this for a second. Such a possibility has been contemplated in conjunction with the chaos theory of lotteries before and dismissed. The idea goes like this. If enough people concentrate on a specific number, that number is more likely to be a result in a lottery. Of course, this theory would have to be balanced by assuming that the population that is thinking of equally random lottery numbers, yet this is not the case. There are numbers that are significant to various segments of the population in different cultures. Asians love the number 8, North Americans generally think 7 is lucky. Religious people associate God with the number 3.
Many lotteries that have a game whereby the numbers are selected from 1-49 inclusive have statistically significant patterns in drawn numbers based upon these theories. These are small enough to potentially make a difference yet likely not large enough to establish a winning hypothesis. Statistics can be found at http://www.lotto649stats.com/
I basically reviewed a number of lottery results and applied a filter towards shifting number significance based on cultural events. This was factored into a statistical draw model and factored in modification weighting based on current events in a confined geographical area. Think of it as an experiment to debunk the claims above. The results were interesting yet not a net positive outcome. Here is a snapshot of my lottery account in January 2010. I basically won a lottery prize every single draw using my algorithm based on buying 5 tickets boxing several combination of projected numbers. The odds of winning the grand prize once are one in ~14 million (not including the extra). The odds of winning a smaller prize based on 3 out of 6 numbers correctly drawn is about one in 12,000. To accomplish this every single consecutive time or to hit an extra number is not astronomical yet I would aver it is significant.

Having stated this, I do not expect this will yield any big results as the theory itself starts to destroy itself due to it's inherent flaw.
Either that or this is all just a crazy coincidence.


