Software application development
This blog is intended to provoke discussion and exchange between like minded software application developers, engineers, architects, project managers - and keen hobbyists too.
Tuesday 30 September 2008, 10:50 AM
Is Microsoft’s ‘Democratic’ ALM really a ‘Republican’ Party Reptile?
Codenamed ‘Rosario’, according to Microsoft the new product is capable of ‘democratising’ application lifecycle management (ALM) by uniting the members of a development shop from, “The core developers and testers to the wider team of project managers, designers and business analysts.”
There are, admittedly, new collaborative modelling tools aimed at techies and non-techies (let’s call them “civilians” for fun) in this next iteration of everyone’s favourite (or not) developer tools and platform. They do indeed feature UML and Domain Specific Language support and sit alongside Microsoft’s Oslo repository, tools and language.
As previously reported, there are also new testing capabilities and new workflow-focused wizardries for Windows converts to gorge on. But is ‘democratisation’ a dangerous word to use?
Apart from Bill Gates’ own admirable philanthropic efforts, Microsoft is perhaps not immediately associated with being the most altruistic company on the planet.
I’m not up for a political debate, but quite apart from jarring with me as one of the key themes of this week’s announcement, perhaps software application development should not be an essentially egalitarian process anyway. That’s why team leaders, project managers and CIOs exist isn’t it?
A sceptic might suggest that this is not democratisation at all and that this is spreading a wider penetration of Microsoft technologies more deeply into the organisation – and that this ultimately puts more power in the hands of management, which may not always be a good thing.
Monday 29 September 2008, 9:37 AM
Developing for Luxembourgish, Nepali, Uzbek and Welsh
I’ve been fascinated in this subject since working with the RNIB sometime ago now on web accessibility and the need to drastically increase the quality of so much content that does exist online.
At the time of my last piece on this subject I looked into IBM’s Natural Language Processing work. This work comes out of Big Blue’s research division and uses various hybrid techniques to try and automate and interpret the myriad of idiomatic inconsistencies that exist in most world languages, dialects, creoles and pidgins.
What I have learnt so far is that for any multilingual or multi-accessible software to work effectively, there always needs to be a base. This may be a base of program code after which different versions of the final product can be produced. For example, develop your word processing application just so far then, at the appropriate watershed level, you can spawn versions for the visually impaired, deaf or even people with ‘motor’ impairments.
At the more cosmetic level, this theory also works. Take Microsoft Office 2007 (or an earlier version if you wish) for example. You wouldn’t develop all the way through to build this product in Luxembourgish, Nepali, Uzbek and Welsh. You can, using something they call a Language Interface Pack, take a base product in the closest available language and then lay a next-best option over the top of this so-called ‘suite’ that will simply change the drop down menus and dialog boxes without affecting the applications’ functionalities.
Note: For Luxembourgish it’s somewhat surprisingly English, Nepali is English or Hindi, Uzbek is unsurprisingly Russian and Welsh is also English.
I don’t know about you, but I think this is a great subject, it’s really interesting and it has a great human and social responsibility angle. As for myself, finding out that there really is a dialect called Luxembourgish was enough to keep me amused for hours.
Wednesday 24 September 2008, 11:07 AM
Adobe: AIR on Linux beta, better now?
The company is surprisingly open about the fact that many features were not completed with the alpha that was released earlier this year and says that the beta is near feature complete and the majority of AIR applications that have been running on Mac and Windows will now run on Linux.
Note: majority does not mean all, but the figure is apparently high.
The community is, I think, unquestionably interested in this technology as much has been written about Adobe AIR on ZDNet.co.uk already.
The company is openly requesting feedback and is hedging its bets on a new level of interest from a variety of developers, in particular those focused on the Mac. According to Adobe, “Apple developers that have never been exposed to Linux, can now deploy desktop applications to Linux distributions like Ubuntu and Fedora to run the same on Mac and Windows.”
Note: Apple developers that have NEVER been exposed to Linux? That’s not many is it? Surely Mac OS’s heritage and evolutionary links to BSD Unix would mean most Mac application developers know their onions when it comes to Linux…. and Leopard is more like UNIX than ever before if you look at areas like security etc… Anyway, enough already.
So what’s new in beta land then? Features like full screen and system tray are now available in the beta and in general the company has made it clear that developers should regard the current download as a more robust proposition all round. It is targeting the end of this year for Adobe AIR 1.5 of Linux.
What’s not fixed yet then? Adobe Labs says that, “There is a compatibility issue with the Seamless Install feature that that will be resolved with the Flash Player 10 release. Also, the content protection capability for video is not fully implemented. This affects the Adobe Media Player and may affect other applications.”
I’m hoping to follow this technology more closely in the next couple of months as one or two events are on the horizon and no doubt we’ll see the company shipping its key execs over to Europe to give us the full spiel.
Monday 22 September 2008, 12:41 PM
SPM tools for games development
SPM seems to feature when vendors are talking about ‘continuous integration’ – that practice within Agile that promises to speed development and improve quality, but is argued to potentially slow down development and lower quality software engineering by introducing frequently broken builds.
An SPM system/product/offering/solution (chose your own favourite) can, so say the vendors, provide a sort of preview window into a build-test-deploy cycle so that high volume builds (such as games development) can be exposed to continuous integration techniques with less fear of disaster.
So who is doing SPM and do their arguments hold water? Electric Cloud has a product called ElectricCommander 3.0 that promises to produce results in this space. Despite sporting a name that makes it sound like an electric phaser gun, the company says that once code has been through the SPM treatment that it can then be checked into the SCM system. This does tally with things I’ve said before about SCM and games programming.
Looking further, analyst Theresa Lanowitz of voke reckons that, “Highly optimised organisations are experiencing tremendous return on investment -- in some cases upwards of US$2M per year -- by treating SPM as a critical component of the application lifecycle.”
Other vendors angling for a slice of the SPM pie include IBM with its Rational Build Forge, Borland with Gauntlet and there’s open-source tools too such as CruiseControl.
It’s amazing to think that my reports on the game’s progress are being fed into these kinds of systems (if they indeed are) and are impacting the live development of the software that I am seeing evolve every week. More as it happens…
Friday 19 September 2008, 10:59 AM
Web design and development uncovered at Microsoft ReMix 2008 UK
“Microsoft wants to be taken seriously when it talks about design,” enthused the company’s principal researcher Bill Buxton during the opening keynote. Buxton delivered the most impassioned tech speech I’ve ever seen – seriously, it was Ballmer goes crazy level. Good though.
With lots of obvious parallels to the construction industry, we were told time and time again that you don’t build and then design afterwards. Slapping a GUI on at the end isn’t good planning and we should design before we build. Not exactly revolutionary stuff, but good to hear none the less
We had the most fabulous presentation from a chap called Robin Christopherson who is head of accessibility services at AbilityNet. This guy presented to a hushed audience for an hour on how people with “impairments” such as the blind or deaf should be able to use the web if developers and designers would only build it properly.
He was funny, engaging, slightly camp (although married – but then, this is Brighton) and after 45 minutes said, “Well, I don’t use a keyboard because I can’t see a bean!” I tell you, every jaw in the room dropped – he was so proficient with his laptop when presenting and he kept his eyes open, we had no idea.
Other OSs are, apparently, years behind Microsoft in accessibility – and that’s from a blind man with blind sister with MS that uses the web to run her life. Stirring stuff.
There’s a new BSI next year that will drive all web sites to have to be accessibility compliant – it’s called BS8878.
Obviously we’re also being fed heaps of stuff on Silverlight 2, which is “out soon” and there’s plenty to dig into in terms of the connections to .NET 3.5 SP1. New features abound as does support for JavaScript debugging and JavaScript Intellisense. The list goes on…
There’s a big design theme going on here – and the take home is that designers are a special part of the development process. Although everyone thinks they can “do” design, it takes a professional - as follows:
“Design has to be a priority for everybody in the company – not the job of everybody in the company, just the priority.”


