Monday, March 02, 2009

Learn Flex in One Week!

Learn Flex in a week by going through this video training course! Learned Flex already? Use these materials to go out and teach Flex! Everything is licensed with CREATIVE COMMONS licensing (see bottom of page).

To maximize your learning, Adobe recommends that you view the videos and complete the exercises in the order that they are listed. If you run into problems and have questions, you can ask a question on the Flex in a Week forum or ping me via dnickull at adobe dot com.

Note: Before starting the training, please ensure that you have installed Flex Builder. You can either use the free trial version or buy Flex Builder to go through the training.

You can now download and watch Flex in a Week videos in an offline mode. Here are the instructions.

  1. Install Adobe Media Player.
  2. Click "My Favorites" menu at the top.
  3. Click "Add RSS Feed" at the bottom.
  4. Paste http://sessions.adobe.com/FlexInAWeek/feed.xml

Day 1: Flex basics

Day 2: Component development


Day 3: Putting it all together

Day 4: Adding visual appeal


Day 5: Architecture and advanced topics


Creative Commons License
This work is licensed under a Creative Commons Attribution-Noncommercial 3.0 Unported License.

Friday, February 27, 2009

Duane's World 17 - Tagga.com, ScatterHeart and AIR tutorial

This episode of Duane's World features an interview with Tagga.com founder Amielle Lake. Tagga.com is a very compelling gateway to using mobile for web-based campaigns. Amielle's company has built out a great feature set on tagga.com.

The code and tunes section has a tutorial from James Ward on writing out files to a hard drive in Adobe AIR. The source code is below. Canadian band Scatterheart supplies two great tracks for this episode.

This episode starts in New York and ends with a run down Solar Coaster on Whistler Blackcomb.

Wednesday, February 25, 2009

The new Adobe LiveCycle ES secret Decoder ring

For anyone who has found difficulty in keeping up with our marketing department:

http://blogs.adobe.com/livecycledocs/2009/02/the_livecycle_terminology_secr.html

Absolutely brilliant!

Adobe AIR 1.5.1 released, new API

Adobe has now released Adobe AIR 1.5.1, a relatively minor update that includes a number of bug fixes. The new builds are available for Windows, Mac, and Linux on the Adobe AIR download center.

There is also a new API called InvokeEvent.reason. This event is dispatched by the NativeApplication when the application is started from the command line, via the GUI, or by opening an associated file. Applications can register and listen to the InvokeEvent and may also register themselves to launch automatically during user login.

From Robert Christensen:

"You do not need to recompile your application to take advantage of the 1.5.1 improvements. However, if you want to take advantage of the new APIs introduced in this release you will need to update your application descriptor to 1.5.1 (see New APIs section of the release notes) and recompile your application."


Tuesday, February 24, 2009

$100,000 for Flash Lite and Mobile Developers!

One of the greatest industry consortiums ever launched has to be the Open Screen Project. The Open Screen Project is a group of leaders in the mobile, computer and technology industries who are standardizing around Flash for a consistent run time experience. Members include (alphabetically) Adobe, ARM, BBC, Chunghwa Telecom, Cisco, Comcast, Intel
, LG Electronics, Marvell, Motorola, MTV Networks, NBC Universal, Nokia, NTT DOCOMO, OpenTV, Palm, Qualcomm, Samsung, Sony Ericsson, Toshiba, Verizon Wireless. These are pretty much the heavyweights and others can easily join. This group has also decided to put their money up to help developers.

First, there is a $10,000,000 USD fund for developers. See http://www.openscreenproject.org/developers/get_started.html?promoid=EJZYZ.
From the site:

The Open Screen Project Fund is a US$10 million market development fund that will provide grants to developers in order to accelerate the creation of applications, content, and services that leverage the Adobe® Flash® Platform and run across mobile, desktop, and consumer electronics devices.

The global initiative was created to fuel innovation by directly commissioning select developers to create innovative applications and by providing education, support, and distribution guidance. Adobe and Nokia are the first contributors to the Open Screen Project Fund."

Concurrently, Adobe has launched the Flash Lite Developer Challenge project for Flash Lite Developers with $100,000 in prizes. This is specifically aimed at mobile development using Flash Lite as the development tool.

On the other side of the technology pond, well known venture capitalist firm Kleiner Perkins has announced a $100 million fund for iPhone developers. The iPhone still does not have Flash capabilities but most of us are hopeful that this will be ironed out so we don't have to boycott the iPhone. Nevertheless, Google and Palm, amongst others, are developing smartphones that will blow away the iPhone so it might not be as relevant in 2 years. Note that Google Android and Flash seem to be a marriage made in heaven. Likewise, the Windows Mobile O/S with Flash is a great combination.

It seems the major heavyweights in the marketplace are vying for the attention of developers. What does all this mean? If you have recently lost your job and are looking for a new career, becoming a mobile developer is probably a very viable strategy in a growth industry. Adobe can help you if you are new to Flash. I have a few free Flex Builder licenses I can give away to people who have recently lost their jobs (sorry - you have to be unemployed to qualify) plus I have a full day of free Flex and Flash training I can provide as a self-paced tutorial so you can get up to speed.

Come join us! This industry is fun. No shortage of money for developers!


Monday, February 23, 2009

The Credit Crunch Explained!

Found this on YouTube. Thought it was a clear distinct explanation. Enjoy.

Friday, February 20, 2009

Need action - Let's get James over 5000 on Twitter!

