Web Info & Tutorials

November 1st, 2007

SONGBIRD V0.3: API FOR MEDIA MASHUPS

Brian Dillard has a great write-up about the newest release of Songbird, the Mozilla-based platform for building Web media mash-ups:

If you’ve yet to experience Songbird, a little background is in order. The project is run by Pioneers of the Inevitable, a Bay Area company founded by veterans of Winamp and the Yahoo! Music Engine. Building on Mozilla’s XULRunner platform and the VLC media player, Songbird aims to unite a web browser, a media jukebox and an online media player into a skinnable, extensible, open-source application. At this stage, the app is a long way from challenging the likes of Windows Media Player, let alone iTunes. But as it grows, it promises to cultivate the same kind of fervent user and developer communities as Firefox, Thunderbird and other Mozilla projects.

While Songbird has a desktop media player aspect to it, I think the biggest attraction to developers will be the rich JavaScript API which will allow you to build media mashups. Brian provided an interesting view of how he might leverage it:

As an Ajax developer and huge music nerd, I’m looking forward to playing with the JavaScript API. It promises seamless integration between webapps running in the Songbird browser and the media player itself. Imagine iTunes, but instead of a built-in browser that only supports the iTunes store, you’ve got a Firefox clone that plays well with music vendors, P2P networks, MP3 blogs and any other internet music resource

This looks to have huge potential and well worth investigating further. Brian said it best, “Why aren’t Ajax folks more geeked about “the Firefox of media players”?

November 1st, 2007

MONTHLY AJAXIAN ROUNDUP FOR OCTOBER, 2007: JAVASCRIPT WARS, JAVA REBORN, AND BROWSERS WAKE UP

October has been a busy month. We are currently in a political and emotional roller-coaster that peaked after the ECMAScript 4 Language Overview was released. It is as though EC4 just sprang up, when in fact it has been chugging along for ages. Brendan has been talking about it for some time. At this point opinions are being aired all over the shop and as I finished the last post, I hope we can de-polarise the situation and get to work.

Browsers seem to be taking the charge recently. Webkit keeps adding great features, and with Leopard we now have Safari 3 churning out.

Mozilla is also branching out with projects such as Prism and Mobile Firefox. IE8 is still dark.

I covered the fact that Sun has announced how they have a new Java Plugin that is in the works. Many still scoff at Applets, which may by itself be the downfall. However, if Sun pulls it off, I think that Applets have a real place on the Web. Before you scoff think about how cheesy little XHR lay dormant for so long. Java down right in the browser can be a nice bridge to advanced functionality where you still can script away in JavaScript.

JavaScript on the Web keeps getting more featureful too though. I was really proud of out Blog.gears example that shows the path for rich read/write mashups, in this case also working offline. The open source Google Caja can also help us have the freedom to allow JavaScript to be in a page and not collide to do evil things. Caja makes a lot of sense when you think about OpenSocial.

All in all a great month, and here is to an exciting November that includes OpenSocial APIs, Dojo 1.0, and more.

The Details

Dojo

Ext

GWT

jQuery

Prototype

YUI

Gears / Offline

Browsers

JavaScript

CSS

Other:

November 1st, 2007

CHOOSING A JAVASCRIPT FRAMEWORK

With so whatever beatific JavaScript frameworks available, it’s effort harder to end in which content to head. Brian Reindel offers whatever beatific advice to those hunting to acceptation a hold but aren’t quite trusty what to countenance for.

A JavaScript hold haw not attain you a meliorate programmer, but it module attain you more efficient. That lonely should be think sufficiency to opt a JavaScript framework, or accumulation if you prefer. Unless you end to physique your own, there are plentitude of options acquirable to developers. However, choosing the correct hold crapper be tricky, and weeding finished a disorderliness of narrow fanboys (myself included) is intimidating.

Brian targets much areas as application support, send maturity, documentation, & accord and how they crapper hit a intense gist on your choice(s). While a aggregation of the touchable module be continual to whatever old developers, it’s definitely multipurpose to those that are meet today hunting at investment a framework.

November 1st, 2007

HOW JS & AJAX WORK IN OPERA MINI 4

Chris Mills, Opera’s Developer Relationship Manager, goes into enthusiastic discourse most Opera Mini 4’s hold for JavaScript and Ajax.

