Idealism is what precedes experience; cynicism is what follows...

Sunday, December 23, 2007

Mac vs. PC : Cool Mac Utils

Making the switch to Mac has required me to learn how to navigate in a completely different universe than the one found for the PC platform.

As one of the major differencies, it appears that the os-confusion relating to the Mac platform is much less diasporate than the one for Mac which in comparison seems more organized and less in conflict about how to do things... pretty obvious considering the homogenous nature of the Mac ecosystem.

One of the thoughts that keep appearing during mt crusade to climb up of the Windows hole I fell into 10 years ago, is that the Mac people are much more goal-oriented in comparison to the process oriented PC people. The basis for this thought appears to be the difference in the amount of time one has to allocate on tasks relating to merely support ones primary task: productivity in ones field. far it appears that the distance one has to cover in terms of the number of tasks and their respective duration is larger on PC than on Mac everntually making Mac a productive environment as I sooner get to the point of productivity on this platform than on Mac - however I am still not blind for the fact that I might still just be under strong inlfuence by the "hype" one has when switching from a classically skinned Win XP which had one had been forced to downgrade into as a result of a failed attempt to upgrade to Win Vista.

Anyways... I will use the opportunity of this blog entry to share to links to cool utils for the Mac OSX.

An overview of status bar plugins:

The Growl application which allows application developers to post events to a global (in respect to either the local machine of the LAN on which it resides):

Bloggerwave : Payment completed

As a follow up to my previous post about how to make money blooging I can now inform everybody that I recieved my 50,00 via Paypal for my previous post.

So it appears that the system is working... :-)

Thursday, December 20, 2007

Adobe Flex : Ribbit Developer API available

The Ribbit Developer Platform gives developers the ability to make and receive calls, record, send and receive voice messages, as well as add and organize contacts.

They have just released the first public beta of the API and sofar it looks great.

Check it out:

Tuesday, December 18, 2007

Five Tips for Staying Productive When You Work Where You Live

Get dressed. You're going to work -- at home. For many people whose office is located somewhere between the kitchen and the living room, succumbing to the ease of working from home can throw a curve ball in the career path.

Here are five ideas to help you avoid some of the common pitfalls of working from home and strike a healthy balance:

1. Separate your work space from the rest of your home and spend time in it only when you are working. Make it off limits to family members -- kids and spouses do not belong there. Create physical barriers, such as a door or a flight of stairs to isolate yourself from your home routine and focus your attention.

2. Sit at your desk at the same time every day and keep normal business hours. Parcel out your work by task and the time you expect it to take to complete. This will help you instill urgency in your work and increase your productivity. "One of the major challenges is prioritizing your tasks because nobody is there to tell you what to do," says Holly Reslink, a member of the Professional Association of Resume Writers and Career Coaches, "so it helps to create a daily goal sheet."

3. Dress in a way that will help you feel professional. You do not have to wear stockings and high heels, but it helps to get out of your pj's and put on a crisp shirt.

4. Disregard house chores until the end of the business day. You wouldn't wash the dishes, walk the dog or cook lunch for the kids if you were in a real office, so resist the temptation to do it at your home office. If you find that hard to achieve, give yourself short deadlines for specific tasks and do household work only in between.

5. If your work does not require constant access to email, turn off your email program and check messages only at scheduled times. Being stuck in a home office all day can be frustrating, so instead of seeking distraction through communication, tackle boredom by allowing yourself short breaks outside. Take advantage of your situation by enjoying a few moments on your balcony.

Working at home is not for everyone, because it takes the right type of personality and motivation to be able to stay on track. "But for people who have a more flexible style of working," says Reslink, "it can offer an opportunity to work within their own comfort zone and not conform to what an office manager expects them to do."

Monday, December 17, 2007

Adobe Flex : Beta 3 changes

We have successfully taken a rather large project (around 1000 classes) and put it to be compiled with the latest SDK from Adobe.

The inception of the project was done with Flex Builder 2 based on Flex 2 and it has continually been updated to be compiled with the latest SDK's following the releases from Adobe. Sofar we have had to make only minor adjustments, and this positive track record continues with the latest release.

Only one thing had to be changed to the codebase when upgrading to the Milestone 4 release of the Flex Builder, and it was relating to quite an obscure override in a createChildren method of a MultiLineButton class extending Button.

In the former the textfield variable of a Button was a UITextField and in the latest version this has been changed to be an instance of the IUITextField interface not implicitely convertable to a DisplayObject which addChild of the Sprite class accepts as parameter, hence a casting is necessary when overriding...

I cannnot remember upgrades between Beta releases ever being so easy and without problems.. and I have been coding for 11 years now...
Its been a great pleasure working with Adobe on the latest evolment of the Flex platform, never in my career have I experienced this kind of hassle-free development with Beta products and its quite rare to see Beta products with such a high quality.

Friday, December 14, 2007

Adobe Flex Builder : Beta 3 released !

The final beta of Flex 3 has been released on Labs. This new release focuses on overall quality and performance, providing a final look at Flex Builder 3 and Adobe AIR prior to launch. There is also a new release of the Adobe AIR runtime.

This 4th milestone marks the final release before beginning the release candidatures.

Read more here:

and you can read the release notes here:

Wednesday, December 12, 2007

PV3D : Course in London, 1st day

