Pinderkent

Pain and glory from the trenches of the IT world.

RIAs have always been about marketing, and not about providing valuable technical solutions.

Posted on Saturday, March 14, 2009 at 5:41 PM.

There has been a lot of hype over the past several years about RIAs, Rich Internet applications. And hype is essentially all that we've gotten. The main problem with RIAs is that they don't let us do anything truly new. In short, they don't help us solve real problems. This derives from the fact that their use and the use of the development tools used to create them has been driven mainly by marketing and evangelism, rather than by need.

Today's common RIA technologies include Microsoft's Silverlight, Adobe's Flex and Sun's JavaFX. From a technical perspective, none of them are truly remarkable or innovative. Silverlight is essentially Microsoft's .NET stack within the browser. Flex and JavaFX are somewhat worse, in that they use sub-par languages like ActionScript in Flex's case, and JavaFX Script in the case of JavaFX.

So we end up with platforms that are heavily sandboxed (that is, intentionally limited in capability) due to being browser-based, and developer productivity that is crippled by the use of languages like JavaFX Script and ActionScript. Even Java applets, available since 1995, offer a more flexible and developer-friendly platform.

Those platforms and frameworks don't really allow us to do anything that we couldn't already do with typical desktop applications or even JavaScript-based Web apps. One common use is playing streamed media, which is something that various desktop applications have offered for many years now. Otherwise, we often see them used for low-quality 2D games, which have also been available for decades. And they prove to be quite terrible for business applications, often combining the worst of Web application development with the worst of desktop application development.

Their inherent lack of technical merit is likely why we've seen them pushed more by marketing forces and stealth bundling, rather than seeing their uptake driven by them naturally providing a more productive, efficient way of solving problems using software. The whole emphasis on 100 million downloads is a good indicator of this.

Over the past several months, I've done some part-time consulting with a company that developers custom apps for a variety of clients. Unfortunately, some of their clients have requested RIAs, with most of the emphasis being placed on Flash/Flex and JavaFX. Over lunch time discussions with some of the developers, I've gotten the impression that feelings are quite mixed. The developers coming from a more traditional background of developing desktop client-side software using languages like C++, Java and C#, including myself, have a more negative opinion of these platforms. We see the regression. On the other hand, those coming from a Web development background are more likely to embrace them, because they often aren't aware that there's much beyond JavaScript and HTML.

My hope is that the development community as a whole gets over this RIA fad sooner, rather than later. We've got more pressing matters to concern ourselves with. Namely, we need to start making better use of functional languages, rather than half-baked scripting languages like ActionScript and JavaFX Script. We need to return our focus to developing practical apps that actually help make others more productive, rather than providing yet another way to play video.

Permalink: http://pinderkent.phumblog.com/post/2009/03/rias_have_always_been_about_marketing_and_not_about_providing_valuable_technical_solutions
Share:

Web browser resource allocation and management improvements are sorely needed.

Posted on Saturday, February 16, 2008 at 2:27 PM.

If more and more software developers are going to be developing browser-based applications using technologies such as JavaScript, Flash, and AJAX, we will need to see the Web browser become a much more capable platform. In short, the browser will need to duplicate much of the work that has been done over the years in the operating systems field.

One of the main problems affecting browsers today is that of resource allocation and usage. These are the very same issues that operating system developers faced in the 1950s and 1960s, when their craft was first maturing. These days, we have the browser acting as a code execution environment, and allowing for multiple, concurrent executions (eg. in multiple browser windows or tabs).

It's very easy for a malicious or poorly-written JavaScript to execute in such a manner that it locks up the entire Web browser. Some improvements have been made in this area, such as the use of watchdog timers that will prompt the user to kill the script if it has been running for a long time. But this is not the correct path to take. It only scratches at the symptoms, rather than curing the actual root cause.

Web browsers today need greater isolation between the different Web pages that are being displayed in multiple browser windows or in multiple tabs within a single window. Konqueror does this to some extent. Unlike with browsers like Mozilla Firefox or Opera, it is by default possible to launch multiple Konqueror processes at once. That way, poor JavaScript or a browser crash will only affect one window. Unfortunately, such isolation is either not easy or not possible to do with Opera and Firefox.

Unfortunately, Konqueror doesn't offer that degree of isolation when it comes to multiple tabs. A resource-consuming JavaScript in one tab has a lot of potential to lock up the entire browser window, rendering the other tabs inaccessible or essentially useless. Of course, the situation is far worse with Firefox and Opera, where other browser windows will be locked up, in addition to the tabs sharing the window with the problematic Web page.

