Tuesday, December 09, 2008

Mac Pro 8-core RAM not recognized?

WARNING: Do not attempt this if you are not comfortable with hardware hacking. I will not accept any responsibility for anything you do trying to follow this article.

I went to the store yesterday to get more RAM for my Mac Pro, an essential need really if you are editing video as I am for Duane's World TV. I discovered that installing the RAM into an 8-core Mac Pro is not only somewhat difficult, but poorly documented. This step by step guide is aimed at helping save others the 4 hours it took me to get an answer from Apple.

First, the basics. For the new Mac Towers, RAM is distributed into two Printed Circuit ("Riser") cards, each with 4 DIMM slots that you can put RAM into. Before you begin, there are a few basics you should understand. Ground yourself!!! I cannot emphasize this enough. There are commercial products available or you can roll your own. I decided to use a 1/4 inch guitar cable taped to my wrist (metal touching skin) and grounded by connecting it to an Ampeg Bass head ground connection. You can also use a metal plumbing pipe but be careful that it is metal all the way into the ground (sometimes they use PVC in the middle). Here is my MacGyver setup:


This keeps static and other electrical flows from ruining the RAM. If you want to know why, read this article here. Believe me, this is not to be taken lightly as I have personally ruined RAM chipsets.

When you remove the panel to the Mac, you will see two RAM banks, an upper and a lower. Note that there are white dots that are aligned with the surface of the chassis to let you know that the boards are installed properly. See below:



On the newer machines, you can simply pull them out by placing your fingers in the holes as shown below and pulling gently. Be sure to read service bulletins to understand if a clasp or other lock in device gets added after this article runs to avoid breaking these board. In general, you must treat these PC ("Riser") boards very gently. Do not carry them across carpets then let them touch a metal window frame or bend them.


Gently remove both the upper and lower boards and place them on an insulated surface. Now here is the weird part. I always knew RAM had to be installed in matched pairs and I had a 2GB in DIMM 1 on both left and right and a 1 GB on DIMM 3 on both left and right so I installed an extra 1 GB on each side in DIMM 4 on both left and right as shown below.