My buddy James Governor from RedMonk is hovering just under the 5,000 mark on Twitter. He is currently less than 180 shy of cracking the 5K follower mark. Join me and follow James.

http://twitter.com/monkchips


He has a ton of great stuff to say!

Thursday, February 19, 2009

Can technology save the environment?

I have recently purchased a new vehicle with a litres per hundred kilometres active display. This monitors fuel mileage as you drive. What I noticed was both disturbing and a potential place for vast improvement in terms of how technology can help the environment. I hereby give this idea up freely to anyone wishing to pursue it further - this IP is potentially too helpful to have anyone patent it.

I noticed that my vehicle on flat ground cruised along at around 5l/100km (around 55 MPG) through green lights on relatively flat ground. If I had to stop and re-start, the gauge went to 99l/100 km (about 3 MPG) to re-accelerate. After some further testing and calculations, I verified the hypothesis that starting and stopping a vehicle can account for around 80% + of the fuel used vs. flowing traffic. I drove from Whistler to North Vancouver (around 111 km) and used the same amount of gas I used to go the last 15 km through Vancouver.

What does this mean?

Other than validating a few basic laws of physics (conservation of angular momentum, bodies in motion tend to stay in motion, etc.), this means that our governments and almost the entire industry trying to focus on getting better mileage for vehicles is basically inconsequential in comparison to better active/adaptive traffic systems. In fact, other than the move to hybrids (which the jury is still out on in terms of NET energy savings), even if you bettered the mileage of every vehicle by 50%, it would mean a 5% gain compared to a better traffic flow which could deliver potentially up to 50% better return.

While it would not be possible to have green lights for everyone, there are certainly situations I have encountered where a high volume road is sometimes held up for the sake of one or two cars to utilize the right of way of an intersection.

An interim step could be to replace traffic lights that meet certain thresholds with roundabouts to keep traffic from having to completely stop in all directions. Hybrid cars are also good as they rely on capturing brake energy and being able to store it as electricity then use the electricity to re-accelerate the car. IMO - these are good intermediate steps but the holy grail is in a different place.

Opportunity:

What if every vehicle had some form of transponder that could communicate its current MPG to sensors in the road as well as the road being able to sense how many cars are traveling in each direction. A grid of sensors could be used to feed an array of every vehicle on the road into a central planning computer which could optimize the traffic flow (within parameters) for the best fuel efficiency.

I am an environmentalist but I am also a pragmatist. While some advocate that everyone should ride bikes and take public transit, I just don’t see the auto industry silently going away anytime soon. This means an immediate focus on improving hydrocarbon efficiency is probably still warranted IMO.

This is obviously a totally unproven hypothesis however there is sufficient evidence to warrant a test simulation IMO. Even if this proved to be consequential, such a system would take decades to implement.

There are other benefits as well. Now imagine that the transponder could be wired into your electronic dashboard and warn you of events on the road ahead (example - "unexpected hard braking - 100 meters ahead")? You could even have audio communications coming in to the car as instructions to the driver such as "maintain 45 KPH and you will make the next 4 stop lights. If you go faster, you will have to brake and re-accelerate".

This is not some wild pipe dream. All the technology exists today.

Question:

Does this have merit?
Would it be worthwhile conducting some further studies?
Is anyone interested in discussing something like this at FooCamp (or somewhere else) this year (assuming I will be going again)?

Monday, February 16, 2009

LiveCycle Data Services in action - all this week!

If you have not yet seen the future of broadcasting, tomorrow at noon Pacific time, go to http://tracker.amgentourofcalifornia.com/ and create an account to see the live coverage of the Tour of California bike race. Today Levi Leipheimer rode like a madman and took the lead away from a breakaway group. Only Peterson was able to keep pace over the second climb and Peterson snaked by Levi for the stage lead while Levi took the overall GC.

To me, this event is far superior to watch here than on TV. You can choose the cameras (sorry Mr. Producer but mashups and trusting your users are two big patterns on Web 2.0). There is a live chat. The overall GC, text updates, rider tracking, and a host of other interface options allow you, the racing fan, to be in control of what you want to see. The ad revenue model is there too - the sponsor ads stream live just like on TV.

The site is built with LiveCycle Data Services feeding data to a Flex client that registers and gets data pushed out to it as data becomes available. This is the perfect 3-tier architectural use of LiveCycle Data Services. Anyone building a high-traffic RIA nowadays can no longer afford to push all the stuff on the client - you need to have an intermediate tier to aggregate and organize data for an orderly dissemination to clients in a manner consistent with the terms of service and QoS agreements. This will become more important as mobile is fed into the mix.

Rather than repeat it, if you want to know more, hop over to Greg Wilson's blog article on this:

http://gregsramblings.com/2009/02/16/bicycles-flex-and-livecycle-data-services-amgen-tour-of-california/

At Whistler: Where's my high-speed Internet?

At home I have the luxury of SHAW high-speed Internet. It rocks and I get speeds of up to 22,000 KBPS. Let me tell you that I really missed this at Whistler. The hotel I was in had Telus high-speed Internet - vastly overrated and not really high speed. I decided to test it out and see the results. Internet speed tests are nothing new under the sun but it still surprises me how many of them are so unusable - e.g. they need Java installed, they require changing firewall settings, or are just too complicated for such a trivial task. This speed test - www.broadbandspeedchecker.co.uk - originally from the UK uses Flash and can't be easier to use. Just click a button and you will get your result.

Since I do a lot of my business elsewhere, I decided to try the UK-based cloud service. You can give it a try via this widget.