Sitting in my hotel room (one of the box'y, container'ish and non-superfluousness-yet-no-hassle one's with 'business-person-only-in-town-for-a-short-business-meeting' written all over it) sipping some mediocre, yet drinkable wine with screw-cap from New Zealand bought in the local "non-7/11-yet-still-open-24hours-drugsstore" the day begins to settle in this old brain stuck to the top of my neck.

Let me start by stating that Ralph Hauwert is one of the "real" ones. He is a nerd that has turned pro !
Ralph Hauwert is quite a lucky man, because his product (PaperVision 3D) sells itself - so even if he had not been the talented speaker he is and had he not been the jovial guy residing on top of what appears to be pure high-level competence, he would have made anyone in the place today go home with a shitload of inspiration and a lot of "so-ein-ding-muss-ich-auch-hapen" feeling regarding the many demos shown during the day in their respective pockets (S.E.D.M.I.A.H.: please check the image of a real BABELFISH translation later in this post).

The day today has been spend by mostly establishing a common vocabulary and getting everything setup for the "big" day tomorrow. The audience, being split apr. 50/50 between coders and visual-designers (ref.: informal hands-up poll conducted by Ralph Hauwert himself during the inception of today's session) and what I suppose was an equivalent split in regards to Flash and Flex, was necessary to be groomed in order to establish a common starting point from where to start the open part of the course (2nd day). However, just by walking through all the basic stuff relating to PaperVision on the course of establishing a common foothold I have already learned a lot already that I can use in my business, however eventually the complete lack of proper documentation of the PaperVision SDK and API also became obvious and kinda scared me a little but, however...

After having asked Ralph Hauwert (during the post-session informal QA that always happen when the speaker acts a roadie and packs down his/her gear) about an explanation for the lack of documentational focus from the PV3D team, the answer proved to be quite a bit more clever than the question.
It appears that PV3D have more than 400 1st-line developers using the API who are not only using the API, but also putting great effort into reporting bugs and issues to the PV3D team. The reports harvested from this impressive group of early-adopters are of a reportedly high quality and naturally: its a very relevant fear from the PV3D team that if a "normal" Java-doc like documentation and versioning paradigm was implemented, it would spawn of a plethora of "not-so-diligent" masses of developers with no particular interest in bringing PV3d to the next level that would start bombarding the bug-reporting-system with mere incident-reports and not actual bug-reports. The PV3D team would, if the API was published publically, hence probably end up being tied down into a never ending trench of bug-reports made by people from all corners of the web-development industry with no particular interest in the PV3D platform and that would effectively be the end of PaperVision (This particular course of events have been seen before, remember? ). I personally believe its a quite clever move by the PV3D team to steer clear of painting themselves into a corner by the act of exposing themselves to the vast community of (lets face it, this group to which I belong in this context are an obnoxious and ignorant group of non-forgiving and intolerant "revengees") early-adopters and first-movers on a hyped-up-technology which in many people's eyes may contain unlimited possibility of both profit and fame , which we all know is a very efficient recipe for problems when attempting to release a new API which is challenging in its nature.

About the concrete contents of the session, I will post from my notes when day number 2 has passed and I again will be sitting alone in a hotel-room with nothing better to do than to post to my blog.

Anyways, sofar... its SO great and VERY VERY inspiring in regards to get cracking on the code... to ALL of you out there who didn't make it this time: be sure to attend the next time... I for one will probably be to find among the geeks in the back-rows :-)

Check out my translation from the classic public web-app over all classic public web-apps: BABELFISH...

Discount (35%) on books from Microsoft Press

By using the discount code below you get 35% discount when purchasing Microsoft Books from Ravenholm Computing...


To be honest, I am not totally convinced that I am in compliance with the idea behind offering all users this discount code, but I do not recall at any point to have agreed to a NDA (Non Disclosure Agreement) for offers put forward by both solicited as well as unsolicited 3rd party partners of Microsoft.

If anyone have any objections to me posting this discount code, please dont hesitate to leave a comment and let me know. If your your objection has any substance I will promptly remove the posting.

The receipt I got after updating my TechNet profile at Microsoft....

Friday, December 07, 2007

Adobe Flex Builder : Feature Wish - Remember Code Folding Settings

Wouldn't it be cool if whenever reopening a document using code folding (Expand and Collapse functions) every entry was not expanded as default. It would be so very nice if the IDE could remember the code folding state of the particular document and restore this state when reopened.

Its just an idea ! :-)

Thursday, December 06, 2007

WinToMac : Its begun !

The day before yesterday my latest attempt to climb up of the Microsoft hole I feel into 11 years ago arrived with the mail...

It consisted of a...
- Mac Mini (Fully loaded configuration)
- a sizzling 23" Mac display
- a set of the Wireless Mighty Mouse and the Wireless Keyboard (2008 edt.)
- an Elgato TV Link (Hybrid variant)

Initial setup was a bliss (even the Bluetooth Mouse and KB didn't incur any difficulty - spoken as a true windows user, I guess - because I guess the MAC people wouldn't even consider having difficulty with such a non-productive action) and after updating from the pre-installed OSX edition to the new Leopard edition via the included update CD I was installing the TV link without any hazzle whatsoever.

After apr. 20 minutes (the OS update took 15 of them) I was up and running including having my wireless network connection configured and gained access to all my shared windows drives on the network.

So far so good... I will keep you posted as I go down the path from Windows to Mac.

Thursday, November 29, 2007

DFUG : Interview w. PV3D' s Ralph Hauwert and Mike Chambers

Mike Chambers have posted an interview following the DFUG / Adobe AIR User meeting in Aarhus.
I'm attending Ralph's course on PV3D next month in London, and this interview just even makes me more happy to have signed up already.

Check out Ralph's blogpost on it (linking to the video of the interview):


Nu kan man tjene penge på at blogge.
Umiddelbart får jeg feks. 50 DKK for dette indlæg.

Check det ud:

Thursday, November 22, 2007

Adobe AIR : AIR/MTV challenge

Adobe and MTV are hosting a contest to find the coolest apps built using Adobe AIR and the MTV Assets.

I definitely wanna join, but I still need to:
- find a cool project to do.
- find some other people interested to join with.
- convince my company that its valuable to join such a competition enough so they will allow me to stop overworking myself on projects with customers 16 hours a day...

Check it out:

Sunday, November 18, 2007

CouchTycoon : Social Investment Network

CouchTycoon is the "Friends n Family Venture Network". Participants can directly invest in start-ups starting at approximately $ 4 and they can trade their shares theyve bought once. So startups get financed and quoted in real values and at their very first steps they do. To invest and trade shares of startups you must convert your dollars to "CouchChips" first, as they call their own currency. To submit a project is as easy as writing an e-mail or blogging. Describe your project like you would do in an e-mail to one of your friends. Your post will appear on the "Going to Beef Island" site as well as in the "Going to Beef Island Feed" which you see below. This way community members can easily be updated when new suggestions are published.

Check it out:

MAC vs. PC : My New Toys

Last Friday my Logitech keyboard broke down again, but this time never to return from the promised land for keyboards.
Having scavenged the various internet-stores, I decided to purchase a set of the new Apple wireless keyboard and its co-worker: The Mighty Mouse Wireless.
The design (and quality) of these guys are extraordinary good and absolutely second to none !

They are Bluetooth enabled so I figured I might have a bit of a hassle when attempting to connect the stuff to a Windows XP Pro, especially because the package and manual mentions nothing of being Windows compatible and actually even states MAC OS and an Apple PC as technical requirements.
Nevertheless, connecting the Keyboard was completely straightforward and soon the I could use the awesome Apple keyboard to focus on installing the Mouse, this would however prove to be more of a challenge.
Initially the mouse was easily recognized by Windows, but off course it would not accept to be paired without a passkey which I suppose is not necessary on a MAC since it does not mention a passkey in the installation procedure description in the manual.
However, after at short browsing on the web, I soon learned that the passkey is "0000 " (the obvious choice next to the omnipresent "1234" - I suppose) and after having given the Windows Bluetooth device installation routine this: it required a reboot in order to operate correctly. Which i eventually did as it didn't function immediately after installation and hence making my HomePC (the centerpiece of the apartment) even more attractive than it already was (My customized Shuttle PC from many years ago when shuttles became high fashion).
There is absolutely NO PROBLEM using these cool Apple accessories with a Windows PC and the mouse even supports left and rightclick with its seemingly single button, but it actually recognizes which side of it I have clicked on.... nice job from Apple :)

