Published on July 27th, 2007 by DannyT. Filed under .Net, Development Tools, Expression, Silverlight, Visual Studio | 2 Comments
Scott Guthrie just announced the next beta of Visual Studio 2008 and .net 3.5, this is a big release and details some great new features. Check out his blog postd and give it a try.
I have been playing with the beta1 and Silverlight and am thoroughly impressed see my findings here and i’ll be finishing a follow up post very soon.
Published on July 12th, 2007 by DannyT. Filed under .Net, Development Tools, Expression, Silverlight, Visual Studio | 7 Comments
After my initial enthusiasms about Silverlight along came proper work and other such distractions and I somewhat halted my research. However I’m doing a brief presentation on it at a new tech user group in Southampton (12th July) and so thought best to brush up on the latest – nothing like last minute preparation!
I thought it might be interesting to blog the order of research from start to finish and a few thoughts along the way (interesting to whom I have no idea!). I’m just going to document my findings as I go and not edit the post other than corrections to highlight how easy/difficult it is to get into this stuff. I hope by the end of this post to have created at the very least an extremely basic Silverlight app, be in a position to impart a basic understanding to others as to what Silverlight is and to be able to field a reasonable amount of questions. Here at the start of the post I have no idea where this will go and apologies if this becomes a long one.
1 – Google
I like Google. When interviewing potential employees I am always more interested in how people would find out what they don’t know than what they already do know. I’m well aware I could just go straight to silverlight.net or hunt around on microsoft.com but I prefer to see what Google comes up with…
My first Google… okay I could have just gone there in the first place (told you I wasn’t going to change this post). After a quick scan through the results most seem like press release type things and silverlight.net looks like the best place to start.
2 – Silverlight.net
This looks like it will be a useful starting point. To begin, “Introducing Silverlight”:
Microsoft® Silverlight™ is a cross-browser, cross-platform plug-in for delivering the next generation of .NET based media experiences and rich interactive applications for the Web. Silverlight offers a flexible programming model that supports AJAX, VB, C#, Python, and Ruby, and integrates with existing Web applications. Silverlight supports fast, cost-effective delivery of high-quality video to all major browsers running on the Mac OS or Windows.
First few thoughts that spring to my mind after reading the above:
- “cross-browser” – which browsers? Guess: IE (duh), Firefox, Safari(?)
- “cross-platform” – which platforms? [educated]Guess: not linux. Does this include devices?
- “.Net based” – I’m aware the Silverlight plugin doesnt support full on .net, how much does it support? Which version?
- “AJAX, VB, C#, Python, and Ruby” – sounds good
- “and integrates with existing Web applications” – hmm I’d be interested in seeing an example of this that makes it mean more than just marketing talk
- “fast, cost-effective delivery of high-quality video” – I think this is where they will get one up on FMS due to licensing costs (more research needed) and video quality (although I’ve read recently about the latest Flash update including an improved video codec (comparisons needed)
- “all major browsers running on the Mac OS or Windows.” – ha Mac first, is that to make a point or was it in alphabetical order?
So far so good, but that’s really just summarised what I already knew, time to look at some of the examples and see if I have the latest player…
3 – example: Zero Gravity Game
First thing I’m looking at is a game linked from the silverlight.net homepage, Zero Gravity. First thoughts were: “ooh a preloader, well i expected as such but I wonder if there will be a resurgence in the ‘preloaders ruin the web’ crowd as there was (still is) with Flash”. The game loaded fine, played it for a couple of minutes, it looked pretty good and ran well, not the best game in the world but thats probably a good thing for me considering I need to get through a lot still and its getting late.
A point that I think will come up alot will be “well I can already do that in Flash what’s the point of it?”, which is fair comment and if you can do it in Flash already then why bother? However, if you do manage to learn some Silverlight it may (or may not) become apparent that certain types of developments are better suited to Silverlight and others to Flash, if you don’t try it don’t knock it, which is why I’m giving this a go here and why I was happy to agree to giving a presentation on it.
2.5 – Plugin installation
Okay so I have blatently tried Silverlight things out before now which is why I had the plugin all ready to go. Well, not wanting to cut corners I’m going to try uninstalling and reinstalling the Silverlight plugin… Where to look, first stop Add/Remove programs… It’s there amoungst a million other Microsoft things and the uninstall was fairly smooth, although I did have to close down Firefox for it to complete.
Now to try the game again, first thing of note is the plugin detection. I now see a nice glowing “Get Microsoft Silverlight (beta)” button… click. I’m taken to an MSDN download page offering me the Mac or Windows version of Silverlight. The windows version shows it’s compatible on Windows XP and Vista and IE6, IE7, Firefox 1.5 and 2.0. Mac version is Firefox 1.5, 2.0 and Safari. Not bad, but looking at my site stats, were I to put a Silverlight app on this site I would be instantly eliminating 3-4% of my visitors without giving consideration to whether they would want to install the plugin. I click the download for the windows version. I’m now at an MS licence page which “I accept”, save the file, run installer, DONE! I’m impressed, after actually getting to the download the install couldn’t have been smoother, didn’t even have to restart the browser… oh no, after trying the game again turns out on Firefox you DO need to restart the browser (couldn’t it have told me that after install?). But still, browser restarts I can handle compared to system restarts, tried again and the game runs fine.
4 – Do something
Now we sort of know what Silverlight is and what it can do, I want to actually create something myself. The “Get Started” Link on the silverlight.net homepage looks good…
Getting Started Video
The video itself is running in Silverlight, it starts straight up and there’s an option for full-screen, again this can all be done in Flash but either way this is how video should be and not waiting ages to install, open, buffer then watch with some other external plugin.
The initial demonstration in the video uses Visual Studio Orcas (MS codename for VS 2008), I guess I’ll be downloading that next. It demonstrates a very simple create project, write some XAML (the UI markup language) and adds a C# event handler to create a basic Hello World. Looks easy, I think I can handle that.
It then goes on to demonstrate some simple functionality of Expression Blend which is the interaction design tool for Silverlight. Basically Blend allows you to drag & drop elements, manage timelines, create effects and design elements for your application much like you would with the stage and tools in Flash. In the video, Blend is launched from Orcas and instantly loads all of the project assets and displays the currently created simple xaml file in design view. He then goes on to animate a basic textbox by rotating and moving it.
The cool thing is he then switches straight back to Orcas and the xaml is updated, in the code view he can then invoke the animation he just created in Blend through C# in code-behind file. The workflow looks amazing! (watch the video – it’s hard to explain)
Next the video shows an example of integrating a Silverlight Project within an existing asp.net web project by dumping the Silverlight app onto an asp.net webpage. Again Orcas makes this look very easy but we don’t really know what’s going on behind the scenes. An interesting point that is being demonstrated is that Silverlight can directly call asp.net web services (or any standard REST or JSON web service).
The video takes a rapid couple of steps forward and imports some custom controls into the project which then procedes to create a nice Flight Schedule tool – okay the end result is impressive but I think a few too many steps were skipped for it to be of any real value, although it does show you the potential.
Overall the video was a very good introduction to Silverlight. To begin with I’m going to look at using the expected Visual Studio Orcas (a new beta is to be released soon I believe) and an evaluation version of Expression Blend. This great workflow is what helps MS sell their products, I can already tell that whilst not using these tools would be possible, using anything else is going to cost alot of time.
5 – The tools
The next section on the silverlight.net site offers downloads to the tools you’ll need, the first is the Silverlight runtime which we already have, the next is Visual Studio Orcas. Yikes, that’s alot of downloading, eight 700 meg files to get!
As well as the standard Orcas package we need the Silverlight tools for Orcas.
And if we’re to be doing some funky designery interactiony stuff, we need Expression Blend (there is also the option of Expression Design which can be used for creating assets for Silverlight, but i’m going to leave that for now).
To install Blend you also need the .Net Framework 3.0.
To be continued…
Whilst all this downloads I’m going to post where I’ve got so far to break up the post and to get this out before all the information is out of date! So far I’ve spent about 3 or so hours researching this across my limited spare time over the past couple of days. I’m pretty impressed how easy everything has been to discover, largely down to the Silverlight.net site so far. I’m also pretty confident I’ll be able to get up and running with Silverlight relatively quickly.
Oh and if anyone reads this and has any questions/pointers they think I should cover in the next post leave a message in the comments and I’ll see what I can do…
Published on June 23rd, 2007 by DannyT. Filed under Adobe AIR, Development Tools, Flash, Flex | 7 Comments
As mentioned in my last post I want to explain to the un-database-initiated what a database in AIR is and how it differs to other databases you might have heard of or experienced.
Database Support In AIR
Adobe have recently added support for databases in AIR through support of SQLite. From the SQLite website:
SQLite is a small C library that implements a self-contained, embeddable, zero-configuration SQL database engine.
What this means is that SQLite enables database functionality within a single system file without the need for a running database server or complex database applications. The real merit to this is that it is highly deployable and as such is a great addition to AIR. To better understand this it might pay dividend to see how this is different to traditional databases.
Other Common Databases
If you work in web development the liklihood is you will have worked with or at least heard of SQL Server and/or MySQL. These are the most commonly used databases in web development so we’ll start here to help understand SQLite.
SQL Server and MySQL are Database Management Systems (DBMS), in that they work on a schema of tables of data and identifying relationships between those tables. This is very much the same in SQLite, you store your data in tables (think spreadsheets) and you can link (“relate”) those tables to each other through the use of “keys” (more on this in a later article).
However, SQL Server and MySQL are Database Servers – they are hosted on a network accessible resource (I.e a server), requests are sent to the database server and information is returned. SQLite differs here because an SQLite database resides on the client machine in a single file and all database operations are carried out on that specific file.
Interactions between a MS SQL Server/MySQL database and an SQLite database are much the same in format (the surprisingly titled ‘Structured Query Language’) but SQLite interactions are carried out on a file whereas SQL Server/MySQL are carried out on the server. Understanding this difference will be key in assessing when to make use of the built in support for SQLite and when to use traditional DBMSs which will still require the use of a server-side language (e.g. php, .net or java).
When to use SQLite
So database server databases reside on servers (woah
) and SQLite databases are files on the local filesystem. So are they viable alternatives or are there use-cases for one and use-cases for the other? There absolutely are different use cases for each approach:
Database Servers
Where all users need to share the same information – E.g. Forums and community sites
Users aren’t necessarily going to be accessing from the same machine – E.g. Remote vs office working
High volume of data transactions – single file local databases aren’t going to cut it with millions of data transactions. Modern database servers can handle much higher loads.
Concurrency Requirements- On a local database file with SQLite your database is either being accessed and therefore locked (I.e. one transaction at a time). database servers have much more advanced complex record locking and update mechanisms which are useful again for high volumes of data requests and updates.
SQLite
Disconnected Working – E.g. For applications when offline working is required
User preferences – Where the user audience need not know each others details E.g. layout settings
Local Processing – If alot of work is being done at the database that doesn’t need to be publicly shared E.g. summary reporting, calulations etc.
Best of both worlds
SQLite in AIR allows you to take your data driven applications and make use of local resources and avoid unecessary remote server calls. SQLite will not completely eliminate the need for remote code and databases but it will certainly help to enhance the desktop application experience. Database servers allow for shared access to data and distribution of data, combine this with SQLite for local, disconnected data access and you can really add value to your rich internet desktop applications.
Published on June 17th, 2007 by DannyT. Filed under Adobe AIR, Development Tools, Flash, Flex | 3 Comments
In a recent conversation with Neil the significance of database access in ActionScript dawned on me. Whilst this feature has undoubtedly been driven by requests from those with previous experience of databases, there must be a huge amount of Flash/Flex devs who’ve never had to worry themselves with the wonderful world of DBMS’s (“Database Management Systems” or “databases” for the non anal). So I thought I’d put together a number of introductory posts on the essentials of databases.

A couple of things to note first: I have not touched databases in AIR before now, in fact despite the number of posts on Apollo, i’ve not touched Apollo/AIR in any decent capacity before now (purely due to the rare commodity of time). However, I am pretty well versed in other common databases namely MS SQL Server, MySQL, Oracle and of course, Access (barf).
Another thing to note is: to all you guys who spend all day every day creating amazing, interactive, fun and flashy things in Flash and Flex… databases might seem a bit dry. In fact sod that, they are dull as dishwater, paint drying and grass growth in comparison. However, if you’re planning on making some kick-ass AIR applications and don’t want to rely on webservers, server-side scripting and hard to setup and manage database servers and/or want to make use of the nice offlineyness in AIR, bear with it because it will be a very useful string to your AIR RIA (gotta love these acronyms) bow.
So what are these essentials of which I speak?
The below is a rough list of topics I’m going to cover. I’m starting from a real “assume no knowledge” level so please feel free to wait for the later articles if you’ve already some exposure to databases. I’m hoping to get these out over the next few days but if you have any comments, questions or suggestions please fire away and i’ll try to include as much as i can. I’m going to be creating plenty of simple examples using Flex3 (although this is already proving troublesome as my poor old laptop can’t hack it – but i’ll sort something out). Anyway, on with the planned topic list.
- What is a database? – duh! Okay to put it a better way, how do databases in AIR compare to other databases that I’ve heard of?
- What’s in a database (an AIR database) – Tables, Views, Triggers, Indexes
- SQL – The mother tongue of nearly any database you’re likely to use.
- Normalisation – ugh! initially this wont seem important and certainly not interesting. As soon as you want to start doing more advanced databasey stuff – you have to get this.
- Database best practice – this is yet to be defined in the AIR world, however there are many databases in application best practices we can draw from other languages and databases to get us started.
As mentioned, if you think there’s anything unclear or you think I’ve missed let me know and I’ll try to cover it. First topic coming up shortly…
Published on April 17th, 2007 by DannyT. Filed under Development Tools, Expression, Uncategorized | 1 Comment
Okay so it’s time to get our hands dirty and actually play with one of the tools: Expression Web!
To be honest this was kind of an anti-climax for me. Expression Web is a good HTML editor. That’s about it. I’d go so far as to say a very good HTML editor if you do design web pages for ASP.Net development… but don’t DO the actual ASP.Net development (i.e pass it on to a developer). It has some nice features and I might start using it over Dreamweaver as a general HTML editor depending on how the next Dreamweaver release pans out. Expression Web seems to generate clean, compliant code (note: I didn’t thoroughly check the compliance yet but all seemed good). It has a nice easy integration with ASP.Net controls for layout and it also has nice CSS integration. Other than that I wasn’t particularly bowled over, maybe it’ll shine more as we move into some of the other technologies over the coming week. Another point that may be of interest to some is that Expression Web supports dwt (dynamic web templates or Dreamweaver templates) and master pages, both of which allow the creation of consistent layouts without having to rewrite the page’s framework. I think Expression Web will be a great tool for the designer who sees their design through to a CSS’d HTML layout and primes said layout to be passed onto a .Net developer with the proper controls intact and ready to roll.
Things I’d like to see in Expression Web (may already be there but I couldn’t find it) is more support for languages other than HTML and .Net. This hums of old Microsoft without it. Expression Web is a very good HTML editor, it really wouldn’t be bad for MS to include syntax highlighting etc for other technologies such as PHP or even Classic ASP (you can Save As but that’s about it). Also integration with Source Control is an absolute must, I’m not sure if it would integrate with a shell client such as TortoiseSVN (the folder view seems to be a standard Vista folder display so maybe it does – I don’t use Vista yet) but to not offer support for Visual Source Safe on a released product that supports .net controls doesn’t make sense to me. Another annoyance for the feedback team is that when using the “Add new style†panel, you might spend several minutes putting together the right style by selecting the available options (ideal for those learning CSS) but if you haven’t got a valid HTML header available in the currently open document you have to close the style panel with no option for saving or recalling it.
We also looked at building Vista Gadgets. These are quite cool because of their simplicity, you basically design a small interface in html, add some code with JavaScript which has access to some desktop api’s and you then package it into a zip (or .gadget) file with an xml file detailing the structure of your gadget and a settings file if required. It reminded me a little of how you package an Apollo app but with zipping instead of compiling. If you get a chance to play on a Vista machine, find a Gadget and dig around the folder’s source files, it’s very simple and I can see a lot of benefits of such a simple system… A quick search also found a HUGE amount of useless gadgets which I feel may be hiding some of the better ones.
Expression Training Day 1 – Summary
Overall: Not Bad
The morning sessions got me excited and very much buying into Expression and Silverlight, unfortunately the afternoon was a little slow and judging by the high skill-level that was in the room the pace was way off. Even though this stage of the course has already been radically reduced based on the feedback from the first time the course was ran, it was still very uninspiring. We were shown some amazing WPF and Silverlight demos and then crawled through some basic HTML editing for the rest of the day. I think it would be ideal for people new to web design but in a room full of experienced developers from some of the capital’s top agencies (and me
) it wasn’t the right content, particularly based on the pre-reqs that were on the course notes.
BUT THAT IS OKAY – I feel I must point out that whilst I may have grumbled a little in this post, this is only the first day of the course and only second time that this course has ever been ran. Microsoft (by way of Jon and Andrew) are massively keen on ‘getting it right’. This is why I’m still enthused by the MS offering as they seem to be focusing their efforts towards the developers and are hungry for feedback in striving to perfect developer support and improve their products and uptake of said products. Reading back it sounds almost like I’m just airing my dirty laundry with the course, apologies if that is how it reads because the intention is to provide feedback and also share the Expression learning experience. I’m still very much looking forward to tomorrow and the rest of the week.
Published on April 17th, 2007 by DannyT. Filed under Development Tools, Expression | No Comments
We started the day with a few presentations by Jon Harris and Andrew Shorten on what the Expression offering is all about, where it has come from and where things are headed. This was good and it was refreshing to see a Microsoft presentation pressing all the right buttons in terms of user experience and engagement, whilst also maintaining a level-headed and realistic approach to “Reach vs. Rich”. Bear in mind this wasn’t “Microsoft-the-biggest-company-in-the-world” presenting, this was two guys, enthusiastic about the industry we’re in, enthused by the products they’re working with, excited by the prospect of others working with their products and who happen to work for Microsoft. I think MS are starting to get it.
We then had a run through of the Expression Suite which by memory is as follows:
Expression Web – this is absolutely, definitely, without-a-doubt, positively NOT FrontPage… well it kind of is but FrontPage has such a bad rep they’ve cut the chord indefinitely. The long and the short of it is that it’s a HTML editor more on this later in the post.
Expression Design – Import vector and export XAML… hard to describe without more research and I’m going to wait until I have a play before defining where it sits.
Expression Blend – FLASH KILLER!!! Only joking, I’ve not looked into it yet, but it appears this is the element that could be closest associated to Flash. Although its focus seems to be purely on user interaction and visuals and not at all concerned with programming of business logic, no code is written in Blend. Again, will hold off thorough assessment until I have had a decent play with it.
Expression Media – Now this does look interesting and is apparently very much the focus of the announcements at NAB. To me it looks like a form of digital media management. It allows management of your media assets, manipulation and batch processing of those assets and various import/export capabilities.
Now those are some pretty vague overviews. Unfortunately that’s what I come up with when I try to recall what was discussed. I don’t think this is necessarily bad however. MS haven’t tried to create the next Photoshop, Flash and Flexbuilder which would have been a far easier concept for me to digest and relay. Far from it in fact, these tools are intended to address designer-developer work-flow issues and suggest new approaches to developing engaging user experiences. The end result isn’t to offer something staggeringly different but to offer an alternative journey to get there. I.E “You can already do that in Flash” isn’t the argument: “This is how you do it in Flash, this is how it’s done in Expression. Which is most suitable for our project?” is what is on the table.
Published on April 17th, 2007 by DannyT. Filed under .Net, Business, Development Tools, Expression, Flash, Flex | 8 Comments
This week I am on a training course titled “Creating engaging user experiences with Microsoft Expression” “Delivering Rich Online Experiences Using Miscrosoft Expression, ASP.Net, AJAX and WPF” (edit: surprisingly I couldn’t remeber the exact title without the material in front of me, this is now the real course title and a better indication of the content).
Why?
Well, I met Andrew Shorten, a former Macromedia/Adobe now Microsoft UX guy after my presentation on Apollo at the LFPUG in February. We got to talking about what he’s up to at MS and a few days later he came down to see us in sunny Bournemouth and we got into discussing the latest industry goings ons and where the Microsoft Expression suite, WPF and SilverLight (then WPF/e) fits in. Turns out he’s a pretty cool guy and has a pretty cool job of liaising with the developer community and trying to push and gather feedback on the whole Expression outfit. He offered me a place on this early adopters course and me, being one for expanding my (and my businesses) horizons rather than spouting off uneducated, ill-researched rants about my love/hatred/bandwagoning-opinion on various technology companies, accepted.
Yeaaaah, but WHY?
Well, I’m well aware MS has been getting a bit of a bashing from the Adobe crowd (dev community and the more corporately associated) of late. I’m also obviously not anti-Adobe myself. Far from it, I’ve been developing with Flash since early Flash 4, I’ve blogged enthusiastically about Apollo, Flash and Flex for nearly a year (late starter in comparison to some but have been reading and commenting on blogs for years). I’ve attended several Flash conferences and regularly travelled the 3+ hours to London for the monthly MMUG and now LFPUG meets. However, I have also been a long-time user of Microsoft technologies, I’ve developed in .net for several years, both ASP.Net and Windows Apps development, before that I developed in VB and classic ASP, am fluent in SQL Server and have managed several dedicated MS web servers over the past few years.
So… I’m an Adobe AND MS fanboy? Kind of, but I also run my own Linux server (on which this site is hosted), am in no way adverse to owning a Mac, am increasingly familiar with Apache, PHP and MySQL, am interested in several Open Source projects and generally like to keep tuned to as much as possible in the web and technology space.
So… (finally getting to the point) for me, taking an active interest in Expression and Silverlight was never a choice of ditching Adobe in favour of the MS alternative. I have no intention of stopping or slowing down any of my interest in Adobe, nor any other technology. I’m just prepared to arm myself with the relevant skills to understand the Expression toolset, familiarise myself with the merits and drawbacks of the available technologies and position myself in the best place possible to be able to accept projects requiring MS, Adobe or whatever technologies and being able to advise in an authoritative capacity which is the right technology to use for which specific projects.
I’ve been getting a bit hacked off with the side-swiping and name-calling going on in our industry of late. And think it’s time for these companies to stop wasting time trying to make each other look bad and start concentrating on their products and their developers. We’re now spoiled for choice with some amazing technologies, let us get our teeth into them without feeling guilty and let us do some amazing stuff with those technologies. You won’t influence by bad-mouthing, you’ll influence by supporting, listening and reacting to your developer communities.
Sorry, now the rant is over, I’ll get back to posting on the week’s progress as I delve into the unknown world of Expression.
Published on April 2nd, 2007 by DannyT. Filed under Adobe AIR, Business, Development Tools, UI | 5 Comments
I was just having a conversation with Ryan (through the medium of geek – aka twitter and blog comments) and we established a concept of “enterprise widgets”.
It’s not really a new concept rather than a different outlook on the “widget” concept. It is also something that Apollo is an ideal platform for developing.
In Ryan’s post he demonstrated use cases of when to focus on a browser app vs when to focus on a desktop app. One of the points about when to target the desktop was:
You’re building a “widget” application. Widgets are becoming bigger and bigger (in terms of capability) and you just can’t run a widget platform inside the browser. Widgets need to be accessible from the desktop, where they can take up a small space and be easily moved around. The browser restricts that too much.
He then asked for other ideas to which I responded:
Something that I’ve been harping on about a bit lately is the opportunity of a “desktop web service” (service in the desktop sense, not a web service). So that’s not too clear and a better term is needed, I think an example is in order:
Say you were a trader and wanted to be notified when certain things happened to rates/markets. With a desktop app you can have a form of service (or invisible app) that runs in the background watching the trading web services, when something pertinent happens you can fire into action informing the user.
This is a use case for a desktop app as you don’t want the user to rely on having a browser window open on a specific website.
Clear as mud? Wicked, I think i need to go away and create this application to aid my ill-eloquent thoughts-to-text abilities.
Ryan alerted me to the fact that my suggestion IS a widget of sorts. However, for myself, the term widget conjurs up the image of a small funky looking app that runs on your desktop and is used for fun, interest or time-passing E.g. weather reports, RSS readers, traffic warnings etc. In light of this I hadn’t associated my example (a corporate or enterprise type application) with the term “widget”.
So an “enterprise widget” is essentially a widget with or without a UI which can run as a desktop service until some event or action happens that would require further interaction with it (or another desktop or web application).
Another idea that could be classed as an enterprise widget is
Grant Skinners gTimer – I don’t know the specifics of this (it looks very cool and a something I’ve been wanting for a long time) but it could potentially run as an invisible application on your desktop (or just an icon in the system tray) and only prompt for client/project details when you open/close files and applications. Therefore negating the need to conciously update your timesheets when you switch projects.
Basically any action you need to take that needs to be responsive to some event or information change you can setup an enterprise widget to monitor activity and prompt with the necessary action based on certain flags. E.g. you could have an RSS reader that spurs you into a blogging frenzy whenever anyone mentions a specific term or technology you’re interested in.
Apollo seems to be the ideal choice for developing such enterprise widgets because of it sits squarely on the line between desktop and web. Making use of web services, desktop presence and desktop chromelessness (a word I just invented) are all key elements of the enterprise widget.
I’m not sure “Enterprise Widget” is the best term because, as I mentioned earlier, I don’t associated “widget” with a business tool but maybe that’s just me or maybe there is an existing definition that might be a better fit. I initially referred to it as a “desktop web service” but that was just plain confusing. Ideas?
Published on February 14th, 2007 by DannyT. Filed under Development Tools, Flash, Flex | 1 Comment
Not sure how widely publicised this is but sounds very promising. Some of the very well known open source remoting projects have banded together to form The Universal Remoting group.
From osflash:
The Universal Remoting group’s purpose is to coordinate and unite efforts on open-source Remoting projects. The group is a joint effort of the amfphp, SabreAMF, fluorine, and RUBYAMF projects. Other Remoting projects who want to join in are welcome.
They currently have two projects, Universal Remoting Service browser and Universal Remoting documentation.
If anyone has any more details on this I’d be interested in finding out more, so drop us a comment below.
Published on January 3rd, 2007 by DannyT. Filed under Adobe AIR, Business, Development Tools, Flash, Flex | No Comments
Just re-reading a post I made a short while back on Apollo, where I mentioned a split between desktop application developers and web applications developers and thought I’d go into a little more depth here.
I am of the understanding that the target audience for Apollo is web developers, this is quite an obvious one really as one of the major benefits of Apollo is the re-use of existing web-based skill sets (flash, flex, html, ajax etc). This is also reflected in the positioning of Apollo from a marketing perspective (flash conferences and web dev conferences/user groups).
This will undoubtedly lead to an influx of “Rich Internet Desktop Application Developers” (can I be the first to publish the acronyms RIDA and RIDADs?
). However what perhaps isn’t so planned for that I can foresee is the number of traditional “desktop application developers” coming out of the desktop woodwork to show these web devs the ins and outs of desktop application development. We went through a massive learning curve when we educated ourselves on developing applications for web. So much so that perhaps a certain amount of this education will need to be undone now we are venturing back to the desktop.
This is of course assuming there is any form of distinction between a desktop app developer and an internet application developer? Personally I would say I started out as a web developer, became a desktop application developer and now sit somewhere in between desktop and web application developer (when I have a developer hat on of any sort). I would certainly not be surprised if a number of web developers have never developed traditional desktop applications nor intended to that are now considering the shift to application development with the advent of Apollo.
My queries that we will see answered throughout 2007 and beyond are:
Might Apollo also lead to more traditional desktop application developers delving into web technologies to get their hands dirty with Apollo?
Will there be a clash of web app developers vs desktop app developers arguing over how things should be done on the desktop?
Will there be a new breed of application that is exploited through the leveraging of desktop and web apps on a single platform?