Upcoming Events for London Based Creatives & Coders

Next week London based creatives and coders have 2 events going on that they might want to sign up to attend. First up is the Poker Coder poker tournament. Previous Poker Coder tournaments have offered a great networking opertunity and are also great fun as well. Bonus. Full information and sign up instructions can be found at pokercoder.com, while you are visiting, take a little extra time to check the prizes. Tasty! Those of you that have signed up to previous Poker Coder tournaments should have received a priority email with the sign up instructions already. However if you email is client is any thing like mine then its quite possible it this email has been filtered into the junk folder, so you might want to have a quick look.

Poker Coder Bet Fair Poker Tournament
Web: pokercoder.com
Date: 29th July 2008 (29/07/2008)
Time: 19:00 sharp
Venue: Grosvenor Casino London Victoria, 150-162 Edgware Road, W2 2DT

Also next week is the London Flash Platform User Group. Held at its now familiar location of the Cosmo Bar in Clerkenwell. Full details of this months meetng can be found and sign up instructions are at lfpug.com . Here is a breif summary of this months presentations.

Source control for Flash (19:00 - 20:00) - Juan Delgado
Source control is probably the very base of software development. This is going to be a very practical session to get you started on SVN where we will go through the basics: creating a repository, check out, commit, revert, diff, etc.

Developing Flash Content For Mobile (19:00 - 20:00) - Dave Williamson
With the increased interest in the mobile internet I will to provide practical tips and information on how you can leverage Flash Lite Player on Mobiles and how that content can cross to other devices

The more observant of you will notice that I will be presenting some of my Mobile Flash Development Knowledge.

London Flash Platform User Group
Web: lfpug.com
Date: 31st July 2008 (31/07/2008)
Time: 19:00 - 23:00 (doors open at 18:30)
Venue: CosmoBar, 50-54 Clerkenwell Road, EC1M 5PS

Free Flash Lite Components Bonanza!

I you are a Flash developer producing mobile content for Flash Lite then this week end you really hit pay dirt. First Nokia announced a set of Components for Flash Lite 2. Next Adobe also release a set of Components, for use with Flash Lite 1 and also Flash Lite 2, courtesy of Mark Doherty. Finally Scott Janousek resurrected the google code links for Shuriken, a set of open source Flash Lite2 components from last year.

So with all these ‘new’ flash lite components available what can you expect from each component set?

Nokia Flash Lite 2 Components
Nokia have provided their Flash Lite 2 Component set as an MXP file for simple installation into Flash CS3, the components are easily accessible from the components panel once the MXP has been installed. Included in the zip file you download is a full readme.txt explaining how to install the MXP file through Adobe Extension Manager. The components also include full usage instructions in the form of flash help files and usage examples. Flash Lite Components that are included in the distribution are:

  • Signal Level display, including network generation.
  • Battery level display.
  • Dynamic List Component.

The Signal and Battery indicator components react to softkey placement/screen orientation. All three of the components have easily accessible skin components in the library, and also allow limited visual control from the properties panel. Mark Doherty noted that the components appear to be quite memory hungry. The Signal and Battery Indicators seem to use in the region of 600k according to Adobe Device Central, the Dynamic List Example reports around 800k although the actual memory usage of the list without a demo data set is closer to 700k.

Download the Nokia Flash Lite 2 Components

Adobe Flash Lite 1 & 2 Components and UI Examples
Over at flashmobileblog Mark Doherty has released some UI components as well. These are provided for both Flash Lite 1 and Flash Lite 2 projects. There is limited documentations for the examples, the Flash Lite 2 examples look like they should be easy to integrate as long as you intend to use them ‘as is’ in this case they would simply require the addition of key listeners to control them. If you needed the components to be used in a more dynamic fashion, there would probably be some work to do. Included in the Flash Lite 2 component examples are:

  • List, this offers similar functionality to the Dynamic list in the Nokia Component set.
  • Slider, This offers a horizontally scrolling icon menu.
  • Gapper, This is a vertical variation of the slider.
  • TileGrid, Shows a gridded icon menu with scrolling screen control.
  • NavModel, this demonstrates a full application screen control system, also included are working Signal and Battery indicators and a list components.

The examples in this file are certainly easy on the memory, all of them use less than 500k, this is particularly impressive of the Nav Model example given the amount of interactivity and feedback that is demonstrated.