This should have been 8 GB of RAM in total
((DIMM1-Left = 2GB + DIMM1-Right = 2GB) + (DIMM3-Left = 1GB + DIMM 3-Right = 1 GB) + (DIMM4=Left = 1 GB + DIMM4-Right = 1 GB) = 8 GB. WRONG!! It was not recognized. When I started up my system, this is what showed up.


It showed that DIMM 2 and 4 on both sides were empty and I only had 6 GB of total RAM. I tried various configurations before giving in and calling the shop that sold me the RAM. The guy there knew nothing about installing RAM and just told me I probably had bad RAM. I tried to explain that each RAM stick worked in positions 1 and 3 on both sides as long as it was balanced however he failed to grasp the most primitive forms of logic. I then called Apple who were much more knowledgeable. It turns out that not only do Left DIMM 1 and Right DIMM 1 have to be matched on 8-core systems, but DIMM 1 must match DIMM 2 on both right and left. This left me going back to the store to buy two more 2 GB RAM strips and installing them as shown below:


Place them back VERY gently into the two slots. Don't force these into the chassis. Before the final push (you will have to push hard) the white dots should be about 3 mm away from the metal chassis edge. If you try to do the hard push when they are 15mm away, you can break something. Also - before you try to place them back into your machine, make sure each RAM strip is locked into place as can be evidenced by the clips lining up as shown in the second photo below. If the clip is left open as shown in the first photo and you try to force it, you can easily break something that will cost a lot of money to fix.



After all is safely back into place, start up your Mac. Here is what I was rewarded with!


12 GB of RAM with 8 cores!! I am now faster than you!!! Bwahahahaah!!!

Monday, December 08, 2008

Duane's World Episode 14 - InterAct 2008, Media and Democracy

In this episode, Duane explores the InterAct 2008 conference event in Washington, DC and interviews Holly Hickman (formerly of Fox News) and Tamela Beene about the importance of a free and independent press to any democracy. Code and Tunes also features how to work with the Flex Color Picker component within the Flex 3 framework.

Sunday, December 07, 2008

The Intense Duane Chaos!

This is what I look like when I am being intense.

...or lackadaisical....


...or just having fun....

Friday, December 05, 2008

Why you need to meet me in Dubai!

Circle 14 – 18 December 2008 in your diary! THE NEW MEDIA EVENT is taking place from 14 – 18 December 2008 at JW Marriott Hotel in Dubai, UAE.

Everyone that IS somebody in the PR industry will be there. WHY? Seriously, who would not like to be in the same company with these speakers?
• SHEKHAR KAPUR, Academy Award Winning Director Of Elizabeth And Elizabeth: The Golden Age
• DUANE NICKULL (ME), Sr, Technology Evangelist, Adobe Systems.
• DEBBIE WEIL, Author, The Corporate Blogging Book
• AMMAR BAKKAR, Head Of New Media, MBC Group
• MOHAMED NANABHAY, Head Of New Media, Al Jazeera
• PHILIPPE DELTENRE, Media Strategist, Microsoft
• ANGEL GAMBINO, Former Global VP, Music And Content, BEBO

They will have 25 speakers in total. And all of them are playing an integral part in the new media revolution. The full listing is on the website at www.thenewmediaevent.com.

OK, so you may be asking yourself, why do I need to attend an event on new media? What is in it for me? I am doing a great job – plus all of this new media stuff is only hype! Yeah, keep telling yourself that!

Do you realize that there are 200,000,000 blogs on the net? 150,000,000 videos on YouTube? 120,000,000 Facebook members? I am sure you don’t. You also don’t now that it takes only one blog post to destroy your organization’s reputation. Imagine, there are over one billion blog posts on the net and it takes only one to destroy everything you have been working for.

There is a teaser for the event here:

Duane's World 14 - The New Media
.

You have several options.

1. Visit www.thenewmediaevent.com
2. Call +971 4 335 2437
3. Email register@iirme.com

Interview on Duane's World from Dutch Cowboys

I got to do this great little piece during MAX 2008 Europe in Milan 3 days ago:


Patrick Petersen interviewt Videohost Duane van tv.adobe.com from AtMost Channel 8 on Vimeo.

Enjoy!

Building Service Clients With Flex and AIR (Improved) Course Online

During both MAX events, James Ward and I taught a course on building Adobe Flex and AIR clients for various service types (including Web Services, REST, HTML clients, Flash Remoting) talking to PHP and ColdFusion. During the first session in San Francisco, we had a few glitches (the image had MySQL already running that prevented the WAMP stack from being able to start and gave only a cryptic "Java.socket.exception" exception). We also had the remote server at www.webservicex.com go down during the middle of the class as well as some hard drive glitch that wouldn't let a valid Flex project be loaded. I was perplexed as all of these things had been tested several times prior -- however, things happen.

To ensure this did not happen again, I have rewritten a new version of BlazeDS which now includes the Apache Axis 1.4 SOAP Stack and some additional *.jars. We also rearranged the course so it can be taken as a self-paced tutorial on how to talk to the various types of courses.

I have placed the entire courseware up for grabs by anyone at http://www.web2open.org/courses.html. I would like to invite anyone to download and take or even consider teaching these courses to your user groups. They are both release under Creative Commons license but please share and share alike. I put a lot of time and effort into both of there courses.

If you took the courses at MAX, please also realize that James and I always put too much content into every course to account for a best case scenario (the entire class types fast, asks no questions, has great eyesight, and makes no mistakes). Given this rarely happens, we often do not get through the entire course; so we designed this to make it a self-paced tutorial complete with instruction guide in case you want to teach it to others. All the projects are included and well commented. User group managers, please make this available to your groups.

To those of you who attended the first MAX Lab in San Francisco, we apologize again for the glitch but things were beyond our control. This should more than make up for it. All the other classes went very well (we did this 5 times).

Audience Assumptions
- Attendees are familiar with XML
- Attendees understand the basics of network architecture and various protocols
- Attendees have Adobeʼs AIR runtime installed
- Attendees have Flex Builder 3 installed

Prerequisites and Downloads

Before you can take this course, you must have the following
software installed on your computer:

- Adobe Flex Builder 3 or later
- Adobe AIR 1.1 runtime or later
- Java ™ SDK 1.5 or higher

Additionally, you must have the CD of courseware that includes the
two directories and a soft copy of this handout.

The following image must be on all computers:
1. The AIR runtime
2. Flex Builder 3 or later
3. BlazeDS
4. MAMP (Mac) or WAMP (Windows)
5. ColdFusion (optional)

A preconfigured MAMP image (Mac OS X) is available here:

A preconfigured WAMP images (Windows) is available here:
http://www.web2open.org/courses/MAX2008_BuildingServiceClients.zip

When you get it:

1. unzip it to the desktop

2. open a command window and navigate to the directory \MAX2008_BuildingServiceClients\sampledb and type in “startdb”. It should start up a database. Leave that command window open.

3. Grab a new command window and navigate to \MAX2008_BuildingServiceClients\tomcat\bin and type “catalina run”. This should start up tomcat.

Please then test the following URLs to make sure they are there:

http://localhost:8400/axis – to make sure Apache Axis 1.4 is up and running fine
http://localhost:8400/xml/Wines.xml
http://localhost:8400/xml/crossdomain.xml


The AIR runtime may be downloaded from:
http://get.adobe.com/air/

A trial version of Flex Builder 3 may be downloaded from:
http://www.adobe.com/products/flex/

Use the BlazeDS included in the build.

MAMP may be downloaded from:
http://www.mamp.info/en/download.html

WAMP may be downloaded from:
http://www.wampserver.com/en/download.php

A trial version of ColdFusion may be downloaded from:
http://www.adobe.com/products/coldfusion/

The following files must be on all computers

~/RootFolder/AttendeeHandouts.pdf
/AttendeeProjects
/CompletedProjects
/BlazeDS
/MAMP (For Mac OS X only)
/WAMP (For Windows only)

Each computer must have an internet connection

Description

Learn how to build SOA clients with Flex and Adobe AIR. In this hands-on session, you will explore how to build various service clients using the WSDL Import Wizard, hand-coded ActionScript 3.0, and simple REST-based services. Flash Remoting and performance metrics will also be covered. This session is intended for those who build front-end service clients for business applications. Attendees should come prepared to write code or partner with someone else writing code. (This session complements "Deploying Services with BlazeDS and LiveCycle Data Services ES.")
Preparations for this Lab

1. If the Windows image you are using has a MySQL instance running, it must be killed first. To do this, please go to Start -> Control Panel -> Administrative Tools -> Services and stop the MySQL instance.



2. Next, start up the BlazeDS server. To do this, open a Command Window (or shell) and navigate to \BlazeDS\sampledb (if on OS X, use forward slashes instead of back for path).

a. On Windows, type in “startdb”. This should start the database.

C:\Documents and Settings\Administrator\Desktop\MAX2008_BuildingServiceClients\s
ampledb>startdb

C:\Documents and Settings\Administrator\Desktop\MAX2008_BuildingServiceClients\s
ampledb>java -cp hsqldb.jar org.hsqldb.Server
[Server@1d58aae]: [Thread[main,5,main]]: checkRunning(false) entered
[Server@1d58aae]: [Thread[main,5,main]]: checkRunning(false) exited
[Server@1d58aae]: Startup sequence initiated from main() method
[Server@1d58aae]: Loaded properties from [C:\Documents and Settings\Administrato
r\Desktop\MAX2008_BuildingServiceClients\sampledb\server.properties]
[Server@1d58aae]: Initiating startup sequence...
[Server@1d58aae]: Server socket opened successfully in 40 ms.
[Server@1d58aae]: Database [index=0, id=0, db=file:flexdemodb/flexdemodb, alias=
flexdemodb] opened sucessfully in 1512 ms.
[Server@1d58aae]: Startup sequence completed in 1552 ms.
[Server@1d58aae]: 2008-11-25 12:29:14.087 HSQLDB server 1.8.0 is online
[Server@1d58aae]: To close normally, connect and execute SHUTDOWN SQL
[Server@1d58aae]: From command line, use [Ctrl]+[C] to abort abruptly




b. On Mac, type sudo sh ./startdb.sh




3. Now start the servers.

a. On Windows, do this by changing directories until you are at the \BlazeDS\tomcat\bin directory (note: use forward slashes on Unix based Systems) and type catalina run


C:\Documents and Settings\Administrator\Desktop\MAX2008_BuildingServiceClients\t
omcat\bin>catalina run

Using CATALINA_BASE: C:\Documents and Settings\Administrator\Desktop\MAX2008_B
uildingServiceClients\tomcat
Using CATALINA_HOME: C:\Documents and Settings\Administrator\Desktop\MAX2008_B
uildingServiceClients\tomcat
Using CATALINA_TMPDIR: C:\Documents and Settings\Administrator\Desktop\MAX2008_B
uildingServiceClients\tomcat\temp
Using JRE_HOME: C:\Program Files\Java\jdk1.6.0_10
Nov 25, 2008 12:34:20 PM org.apache.catalina.core.AprLifecycleListener init
INFO: The Apache Tomcat Native library which allows optimal performance in produ
ction environments was not found on the java.library.path: C:\Program Files\Java
\jdk1.6.0_10\bin;.;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\CFu
sionMX7\verity\k2\_nti40\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\
Wbem;C:\Program Files\ATI Technologies\ATI Control Panel;C:\Program Files\PC-Doc
tor for Windows\services;C:\Program Files\ATI Technologies\Fire GL 3D Studio Max
;C:\WINDOWS\Downloaded Program Files;C:\Program Files\Common Files\MXI;C:\Progra
m Files\Common Files\Adobe\AGL;C:\Program Files\QuickTime\QTSystem\
Nov 25, 2008 12:34:20 PM org.apache.coyote.http11.Http11Protocol init
INFO: Initializing Coyote HTTP/1.1 on http-8400
Nov 25, 2008 12:34:20 PM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 432 ms
Nov 25, 2008 12:34:20 PM org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
Nov 25, 2008 12:34:20 PM org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.14
Nov 25, 2008 12:34:24 PM org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8400
Nov 25, 2008 12:34:24 PM org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8009
Nov 25, 2008 12:34:24 PM org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/20 config=null
Nov 25, 2008 12:34:24 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 3988 ms



b. On Mac OS X, do this by changing directories until you are at the /BlazeDS/tomcat/bin directory and type
sudo sh ./catalina.sh run



4. You should be able to validate the servers are up and running by hitting the following URL: http://localhost:8400/xml/Wines.xml

Friday, November 28, 2008

Live Blogging From MAX Milan 2008

During the MAX 2008 event keynote in Milan, Adobe Evangelists Mihai Corlan, Tom Krcha and Piotr Walczyszyn will be doing some live blogging. If you want to get the very latest goods on what is happening, tune in to these three guys' blogs. You can find the MAX schedule at the MAX website.

Mihai Corlan - http://corlan.org

Tom Krcha - http://flashrealtime.com/

Piotr Walczyszyn - http://www.riaspace.net/

Thursday, November 27, 2008

Can someone please explain this?

Why are we paying taxes to our governments so our governments can give that money to banks who then lend it back to us at a profit. Someone is getting really screwed here and I think it is us, the people. The worst part is if the bank screws up, the government just gives them more of our money. Why don't I just keep a larger portion of my paycheque? Quite frankly, I have started to enjoy the sight of major bankers in trouble.

Please remind me why any of this is even legal?

Netherlands Java User Group Rocks!!

This year, I had the immense honor of being a keynote speaker at the jFall event sponsored by the Netherlands Java user groups. I also gave a second talk on SOA and Adobe LiveCycle ES which had a big impact amongst the attendees. Most of them noted that Adobe LiveCycle ES is in fact a very mature J2EE Enterprise Service Bus. It has been a busy few weeks and I am behind on sending out the developer licensed versions of LiveCycle ES so I apologize to everyone who is waiting. It will come. If you did not get yours yet, please remind me via email to dnickull [at] adobe [dot] com.

Here is a video of the event.


J-Fall 2008 from Bachelor-ict.nl on Vimeo.

Tuesday, November 25, 2008

Adobe MAX 2008 AIR Boot Camp Course Online

James Ward and I gave a 3.5 hour mega lab at Adobe MAX 2008 which was attended by 250 people (sold out). The course is designed so that anyone can take it at as a self-paced tutorial. Here is a shot of about 25% of the room.



After the success of the course, we decided to upload all the materials so others could take this and teach. It contains some great examples from James' book as well as 12 completed projects. These demonstrate the main aspects of AIR that distinguish it from Flex and Flash.

While presenting this at MAX, there were some minor glitches and that is why we are posting this publicly. One glitch was that the webservicex.com site was not working well (an external site required for the web services module). This was obviously well beyond our abilities to control so we had to do the best we could at the time. If you want to see how the web services introspection wizard works, please watch the Code and Tunes segment of Duane's World Episode 1. I have tested it now and it seems to be working okay. This could have been a bandwidth issue with 250 people connected to the Internet at the same time.

The second glitch was very minor. We had a few people who complained and said "We never got a chance to complete all the labs [modules] of the course". This was by design; James and I always include more materials than we know can be covered in the time allowed. This is done to allow attendees to work through the rest of the course at their own leisure. The course is set up so anyone can take it and we wanted to have more than enough materials to be somewhat flexible should the consensus in the room be to explore one particular aspect of AIR in more detail.

The course is being given out in hopes that others will take it and teach it at their companies or to user groups. You may download the AIR Tutorial from here: The course is laid out as follows:

|
|- - AIR-Boot-Camp_DNICKULL-FINAL.* - PDF and PPT versions of slides
|
|-- * AIRBootCampHandouts - what you give out to attendees if you teach it
|
|--AttendeeProjects - these are the starter projects for the students
|
|--CompletedProjects - the solutions for each of the 12 labs

* Use the handout as the Teachers Guide - a special guide for those who wish to teach this class.

Good luck - please let us know if this works for you. If you want to introduce AIR to your co-workers, we encourage you to take these materials and use them as you wish. We did this for you and put a lot of effort into this.

Monday, November 24, 2008

Another way for Adobe designers to save when attending Adobe MAX Milan

Purchase Adobe(R) Creative Suite(R) 4 or any Adobe product and get 10% discount off  if you attend Adobe MAX Milan. 
Take advantage of this offer : www.adobe.com/go/max2008

See conditions below.**

** Offer good for Adobe MAX 2008 attendees only. Offer cannot be combined with any other offer, package or registration code. The offer with the 10% discount off is valid on all products on all Adobe Store in EMEA available via an offer code embedded on the following URL : www.adobe.com/go/max2008. Offer valid for qualifying purchases made between November 16, 2008 and December 6, 2008, applicable for web or phone orders. Terms and conditions for Adobe MAX registrations will also apply. Offer is not transferrable and valid only for individual product registrant in possession of a valid purchase confirmation. OEM, NFR, and volume licensing customers are not eligible. Void where prohibited.

Friday, November 21, 2008

Alchemy: C and C++ running in Flash

So you think Flash is fast now? Check out Alchemy as soon as you can. Alchemy was previewed 11 hours ago for the purpose of reusing existing C and C++ libraries in Flash Web applications.

Alchemy is a research project that allows users to compile C and C++ code that is targeted to run on the open source ActionScript Virtual Machine (AVM2). With Alchemy, Web application developers can now compile their C and C++ code on Adobe Flash Player 10 or Adobe AIR 1.5.

Developers should be careful to avoid using C and C++ projects that rely on OS-specific libraries. Alchemy is ideal for computation-intensive use cases (which can be slower on Flash), such as audio/video transcoding, data manipulation, XML parsing, cryptographic functions, or physics simulation.

Performance:

Runtime performance can be considerably faster than ActionScript 3.0 and anywhere from 2-10x slower than native C/C++ code. Alchemy is not intended for general development of SWF applications using C/C++.

For more information, go to labs.adobe.com/technologies/alchemy

Thursday, November 20, 2008

Why Tech Stocks are a Good Buy

I've been around. I got slammed in 1987 when the stock market crashed. I remember my parents getting crunched in 1980. There is an important cycle here that has been emerging in my head as a theory but it might be several years before we can find out if there is truth to it. Here is how it goes. It starts with a sequence of events.

1. The economy sours because of "X"
2. The stock market crashes
3. The stronger companies acquire the weaker ones in every vertical.

Now when companies get acquired, their IT systems need to be integrated. If you look at any merger or acquisition of roughly equal sized companies, this takes some time. First consultants have to work with internal IT staff to create a plan, then it is put into action.

So what should the signs be if this is true?

Q: IT people should be as busy as ever.
A: True from my perspective

Q: Consulting companies are still hiring.
A: True from my perspective

Q: Tech conferences will be packed and busier than ever.
A: True from my perspective

The first major sign we will see is going to be results from consulting companies combined with an increased amount of RFPs on the street, probably starting late 2008, Q1 2009. While I don't think hardware will be involved at first, the secondary signs will be an increase in sales from Apple, IBM, Dell et al. In the midterm, we will see system integrators and big projects using lots of ESBs (like Adobe LiveCycle, IBM's offerings, Oracle's suite). Sales will probably weaken a bit for the next month, but strong demand will bounce the tech sector back fast.

That is my prediction. Let's revisit this blog post in about 12 months and see what happened.

Saturday, November 15, 2008

22nd Century @ 330 Ritch, Monday Nov 17

10:00 PM will hit the stage. Set list below:

Live at the Railway Club, May 2008

Peculiar - Original (for upcoming 2nd CD)
Echo Beach - Punk version of Marth and Muffins
Live in Space - Original (off CD "The Twenty Second Century")
No Secrets - Punk version of Angel City song
Let me be - Original (off CD "The Twenty Second Century")
Sawgrass Hill - Original (off CD "The Twenty Second Century")
Saturday Nights all right for fighting - Punk version of Elton John Classic
Good Grief - Cover of Foo Fighters
Pieces - Sum 41 Cover
509 - Original (off CD "The Twenty Second Century")
Longview - Greenday Cover
FireFly - Original off "Little Green Planet"
Zero - Smashing Pumpkins Cover
Nightmare - Original (off CD "The Twenty Second Century")
What my Age - Blink 182 cover
U Generation - Original (for upcoming 2nd CD)

+ some others (in case of encore)

Friday, November 14, 2008

Double-neck Fender Pre Bass/ Stratocaster done!

It took me a while to complete this project but it is finally done. The body itself was built in 1986 by Cremer Guitarworks out of Illinois. I originally put some cheaper necks on it to test it out but it is now complete with a 2005 Pre bass and 2008 Fender Strat.



I put custom pickup for the guitar (Seymour hot stacks) and some other custom goodies but tried to keep it the way Fender would have built it if they ever made such a beast.



Now I need to find a case for it before it can go on the road with 22nd Century and Stress Factor 9.

Lance Armstrong at Web 2.0 Summit?


While it would be hard to say which talks were the best, my high point was getting to personally meet up with Lance Armstrong. After watching him win a battle with cancer, then proceed to win the Tour de France 7 consecutive times, this is a person who inspires me. What did we talk about? Vancouver singer Bif Naked is undergoing a battle with breast cancer (see link on left to blogroll). Of all the things Lance could have asked me or Tim, he was most interested in how she was doing when I told him. I am sending Bif a copy of Lance's book today.

What I am going to do now is ask you all for something totally unreasonable. Give to Lance's charity LiveStrong. Give because it is important to beat this bastard called cancer. Cancer has touched too many people's lives. Lance could use his fame for anything, but he chooses to focus on helping others beat cancer. Please donate now.

Peace, love & inspiration for all!!!

Wednesday, November 12, 2008

Watching James Ward demo Pixel Bender at jFall!

James Ward just did a great demo of Rich Tretola's AIR iteration of FotoBooth. Rich used the new Pixel Bender technology in Flash Player 10. The results are amazing!



Download Rich's app at:
http://blog.everythingflex.com/fotobooth/

Monday, November 10, 2008

Duane's World TV now on Podcast

We have just finished uploading most episodes of Duane's World in high quality m4v format. The new site may be accessed at:

http://www.duanesworldtv.com

Please let me know if you find any issues (public beta).

Sunday, November 09, 2008

Special Mobile events at MAX 2008

A special bulletin from the awesome Lisa Powers!!!! Meet Lisa live at the show at 33o Ritch Club Monday Nov 17 from 10:00 - 12:00 if you have more questions!

Mobile Summit at MAX 2008 – November 16

Join Adobe and our partners — Nokia, Qualcomm®, Verizon, Sony Ericsson, Thumbplay®, and Zed — to learn about new opportunities for mobile developers this year. Get a sneak peak at what you will see and hear at MAX before anyone else does! Hear from Adobe partners and key industry players as they present the newest mobile solutions, technologies, and distribution opportunities for mobile developers. We’ll provide a great networking environment for you and your colleagues, so… Join us!


Mobile Networking Event – November 19

Stay a little longer and attend the first MAX 2008 Mobile Networking Event where you can mix and mingle with the mobile industry leaders and hear about exciting new mobile applications being created by the developer community.

http://www.eventsadobe.com/mobilenetworking/invite.html

Duane's World Merchandise now available

A lot of people asked me if they could get a Duane's World T-Shirt. There is now a place to order via the Duane's World (not quite completed) web site.

Here are some of my fav's:
Army fatigue DW short with skull logo

Women's Ringer T

Thursday, November 06, 2008

Piotr and Duane: "Come to MAX in Milan!"

For anyone out there still with any doubt of whether or not they should come to MAX EMEA in Milan, Dec 1-4.



Here is a partial list of the top evangelists and luminaries who will be there:

oh yeah - and me too....

See you there!

Duane's World Episode 13 - Konductor, How to Drag & Drop in AIR

This episode was filmed in Vancouver where I was lucky enough to catch up with Konductor Software's Derek Zarbrook. Derek demonstrates how Adobe AIR has been used to enhance a user's experience in content management, and how Dreamweaver extensions can improve the workflow for designers




I also wrote and recorded a grind core metal song for this episode under my alter-ego Duane Chaos. The download is available via the link on the video.

Monday, November 03, 2008

MAX 2008 :: Going off big time and secret show!!!

I don't know what the limit is or how many more we can squeeze inside MAX, but I just got an internal email stating the number (sorry - cannot share) and I believe it will be amongst the largest 3 events I have attended this year! MAX is gonna rock, especially this year. Why? Well - first, we have tons of new content and stuff to show. Second, there are major industry setting announcements.

My own sessions are actually mostly sold out. Check this out:

Four out of six are sold out completely. If you want to still catch the AIR Boot Camp though, it will be taught in Milan in December. I am sure we can talk Enrique into a new sets of labs for building service clients with Adobe Flex and AIR too since all 3 courses sold out.

BIG (NOT SO) SECRET EVENT!!!




On Monday November 17, there is a special live band party at 330 Ritch. My band 22nd Century is playing and we will be covering stuff off our first CD as well as new songs from the upcoming 2nd CD and tons of covers from Ramones, Foo Fighters, Smashing Pumpkins and other hard rock/punk bands.. Take a listen here - if you like the music, download it and come along. Email me dnickull at adobe dot com to get tickets for this event. IT ALSO IS HALF SOLD OUT!!! This is being sponsored by Nitobi, Konductor Software and Mix Match Music!

My invitation to everyone on my Tuesday classes:

Let's Rock late on Monday night then do the sessions Tuesday AM!

Palin dupe not new, they did it to Bush too.

Having read of the great dupe whereby Sarah Palin got rooked by two Canadian pranksters, I had to both laugh and shake my head at the immensity of the stupidity. First - I laugh because it is good to remind us that no matter what our status in society is, we should still all be the target of practical jokes. Sarah Palin got rooked - it was funny. People play jokes on me - it is funny. There is a line though where the joke reveals something personal about the prank victim that we all wish we hadn't seen. In the cases below, what we learn is that the prank victims are both ignorant and liars.

Another great Canadian comedy team, This Hour has 22 Minutes, also did this to Bush prior to his first term in office. George Bush was surprised to be receiving what appeared to be a ringing endorsement from the Canadian Prime Minister in the months leading up to his election.

I reprinted this from http://www.perrspectives.com/blog/archives/000957.htm

During an interview, George Bush was aparently happy that he had received the ringing endorsement of Canadian Prime Minister Jean Poutine:

"Prime Minister Jean Poutine said he wouldn't endorse any candidate in this election, now he says he believes George W. Bush is the man to lead the free world into the 21st century."

Bush warmly accepted his endorsement:

"He understands I want to make sure our relationship with our most important neighbour to the north of us is strong and we'll work closely together."


Problem was that we have never had a PM named Jean Poutine. Poutine is a dish eaten by my fellow Quebecois brethren made from french fries, gravy and cheese curds. Our PM was Jean Cretien.

Bush lied! He lied and he should have admitted that he did not know anything about Canada. He should have known the name of our leader at least or not pretended to know him on a personal level. Before the Americans elected him, weveryone in Canada knew this guy was not to be trusted.

But alas - now it is Sarah Palin's turn. She too should have admitted a similar ignorance of her neighbour (not Russsia which is separated by water, but Canada which is firmly joined to Alaska). If her insistence that being a neighbour qualifies you for making foreign policy decisions is true ipso facto, we are all in trouble. Here is what happened with Sarah:

Pranksters: Some people said in the last days, and I thought that was mean, that you weren’t experienced enough in foreign relations, and you know, that’s completely false, that’s the thing I said to my great friend, the Prime Minister of Canada, Stef Carse.

Sarah Palin: Well, he’s doing fine, too, and yeah when you come into a position underestimated, it gives you the opportunity to prove the pundits and the critics wrong. You work that much harder-
Our Prime Minister is Stephen Harper. We have never had a PM by the name Stef Carse.

Where are the REAL Republicans? Where are the smart, fiscally conservative, small government, let's be successful Republicans?

For the record, I like both Obama and McCain. I think either would be a good leader. I don't really know Biden but he seems experienced. What scares me more than anything else is that there is a small chance Sarah Palin may one day hold the most powerful office of the US. I honestly do not believe she is fit for that job.

Friday, October 31, 2008

Thursday, October 30, 2008

Adobe Evangelists caught on video discussing MAX secrets

Warning - this is shocking! It may not be suitable for all family members, frightens small children and bruises fruit at up to 60 paces.

Wednesday, October 29, 2008

Busy Adobe Evangelists? Private Party?


Well - this is the message I got today when I logged on. Guess which button I pushed?

;-)