Here are the results from my home office provider. Keep in mind this is a real world test during very busy times.



Some speed tests allow you to choose the server that you want to test the speed against. This leads to inconsistency in results based on your destination. The new Broadband Speed Checker makes it really simple to use and far more consistent by utilizing Amazon CloudFront CDN where you will be tested against the fastest server available to you. Obviously, the online speed tests won't show you everything about your Internet connection - they will show the maximum speed you can achieve at a given time. The average speed you are getting through your broadband cannot be determined by online tools. If you want to monitor your speed and Internet usage on the ongoing basis then I recommend this open source bandwidth meter.

So I leave you with some thoughts on this topic:

1. If you pay for high speed Internet and do not test it, you might be getting ripped off. Use this test.

2. My ISP is Shaw in Western Canada - not only do they give me consistent results that I can verify, they are also one of the few companies left that allows you to speak to a human being after two rings on the telephone.

3. How happy are you with your broadband speed? I'd like to hear some comments about good and bad ISPs. I have had good experience with mine, found Telus a train wreck and Rogers somewhere in the middle in terms of speed but with bad customer service.

Share your experience in the comments.

D

Friday, February 13, 2009

Broadcasting 2.0? The new media

The 2009 Amgen Tour of California, the largest cycling event in America, will stream the race live on the Web using the Adobe Flash Platform. A Tour de France-style cycling event presented by AEG from February 14-22, 2009, the race challenges the world’s top professional cycling teams and the most talented riders— including seven-time Tour de France champion Lance Armstrong (whom I had the honor of meeting)—to compete along a demanding 750-mile course from Sacramento to Escondido, Calif. This marks the third consecutive year that AEG selected the Adobe Flash Platform to bring the race to cycling fans worldwide in streaming video, with real-time rider tracking and live commentary.

The architecture employs a variation of the three tier model - a rich client side, the middle aggregation tier, and the resources which includes live logging of the cyclists positions from GPS. The Tour Tracker was developed using Adobe Flex® Builder™ and Adobe® LiveCycle®, and is meant to be an immersive Web application that incorporates live video, audio, and real-time data streams of the event. So much for regular TV!

When the race starts, you can follow it with the Live Tour Tracker. Cycling fans can track the race minute-by-minute through the innovative and highly interactive online Tour Tracker built on the Adobe Flash Platform. Delivered in the browser with Adobe Flash Player or via a downloadable application powered by Adobe® AIR®, the Tour Tracker ensures not a moment of the race will be missed.

Here are two challenges I want to pose. First - please give to the Lance Armstrong Foundation to fight cancer. This is a nasty disease and has touched so many lives. Lance started this foundation and when he is giving his all on the course, let's give him something back.

Second - I have started a petition to the Tour de France organizers to adopt this technology and broadcast via the web. I want to watch this at work. Please sign this important petition

http://www.thepetitionsite.com/2/tour-de-france-to-broadcast-on-the-web

Wednesday, February 11, 2009

Music 2.0 comes to Twitter

MixMatchMusic (www.mixmatchmusic.com) launched tra.kz, an easy-to-use linking technology that helps musicians virally promote their music and engage fans using Twitter. Controlled Substance Sound Labs label artists including Slightly Stoopid, Pepper, The Expendables, Mat McHugh and The Blackbird, Fishbone, and Rebelution are among some the first bands to promote their music via Twitter campaigns powered by tra.kz.

tra.kz is the first address link and URL shortener specifically for music and music-related content on the micro-web, including MP3s, music videos, artist interviews, news and reviews. Artists, and also fans sending tweets about music, use tra.kz to point to the MP3 files and other music-related content on artist sites, MySpace pages or elsewhere. Without tra.kz, the URL links are often too long to include in tweets and by being given the visual cue of http://tra.kz/, music lovers will know that the link will take them to music related content.

This is a Flash-based solution for artists seeking to make collaborative music and allow people to remix. Twitter provides the updates so if you want to get the latest music in real time, this is the next best thing to being in the actual studio listening to a producer try different mixes of your favorite bands.

What is also cool is that this is linked to a revenue model whereby artists set their parameters and share in revenue from listens, music for movies deals and sales of their content. I also think it is cool because this fights fire with fire. Supply and demand has typically been one artist track being demanded by lots of individuals. Now artists can provide multiple end mixes for one track, this reversing the deprecated economic models of the old music industry.

From MixMatchMusic:

"tra.kz is also a highly viral way for music fans and members of the Twitter community to share music and music-related content among themselves. We think it is going to spark a ton of music discovery, and that's good for artists and fans alike."
Fans browsing Twitter feeds will be able to quickly spot out music related content and play music files directly through tra.kz's player. "tra.kz is the no fuss, no muss shortcut for discovering music, and all the great content that surrounds it, directly from a tweet.