I must admit that this experience have made me more inclined to explore the possible switch to a MAC which is now made feasible by the drastic improvement made in the virtualization software making it possible to use the Windows Applications on which my work is so dependent.

Friday, November 16, 2007

Archive : Decreased memorial skills as an early warning of negative stress

If a co-worker suddenly appears to have a decrease in memorial skills its often at sign that something is occupying their mind, however sometimes for no apparent reason they may start to display this as well and it can be an early warning that a negative stress situation is emerging.

Standing alone this is far from a clear indication that negative stress is building up, but it can be an early warning... and together with other signs it can be a pretty clear indication.

Archive : The early signs of negative stress

In case you didn't know, negative stress can be handled effectively if caught early.
Many organizations have a stress policy which includes information about stress and how to recognize it if happens to one of your co-workers or yourself.
However, if you happen to work in a place with no such thing, but still run the risk of negative stress you might want to know what the early signs of negative stress look and feels like.

The organization I work for don't have a declared stress policy, nevertheless are the lower strategic- and tactical-management pretty good at adjusting the work load in recognition of e.g. a tough haul up towards a deadline, so we are pretty well off in comparison to many other places.

However, in lack of a declared stress policy I will try to address the issue in a number of posts and attempt to give some quick and dirty (and easily implementable) advice for how to handle an emerging stress situation for either yourself or the team you work in.

Initially its important to recognize the fact that your co-workers most often will notice the changes towards a negative stress situation before yourself, so I will start with the symptoms for how you can recognize it in others and then move into the ones only you yourself (and perhaps your close relations) can know about.

PS. Please comment on this topic and please let me know if there are certain topics your would like to see covered.

Archive : 10 tips for networkers

Are you the type of guy that sees networking as a sort of competition and do you count the number of business-cards at the end of the a busy networking-day, then this article is for you...

Read it and weep:

Archive : What the Wall Street Journal thinks about Cubicles

If you thinking about rethinking the office-layout, there is a interesting shoutout from the Wall Street Journal about major Silicon Companies trading the cubicle for more open and flexible office-layouts.

Check it out:

Archive : IT pros get more for soft skills

A report by Foote Partners shows that employers are paying higher premiums for noncertified tech skills such as enterprise applications, e-commerce, and process management than for verified skills.

Check it out:

Archive : Know the full names of your co-workers

Know the full names of your co-workers, even if you work distributed and you may never have seen the person it helps in the communication if you know their name.
Salespeople have known this for ages and they do this consistently because it works in creating increased attention and trust between the two participants in a dialog.

Archive: Challenging Telework Myths

Here is a very useful piece of arguments for why teleworking can be made a success...

Check it out:

Adobe Flex : Dynamically loading classes at runtime

Loading classes dynamically is a powerful and very useful technique.
Using the SWFLoader in the controls package makes doing this straightforward ...

var libraryLoader:SWFLoader = new SWFLoader();
libraryLoader.source = "Library.swf";

if( libraryLoader.loaderContext.applicationDomain.hasDefinition( "Foo" ) )
var FooClass:Class = libraryLoader.loaderContext.applicationDomain.getDefinition( "Foo" ) as Class;
var fooInstance:* = new FooClass();

An interesting aspect with this technique is the theoretical ability to have several classes with an equal fully qualified name in the same application instance as long as they are loaded from different applicationdomains. I cant foresee what eventually will happen in the case of a casting collision, but I intend to find out as soon as I have 15 minutes to spend.

Thursday, November 15, 2007

Graphics : Seam carving tool freely available

If you have not been caught in an underwater cave for the last 2 months, you have for sure been excited about the prospects of seam carving pioneered by the bit-wizards: Mr. Shai Avidan and Mr. Ariel Shamir.

However, now the technique is made freely available thanks to the guys at RSIZR... Check it out:

PV3D : New showreel 2007

There has just been released a new showreel for Papervision 3D...
Words cannot describe it, so I'm just gonna leave a link for you folks to follow and see for youself...

Adobe Flex : Shortcutting to LiveDocs

Mike Potter from the Flex Developer Marketing Team implemented a redirect on that gives easy access to Flex Package Documentation.
Just type[fullpackagename|fullclassname] into your browser and it will redirect you to the official Adobe LiveDocs page for that package.

For example, will take you to the mx.controls package documentation and will take you to the Alert class in the Controls package.

Thanks to Mike Potter for doing this simple addition to the website...
If you want to know more about how or why, you can read his blog-entry about it.

Check it out:

WebORB : Passing headers from the Client to the Server

Passing custom headers from the client to the server is made very easy using RemoteObjects and WebORB for .NET.

1. Initially during the construction of the RemoteObject in the client-code, we add an eventlistener for the Invoke event on the RemoteObject:

this.service.addEventListener( InvokeEvent.INVOKE, ServiceDelegateCallManager.handleInvoke );

2. In the handler we add the header:

public static function handleInvoke( event:InvokeEvent ) : void
var message:AbstractMessage = event.message as AbstractMessage;
message.headers.MBUserID = User.current.userId;