For those of you who I did not get stuff done for - sorry about that. It will take me weeks just to organize the calendar which I do not have time for until MAX 2008 is over with.

Speaking of MAX, if you have not yet considered it or registered, get it done ASAP! My band (22nd Century) will be playing a side show at 330 Ritch Club on Monday Nov 17, 2008 (10:00 - 12:00 PM) at a special invite only event sponsored by Mix Match Music, Nitobi and Konductor Software. The details are here. Let me know if you want an invite!

Our set will include our own originals (some for the first time ever) plus the following:

Zero, Smashing Pumpkins
Saturday Night, Nickleback
Good Grief, Foo Fighters
No Secrets, Angel City
Echo Beach (Punk Cover), originally by Martha and the Muffins
Longview, Greenday

Tuesday, October 28, 2008

More greatness from fellow evangelist Lee Brimelow

Today Lee sent out a message internally. Here is the message:

Today I interviewed Justin about the changes to the FileReference class. I’m sure you have heard about this a lot in your travels. You can direct people to this interview for more details on the reasoning behind it.

http://theflashblog.com/?p=463

We also just released an article on the ADC that goes into even more detail.

http://www.adobe.com/devnet/flashplayer/articles/fplayer10_uia_requirements.html?devcon=f2

Thanks,
Lee