Controlled Substance Sound Labs (http://www.myspace.com/controlledsubstancesoundlabs) label umbrella for Stoopid Records and Law Records are using tra.kz to engage fans and promote music by releasing new music from artists Pepper, Slightly Stoopid, The Expendables, Fishbone, Rebelution, Mat McHugh and the Blackbird, Sabotage Soundsystem, and Giant Panda Guerilla Dub Squad.

MicMatchMusic CEO Feinn said additional independent artists including BLVD, Angel Pier, Enzyme Dynamite, Trifonic, Throw Me the Statue, Dreamlin featuring Kim Powers, The Dance Party, T. Mandrake, and Radio Nowhere, are also using tra.kz to promote their new releases.

He said that MixMatchMusic will be supporting these artists' Twitter and tra.kz campaigns by releasing a song on Twitter each hour throughout Wednesday, February 11, accompanied by information about the song and artist on Evolving Music (http://evolvingmusic.wordpress.com).

MixMatchMusic provides emerging artists with a number of technical, social and musical assets with which they can collaborate on, profit from and engage fans with their music:

• A dynamic music community. MixMatchArtists contribute parts of songs, called stems, such as guitar riffs, drum and vocal tracks; works in progress; or finished songs. Community members can search thru this catalog of sounds and songs to find stems to complement their own song ideas and works in progress. They can also communicate with other musicians to discuss song or album projects. Casual fans – even those who don't play an instrument – can experiment with the sounds, discover new music and download stems or songs for use as ringtones or soundtracks for slide shows.

• The MixMaker audio sequencer. Members of the community use the sequencer to mix, match, mash up and manipulate their stems along with stems contributed by various artists. The sequencer combines and synchronizes stems and tracks; its edit tools are powerful and precise, but easy-to-use.

• The MixMatchMusic marketplace. The marketplace is an enlightened system of rights tuned to the unique requirements of digital music and the needs of digital musicians. The marketplace also includes highly transparent accounting processes and transaction logs that ensure musicians know the status of their work, are attributed and paid whenever it is downloaded or used in other art, or even by casual fans as ringtones. Musicians collect 85 cents on each dollar transacted.

• The Remix Wizard is a widget installed on artist sites or MySpace pages that provides fans direct access to a simplified, lightweight version of the sequencer. Artists load stems of their songs into the Remix Wizard and invite their fans to mix and match the various parts and create entirely new compositions from those parts. The Remix Wizard is a simple-to-install and easy-to-use widget that gives indie artists a cool viral tool for engaging fans, and allows them to emulate the hugely popular remix promotions mounted by bands such as Radiohead and Nine Inch Nails.

I am going to set up my bands on this as soon as I am back from Whistler.

Disclaimer: I have a personal financial interest in MixMatchMusic. I just want to disclose that so readers can fairly judge the preceding test.

Tom's cool Zend AMF PHP extensions!

Normally when I am on vacation, I will post rather work -unrelated posts on this blog. Yesterday's downhill ski run was a good example. Today however, my Adobe compatriot did something so cool I felt compelled to blog about it. Here is the message he sent:

*****************
UPDATE: When I originally posted this, I had credited Tom. It is actually Piotr's creation - Tom was just kind enough to forward this to me. Both these guys are excellent programmers - check out their blogs!
*****************

"Just for your info guys, I published today my ZendAmfDs extension to Zend_Amf... - this is just to let you know if any one is interested in PHP stuff. ZendAmfDs allows you to configure SELECT and INSERT statements on server side (in xml file) and execute these from Flex in a nice and clean way ;) This release doesn’t support UPDATE’s yet but planning to have it implemented or maybe/hopefully someone from the community will pick this up. More info you will find here: http://www.riaspace.net/2009/02/zendamfds-first-release/

Another thing that is very interesting is that I’m receiving very positive feedback after one of my previous blog posts where I described how to configure Zend_Amf with whole Zend Framework and how to use it all together... It turns out people are actually looking into taking whole Zend Framework not only Zend_Amf."

IMO - this is very cool! Go check it out.

Tuesday, February 10, 2009

Whistler Downhill run

I am having so much fun on my Whistler vacation. Enjoy.

Saturday, February 07, 2009

Are Hotel room numbering conventions depracated?


I found this in the hallway as I was trying to find room 432 (the one I was staying in). I was not really sure what to make of it. I eventually found it and did not have to sleep in a semi-colon.

Whoever made this sign should have given it a bit more thought IMO. Either that or they laugh out loud knowing every day room 432 gets re-assigned to some helpless chap like myself.

Friday, February 06, 2009

I am starting to really, really love ColdFusion (again)

I was an Allaire CF user back in 1999 or thereabouts when it was first available. In fact, I remember Blue Mountain offering it using the "brand new" ASP model. The fact I could integrate data into dynamic HTML was really cool.

If you have been like me, a bit short of CF activity for a long time, it is time to look at CF again. CF rocks!! It is so easy to use and takes minutes to integrate with most technologies. Now I am not a professional programmer who uses it every day, but that is what stands out. Declarative programming languages are just easy to use. CF is the master.

On another note, someone once pointed out that CF developers are paranoid sometimes. I can see why. If you saw your favorite technology being bought and acquired a few times, you might be unsure what direction it may take. I really hope Adobe has been clear but CF developers have a strong evangelist in me and I am an Adobe employee. If I can be of any help to clarify the future of CF or you need an ally, call me. I'll go as far as it takes to ensure CF lives forever!!

I also thought I'd make fun of CF developers (making fun of ourselves used to be part of the CF culture back in the Allaire days) and my boss, Ben Forta, seems to embody this. I wrote an algorithm for how CF developers' internal thinking process works. It is just a joke so please do not take offense.

* yes - I consider myself a CF person now!

*************************************
Import com.array.ColdFusionHaterList.*;
Private var developer = new Developer;

// create a new conversation and pass it the argument of the instance of developer.
Private var myConversation conv = new conversation(developer).startConversation();

// test to see if Coldfusion is mentioned once every twelve words.
if ((conv.getWordCountSpoken() >= 12) && (String(“ColdFusion”) = “false”))
{
coldFusionHaterList.add(developer);
} else {
conv.keepListening();
}

//LOL

I am now offline for the week to go to Whistler and read a CF book to learn more advanced topics. Cheers!

Thursday, February 05, 2009

Adobe AIR covered in Time Magazine

I got an internal email from a colleague today about this article in Time Magazine (note it is on page 2 of the article):

"A nice piece in Time Magazine (online today, in hard copy next issue) discusses new applications and products for e-reading, and the future of publishing. The writer references the concept of an “appgazine” — magazines acting “more like computer programs than Web or printed pages.” He interviewed Kevin L who demonstrated the International Herald Tribune Reader and (RED)WIRE applications.
"I saw my first real appgazine one day in downtown San Francisco, at Adobe, a company whose software dominates the production side of the publishing industry. Chief technology officer Kevin Lynch held in his hands a mobile Internet device made by a Chinese company called Aigo. This model, already on the market in Asia, has an easily readable touchscreen. But more interesting than how it looked was the software it was running — Adobe AIR."

Very cool that Time has recognized the immense value and shift!

Tuesday, February 03, 2009

Music 2.0: Why don't you pay for music? Read this!

Apparently independent music platform Indaba was on the Colbert Report this week. It can be viewed here. Stephen chats with Dan Zaccagnino, head of an online community of musicians known as Indaba Music. In his (NOTE: Update - these are Stephen's words, not Dan's from Indaba) own words - you should be able to legally remix anybody else's tracks on the Internet. Several sites such as MixMatchMusic.com are doing this today.

Does anyone think this is a good idea or should it be up to the artist? As a musician, I prefer to retain control over certain uses of my works (such as via Creative Commons licensing). Not that people in bulk are respecting licenses today, but in a perfect world.

Here is my argument. To get to where I am today, I took 8 years of piano lessons (cost: unknown), currently own about $25,000 worth of music equipment, have paid out well over $100,00 in my lifetime for various music related activities, pay out $135 per month towards rehearsal space, and my time goes on top of that. My band, 22nd Century's CD "The Twenty Second Century" cost about $17,000 for the first 1,000 CDs. To date, we have had no sales (primarily because we have not yet set up online sales) however we are now using CD Baby. Yes - as of this week, you can buy and even listen to my latest music at http://cdbaby.com/cd/22ndcentury. This works out to an artist cost of about $2.80 per track. Even if we sell this via iTunes and net $0.60 per track, we will have to sell close to 100,000 copies to break even on the recording costs (the scale slides the more CDs you make). As a musician, this sort of despair and helplessness is our everyday life. This really sucks people!!!!

Some of my music is free though. I do this to be a good musician and offer my stuff that I am not planning to record (and put on CD or iTunes) on MixMatchMusic.com or Mixr.com (subsidiary). I do this in hopes people might use it for something, so I am torn.

So here is the 22nd Century $1,000,000 question - who will be the first person to actually pay for a copy of our CD? What can I do as an artist to convince you, the listener, that my multi $100,000 investment into music is worth $0.99 a track for my songs? For those of you who do not like our songs, we're cool with that. Our style reflects who we are, not commercial interests. Obviously if it did, you would have to conclude we were dumb to enter into the music business as entrepreneurs.

What business model can work or MixMatchMusic? Would you pay a fee to download fresh "members only" mixes every day? Would you pay a small fee to buy CDs or get free trials of every new mix pushed to your desktop? Would you be willing to accept advertising on the site? The reason I ask is that sites such as CD Baby, Indaba, and MixMatchMusic cannot survive without business models that drive strong sales and if they dry up, your music choices dry up.

As a civilization, we have to support the arts or pay for fair use when the artist demands it. In return, artists may grant us more leverage to remix some of their content. For now, nobody is making money.

Think about this one hard please.

(Disclosures - I may have commercial interest in MixMatchMusic)

Duane's World 16 - jFall Java user Group, Netherlands!

It is now live. This episode covers probably the largest user group meeting I have ever attended. There is also a great section on LC ES Workbench and how the Eclipse IDE reflects the Java API Docs. There are several interviews.

Monday, February 02, 2009

iPod Touch update killed my iPod!

I tried to update to the new firmware version (recommended) by Apple today. The log file says:

Feb 2 00:00:00 duane-nickulls-mac-pro newsyslog[1427]: logfile turned over
Feb 2 08:54:57 duane-nickulls-mac-pro [0x0-0x27027].com.apple.iTunes[620]: Child: Can't read length for data
Feb 2 08:54:57 duane-nickulls-mac-pro [0x0-0x27027].com.apple.iTunes[620]: Child: NULL command dict read, exiting...
Feb 2 08:54:58 duane-nickulls-mac-pro [0x0-0x27027].com.apple.iTunes[620]: Could not receive size of message
Feb 2 08:54:58 duane-nickulls-mac-pro [0x0-0x27027].com.apple.iTunes[620]: MobileDevice: receive_message: Could not receive size of message: 0 Unknown error: 0
Feb 2 08:54:58 duane-nickulls-mac-pro [0x0-0x27027].com.apple.iTunes[620]: MobileDevice: _read_callback: Could not receive message
Feb 2 08:55:26 duane-nickulls-mac-pro [0x0-0xc00c].com.apple.systemuiserver[131]: DigiHub:sendChargingCommandToDevice RequestExtraPower(kUSBPowerDuringWake) returned 0
Feb 2 08:55:26 duane-nickulls-mac-pro [0x0-0xc00c].com.apple.systemuiserver[131]: DigiHub:sendChargingCommandToDevice sending command with sleep: 0, wake 0
Feb 2 08:55:26 duane-nickulls-mac-pro [0x0-0x27027].com.apple.iTunes[620]: MobileDevice: AMDeviceConnect: This is not the droid you're looking for. Move along, move along.
Feb 2 08:55:26 duane-nickulls-mac-pro [0x0-0x10010].com.apple.iTunesHelper[148]: MobileDevice: AMDeviceConnect: This is not the droid you're looking for. Move along, move along.
Feb 2 08:59:32 duane-nickulls-mac-pro dashboardadvisoryd[2211]: fetch: unable to fetch data from read stream while fetch advisory list
Feb 2 09:01:33 duane-nickulls-mac-pro kernel[0]: iTunes[620] uses send/recv on a pipe
Feb 2 09:01:32 duane-nickulls-mac-pro [0x0-0x27027].com.apple.iTunes[620]: MobileDevice: send_message: Could not send message size: Bad file descriptor
Feb 2 09:01:32 duane-nickulls-mac-pro [0x0-0x27027].com.apple.iTunes[620]: Parent: Error or timeout on select
Feb 2 09:01:32 duane-nickulls-mac-pro [0x0-0x27027].com.apple.iTunes[620]: Parent: NULL message read
Feb 2 09:01:32 duane-nickulls-mac-pro [0x0-0x27027].com.apple.iTunes[620]: Crash report copy task disappeared while submitting a restore log
Feb 2 09:02:33 duane-nickulls-mac-pro MDCrashReportTool[2229]: CFReadStreamGetError() returned: 12/8
Feb 2 09:02:33 duane-nickulls-mac-pro /System/Library/PrivateFrameworks/MobileDevice.framework/Versions/Current/AppleMobileDeviceHelper.app/Contents/Resources/MDCrashReportTool[2229]: 2229:2693486368|CrashReportCopyX.m:-[CrashReportCopierPrivate _submitCrashReportFromPath:]| ERROR: Error 2 while attempting to submit /Users/dnickull/Library/Logs/iPod Updater Logs/iPodUpdater 1.log.plist
Feb 2 09:02:33 duane-nickulls-mac-pro [0x0-0x27027].com.apple.iTunes[620]: Child: Can't write length for data
Feb 2 09:02:33 duane-nickulls-mac-pro [0x0-0x27027].com.apple.iTunes[620]: Child: Couldn't write response, exiting...
Feb 2 09:02:33 duane-nickulls-mac-pro [0x0-0x27027].com.apple.iTunes[620]: Child: Can't write length for data

Unfortunately, now my iPod Touch (2G) does not work. It is not recognized nor is it responsive to any input. All it displays is an apple and some weird oval diagram.

Anyone have similar experiences? I have seen one other result but cannot find it.

Duane

The Case against Flex.

I saw an article written today trying to make the case against using Flex. The author seems to have mixed up coding and architecture practices with the actual Flex framework. While the article's headline seems to be promoting a campaign against Flex, I think there are some good points to note WRT coding and architectural practices. I wish to share the comment I left on the site. The original article is here.

http://www.cmswatch.com/Trends/1492-The-case-against-Flex-based-application-Uis


In addition, I could have pointed out that Flex/Flash has strong accessibility on top of the points I made (Thanks to Ted Patrick for pointing this out to me).

************REPLY************

Tim:

Okay - glove thrown, challenge accepted. I will disagree. First I will voluntarily disclose to everyone that I am an Adobe employee. As a Technical Evangelist for Adobe, my job is often to work with large enterprise customers. While your arguments have some merit (bad coding styles can lead to nightmares in all programming and scripting languages), the Flex framework, combined with good coding discipline should be welcomed and not feared.

Specifically:

YOU: "They almost always violate web accessibility guidelines. Sure, many thin-client application interfaces are not compliant either, but at least you have the opportunity to make them compliant -- and many platforms (e.g., Plone) do so."

DN: This is an architectural decision that is in the hands of the developer. With Flex, as with any other technology, there are trade-offs. I could challenge you easily on your definition of "compliant" but will instead state that Flex has been developed in conjunction with what developers want. When you see large enterprises like SAP, Documentum and even our own LiveCycle Engineering team, moving to Flex, they have not made this decision lightly. They have fully evaluated and accepted the programming models of Flex as valid and have taken the time to lay out good architecture before coding. Can you provide specific examples of where the framework itself violates your definition of compliance rather than the coding or architectural styles? What specific "Web Accessibility Guidelines" are you referring to? Flex gives developers what they want and the power to choose their own paths.

YOU: "They create support nightmares. Things like automatic updates, license-checking, and incompatibilities with the underlying virtual machine lead to many a help-desk call. As my colleague Kas notes, with AIR instead of applets you are just replacing Sun's virtual machine with Adobe's. The potential for trouble remains."

DN: Why do you think automatic updates are "support nightmares"? They are used universally by most software vendors for convenience and ease of use. Same with automatic checking for incompatibilities. The Java platform uses the same mechanisms. I strongly challenge this statement.

YOU: "They are prone to performance problems. Flex applications are prone to the same memory leaks and CPU spikes that bedeviled applets for years. To be sure, I've seen some fat and ugly JavaScript-based interfaces too, but at least everyone can debug those openly. We've also had customers tell us that their Flex interfaces are unusually chatty on their networks."

DN: As with any technology, Flex's ease of use provides new developers an opportunity to get in over their heads. Poor coding practices notwithstanding, the Flex IDE (Flex Builder) has a Debugger, Profiler, the ability to set break points to see what is exactly happening with your code. At the risk of sounding antagonistic, I would invite you to take a few hours to do some actual coding or take a hands on course with Flex to see exactly what is possible with the IDE. CPU spikes and memory leaks are the bane of every language. If you know of any specific issues in the current Flex framework, please file a bug with via opensource.adobe.com. I am sure the millions of Flash and Flex Developers will vote for such a bug if you can prove a demonstrate able, repeatable issue.

YOU: "You can't easily modify them. The vendor sets a unified interface and all their customers have to live with it. That might work for a one-dimensional tool, like a Twitter client, but what about more heterogeneous, multidimensional environments?"

DN: Again, proper coding disciplines and styles will help anyone create a maintainable code base. We have multiple MVC frameworks developed (Cairngorm, Matte et al) and firmly believe this is a developer and architect choice to embrace the discipline as it is with any other language. I can create code in any programming or scripting language that is obfuscated and hard to maintain. By contrast, I can also separate concerns and keep related classes properly documented and laid out with a well defined architectural style to avoid maintenance nightmares.

To sum my arguments up, I firmly believe your arguments are valid against bad coding and bad architectural practices. My advice is that anyone building enterprise applications in Flex or even just starting out, take the time to properly document, plan and architect their applications.

Duane Nickull

Friday, January 30, 2009

Killer Japanese Robot Toilets?

Okay - this is probably going to be my most bizarre blog post ever. Since arriving in Tokyo, I have been completely bewildered by the toilets in the hotel and conference centre. They are connected to electricity and have all sorts of weird warning and caution labels all over them. Is it just me or does running electricity into a toilet seem like a bit of a dangerous idea? Mine has no less than 5 buttons and a complete array of instructions and cautions. Since they are all written in a combination of Katakana, Hirigana and Kanji, I have no idea what they mean. I was scared!


I have been very careful not to touch any of the buttons for fear of receiving ice cold water up the backside. Take a closer look at the controls. Does any of this look enjoyable?


Does the middle one imply that the water pressure can be so high it can literally lift you into the air by aiming pressurized water up the rear? The woman in the graphic looks like she is balanced on a fountain of toilet water. I was wondering if you hit the stop button you just free fall back to the seat all of a sudden or if it just gently lets you back down?

Building a robotic toilet just seems like a bad idea. ROTFL!! I love Japan!!!

Wednesday, January 28, 2009

Kon'nichi-wa Tokyo!

Got to Japan. About to give a talk on Adobe SOA in the Enterprise (mainly focusing on LiveCycle, Flex, ColdFusion etc.) and then I'm doing the sneak peaks on server-side ActionScript. I love this country. We are in the Daiba district.



Wish I had brought my video camera for filming an episode of Duane's World.

Tomorrow I get to demo Ichabod, the headless Flash player that allows Google to index Flash content and follows links and states. I have it running on an Ubuntu instance on VMWare and have been running some of my own tests. I just figured out a new way to force Google to index Flash content (jump the queue). Anyone want to know?

;-)