3. On the server its really easy to retrieve the custom headers side by side with the default Flex DataServices headers. In the respective method called on the server we are now able to retrieve the added header with a mere 3 lines of code:

using Weborb; // to import ORBConstants
using Weborb.Util; // to import ThreadContext

Hashtable props = ThreadContext.getProperties();
Hashtable headers = (Hashtable)props[ ORBConstants.REQUEST_HEASDERS ];
String mbUserID = (String)headers[ "MBUserID" ]

Thanks to Mark Pillar from MidnightCoders for providing the insight in WebORB to do this.
If you are interested in reading more about Flex and .NET security, please check out Mark's article on - its and excellent primer on this topic (

Flash Platform : Now the add campaigns start rolling

Having seen the amount of momentum currently wthin the community, Adobe is now responding with a massive Flash Platform campaign.
This is the first (of what I presume will be many) ad-apps for the Flash Platform.

Its supercool...
Oh... remember to turn on sound and the HD !

Check it out:

Flash Player : Mac Player FileUpload Complete event not thrown

I have been raving a long time about the missing Complete event in Mac players, it appears that it is caused by a zero-length response is returned to the client.

Its been there a very long time as I remember having troubles with it during the Flex 1.5 days developing for the Macromedia Central runtime.

A quick and dirty hack on the server is to write something (can be anything) back into the response stream. Clients will ignore the payload and only look for the HTTP status header but the Complete event will be thrown on all players... :-)

is it not an option to modify the servercode, you can make up for the missing event by listening for the progress event and in the handler comparing the amount of processed bytes with the total amount of bytes.

Adobe Flex : Access Framework Sources during debugging

It’s very useful to have Flex framework source available in your workspace, so you can easily search it, and so that Flex framework source files can be opened with Ctrl-Shift-F. (They can be opened with Ctrl-Shift-T even if the files aren’t in the workspace.)

Here’s how:
1. In your workspace, create a new project: right click in the navigator, pick New > Project…
2. In the wizard dialog that appears, under General, pick the plain “Project” choice and press the “Next” button.
3. Enter a name for the project. I use “Flex Source”. Leave “default location” checked, and press the “Finish” button.
4. After the project is created, right-click on the top level of the project and pick New > Folder.
5. Don’t fill in the Folder name, but instead click the “Advanced” button, check the “Link to folder in file system” checkbox, and enter the path to the “mx” folder underneath the framework source. On my system it’s in C:\Program Files\Adobe\Flex Builder 3\sdks\3.0.0\frameworks\source\mx. This should auto-fill the folder name field, and it’s fine to accept the default. Press the “Finish” button.

Wednesday, November 14, 2007

Adobe Flex : Moxie T-shirts

You can now order your own un-official Moxie T-shirt so you can wear your "puppy with pride".

It's a whopping 28$ per unit excl. shipping and handling so I very much doubt that I will see too many of them walking around the streets of Copenhagen.

Check it out:

Tuesday, November 13, 2007

DFUG : AIR User Group Meeting in Aarhus

Last Thursday I had the great opportunity to attend a couple of hours of free-stepping by the two AIR evangelists, Mike Chambers and Lee Brimelow (both from Adobe).

Making Aarhus one of their 6 European stops on the AIR User Group tour of Europe it was a great opportunity for me as a true Copenhaniac to revisit the wonderful capital of Jutland (The danish mainland)(Copenhagen is our nation's true capital featuring our Parliament as well as the notoriously expensive amusement park Tivoli and the (for most tourists surprisingly small) Little Mermaid).


The setting was LynFabrikken, a media collective featuring just about everything the nearly human developers heart may desire. I had brought my GF for the trip so we started getting some sushi at a nearby SushiBar and bringing it to the venue. Everybody else was drinking beer and eating pizza so we kinda didn't fit into any of the arch-types present, but neither did the fact that she was a female so I suppose we were the odd couple of the crowd (I counted 3 female specimens out of the apr. 120 attendees).

Mike Chambers started presenting General Adobe... I shall not elaborate on this, you will know already for sure.

Lee Brimelow continued after the break where most people used the opportunity to refresh themselves from the DFUG-sponsored bar and to catch up among their network. Nice ambiance altogether.
Going through the general description of AIR, Lee entertained everybody with his informal and self-deprecating style for which he is known.
Seeing that he actually used to evangelize for WPF instead of Adobe's Flash Platform I couldn't keep my question bottled up about where he saw the eventual standoff between Flash and WPF taking place and on what grounds.
He refused such a thing would happen due to the completely different characteristics of the two platforms.
He used the opportunity to make sure that everyone was aware of the fact that Silverlight and Microsoft is great for creating applications, but they sucked at creating experiences. So if you want to create a boring CRUD oriented data-management application in a controlled environment its fine to use WPF, but if you want to create an experience or even just to wrap tedious work processes for users in a compelling UI, the the Flash Platform would be your obvious choice... Not mentioning that its SO unlikely that Silverlight will ever get the same penetration as the Flash player but leaving this unsaid and yet there was none among the audience that wasn't aware of this fact. Unfortunately he managed (once again) to avoid answering and explaining concretely his drastic change from evangelizing one thing to evangelizing the opposition... some day I hope to get him to explain in details this transition of epic proportions.

Shortly after the conclusion the American guys left to catch the train to Cologne (The location for the meeting next day) and I ended up having a very interesting talk with Andreas Hollström from Adobe Nordic about the interdepartmental processes on Flex development projects, a dialog that took its offset in the Thermo review and soon moved into general process optimization... interesting stuff :-)

The GF and I soon had to split to catch our train back to Copenhagen, so we had to leave the free bar unravished, but I promised to come back soon and take care of that.
I had to limit myself to one beer during my chat with Andreas as I had to launch an early public Beta of our newly developed project for Elsparefonden: "Min Bolig | Det intelligente hjem".

The deployment went fine as did the train ride. My GF not coming from Denmark and not being technically inclined, actually enjoyed the trip and I am considering to bring her to more of this sort of thing as it always lights up the room with a beautiful girl, and it almost NEVER seems to bother geeks and other nice folks to be in the presence of a good looking female (but then again, who would dislike that).

Adobe Flex : Zoom|Pan Interface Guide