Lee Brimelow
Platform Evangelist - Adobe Systems
www.gotoandlearn.com
www.theflashblog.com

Monday, October 27, 2008

Defining RIA: Borders, a case study?

Rich Internet Application (RIA). What is it? How would you explain it to someone? It is not easy to do since the "rich" part is really subjective. For years I have thought about this definition as part of the Web 2.0 Patterns book and the troubles we will have trying to quantify something as intangible as "rich" (rich is something a lot of us used to be until we looked at the stock market lately).

Today I got a break on it. HB Mok (a colleague at Adobe), sent out a notice that there is a case study done on the Borders.com web application showing they had a 62% increase in conversion! While the Adobe talking points on this were around how Flex was used, I also found this valuable for anyone trying to reinvent their business. Naturally, if this is your interest, you will want to download the Allurent Case Study from here.

I don't want to spoil the entire case study but I will relay some of the more important findings:

o 62% higher conversion

o 41% more products viewed

o 11% more likely to recommend

Borders.com is worth taking a look at if you haven't already.  Is it possible that "rich" from RIA really means that you have the information at your fingertips you need?  Could it mean that your forms load quickly and embrace undeniable logic (example - not asking you for a "zip" code if you're shipping to Canada)?  Could it mean the perfect balance of graphics, data and interaction, all blended perfectly in an intuitive package that speaks to the users?