Tuesday, January 27, 2009

Fender Frankenstein and Adobe!!!

On Monday, January 26, I got to go to Fender to talk to their developers (mostly all musicians themselves). What can I say? This was by far my best ever day as an Adobe Evangelist. To top the whole thing off, I got to play one of Eddie Van Halen's EVH Frankenstein guitars.



All the guys at Fender rock. My job is to go out and listen/preach about technology and work with architects to see how things might fit together, but I rarely get to join both my passions and work with music. As a musician, I have played Fender instruments most of my life. In fact, the only non-Fenders I own (one Jackson and one Hamer Flying V) are now both lines of guitars owned by Fender. To be blunt – I love Fender. My own Fender Frankenstein is my pride and joy (body by Cremer Guitarworks from USA).

The Hamer is a rare flying V designed for Michael Schenker. There were a very limited run of them and I was lucky enough to buy one in about 1984 for $2500. To date, it is my favorite studio axe.



So what are some good ideas for Fender’s web presence? One idea I strongly believe in is to harness collective intelligence, so I want to pose the question to all the musicians that use my blog. What do you want to see for Fender as a web presence? What is your idea of a perfect user experience with Fender?

One idea I think would be cool is to provide a music mix wizard like the one from www.mixmatchmusic.com. This would allow any Fender owner to post their tracks and mBits © to the MixMatchMusic site and allow people to remix, add vocals etc. This would be cool.