I have been trying to mess around with the FIG for Zoom|Pan from Adobe, but unfortunately it has been very closely tied with the ImageViewer custom component and trying to making it to work generally for Containers or UIComponents has proven to be more of an effort than I have can afford on the current project. I have therefore been forced to abandon using the FIG and just write it in the good-old-fashioned style.

Why they have tied it so closely to Bitmap viewing beats me, so I think I will have to go with PV3D next time I need this (I still need to be more clever about PV3D before such an effort can be handled in a sustainable fashion).

PV3D : Course in London

Im so excited that there is scheduled a course for PV3D developers in Europe. Having been jealous about the two courses (San Fransisco and New York) on the NorthAmerican continent for a while, I'm pretty excited about the scheduled course in London in medio December featurering Ralph Hauwert (One of the original guys doing the PV3D engine).

Being a bit more pricey than its two NorthAmerican counterparts, I hear many people complaining... but hey, face it... the course is still priced at the equivalence of what you can make in a single day after the course on your newly acquired set of skills.

Check it out:

PV3D : Majority Desk

Developed by Eddie Herrmann and Dan McWeeney for demo jam at SAP TechEd, Majority Desk is a 3D desktop controlled by two Nintendo wiimotes.

It’s a very interesting project running on Adobe AIR with Papervision3D on the rendering and the excellent WiiFlash on the controls.

PV3D : PaperVision 3D - my initial thoughts

If you have not yet checked it out, its about time that you do it. Some people have called it the biggest revolution since the Flash Player, and to be honest I am inclined to agree.

There are generally two major ways of using 3D in modern websites. You can use it as true 3D to create advanced navigation or presentation of objects and concepts... and you can use it create engaging UI based on existing UI principles.

The first option have been around for a while thanks to a plethora of 3rd party plugins, the second one is the UI revolution that is happening right now.
Websites are in increasing numbers adding 3D effects to existing UI structures in order to create engaging experiences. PaperVision is not providing anything completely new (people such as Ely Greenfield has produced the FlashBook a long time ago), but is merely the next natural step in a long sequence of non-revolutionary yet evolutionary developments.

PV3D is merely a VERY well-designed ActionScript API making it feasible for any Flash/Flex developer to create 3D enabled UI's. The ease with which a developer can get started developing this is actually the true revolution as all the nice UI's web-developers have been dreaming of developing since the emergence of desktop processed 3D is now made possible (and on an existing platform - namely the Flash Player 9 and its AS 3.0 runtime).

Thursday, November 01, 2007

Adobe Flex : Flex Interface Guide

Adobe has released a website that delivers a guide for how to developer user interfaces in Adobe Flex applications.

Initially it contains samples and components for the following aspects of interface development:
- Callouts
- Paged Lists
- Pam/Zoom

These sort of aspects have previously been addressed by others as user interface patterns, however Adobe calls it guides but it essentially is the same and its a very welcome initiative to standardize the development of experience-oriented applications.

Check it out:

Event : Flex Camp Boston on the 7th of December 2007

If you have the opportunity, Bentley University looks like a nice place to be for a Flex Developer on the 7th of December... :-)

Check it out:

Wednesday, October 31, 2007

Event : IEEE Workshop on Advanced Signal Processing

IEEE Denmark and Nokia Denmark are inviting everyone interested to the one-day workshop "IEEE Workshop on Advanced Signal Processing for Wireless Communication Systems". The purpose of the workshop is to facilitate professional and scientific networking among researchers in Northern and Central Europe within the field of signal and information processing in wireless communications.

The workshop will take place on
Friday, November 16, 2007 from 9:00 to 18:00
Nokia Denmark
A. C. Meyers Vænge 15
DK-2450 Copenhagen V

The workshop is the third of this kind. The program includes three 50-min tutorials in the morning, and 8 shorter presentations in the afternoon, followed by drinks and snacks. Workshop attendance is free of charge, but registration is required.

For more information:

Registration (free of charge) required:
Rikke D. Klemmesen (rdk at

RIA : Is this Web 3.0 ?

Taking a step back from the ever occurring deadlines and technical challenges that lurch around every corner, it becomes evident that RIA may have a more significant nature than it may seem at first sight.

Not everyone agrees on exactly what Web 2.0 entails. As with all great buzzwords and concepts, people are already predicting what Web 3.0 will be. Will rich internet applications dominate it?

RIAs are still in their infancy, but when done right they're incredibly powerful tools. When Google launched Google Maps a few years ago, it opened people's eyes to the fact that web browsers can do much more than merely display pictures and text.

Currently, there are four mainstream mechanisms being used to develop RIAs.

AJAX is a web development technique for using JavaScript with XML to create a rich internet application by dynamically and asynchronously exchanging data in the background without having to refresh the page. Google Maps and Gmail demonstrated what could be done with simple existing technologies like JavaScript and XMLHttpRequest. Google, Microsoft and Yahoo! all now promote their own AJAX toolkits to assist in building AJAX-rich media functionality.

The first horse in the RIA race was Flash. Adobe/Macromedia with its Flash/Flex infrastructure is still the leader in online video. Combining the programming capabilities of Flex makes an incredibly powerful toolset for creating internet applications. Flash has strong penetration and when used effectively can enhance your website.

Microsoft is barreling ahead with Silverlight, a browser plug-in to deliver interactive web applications that should be taken seriously. The company launched Silverlight earlier this year and is promoting it heavily to its large partner development network. Silverlight is delivered to a browser via XAML, which is a text-based markup language. This makes it easier for search engines to scan Silverlight vs. Flash.

Finally, even though you don't see it much, there's an open-source platform for RIAs called OpenLaszlo. Initially developed as a proprietary system by Laszlo Systems, it was made open source in 2004. Not wanting to be left out of the RIA race, IBM--consistent with its embracing of Linux and other open source--has helped propel OpenLaszlo. The company worked with Laszlo Systems to use the open source Eclipse development platform with OpenLaszlo. Applications for OpenLaszlo can be run in Flash or in DHTML.

One current issue with Flash is that while search engines can index it, they don't index it as well as with text because Flash is a binary compiled file. That's why most websites aren't entirely created in Flash. Accessibility and keyboard navigation can be issues with these rich applications as well. If you don't have a mouse or can't use one, then you'll have problems with these technologies. Also, while the plug-ins have sizable browser penetration, they're problematic for some users.

What It Means for You
What does all of this mean for business owners in the Web 2.0 era? For the tech entrepreneur it means new opportunities. Many traditional client server applications are being pressured to move their applications to the web. Entrepreneurs can potentially displace client server apps with new innovative web applications. For other entrepreneurs, you have to evaluate your business and what specific benefits you can get from adding rich features to your website.

Ever Evolving
There will be other emerging technologies in the RIA area. The combination of these rich features will help trends like social networking continue to evolve. We'll likely see many websites with more drag-and-drop-type features in the next few years. The online/offline office also will continue to develop as predominant internet companies compete with Microsoft Office for the next generation office applications. Web applications will continue to become more robust and feature rich than ever before.

Copyright © 2007, Inc.
...and thanks to Frank Bell for his input.

Tuesday, October 30, 2007

DARPA : Grand Challenge 2007 finals coming up

For those interested in large-scale-field-robotics and perhaps more specifically automated cars / unmanned cars, the DARPA Grand Urban Challenge is a major event. On the upcoming November 3rd the final is taking place at the former George Air Force Base in southern California. The event will in its entirety be available as live broadcast via the website.

Check it out:

Saturday, October 27, 2007

Facebook : Think (perhaps even twice) before creating an application

O'Reilly research has analyzed the usage patterns of Facebook applications and have come to a pretty unambiguous conclusion:

- chances are very significant that your application will be born, live and die in complete uselesssness for the bulk of the Facebook users !

The analysis revealed the following factualities:
- There are more than 5000 Facebook applications.
- There are millions and millions of active users.
- 87% of the usage only goes into only 84 applications.
- Only 45 applications have more than 100.000 active users.

Check it out:

Friday, October 26, 2007

Adobe Flex : 30 days free online training

Total Training is offering 30 days free Adobe Flex training.
Just follow the link below and you will be redirected to a page with an activation code. This activation code will be yours to redeem before the 30th of December (So there is plenty of time).

Sign up here:

Thursday, October 25, 2007

360|Flex 2008 Europe : Now its confirmed

Barely having licked the wounds from the Barcelona MAX conference its time to plan for the next big event on the European Flex scene.
Flex|360 is coming to Europe next year in April and if you are a Flex developer: be sure to attend as I am sure that its gonna be rewarding as heck as the Flex development community gains more and more momentum... and it might coincide with the release of the Flex Builder 3 as well as Thermo will be publicly available!

Read more here:

And about the 360|Flex in general here:

Adobe Flex : Improving startup performance

Watch what you do at startup !

Don’t call setStyle() if you can avoid it, it’s one of the most expensive calls in the framework since it can trigger reloading styles in every component on the display list. If you have to call setStyle(), do it in the INITIALIZE event handler instead of the CREATION_COMPLETE handler. Use deferred instantiation when possible (leave creationPolicy=”auto”). Avoid unneccessary nesting of containers.

Adobe Flex : Improving startup performance

Watch what you do at startup !

Don’t call setStyle() if you can avoid it, it’s one of the most expensive calls in the framework since it can trigger reloading styles in every component on the display list. If you have to call setStyle(), do it in the INITIALIZE event handler instead of the CREATION_COMPLETE handler. Use deferred instantiation when possible (leave creationPolicy=”auto”). Avoid unneccessary nesting of containers.

Tuesday, October 23, 2007

MS Visual Studio : Features in Visual Studio 2008 and .Net "Orcas"

Microsoft has published the featurelist for Visual Studio 2008 and .NET "Orcas".
They ask us (the development community) which features to prioritize high... exciting stuff :-)

Check it out:

Saturday, October 20, 2007

Adobe "Thermo"

Both before and after Adobe MAX Europe 2007 we have discussed which role Thermo is going to play in the integration between the graphics department and the development department.
To clarify a couple of things Narciso Jaramillo has posted some of his thoughts on his blog which are worth reading if interested in the emergence of Thermo.

Check it out:

Narciso is part of the Adobe Flex Team.

Friday, October 19, 2007

Adobe Flex Builder : TODO/FIXME plugin

Among the many many cool things I have taken with me from the Adobe MAX Europe 2007, is the knowledge of Dirk Eismann who has been a Macromedia Fellow since 1996.

The first of what I expect is going to be many posts relating to this very sharp and super cool guy is a TODO/FIXME plugin he has implemented for the Eclipse-based Adobe Flex Builder.

Check it out:

Many thanx to Dirk for sharing this very cool plugin with us, the community...

Thursday, October 18, 2007

Adobe MAX 2007 : My Attended Sessions

At this years MAX in Europe (The first of its kind on this continent) I attended the following sessions:

- Flex Best Practices
- Open Source Flex
- Adobe's approach to Application Design
- Inspire Session : The blind sketch maker
- Flash Player Internals
- Customizing the Flex Framework
- Design Lead Innovation : Creation Disruptive Experiences
- Inspire Session : 50 reasons why ActionScript 3.0 rocks
- Advanced LiveCycle Data Services for Flex Developers
- Practical Patterns in Flex
- Best Practices for Developing with ActionScript 3.0
- Functional & Performance Testing Flex Applications (Borland's Approach)
- BootCamp for Flex

The sometimes very difficult decisions to make as to which sessions to attend, I made based on the person presenting as well as the topic. That explains why some of the sessions I attended can be found to be in conflict with concurrent sessions with a topic closer to my field of expertise. I think in overall perspective that this priority paid off well when we during the "post-factsessions-beerdrinking-sessions" compared our experiences, it seems that I generally have steered clear of sessions involving people with poor presentation skills and the sessions with people the less knowledgeable than myself. I did however make a couple of misses, as I found some of the sessions which hit my field of expertise 100% to be too important based on the topic alone to ignore, contained nothing new to me.

I will make post's in the near future about every single one of them once I get my notes reviewed.

Thursday, October 11, 2007

Adobe Max 2007 : Intro Networking Application

I just received the final details email for the Adobe Max 2007 in Barcelona.
There is a cool intro-networking application that provides you with a network map of all attendees where all attendees are placed on the map corresponding to their compatibility.

The pin in the middle is off course me, so I take it that I am not so very compatible since everybody seems to be located in an incrementing pattern away from me...

This is very cool work, guys... keep it up and we will keep coming back for more :-)