I have to ask these questions pragmatically.  Flex gives you the power as a developer but you still need to do the architecture behind it.  I applaud Borders.com for their work of art combining logic, emotion and function.  

To the developers and architects at Borders - well done!  

Sunday, October 26, 2008

Duane's World 12 - Open Source, Oysters and Beer!

This is part two of the coverage of Open Everything from Hollyhock. In this episode, I get to talk to Mark Surman (Shuttleworth Foundation) as well as collect further thoughts from Joel Solomon and Mozilla's Zak Greant. The code and tunes section features a tutorial on how to detect keyboard events and use a case and switch statement in AS3. The code to write AIR applications that use full screen interactive mode is explored too with the tunes of SR-420!

Saturday, October 25, 2008

Flash SEO Research: Google DOES use Ichabod to index Flash

For Flash Search Engine Optimization fans, this will be very interesting!



The first part of my research project into how Google and Yahoo use Ichabod to index flash is complete. OK. Before you get all excited about what you see above, let me give you the caveat that results may vary slightly on your browser, however they should generally be the same. The Google search for duanes world was done on a machine in Vancouver, Canada (Google provides some regional variances for search results). For the search "Duanes world", the site http://tv.adobe.com beat out http://technoracle.blogspot.com. The latter has a huge text "Duane's World" across the top while the former is built completely in flash. Even more spectacular is the fact that the Duane's World episodes are in fact dynamically loaded at runtime by the flash page template.

There are factors that influence this so it is not a pure experiment. External links to these pages and user click patterns obviously are factors in this elevation. What is important is to see the patterns of Google and Yahoo actually picking up text from Flash.

UPDATE: Ignore the following section on Pixton. I made a really dumb mistake and Google was in fact indexing the alt text to a jpg rather than actually reading SWF content.

******************************IGNORE*****************************

Another experiment shows that this is in fact happening now. Look down the search page a bit further and you will see a link to a flash comic strip at Pixton.com as shown below:



Read the synopsis words very carefully, then go to the link and you will note that Google has in fact read static text from the flash comic strip at Pixton.com.

http://pixton.com/comic/jofxlbkq

****************************END IGNORE*******************************

For Flash Search Engine Optimization, there are other studies I am doing which will be released live at the MAX 2008 show in Milan Italy.

Thursday, October 23, 2008

The latest Video interview on Flash SEO from Web 2o0 in Berlin

Technoracle (a.k.a. "Duane's World"): Flash Search Engine Optimization tricks

Technoracle (a.k.a. "Duane's World"): Flash Search Engine Optimization tricks

Flash Search Engine Optimization tricks

I just finished speaking at the Web 2.0 Expo in Berlin on the topic "Search Engines and Flash: Secrets, Tricks, and Black Magic"

Adobe Flash (*.swf) is a binary format and has not always been accessible to search engine spiders (small bits of code that algorithmically determine a page’s content for rankings in search engines). SEO experts have developed several key workarounds and new technical developments have made new functionality available to search engines and developers alike.

During this talk, I showcased some advanced tips, tricks (Black Magic) and some of the secrets I have used to get sites ranked over their HTML counterparts. Attendees will learn how to increase initial page rankings as well as monitor and increase dynamic page ranks. Sites like Sombrio come up #1 out of over four million and are 95% flash.



So how does it work? The slides have some tips but the real work will be revealed when the research project findings are announced at MAX in Milan this Dec 2008.