But not as cool as the honor of getting to play a real American made Fender Pre bass live on Stage with my bands 22nd Century and Stress Factor 9.

Sunday, January 25, 2009

SOA Soup? Hardly.

I came across this ridiculous blog post complaining about SOA standards initiatives and implying that all of us who worked on standards (well over 1000 people) have failed. This article has been curiously categorized under "Men's Health," which leads me to believe the ill-informed author is doing nothing more than trying to make some ad revenue.

Since the author decided not to reveal his or her identity, allow comments, or factually state matters related to SOA and provide a complete story, I decided to comment on it here.

First - the article itself is obviously short of one effort - the Open Group's SOA Reference Architecture. This really means we have 4 standards and figuring out how to use them and how they fit together can be daunting to an outsider (I'll concede this point). Here is how they work.

The OASIS SOA Reference Model is an abstract model for services. As such, it is a set of guiding principles on what SOA is. It is not the definitive definition of SOA, it is simple a definition. Also - since it is abstract, no one can claim their product is implementing it (if this was possible, it would be concrete rather than abstract). Here is a chart of how software architects generally capture and preserve knowledge. A longer version of this is explained in this SOA White Paper.

At the next level down, there are two SOA Reference Models currently being worked on in standards consortia. There are also many others that have been completed. It was always envisioned by the OASIS SOA RM Technical Committee that there would be numerous Reference Architectures based upon the Reference Model. A Reference Architecture is a generic blueprint for a class of items that may be further specialized to meet a specific set of requirements. The Open Group and OASIS both are working on standards based SOA Reference Models and having noted such, are already looking at ways to harmonize and work together (I will be at the Open Group meeting with my (very smart) OG friends Heather Kreger and Chris Harding to discuss this in San Diego in one week's time). In the meantime, Adobe (and a ton of other vendors), the US Justice Department, the European Broadcasting Union and a number of other groups have harmonized around the Reference Model. Its purpose has been to provide a common point of reference about what SOA is, noting the elements that are common in all SOA. If you were to make such a RM for a "House", at this level of abstraction, you would include things like the foundation, the walls, the doors, the roof etc, and define each one, its purpose, and how it interfaces or works with other components or entities. This does not prevent people from designing specific houses to add in other elements (like skylights, tunnels, fireplaces etc.), but merely gives the industry a point of reference.

One of the most valuable things a Reference Model brings us is the ability to note differences in definitions of the thing or class of thing.

The other effort mentioned (run by Cory Casanave) is OMG's SoaML. Cori is a good friend of mine and one of the most brilliant minds around. As is usual in OMG activities, the goals of SoaML are to support the activities of service modeling and design and to fit into an overall model-driven development approach. As such, it provides a valuable piece of work to the overall SOA set of standards. One of the most common questions people ask is "How do I identify a candidate for a service?". A model-driven approach (even like OMG's MDA) will help in this respect.