Tuesday, October 09, 2007

Adobe Flex 3.0 : Charting Documentation

I have been asked many times now about this so I have decided to post about it in my blog. The Adobe Flex Documentation team has as a matter of fact already released the missed out documentation for Flex charting shipped with Flex 3.

Download it from Adobes website:

The Daily Motivator : Quit with dignity and style

"If Leaving the Company, Do So in Good Standing. At some point, every worker is faced with the dilemma of whether to leave their current employer for a better job. If you do decide to jump ship, you are then faced with the question of how to do it right."

I have found this article from the Washington Post by Lily Garcia about how to quit your job with style and how not to burn the bridges behind you just because you have found it necessary for whatever reason to move on.

Check it out:

The Daily Motivator : I love My Work

"Work is not a necessary evil. It is, instead, an intrinsic source of pleasure and value" does it sound like something you might think from time to time, then read this article about Arthur C. Brooks in where he explains the true values inherent in ones work.

Check it out:

Adobe Flex : Class Library Posters at Adobe Max 2007

Im looking forward to going to this years Adobe Max Europe in Barcelona. Not only is the weather much better there than in Copenhagen, Denmark but I cant wait to be surrounded by other developers engaged in the RIA and to get a grasp of how big and engaged the scene actually is... However, among the many things I expect to gain at the venue I also expect to get my own set of Flex Class Diagram posters in French cinema poster size.

Check it out:

Joel on software

Its old news by now, but it doesn't change the fact that its a thoughtprovoking piece of text that definitely is worth spending 5 minutes absorbing...

Joel on software, strategy letter VI:

Monday, October 08, 2007

Adobe Flex 3.0: ILOG Elixir

Adobe announced that it plans to resell ILOG Elixir, a new advanced data visualization component set for Flex 3 including org charts, gantt display, geo maps for dashboards, treemap charts for analyzing large data sets, 3D charts, and 2D chart extensions with radar charts.

ILOG elixir is a new component library for the Adobe 3.0 platform. Its currently in Beta, however its release is planned to coincide with the final release of Flex 3.0 currently scheduled for early 2008.

Built specifically for the Adobe Flex 3.0 platform. ILOG Elixir provides advanced capabilities for:
- 2D chart extensions with radar charts (also named spider charts)
- Full 3D charts including bar/column, area, line and pie
- Treemap charts, for analyzing large data sets
- Planning and scheduling displays, such as Gantt charts
- Organizational charts
- Maps for creating interactive dashboards

ILOG Elixir:

Friday, October 05, 2007

Adobe "Thermo"

Adobe's upcoming new design tool, codenamed "Thermo" enables designers and developers to create working application prototypes, design application transitions/motion, and transform static UI mockups into declarative MXML source.

Adobe Thermo:

Thursday, October 04, 2007

Adobe Flex : DataProvider to a Charting Series

I have found that when setting the series for a charting component in Adobe Flex 2.0 it is important to remember that it does not respond correctly to anything except an instance of Array, this means that you can not use any members from the Collection package directly, you can off course still use the ArrayCollection.toArray() when setting the dataProvider property.
However, another spurious thing to consider when working with the dataprovider of a Series item, you can not use the methods of the dataProvider if you want the Chart to respond to the build-in-databinding mechanisms, e.g. even though you know that the dataProvider property points to an Array, you can not use the Array.push() to add a new member of data dataProvider - you are forced to set the entire Series.dataProvider property every time you want to force a build-in-databinding-triggered-update on the Chart component.

These small quirks are not included in the documentation.

Adobe Flex Builder 3.0 B2 now here

In the new and inspired effort from Adobe to be more extrovert about their development efforts, especially towards the RIA development community to which I suppose I belong, Adbobe has now released the latest Beta version of the Flex Builder both as standalone application as well as the Eclipse plugin.

According to Adobe the changes in this release are primarily changes based on feedback from the development community... its nice to see that the effort put into the early-release program by the development community is being rewarded.

I have been using the B1 edition since it was released and I have had only minor instances of mishaps and no critical losses nor unintended alterations of data, so I don't hesitate to use the B2 as my primary development environment. If I encounter any issues I will post them here as well as in the Adobe-JIRA.

Link to the latest edition of the Adobe Flex Builder:

Thursday, September 27, 2007

The Daily Motivator : 10 Ways for a Web Worker to Achieve Work-Life Balance

Som en af de der hyppigt ligger i toppen af den ugentlige inddaterings-summering i det firma jeg er tilknyttet tager jeg mig den frihed at dele denne artikel med jer.

Det er helt almindelig viden, men da det efterhånden er påvist udover nogen tvivl at produktiviteten (for slet ikke at nævne livskvaliteten) sænkes såfremt man glemmer at udøve fysisk udfoldelse samt at have et ikke-arbejdsrelateret liv gør det vel ikke noget at minde os selv og hinanden om det en gang imellem.

Passing ArrayCollections between .NET and Flex

When using the Weborb communication server from MidnightCoders there is a shortcoming in regards to supporting serverside deserialization of ArrayCollections. It supports Arrays but when trying to send complex types containing a reference to a ArrayCollection it is necessary to add a classmapping manually.

If one tries to pass an ArrayCollection to the server it will throw an error and the client will handle it without explaining exactly what went wrong. Recieving lists and collections and have them deserialized on the client into an ArrayCollection is no problem, its just the other way around that is more complex.

You need to map the (ClientClass) to the omnipresent Weborb.Util.ObjectProxy (ServerClass).
This can be done wither through the management console (Typically the default webpage of the server) or via the weborb.config residing in the "bin" directory of the server.

Why they have ommitted this classmapping from the default configuration beats me, but the operation is very simple, so it should not pose a significant problem once acknowledged.

Monday, September 03, 2007

Indhold i en af vores standard RUP iterationer

Nedenstående er det overordnede format for iterationer vi arbejder med på et RUP projekt.

1. Assessment og eventuel tilpasning af processen.
2. Vurdering af use cases fra foregående iteration om de skal videreimplementeres i denne implementation.
3. Planlægning af iteration.
4. Implementation af eventuelle kritiske rester fra foregående iteration.
5. Implementation af use cases for iteration.
6. Etablering af baseline (executable, codebase og database ).
7. Review af iterationens resultater.
8. Opdatering af prioriteter samt krav baseret på resultatet af review.