The slide deck discusses a number of great strategies including using XHTML as an XML data provider for data grids (this way allows use of the semantics of the title and h1 tags while offering your Flash content in plain text for bots to digest).

Remember - Adobe MAX 2008, Dec 3 is when the results will be shared. At that event, we will distribute all the finding for anyone to analyze! Be there!

Oh - one more thing. Do not do evil things to get to the top of Google. There is a system and a set of rules. You do not have to abuse the rules to win. Trying to get high rankings for terms your site is not relevant for serves no one, yourself included.

RedMonk captures Adobe-SAP SOA story

While many of us tech-heads have lived in ServiceLand for years, the mainstream media and analyst communities have not fully understood the true benefits. RedMonk, the analyst firm out of the UK, is IMO one of the first to really put the pieces of the Web 2.0 + SOA for the enterprise together. In one of his latest posts, James Governor writes:

Adobe is particularly notable from an enterprise pace layering perspective because unlike many other technologies that fall under the heading Service Oriented Architecture (SOA), Adobe has focused on delivering service oriented front ends that can be integrated with back end services with a minimum of fuss and code. This is loose coupling - of distributed components.


James observes that we at Adobe have had trouble communicating well in the past. We are an enterprise software vendor and we have a very mature SOA story. LiveCycle ES is a textbook example of SOA in action when deployed with SAP systems.

During SAP CEO Leo Apotheker’s keynote on Tuesday morning at TechEd 2008 he introduced a new concept called Timeless Software. In fact, this expression itself is timeless as noted by Christopher Alexander in "The Timeless Way of Building". Regardless of the changes in technologies and user interface designs, the separation of concerns (a pattern often noted as MVC) has been taken a step further. This is a pattern worth noting for the upcoming Web 2.0 Design Patterns book.

Kudos to Leo for explaining this and kudos to James for translating it so mere mortals can understand the immense value of this timeless way of building.

Wednesday, October 22, 2008

Apple losing the Web 2.0 crowd?

Last year at the Berlin Web 2.0 conference, I took this photograph of the entire front row sporting Mac laptops. The blog post was entitled "Does Apple own Web 2.0?".

This year the trend has seemed to be more of a Microsoft/Mac stalemate. It appears that Vista has really come into favor with some of the alpha geek crowd. I also see Ubuntu gaining in popularity. Apple's iPhone, while popular, continues to suffer from complaints of bad battery life. The most popular PDA by far is the Blackberry. Long battery life, great business features and a sleek and cool design.

While I was contemplating buying some apple stock, I am now thinking RIM looks like a great deal.

Sunday, October 19, 2008

Drupal User Group Talk on Flex/AIR, PHP and Zend

Here is the video. Special thanks to Lee Brimelow and Kevin Hoyt for the help and code samples on this topic. Yes - I did really scoop the last cold beer at the meeting! If you want the slides, please email me at dnickull at adobe dot com.

Friday, October 17, 2008

Drupal User Group Talk and Code Samples

Last night in Vancouver I spoke at the Drupal User Group about Flex and PHP. Kevin Hoyt is owed a major thanks for helping me get set up in time and wrote a ton of materials for the class. The gist was to talk about how to use a Flex front end for a PHP middle tier.



PHP (especially Drupal) is great for plumbing MySQL into the front end of web applications and web pages. There are some issues when trying to skin Drupal applications however. These mainly pertain to the inconsistent support for CSS from the various browser cowboys. Flex can help alleviate some of that workload and makes a great companion for PHP.

The materials from the presentation can be downloaded from this website:

http://www.nickull.net/presentations/Drupal/index.html

Tuesday, October 14, 2008

Jon Bosak on PDF, ODF and OOXML

I have known Jon Bosak for years. For most, he needs no introduction and has been credited with many things from being a co-inventor of XML to really moving technical standards into the limelight they deserve. Most people are completely in the dark about just how much the standards game truly affects them, paying out hefty software license fees without realizing some of that goes to pay for patents and other IPR activity.

Jon has now composed what could be his magnum opus on the topics of the recent debate over OOXML and ODF. I encourage everyone to read it. It is available here:

http://www.ibiblio.org/bosak/pub/nys-open-records-policy.html

Jon - thank you from everyone!

Buy! Buy! Buy!



I got up early at 6:00 today thinking I would beat other investors to the punch on the TSX exchange to buy Canadian Imperial Bank of Commerce stock at $48. After all, the dividend yields roughly 7.5% at that price! Way to slow! By the time the order reached the desk it was over $56 per share and peaked at 58 so far. My suspicion was correct - every smart investor is up making orders and we Canadians really suck at planning holidays (yesterday was thanksgiving for us). I tried to get onto the NASDAQ server to find some bargains and got the shot above.

This is when it seems like a good time to remind myself of the herd mentality and not fall into the trap. Golden rules for the stock market:

1. Don't follow the herd
2. Don't buy or sell on emotion
3. Buy when others are selling, and
4. Sell when others are buying.

Have to run now and get in line to put in another HTTPRequest() object to the NASDAQ server.

Sunday, October 12, 2008

Why I hate Wikipedia

I have ranted about Wikipedia going from a worthwhile, exciting example of how to harness collective intelligence to a micro-managed fiefdom who's ruling class does not tolerate any dissent. The main issue is their "notable" clause, instructing editors to delete stuff that is not notable. Rather than repeat the danger this poses to the internet, I will repeat one of the comments left on my previous post on the subject:

So - it looks very serious.
there are people who are deleting things and there is no due process.

This is not the best way to run a rational institution.

It might seem silly to demand a chance for informational accuracy in this particular world, but perhaps it might be time to attempt to take this to a higher administrative power within the Wikipedia hierarchy?

The entire concept of notability is antithetical to the functioning of the internet.

who cares about Phlostigen, i mean really who really knows what a gluon is, and i have never even herd of an ibex, they must be radically unimportant.

My personal complaint is the deletion of underground music outfit from Australia named "go genre everything".

The entry was online for years and years, passing test of citeability and wikification, being written by people who were only just familiar with computer literacy.


Suddenly it is Deleted in a moment of A7 swift deletion fervour.

The question of Notability is the one i really wish to raise.

I have seen people noted on wikipedia as trivial.

I have never met a trivial human being in my entire life.

Individuals may have an enormous effect on the environment, but I suspect that if it is looked into , it is not so much the effect of individuals which create massive change, but the so called trivial people who do all the grunt work to make it happen.

By what criteria are we needing to define one person as more important than another. if the article is too long say make it shorter. if the article is badly written, get it written better, but why, does not everybody in the entire world have a wikipedia page detailing their biography?

It must be a hardware issue.

That would explain why so many of the "trivial" people as has been mentioned above have been deleted, in favour of important things such as the A7 motorway.

Please contact Wikipedia and continue to encourage non biased detailed encyclopedic information pertinent to all existing things!


I have to totally agree. A band I play Bass for (Stress Factor 9) was deleted, so was Randy Rampage's homepage (founder of DOA and lead singer of Stress Factor 9). Randy was the goddamn founding member of DOA, a band cited as a major influence by the Red Hot Chili Peppers. Some pointy haired nitwit editor has unilaterally deleted this, assuming no one is interested.

The main point of why this type of action is dangerous, is that you delete truth and promote lies (my entries on ebXML were deleted and I was banned for vandalism for stating the truth while the ebXML entry in Wikipedia was full of errors). When you try to control the uncontrollable, the result always sucks.