Opera Mini is a rattling adroit artefact of transfer the scheme to your ambulatory sound - it module impact on most sound models, modify baritone description ones, as daylong as they module separate a JVM. Basically, when you letter a scheme tender from Opera Mini, a letter is dispatched to the Opera Mini servers. They regain the page, modify it into OBML (Opera Binary Markup Language,) a rattling auto star markup info that reduces the tender filler by up to 90%, and then help it to your phone….But what most JavaScript?

The areas awninged in his article include:

  • How Opera Mini interprets JavaScript
  • Server-side support
  • Client-side support
  • Ajax support

One key saucer that jumped discover at me is that the Opera Mini servers hit flooded hold for ECMAScript 4 on the server-side but is hindered on the computer lateral by the limitations imposed on individualist handsets.

After the tender has been transferred to the client, things are a aggregation more restricted - essentially every events are computerized on the server. The computer does dead no JavaScript processing at all, and instead the tender is kept in the computer (basically the computer entireness as an signaling figure for the house streaming in the server).

My activity was apparently that this is a field regulating but Chris goes on to provide this perspective:

This sounds limiting, but there is added saucer to study - Opera Mini crapper fulfil JavaScript on the computer if it’s triggered by the JavaScript events traded above in the client, so whatever Byzantine pages impact astonishingly substantially - for happening Facebook is healthy to pass popup menus and popup dialogs rattling substantially on Opera Mini.

There are also whatever considerations when disagreeable to ingest Ajax, as the Opera Mini structure handles Ajax requests slightly differently supported on the due functionality. Chris cited the ingest of automatic tender refreshes as a doable sticking point.

As with whatever ambulatory figure or browser, a aggregation of schoolwork needs to be finished when nonindustrial for Opera Mini but it looks same Opera is making whatever beatific strides towards decrease that pain.

November 1st, 2007

THE FUTURE OF ECMASCRIPT 3 IS 4?

It seems like we are reaching a boiling point for ECMAScript 4. The politics and opinions are growing. Opinions are good. Brendan spoke out recently and we have had a raft of blogs and comments on the matter recently.

Microsoft have been criticized by some for going dark on IE 8, and then came out of the woodwork with a slew of posts:

There are some interesting quotes though out:

Garrett Smith points out the flaws in the article, in that the issue isn't JavaScript moving forward, but rather JScript moving to meet with JavaScript.

The bugs are in JScript, not elsewhere (ok, 97%, not 100%)

Plain and Simple: IE/JScript's lack of development has been holding back the web, web standards, and innovation. Period.

We don't care what the hacks/hooks/triggers are, just please:

a.) Fix the bugs
b.) Add the missing implementations
c.) Keep us informed while doing so
d.) Ship the patches, fixes, new browser versions with the fixes.
e.) Don't get us all excited about new technology until the standard technologies are already taken care of.

Dan Dean

Please fix your JScript and DOM first.

document.getElementById should NOT return elements by NAME.

allow prototyping of ALL objects, including DOM and XMLHttpRequest

Fix you DOM Event model

element.getAttribute should return the EXACT VALUE OF THE ATTRIBUTE, for all attributes on all elements.

Dean Edwards (Chris Wilson answers)

This is clearly FUD. You mention ES3 in the headline and then link to a negative article about ES4. You suggest a new language but have not participated in the design of ES4 at all.

You say that "Microsoft" think that the web is best served by the creation of a new language. Your name is at the bottom of this article. What do *you* think?

Chris Wilson

As I understand it, on the other hand, the ES4 proposal introduces a lot of new language functionality that essentially changes the character of the language. I don't personally have a problem with that language as a language - but I think grafting that different-in-character-language together with a compatible-and-performant implementation of the Javascript of today is both super-hard (if even possible) to get right, and is ignoring the bigger problems of language-for-web, namely interoperating with all the script that is out there. (I'd also take on other challenges first if I were redesigning Javascript - e.g. domain-aware security as a language tenet. That's Monday-morning quarterbacking the ES4 design as a new language proposal though.)

My point is that it's a fallacy to think that you're evolving Javascript if your expectation is that the scripts will have a different type param, and be handled by a separate runtime (i.e. the ScreamingMonkey approach). That doesn't seem like it will have good interop to me, at least not in a world where mashups and separate code components from disparate places (all of which are some variant of ES3 today) are the norm.

I want us to stop polarizing and start coming together. I was just listening to a water rights battle that has lasted 18 years (between various southern US states). The Web may not be quite as finite as the water resources, or important to survival, but I think it is time for us to be a bit more like the west than the south. Let's all come together and discuss the issues. When engineers get in the same room great things happen. And, we are all engineers.