Vi arbejder fortrinsvist med iterationer af 2 ugers varighed og vi oplever at ovenstående giver en god sammenhæng i en iteration og 2 ugers iterationerne giver en gunstig rytme på vores projekter.

Subversion integration for Microsoft Visual Studio

VisualSVN provides simple way to manage changes to source code inside Visual Studio using Subversion.
I have installed it now and is using it for the next 30 days which is the duration of the trial version.
Sofar have all the functionality been flawless, but I suppose its not a surprise as its actually just a integration point to the Tortoise I already had installed. This also means that we still get to use some of the beautyfull windows from the Tortoise client.

I have been frustrated so many times that I could not manage my SVN files so this is a really nice tool to have...
However, I still have not found the DELETE button within VS, so I am wondering if I cant delete files from within VS, and then I must say that I am hesitant in embracing it to much... however, sofar it beats the good old Tortoise by many measures, so I will continue to use it throughout the trial period...

Check it out...

Friday, August 31, 2007

Strategi for Test

Jeg kunne godt ønske mig (og jeg kunne faktisk også forestille mig at det kunne være formålstjenligt) at få nogle faste rutiner lagt ind i den løbende test-disciplin...
Det kunne måske være noget i stil med:

1. Funktions test (Med udgangspunkt i de funktionelle krav testes systemet fra brugerens perspektiv).
2. Sikkerheds test (test af systemet udfra de konkret definerede krav til sikkerhed for det enkelte system såfremt der er specielle hensyn og så selvfølgelig de helt almindelige krav der er til den givne applikationstype (For en generel webapplication: SQL-Injection, URL-modification, osv)).
3. Load test (der bekræfter at systemet understøtter de lovede load).

Tilbage ville så være følgende test, der i så fald kunne afvikles som en del af den afsluttende transition:

1. Chrash-Recovery-Continue test (Test af hvilken load-belastning der bringer systemet i knæ, hvilken tilstand systemet er i når crashet er sket samt om systemet kommer til sig selv igen og hvis ikke, hvilke handlinger der kræves for at bringe systemet tilbage i drift).

Afslutningvist ville kunden derefter forestå afvikling af en accept-test, som egentlig bare ville indeholde samtlige ovenstående test. Denne accepttest ville derfor være en ren formssag da de allerede var blevet afviklet under det forudgående udviklingsforløb.

Afslutningsvist for denne email vil jeg lige dele nogle af mine premisser for de ovenstående tanker:
• En test-strategi (uanset sin udformning og indhold) er et must-have for ethvert projekt !
• Samtlige test-former kan med den forhåndværende tool-support automatiseres (ja, sågar funktionstest bliver efterhånden med stor fordel automatiseret).
• Der er en absolut og direkte sammenhæng mellem kvaliteten af test og kundens tilfredshed. Denne sammenhæng korresponderes af kvaliteten af systemet (systemets levedygtighed, systemets vedligeholdelses-dygtighed, osv).
• Test betragftes som en overvejende regressiv aktivtet og derfor ikke-kreativt hvilket er med til at gøre det til en uattraktiv disciplin blandt de fleste mennesker. Dette er ikke sandt, testing kan sagtens gøres kreativt.
• Test giver frihed til kreativitet da man ikke er nødt til at basere sine beslutninger på antagelser (antagelser har det med at være forkerte).
• Der er meget få mennesker der synes det er interessant at teste, men at de trods alt findes, Denne type udvikler/projektmand er uundværlig og personer vi skal lede konkret efter i forbindelse med optagelse af nye medarbejdere, eller alternativt selv skabe i egne rækker ved feks. at automatisere test-aktiviteterne og derved gøre det mere attraktivt at give test-discplinen noget opmærksomhed.
• Test af et system er det eneste eksisterende synonym for at et system beviseligt virker. Da den videnskabelige metode i sin grundform er baseret på (lettere simplificeret og omskrevet til formålet): ide --> eksperimentering --> vurdering --> konklusion betyder det at vi uden test arbejder i modstrid med den videnskabelige metodes grundtese og derfor i modstrid med stamfaderen til alle best practice’s og alle moderne processer samt metoder... imho. ikke en særlig god ide :-)

This post was published to The Cynical Corner at 11:27:19 31-08-2007

Monday, April 23, 2007

AJAX History Management for dotNET

Most AJAX developers have at some point damned the lack of browser support for browser history and bookmarking. A large subset of these developers have eventually attempted to solve the problem by implementing support for browser support, needless to say: with varying degrees of success.

As some of the major cornerstones in this latest frontier on the RIA front it should be noted that Yahoo have shared their current project on the topic with its developer community (Browser History Manager: based on the initial initiative by Brad Neuburg (Really Simple History:

However... browsing the RIA communities I found a general lack of seamless integration to the serverside written in dotNET when the state has to be restored, either from history navigation or bookmarking. I decided to do this based on the AJAX.NET framework ( and to extend the functionality of the UpdatePanel to register and restore states.

I have it up and running now on and it works eminently for the IExplorer and Firefox people, sad I am using the IFrame approach I still need to provide the workaround for Safari so that it will be suitable to send into production systems.

When I have completed this task I will post the system here...

Friday, March 30, 2007

How things go wrong when SubContractors start thinking autonomously... or dont (1)

The company I work for have recently headed out on the crusade of attempting to outsource certain tasks. This is not done out of the motivation of saving money, but because its generally so hard to find qualified developers now-a-days.

We have employed a small company residing on a small island-state off the coast of south-eastern Africa. They are skilled and work hard for the relatively low wages they get from this work, but...

Their lack of ability to think independently is not overrated, they are inherently incapable of doing so. Thus have they been instructed to try and they actually do try by giving it their best shot - and this is definitely worthy of our out most respect. There is however one thing they have yet to acquire, and it is the capability of taking the responsibility that follows independent thinking. They still have not understood that taking responsibility and potentially exposing eventual individual shortcomings will actually be regarded as a strength and as such can serve as a basis for improvements and therefore the basis for a stronger relation in the future.

I will elaborate on this issue in the next episode... and what we potentially can do about it.

Blog Archive

My Network