Wikipedia needs to wake up and realize it is hovering on the brink of relevancy before it is laughed away as the sham it is becoming.

Tuesday, October 07, 2008

Why there is no Web 2.0 Architecture Document

Following my previous post, I received a rash of emails with people generally agreeing, some laughing (they were there and it brought up memories) and thanking me for this article. I also received a couple of emails from people who were generally confused about software architecture and at their urging, I decided to write this follow up post to describe architecture. Specifically, they were asking why there is no architecture for Web 2.0. This is a bit long so bear with it.

Architecture is not always a thing, although the expression of architecture is a thing (like a 'blueprint'). Regardless of the field (software system, commercial building, bridge, airport, etc.), an architect’s job is to describe and document a system or systems and their structure, including the components within the system/structure, their externally visible properties, and the relationships that exist between them. An architect typically describes and documents this in several views to account for static and dynamic behavior during all phases of the system or structure. This is generally supplemented with other artifacts depicting additional aspects of the thing being architected.

In the practice of software architecture, this may include views such as the data model view, the technical infrastructure view, and views from various “actors” who will interface with the system. The term "actors" in this context refers to any “things” that interact with the system, including people, external forces, or even other systems.

So, why is it so difficult to capture the knowledge of Web 2.0 as architecture? After all, everything has architecture. Whether the architecture was developed before or after the thing itself, it still exists. A house has architecture, even if the house was built by illiterate monkeys who never documented their architecture (I once lived in that house). An architect could subsequently capture the architecture for such a house by analyzing it and capturing the knowledge in a standard Architectural Description Language (ADL) or other convention. The value is that others who liked the house might want to view the architecture and build it again with a few changes.

The answer to the Web 2.0 problem is that Web 2.0 itself is generally a collection or class of things. To capture this knowledge successfully, architects require the ability to look beyond a specific implementation and document the concepts and relationships of each component in a system/thing in a manner that others can reuse for their purposes. Architects must look beyond what they see or what is visible and capture the axioms, tenets, and idioms in a manner that conveys the most knowledge possible. Skilled architects have an uncanny ability to note similarities in multiple implementations of a class of thing and capture and convey that knowledge.

To do this job properly, architects may utilize many different types of conventions or formats to preserve knowledge. Some conventions are very familiar to most of us. Blueprints are perhaps one of the most common formats, yet they capture only part of the knowledge of a structure or system of structures. A blueprint for a building usually captures only the static structure. It does not capture how actual humans behave in the system. For example, a blueprint will not allow someone to distinguish the difference between how two or more groups of humans utilize the same building in different manners. One group of people living in a house may only sleep and eat in the house and work somewhere else, for instance, whereas another group might set up a home office and choose to eat, sleep, and work at the house. How can an architect quantify these differences? Sometimes architecture alone cannot sufficiently capture the required level of detail in blueprints, so architects use models and patterns to convey this additional knowledge not captured in normative architectural views.

Patterns of usage might also include a depiction of how people move around within the house and note relevant facts, for example the observation that inhabitants usually sleep at night time.

In the software industry, a blueprint is usually synonymous with a component or technology view. Sometimes there are forces or aspects of a thing that are not immediately visible to the naked eye. The dynamics of how a thing is used are sometimes just as important as the static structure. This information is very valuable to understand in terms of studying Web 2.0. Web 2.0 is not just about a static architecture of the internet; it is about the patterns of usage between a variety of things that use the Internet as a platform, whether they be human or machine.

The upcoming book will document the patterns of Web 2.0.

Friday, October 03, 2008

Forensic Architecture and other lessons from SOA land.

Forensic Architecture! What is it? I use this term to refer to the process of describing the architecture of something after it has been built. It is a largely frustrating, cumbersome process yet I seem to have made a career out of it. Let me explain.

Note: These are my own views and lessons I have learned. I have greatly enjoyed working with many talented minds in the past and am looking forward to working with more in the future. The sum of all these experiences has made me what I am today for better of worse and I am grateful to everyone I have met on this journey.

In a perfect world of the idealist software engineer, software architecture is written in response to a documented set of requirements. The sequence of events in a perfect world usually involves the following steps:

1. A problem is identified.
2. The problem is documented.
3. A solution is proposed.
4. Specific requirements for the solution are documented.
5. An architecture is proposed to solve the problem.
6. An iterative process of mapping requirements to solutions takes place until all issues are resolved.
7. The final solution is built and solves the problem.

These are somewhat generic and there are many variations to this sequence of events.

Lesson #1: In the real world, this process rarely happens without some complications. The following sections discuss some real-world projects I have learned from and their associated complications. Each section briefly explains the project and then provides an introspective analysis of the architecture process and the lessons learned during that process. The purpose of these case studies is to illustrate how vastly different architecture processes can be and to try and learn from the past.

Example #1: ebXML

ebXML, which stands for Electronic Business using eXtensible Markup Language, is a modular suite of specifications that enables enterprises of any size and in any geographical location to conduct business over the Internet. The overall standards process for developing ebXML (circa 1999–2001) was somewhat flawed and marked a serious departure from the architectural idealism described above, yet the product itself was rather revolutionary and advanced for the time. ebXML is in my mind the first large scale web and XML based Service Oriented Architecture (SOA). The organization and overall process used to create the ebXML specification was the root cause of the problem. No one is at fault as there were external pressures to get the work done fast and we all agreed, myself included, to adhere to the schedule we created. In retrospect, there were great lessons to be learned.

The following six ebXML working groups, each with a very specific job to do, started work at exactly the same time and were supervised by an organizing committee:

• Requirements
• Technical Architecture
• Business Process Specification Schema
• Core Components
• Messaging
• Registry

Lesson #2: In an ideal world, the Requirements group would have completed its work before any other group started or perhaps before those groups were formed.

Lesson #3: In the same idealistic manner, the Technical Architecture group would have started and completed its work based on the requirements, and then a series of other groups would have been formed to complete the balance of the work. The groups should have logically been formed in alignment with the components of the architecture.

As stated above, these two ideal practices probably never happen in the real world ;-)

Instead, all six groups started work at the same time with mostly aligned but somewhat differing ideas of what ebXML should be, given that no comprehensive documentation existed prior to this activity. Although this sounds like a very funny Dilbert comic, it actually happened.

Eventually, most of the work fit within the work completed by the Technical Architecture group; however, there were gaps and issues in the solution. The unfulfilled requirements led a lot of follow-on work, including to the formation ofthe Universal Business Language (UBL), and several web services standards that evolved out of the ebXML model. The entire experiment was similar to the Monty Python skit, “The 100-Yard Race for People with No Sense of Direction.” At the start of this skit, several racers are standing in a straight line, ready to sprint down a racetrack. When the starter pulls the trigger, each competitor runs as fast as he can in completely different directions, each eagerly trying to complete his race.

Other Lessons learned

1. Never try to document a moving target in a static architecture specification.
2. Something not documented in architecture is not universally understood, nor can it be implied to exist within the scope.
3. Alignment, understanding, and agreement on a specific model or first order of logic are a good way to get any project off to a good start.
4. Solving a problem before you know what the problem is can be suboptimal.
5. Splitting a large thing into several smaller things is a good approach.
6. Keeping unnecessary dependencies out of a design of multiple components is generally a good thing for longevity.