Now back to the ill conceived, anonymous spew of hatred and misleading venom. The author has gotten confused on the use of UML. Waaa! Too bad - UML is here to stay and it is an unambiguous and consistent approach to capturing and preserving knowledge (which is why most of the smarter standards groups use it). The 4 standards I have mentioned in this blog post have been participated in or contributed to by at least 1,000 people from most of the top software companies in the world (check out the references on the various documents and websites).

So who is right here? Actually no one. Perhaps we (the various standards consortia) have failed to simplify the delivery of SOA to the level of the gradeschool mind. Maybe this is something we need to table for the meeting in San Diego.

But I will state with absolute conviction that SOA is not something designed to sell products; it is a valid architectural and business paradigm of matching needs and capabilities via services. It is widely used and services are here to stay in modern computing. I also believe these four standards and others are important pieces of work for our industry to avoid confusion and add clarity.

Automobile "Bait and Switch" advertising alive and well in Richmond

My wife and I are hunting for a new car to replace her now sold Land Rover Discovery. We used AutoTrader.ca, a great site for finding cars after doing all our primary research on new cars at thecarconnection.com. We had settled on the Nissan Xterra as our first choice to investigate and found that Richmond Nissan had 5 Xterras advertised as available for sale (I printed out the paper with vehicle stock numbers and cars available the same day as we went to the dealership).

