This morning, I checked out the new Flickr Code site. As a part of this site was a blog post on how one of the developers at Yahoo redeveloped the Flickr Uploader (actually I think he is still redeveloping). His platform of choice to provide a consistent cross-platform application was XULRunner. He states that real choice was between AIR and XULRunner.
What were the deciding factors? In his case it came down to two things: the ability to use external libraries, and multi-threading support. In his case – I think most of his evaluations were correct. For that specific application XULRunner made sense…for now. I think many of these limitations will change in the future for AIR. However, as AIR developers we have to be able to look at a situation and honestly evaluate if AIR is the best choice for that specific use case.
You can read the post and watch a video about it here (the video of the AIR vs. XULRunner starts at about 7:00)
The SQLite database inside of AIR provides a great deal of functionality that can be used to create a great many different types of applications. In this article, I have placed links to the tutorials I have been writing over at InsideRIA.com on how to use this functionality (I am about halfway through this series). Let me know if you have any questions – and I can address them in the upcoming tutorials. Currently, I have covered topics such as: connecting to a database, running basic queries, strongly typing query results, and parameterized queries.
I recently had the opportunity to develop a small tutorial application that ran queries on a good sized dataset (not huge – but 10,000 rows). I hadn’t yet had the opportunity to test AIR’s SQLite database functionality, and I must say that I was pleased. The application (which was a tutorial on strongly typed database results and parameterized queries for my AIR API series at InsideRIA.com) – just has a search field that enabled you to search through these 10,000 records to find a certain contact. It also auto-populates the datagrid as you type. So, if you typed my first name ‘David’, it would have search over 10,000 records five times.
Amazon just officially announced that they are indeed developing persistent storage for EC2.
This new feature provides reliable, persistent storage volumes, for use with Amazon EC2 instances. These volumes exist independently from any Amazon EC2 instances, and will behave like raw, unformatted hard drives or block devices, which may then be formatted and configured based on the needs of your application. The volumes will be significantly more durable than the local disks within an Amazon EC2 instance. Additionally, our persistent storage feature will enable you to automatically create snapshots of your volumes and back them up to Amazon S3 for even greater reliability.
You will be able to create volumes ranging in size from 1 GB to 1 TB, and will be able to attach multiple volumes to a single instance. Volumes are designed for high throughput, low latency access from Amazon EC2, and can be attached to any running EC2 instance where they will show up as a device inside of the instance. This feature will make it even easier to run everything from relational databases to distributed file systems to Hadoop processing clusters using Amazon EC2.
Amazon has now cleared the second big hurdle for EC (with the first one being static IP’s – which they recently remedied). Now developers will have to start asking the question – “Why am I not using EC2 for my RIA’s?”.
So, I waited out my old Verizon contract, and went to AT&T mainly for the iPhone. I was really excited, because I have been a big fan of the user experience offered by the iPhone. However, there was one user experience aspect that I failed to consider – AT&T’s network. My user experience (at least with the calls) has been nothing but negative compared to my previous provider, Verizon. I am sure this is not the case elsewhere, but in Savannah Verizon is simply the best provider. My iPhone doesn’t work at the office. My wife’s Pantech Duo doesn’t work at her school, and neither of our phones consistently work at home (and we don’t have a home phone line – so this is a big deal). Unless something changes in the next few days – our phones are going back to AT&T and I will probably go back to my old XV6700 smartphone with Verizon.
Yes, it appears that my WordPress install was hacked just prior to my upgrade to WordPress 2.5. Just as before, it wasn’t anything major, but I got a whole host of hidden links added to the end of one of my posts. This was easily fixed. However, because this went for a week or so before I caught it, my frontpage dropped off Google like a rock.
I would certainly recommend that everyone upgrade to WordPress 2.5 ASAP – and stay updated. This won’t keep you from all of the hacks and exploits, but it helps tremendously. In the mean time, I am going to write some shell scripts on my Nagios install to search for various pharmaceutical terms on my site – so the next one won’t catch me unaware.
Stupid WordPress Hackers…
I started blogging last year in April. Over the last year I hope that this blog has proved helpful to many of you. I have been amazed at how the readership has grown. The Cairngorm series posts have been the most popular by far over the last year. Here a few statistics to sum up the last year:
Let me know what you want me to cover between now and April 1, 2009! Why April 1st…it’s my birthday…really it is.
Many people have asked that I make the Cairngorm Series downloadable (the video portions). Since I have gotten a handful of requests this week – I determined to go ahead and post the links:
UPDATE: Many people didn’t realize that there are written tutorials and exercise files that go along with each tutorial. You can find those here.
These videos are in FLV format. You will need an FLV player to view them. Adobe Media Player is the best FLV player, but they have not yet released a version for AIR 1.0. Until they do – you can use the following:
Note: There IS a Part 6 coming soon to the Cairngorm series. I was waiting on another developer to get finished on a specific project, but it doesn’t appear that will happen in the near future – so I won’t hold it up any longer.
This tutorial is current for AIR 1.0