As with any Flash Lite 1 work, making use of the earlier versions will be a little more fiddly than the Flash Lite 2 counter parts. But the code in each of the examples is clearly identified and if you know your way around ActionScript 1 you should find incorporating the ‘components’ easy enough. Included in the examples are the following Flash Lite 1.1 components.

  • Carousel, A full screen horizontal slider.
  • Displays, demonstrates the various device stats you can access from Flash Lite 1, also included are battery and signal indicators.
  • IconMenu, offers a FlashLite 1 version of the Slider component in the Flash Lite 2 set, this is similar to the functionality produced in the tutorial here.
  • Menu, actually seems to be a Flash Lite 2 example, an alternative dynamic list example.
  • Story, This is an example of scrolling text in flash Lite 1, similar to the scrolling text component I have released.

Agin the Flash Lite 11 components are very efficient when it comes to memory usage. None used more than 400k when published, and most were below 300k. The trade of with both these example sets from Adobe seem to be the slight increase in the amount of work you would need to do to integrate them. The other thing to note, is that these examples do offer examples of far more compelling UI methods than simple lists.

Download the Adobe Flash Lite 1 & 2 Components and UI Examples

Shuriken Open Source Flash Lite 2 Components
The last set of Flash Lite components are those that

  • Scott mentioned, the Shuriken Components. I stumbled upon these components some time ago, I am not sure if the project is still live or has fallen dormant. The project offers a fairly comprehensive attempt at providing a full component framework to Flash Lite 2 developers. Included in the distribution zip are source class files, and example .fla’s for each component in the library.

    • Button
    • Calendar
    • CheckBox
    • ComboBox
    • DateEditor
    • LinkButton
    • List
    • Loader
    • NumericStepper
    • RadioButton
    • RadioButtonGroup
    • ScrollableList
    • SimpleButton
    • TextArea

    While the examples are good they do seem to be quite heavy in terms of memory usage, and they are not without issues. The scrolling list example for instance takes around 700k to display, but more concerning is that this memory usage raises during operation, implying the component has a memory leak somewhere. The complexity of this initiative while making development easier, may be its problem. Complex class structures in Flash Lite tend to give rise to cross references and memory leaks quite quickly.

    Download the Shuriken Open Source Flash Lite 2 Components

    So there we have it 3 sets of components, all certainly have there advantages and disadvantages. The Nokia Flash Lite components are great for Plug and Play development, I would say the Adobe UI examples are great for producing engaging canned demos as they stand, but with a bit of work could be converted for very memory efficient project use, and the shuriken component frame work may be a little heavy at the moment, but keep a watch on them, they could certainly offer a great, familiar framework for Flash Lite development, when they can solve the memory issues.

    Also worth a note is that Mark Doherty has put a shout out at the end of his post regarding a shelved component framework that he could release from Adobe if interest is great enough. Mark has asked the FlashLite comunity to provide some support if it were released, to document and update the project, but this could offer a great opertunity to unify the current state of disperate component solutions emerging.

    Credit where its due:

  • Does Apple’s new 3g iPhone Still Suck?

    Back in November I posted a post titled “9 reasons the iPhone Sucks!“. It was a quick link to some comments a friend made regarding the iPhone being ‘a little disapointing’ when he first took delivery of Apple’s shiney new device. At the time I only had 3 gripes with Apple’s original mobile device.

    Since Apple has released the 3g iPhone I have read a number of online posts & articles as well as hard copy newspapers & magazines all detailing the new device. To be fair you couldn’t read much else than stories about the iPhone for a while.

    Also, since November I have ben using my trusty Nokia N95 more and more, despite its age. As a result I feel I know more about my personal mobile usage requirements and am more knowledgeable about my expectations of a mobile device now as well.

    Following a new comment posted on my original “9 reasons the iPhone Sucks!” post I thought I would revisit the subject, referencing the 3g iPhone this time.

    In my original post the three issues I had with the iPhone were as follows.

    1. 2 mega pixel camera with no video. Nokia N95 has a 5 mega pixel camera and full screen video recording and tv out playback. Result.
    2. No 3g internet connection. Nokia N95 once again comes up trumps in this department with 3G and HSDP access. Result.
    3. No decent Data package, 18 month contract. N95 on T-mobile with web & walk max. 10 gb data voip and 3g. Result

    Ok so the lack of 3g connection is now null and void, well done Apple. Or is it. Over the last 9 months only a small percentage of my 3g connection usage has been ‘On Device’, most of my mobile 3g usage has been by hooking the N95 up to my Mac Book Pro as a 3g Modem, either over BlueTooth or USB. Despite the iPhone being from the same company as my laptop, apparently there is no easy way to make it work as a 3g modem? DOH!

    You could argue I may be able to complete some of the tasks I use my laptop for on the iPhone, for example email and web browsing. I remain unconvinced they will be as easy to complete though, I fudge the on screen keyboard alot for one thing, I know I have tried many times in store.

    There are however tasks I know full well I will not be able to accomplish, Flex development linked to a live data source while traveling on the train down to Devon for example. For those tasks I will still need a 3g modem connected to my Mac Book Pro.

    The next thing is the 2 mega pixel camera on the Apple iPhone versus the 5 Mega pixel camera on the Nokia N95. Well Apple havent done much there the camera is still 2 mega pixels, despite reports that say the chipset should support 5 mega pixels. Over the last 8 months I have been using the camera on my Nokia N95 more and more. As with anything, you can never go backwards to an inferior product. In addition I quite like sending photos of the surf down in Devon to people I know are still in London :D . Sorry Sean. I understand this isnt so easy on the new 3g iPhone either?

    Finnaly the data package. I will be honest, I am not sure if I even need the 10gig of data transfer I currently have availible on my current mobile tariff, I havent looked too much at the new mobile data tariffs from O2 to compare them to t-mobile either.

    So there is no way I will be getting the new phone either, right? Weeeeeell there is one issue. As Tink mentioned in the comments on the original post. The coverage of t-mobile is sketchy, particularly in Devon. It might be that the fact I need to be able to do a simple thing like call people on my mobile phone, regardless of which device it is, means I swap to O2, wich has great coverage ‘down south’. If I was doing that anyway, it would be rude not to upgrade :D

    NEC Demos Adobe Flash Lite Intellectual Property

    Following the announcement from Adobe of the open screen project, news comes from the Embedded Systems Expo that NEC is showing what sounds like it might be an alternative to Adobe’s Flash Lite Player.

    Its a little hard to make complete sense of the post from EETimes.com. But some interesting quotes from the short, slightly cryptic article:

    By using our new IP, one can design a portable device capable of processing Adobe Flash Lite several times faster, when compared with using a processor.

    Also in the announcement is a hint of better video quality as well.

    After reducing the number of gates required for an IC and further tuning the video quality output by Adobe Flash Lite, NEC will start offering its IP in August this year.

    One thing that does seem to be missing is an explanation of which Flash Lite version they are supporting, although the mention of video implies this is based around the FlashLite 3 player.

    You can read the full (breif) announcement of NEC’s new Flash Lite IP over at EETimes.com.

    One further interesting thing is that I could find no mention of NEC being involved with the Open Screen Project from its press release.

    Credit where its due: EETimes.com

    Flash Player 10 available from Adobe Labs - codenamed “Astro”

    I have just popped onto the Adobe Labs website and noticed that Adobe have made version 10 of the Flash Player available for download. The player has the code name “Astro” and looks like it was posted yesterday 15.05.2008.

    Key New Features

    3D Effects - Easily transform and animate any display object through 3D space while retaining full interactivity. Fast, lightweight, and native 3D effects make motion that was previously reserved for expert users available to everyone. Complex effects are simple with APIs that extend what you already know.

    Custom Filters and Effects - Create your own portable filters, blend modes, and fills using Adobe® Pixel Bender™, the same technology used for many After Effects CS3 filters. Shaders in Flash Player are about 1KB and can be scripted and animated at runtime.

    Advanced Text Layout - A new, highly flexible text layout engine, co-existing with TextField, enables innovation in creating new text controls by providing low-level access to text offering right-to-left and vertical text layout, plus support for typographic elements like ligatures.

    Enhanced Drawing API
    - Runtime drawing is easier and more powerful with re-styleable properties, 3D APIs, and a new way of drawing sophisticated shapes without having to code them line by line.

    Visual Performance Improvements – Applications and videos will run smoother and faster with expanded use of hardware acceleration. By moving several visual processing tasks to the video card, the CPU is free to do more.

    An further note of interest is that the player is released on multiple platforms straight off the bat. Over on the Flash Player 10 Download Page you will find Mac, Windows and Linux verions of the flash player 10.

    Full information is available from the Flash Player 10 Labs Page

    Moving Application Windows in OS X via Apple Script

    Those of you lucky enough to have multiple monitors hooked up to you MacBook or MacBook Pro when you work may have come across this issue. When you remove that extra monitor some applications don’t get re-positioned back on to your laptop display. I had this with one particular application that I use frequently, KeePassX. Well somewhere along the way I dug up this use full terminal/apple script that solves the issue.

    property processesToIgnore : {}
    tell application "Finder"
    	set _b to bounds of window of desktop
    	set screen_width to item 3 of _b
    	set screen_height to item 4 of _b
    end tell
    tell application "System Events"
    	set allProcesses to application processes
    	set _results to ""
    	repeat with i from 1 to count allProcesses
    		set doIt to 1
    		repeat with z from 1 to count processesToIgnore
    			if process i = process (item z of processesToIgnore) then
    				set doIt to 0
    			end if
    		end repeat
    		if doIt = 1 then
    			tell process i
    				repeat with x from 1 to (count windows)
    					set winPos to position of window x
    					set _x to item 1 of winPos
    					set _y to item 2 of winPos
    					if (_x < 0 or _y < 0 or _x > screen_width or _y > screen_height) then
    						set position of window x to {0, 22}
    					end if
    				end repeat
    			end tell
    		end if
    	end repeat
    end tell
    

    I don’t recall where I may have dug this up, but if you think you know, please let me know in the comments so I can give credit.

    RIA + OSP = RAA || REA && And how to detect an Open Screen Device

    Keeping with the algebraic/code functions as titles from my Last post I thought I would put some thoughts down regarding the news from Adobe earlier this week of their Open Screen Project (OSP). Anyone working in the Web/Internet industry at the moment will be well aware of the Rich Internet/Interactive Application (RIA) moniker. What Adobe is committing to is much larger though this is about true cross platform convergence. Its about Rich Anywhere Applications (RAA) or Rich Everywhere Applications (REA) if you will. You see what I did there ;) .

    Interestingly this is a concept I began to scratched the surface of with my presentation at Flash On the Beach Last Year, and over the last few months has been a subject I have continued to keep close to hand both in my day job and my personal development projects. At the moment the Flash Player Fragmentation offers a considerable challenge to any developer wanting to design and or develop for multiple devices and multiple screens.

    Articles like the one posted over at ADC on adaptive screen layouts offer a great foot up. But before we get to visual display we need to know what player version we are targeting. And to do that, we have to hit the time machine button and roll back all the way to Flash 4…..

    (more…)

    DVI != DVI

    A few weeks ago as I was preparing to present at the OnAir event I had a rather untimely hardware failure on my Apple MacBook Pro. As a result I had to rather hastily prep my wife’s MacBook Black to present from. One of the preparations was to make sure I would be able to connect the machine to a projector, as any apple laptop owner will know its important to carry a DVI to VGA connector at all times.

    However the MackBook black uses the mini DVI connector, as a result I thought it would be a snap to just pick up a Mini DVI to CVI connector, and then from there I could use the DVI to VGA connector I already own. Not so. Despite the packaging suggesting otherwise, the DVI result from the apple mini DVI connector is not a standard DVI out. There are 4 pins “missing”. The pictures Below explain better.

    [gallery]

    AppleScript Fix for Error 51: Unable to communicate with the VPN subsystem on Cisco 3000 VPN Client

    Over at Ian Talks Tech my friend Macca recently posted a fix for the “Error 51 : Unable to communicate with the VPN subsystem” error from a cisco vpn client. I had also encountered the same problem some time ago and it brought my own memories rushing back. I had initially discovered a fix for the error 51 problem over at a different site, Anders.com . Since finding the one line terminal command answer to the issue that my cisco 3000 client had thrown up I thought no more of it. Ian’s post jogged my memory about my own search and I immediately put my copy and paste skills to good use to come up with an apple script that you can run to fix this cisco vpn client error.

    All you need to do is open the apple script editor.

    “/Applications/AppleScript/Script Editor.app”

    Then paste a similar line of code to the commands that Macca and Anders mentioned:

    do shell script "ifconfig fw0 down" with administrator privileges
    do shell script "ifconfig fw0 up" with administrator privileges and password
    do shell script "/System/Library/StartupItems/CiscoVPN/CiscoVPN  restart" with administrator privileges and password

    Feel free to run the apple script to test it, just note you will be asked for an administrator password for the script to run.

    Once you are happy you should compile and save the script to keep it safe, or “save as” and choose application. Alternatively, you could just download the AppleScript Fix for the “Error 51: Unable to communicate with the VPN subsystem” problem, that I have pre compiled as an application.

    Credit where its due.
    Ian Talks Tech for jogging the grey matter.
    Anders.com for solving my problems when I had them.
    Apple for showing me how to do shell scripts in Apple Script.

    BitTube Goes Over the Air

    Thats right, its all very last minute but I will be presenting a session at the upcoming Over the Air event in London this week.

    My session is scheduled for Friday afternoon.

    Flash Video Nokia Masterclass - Dave Williamson (Adobe)Learn how to create live video applications with the most popular online video format on Nokia devices.

    Over the Air is all sold out now, but you can find all the information about the event over at the Over the Air Blog

    I look forward to catching up with you if you are there.