LOL - when we got there, not only were the salesman not able to find them (claimed they only had one left), they immediately mentioned the new model (2009) is on sale. This is after we packed the whole family into the car for a 45 minute drive to the lot.

Bait and Switch is an illegal practice in British Columbia and I urge anyone who visits Richmond Nissan to call them first to keep them honest. Dishonest cars dealers are not good for the reputation of the brand nor do they keep customers happy. Even today, they are still advertising 5 Xterras they do not have for sale. (Note - this link will likely not reflect the state of Sunday, January 25, 2009 as time passes so the image is posted below).



Luckily, we happened to venture across the street to the Toyota dealership and took a peak at some of the new Toyotas. We decided on the 2009 Toyota RAV4 7 passenger. This car had been on my radar from The Car Connection but we had favored the Xterra as it had an overall rating of 7.8/10 vs 7.6/10. Nevertheless, after seeing both cars, the RAV4 beat the Xterra is several categories. Most important aspects were 7 seats, factory ski/board racks, 37 MPG highway (the costs will pay for itself over the Land Rover in gas savings at $1.28/litre) and drive-ability. The on-demand 4-wheel drive is an important feature too for the trip to Whistler next month.

Friday, January 23, 2009

Silverlight vs Flash: Did someone get paid off?

Working for Adobe, I have heard a few rumors that Microsoft has been willing to pay people to use Silverlight (R). This webpage evens quotes a former analyst with Directions on Microsoft:

"...if Microsoft is willing to pay, computer makers will be willing to include Silverlight."

Others have written articles exposing that Microsoft is willing to woo developers to Silverlight. I guess if I ran the program, I would jump start it the same way if I had a big blank check and a brand new un-proven technology.

Today a colleague at Adobe sent me a funny email. Apparently Flash gurus XPLANE (http://www.xplane.com/) built a brilliant Silverlight application which slightly echoed the Adobe MAX developer theme posters. I installed Silverlight 2.0 to view this one - great work!!

When you zoom in on the poster however, there is what appears to be a payoff going on. One character identified in the keys as the "Client Business Owner" (see below)....


appears in the picture to be handing a large bag of cash to the Account Manager (identified in key) as shown below:

Could it be a clandestine clue of a secret payoff? What do you think? Or maybe the development shop is paying Microsoft to use Silverlight?

Disclosure: I do work for Adobe and yes - we have paid people to do Flash projects for various reasons.