ebXML was a ground-breaking effort that at one time enjoyed participation from most major software vendors. It was a joint initiative of the United Nations Centre for Facilitation of Commerce, Electronic Business and Trade (a subgroup of the United Nations Economic Commission for Europe) and OASIS. ebXML was the first post-XML, post-Internet effort to build a truly global electronic business and commerce infrastructure based on open standards and protocols.

Although the project eventually lost support from most major software vendors, a lot of its functionality and patterns live on today within something known as web services. Web services, although itself a term that does not concretely define a set collection of specifications, is generally accepted as one of the future building blocks for advanced information systems connected to the Internet.

Example #2: W3C Web Services Architecture Working Group

Post-ebXML, several skilled architects went on to create a piece of work called the W3C Web Services Architecture. During the effort, there were disparities in terms of the scope of the W3C Web Services Architecture recommendation and its recommended level of abstraction. The result was a hybrid document that is both part abstract model and part reference architecture, while also mentioning certain implementation constraints. During its development, there was also no clear definition of web service, and the web services versus Representational State Transfer (REST) debate came up many times.

The W3C Web Services Architecture Working Group was working on many complex interdependent issues concurrently, which in retrospect was not an ideal process. Some people were examining very concrete technologies such as the Simple Object Access Protocol (SOAP) at the same time the requirements document was declared to be a “living” (dynamic) document. Other disparities included describing some architectural concepts quite abstractly in the concepts and relationships section, followed by very specific mentions of technologies such as SOAP and HTML (albeit without versions).

Although this layered approach is somewhat normal, the content of the final recommendations seemed to have large gaps in terms of concepts and their link to concrete entities.

Lessons learned

1. Try to create consensus on what is achievable before starting any architecture work.
2. Clearly define the rules and constraints for abstraction and what constitutes a normative part of the solution before creating a table of contents.
3. Consider splitting knowledge into multiple sets of artifacts, each at a different level of abstraction, to capture knowledge for different audiences. For example, architects and modelers require different levels of detail than those writing code.

Example #3: The United Nations (UN/CEFACT) eBusiness Architecture

Another architecture that is worth studying is the eBusiness Architecture specification for the United Nations (UN/CEFACT) group. This modern SOA work tried to reconcile the ebXML and web services standards into a single architecture specification, and tried to add a modeling methodology on top. The Techniques and Methodologies Working Group managed to cobble together a candidate architecture specification for global electronic commerce that reflected the thinking at the time.

The final work produced by the working group was focused far too much on a narrow audience, namely those who model processes of international trade using the Unified Modeling Language (UML heads for short, of which I am one). It also tried to reconcile a large and very diverse set of information into a single, short document. As a result, significant portions of content were omitted, which made the document very confusing to readers who did not have the background knowledge to correctly interpret it. Although it was also an early example of a large infrastructure or IT system built in alignment with the principles of SOA, the document failed to produce a level of detail that was sufficient enough to facilitate implementations, and instead was largely used by authors of other specifications as a common basis for their work.

Lessons learned

1. Clearly define the audience for each artifact in advance.
2. Do not mix together disparate views of architecture unless absolutely necessary.
3. A layered approach to documenting the structure of a system is sometimes easier to understand than one large view that tries to incorporate multiple domains of knowledge.

Example #4: The OASIS Reference Model for SOA

The OASIS Service Oriented Architecture Reference Model Technical Committee (say it ten times really fast) formed in early 2005. This group included more than 200 members and observers to define SOA as an architectural paradigm, starting with a diverse set of beliefs and a blank piece of paper. At the time, SOA was an unspecified concept and each person had a slightly different view of what it was. Over the course of 18 months, the Technical Committee managed to distill the common beliefs of the participants and the public and build a reference model to capture the core lexicon of SOA.

In the process, several opinions were collected, and although they differed vastly at the concrete level, they were generally aligned at some abstract level. During the process, it became common for the architects involved to look beyond the examples cited and to recognize concepts and axioms at a higher level. It was a very iterative process, yet very productive in the end. Although some vendors attempted to define SOA in alignment with their own products or offerings, they were unsuccessful. The final delivered specification was a reference model, completely abstract of any implementation, and therefore reusable in multiple domains. This was deemed a success by most participants however it too had its share of complications due to the sheer number of disparate opinions of what SOA was. Additionally, since the term SOA itself was such a hot topic in the industry, there was a large degree of political pressure from some interests who had already heavily invested in their own definitions of SOA.

Lessons learned

1. Creating any model or architecture specification generally requires a means to find a common ground.
2. Politics places pressure on documenting architecture. It is best to think freely from forces and constraints that may lead to decisions based on a preconceived notion of what the solution is.
3. Meetings of standards bodies involving large numbers of software architects seem to be rife with repeated consumption of fermented vegetable product beverages containing high levels of alcohol and caffeine.

The latter should generally be regarded as the best lesson learned and I am grateful for all the people I have worked with on all of these projects, no exceptions.

I keep these lessons in mind as I am embarking on yet another forensic architecture journey to write a book on Web 2.0 for O'Reilly Media with Web 2.0 luminaries Tim O'Reilly, Simon St. Laurent, James Governor and Dion Hinchcliffe with great help from Steve Weiss. In accordance with the above lessons, we have tried to avoid introducing any dependencies or material in the book that would affect its durability or lessen its utility in the future. By doing that, hopefully we will not exclude anyone, nor will we arrogantly make our definition of Web 2.0 the only definition that applies.




By documenting architectural, design, and social patterns, this book is part of a framework that may define some aspects of Web 2.0 and share knowledge with others. To be durable, the patterns in this book are not tied directly to any specific implementation or work. In some cases, we mention well-known implementations for illustrative purposes only.

Where does that leave us (as a community) with respect to sharing knowledge about Web 2.0? It provides the groundwork for a methodology to derive knowledge from examples. This is the stepping-off point where we can start to truly evaluate the distinctions of Web 2.0 as it is, compared with the Internet of today and tomorrow.

Hey ho - let's go!

Thursday, October 02, 2008

I am Carbon Man!!


According to Dopplr.com
, my carbon debt is just a bit on the high side. In fact, it shows that in 2008 alone, I have added over 22,500 kg (about 50,000 lbs) of carbon into the atmosphere. Sorry about that.



I guess the 12 trees I planted on Mayne Island are not going to cover this. In fact, I think I have to plant several forests. Note that I also did not put all my trips into Dopplr.com.

Time to go for a walk...

Wednesday, October 01, 2008

InterAct 2008 - a great conference in DC

The 2008 InterAct conference is one of the best run, most relevant conferences I have attended. Not only did it completely sell out (both attendees and exhibitors), I got the distinct impression it was really appreciated by all the people I talked to. My talk was part of a three person panel alongside Clearspring CEO & Co-founder Hooman Radfar and Google VP Marissa Mayer to discuss trends in IT. All three of us got an award for Excellence in IT as voted by our peers. It was very flattering.

I have posted my slides up here if anyone is interested in retrieving them. If you want a soft copy, please email me dnickull at adobe dot com.

Web2 0-SOA InterAct2008
View SlideShare presentation or Upload your own. (tags: web2.0 2.0)


A longer version of the slides on Web 2.0 are here:

http://www.slideshare.net/adunne/web-20-design-patterns-models-and-analysis

Tuesday, September 30, 2008

A real Fire Drill at the US Commerce Department

I am in DC and just saw a fire drill as the US Commerce Department while enjoying my morning Espresso. I couldn't help but point out the metaphor to some employees outside given the current economic crisis. We had a good talk and they went back inside. I hope they solve this soon.