A problem in one browser tab should never be responsible for a decrease in the availability or usability of another browser tab, let alone another browser window running in the same process. This is the most basic level of isolation, an it is a disappointment that after nearly two decades, even the most popular Web browsers cannot handle this task in a suitable manner.

Permalink: http://pinderkent.phumblog.com/post/2008/02/web_browser_resource_allocation_and_management_improvements_are_sorely_needed
Share:

The many contradictions surrounding Buzzword.

Posted on Friday, August 17, 2007 at 6:54 PM.

Today I was reading about Buzzword, yet another Web-based word processor. There is some sort of a Buzzword preview page, but it said the browsers I tried were "unsupported." At the very least, they could have put up some screenshots of their application on that page, so people like me can see what we're supposedly missing out on.

Thankfully, the article included a screenshot, so I was able to get some idea what Buzzword is about. But after reading the article, I went back and looked at the screenshot again, and noticed some immediate contradictions.

The article says the following: The slick, Flash-based user interface is Buzzword's killer feature. Flash allows for some advanced menu behaviors that simply aren't possible with Ajax. There are no menu bars or palettes to take up room in the app -- formatting options and context-sensitive menus slide into view only when you need them.

The first contradiction is in the first sentence. Namely, I don't really see how the user interface is "slick". There's really nothing astounding about it, if you look at the screenshot. It looks like a typical word processor. If anything, I think that "immature" is the best word to describe its appearance and UI.

The third sentence contains a number of contradictions. First, it says quite clearly that there are "no menu bars or palettes". Looking at the screenshot, I see what I presume to be a menu bar with menus across the top, labelled "Document", "Edit", "Insert", and "Help". I also see what appears to be a toolbar or palette, right underneath what would appear to be the menu bar. Perhaps somebody who has actually tried Buzzword can address these apparent contradictions.

Furthermore, it sounds like effort was put towards minimizing wasted screen space. This is commendable, except for the fact that there is so much obvious waste depicted in the screenshot! The first major area is along the top, to the right of the menu bar that supposedly doesn't exist. We clearly see a large, dark area with nothing in it. Right below that, in the toolbar/palette that also supposedly doesn't exist, we see wasted space between the dropdown with the letter "A" in it, and the button with the paragraph symbol. Beside the document, we see a large grey area that is about 90% the height of the screenshot, and about 20% of the width. Then at the very bottom of the screen, below the document, we see another grey area with nothing in it. It looks like nearly 30% of the total screen area is wasted, showing nothing but useless grey.

Buzzword has not left a good impression on me, nor has the article. It really doesn't look like Buzzword will offer anything beyond what OpenOffice.org offers. The contradictory nature of the article and screenshot didn't help either. And their near-useless "Unsupported Browser" page could have at least shown one or two screenshots, as well. All in all, I don't think I'll bother giving it a try when it's finally available as a public beta, as the article says is expected this fall.

Permalink: http://pinderkent.phumblog.com/post/2007/08/the_many_contradictions_surrounding_buzzword
Share:

Bias does not arise from pointing out technological flaws.

Posted on Sunday, August 05, 2007 at 8:26 AM.

Today I was reading through an article about the many problems associated with Flash. Although it is entitled "Flash Sucks," the article is well-written, and makes many good points that a lot of Web developers fail to consider. Among the issues covered, the usability and accessibility problems often observed with Flash-based Web sites are mentioned. The proprietary nature of Flash and related technologies is also addressed. So overall, it sensibly addressed some serious issues with a fairly popular technology that is poised for further growth.

As with many blog entries, there is a comment section at the end. And in there I noticed one comment in particular that follows a certain trend I have observed. This trend involves accusations of bias when the flaws of a particular technology are pointed out. This is something I wrote about fairly recently, after I was accused of having a "bias" against Windows and .NET because I recounted a failed software system transition using those technologies.

All technology is flawed. Some technology is flawed more than others. Some technology is inherently flawed, to the point where salvage is not a viable option. So somebody pointing out such problems, be it in a blog post or in a meeting or at a conference, does not indicate "bias" on their behalf. What it indicates is that somebody has observed a problem with the technology in question, and ideally this problem is to be resolved. Tossing around accusations of "bias" does nothing to fix such technological problems.

Permalink: http://pinderkent.phumblog.com/post/2007/08/bias_does_not_arise_from_pointing_out_technological_flaws
Share:
Feeds
  • RSS 2.0 Feed
  • Atom 2.0 Feed
Tags
Archives