Monthly Archive for August, 2007

Qu’est-ce que c’est, Facebook?

Facebook appears to be on an email backlog and is sending out everyone’s email notifications in reverse chronological order. I’m personally now up to about a week ago, and they’re still coming in.
I know bulk emailing is tricky, Facebook (having been working on a project involving such a thing), but I had no idea that first-in-last-out was the best way to send these things…

NASA tests new engine

The raw power is amazing.

Silverlight Impressions

It’s no secret that Microsoft’s relatively new Silverlight is intended as a competitor to Macromedia’s (now Adobe) long-time rich-web media stalwart Flash. Having been a Flash developer for a very long time, I recently wrote a smallish Silverlight application for a project we’re working on for work, and I have a number of things to say about the experience relative to that of developing webapps with Flash.

Overall, the most glaring, obvious, and often painful differences lie in the obvious question of maturity. Silverlight’s API is constantly shifting, and the documentation is little to no help at this point. Little things, and sometimes huge issues, haven’t been totally thought through just yet (though given Microsoft’s track record it’s in question if they ever will be), and flux is always frustrating to deal with. However, some of the issues are more inherent to the platform itself, laying mostly in the nature of its development and its integration with browsers and with code. Here’s a more detailed breakout.

Silverlight is very young. It’s not even out of beta. Therefore, it should be expected that the API and XML schema will shift here and there. That’s little comfort to the developer, however. The latest preview edition of Microsoft’s Expression Blend 2, the official application for developing in Silverlight, provides almost no correlation between the WYSIWYG/graphical options it provides for interface development, and what the Silverlight schema actually represents. Triggers appear to be unsupported, though Silverlight supports them, and there is no way to add events to objects. There are countless other discrepancies between Blend and reality, many of them too grave to even think about. Therefore, designers and developers alike are stuck editing XAML markup, which isn’t the most delightful task. “Fine,” thinks the average developer, myself included, “if I can’t use Expression Blend I might as well just edit in Visual Studio and avoid the shortcomings and annoyances of Blend’s XAML editor.” That’s a bad notion — Visual Studio doesn’t as of yet recognize the Silverlight schema and as such will live-compile everything as errors. You’ll get a productivity rate of about one word per minute. To add insult to injury, the MSDN documentation is very poorly written; I’m pretty sure they took the full Avalon XAML documentation, and appended all the caveats, issues, exclusions, and other miscellenia to the end of each page. It makes for poor reading. This issue, though, brings us to the next topic of discussion:

Silverlight is mini-WPF. This is both a strength and a weakness. XAML is a reasonably well structured language which accomplishes its goals fairly well. I don’t have too much of a problem with it. It also eases the transition for any developers who are already developing for WPF (which, as far as I know, is an extremely scant few) into developing Silverlight. However, in order to make WPF web-friendly, a lot of things were cut. Some things that don’t even seem to be very heavy were cut. Complaints about lack of support run the gamut from simple things like animating clipping areas, to even simply having geometry as clipping area, rather than what are effectively polylines. However, larger than this is a more serious problem, which is that…

WPF (and therefore Silverlight) just wasn’t built for the web. WPF is a desktop creature. There are a whole slew of things to consider when developing for the web, the largest of which is bandwidth. Flash may not have a built-in preload manager, but at least it provides the mechanisms with which, with minimal knowledge and 2-3 lines of code, you can build one. Silverlight provides virtually none of these things. The only way to preload things is to use the Loader object, which works asynchronously, requires a separate instance for each element to be downloaded, and requires extensive knowledge and coding to get to work. This becomes a serious issue, especially because images are essentially just standard html images. Blend may claim that you can apply effects and animations regarding skewing and transparency, but it’s just wrong. This leads me to my final conclusion on flash’s advantages (outside of simple maturity and installed base):

Flash’s main advantage is that it is a single, self-integrated package that is both developer and designer friendly. It was built from the beginning for the web, it has a solid IDE that works for both designers and developers (unlike Silverlight’s Blend vs Visual Studio model), and requires jumping through less hoops (there is no markup to edit by hand). Everything from the development experience down to the consumer experience is provided in one simple, neat package. Silverlight’s deployment requires four or five javascript files (why aren’t these part of the plugin itself?), along with any collateral content, such as images, to be deployed as individual pieces. Flash also allows far more flexibility from a design perspective, as Blend isn’t particularly any good at drawing any shapes outside of elementary geometric elements.

In a final stroke of irony, Flash trumps Silverlight at one of the elements WPF was greatest boasted for: developer/designer integration and separation. Silverlight requires events to be wired up in XAML (which right now is even greater a task given Blend’s complete inability to do so for you), and thus there is programming being done in XAML. Flash, conversely, allows for developers to wire up events without touching anything design-side.

Overall, Silverlight is a decent platform. Once it matures, we’ll get a better sense of its capabilities and pitfalls. Right now, however, it simply has too many of the latter for me to be greatly interested in developing extensively for it.

Farewell, Alberto Gonzales, and we hardly knew ye…

…given that even you couldn’t remember half of it.

I won’t say much on the matter, since all that there is to be said has been said by better minds than mine. I’ll merely leave you with a revealing little Bushism today that people don’t seem to have caught on to just yet, which I think really sums up the truth of the matter:

It’s sad that we live in a time when a talented and honorable person, like Alberto Gonzales, is impeding from doing important work…

Yes, Mr. Bush, he is indeed impeding. However, I do believe you meant to say “impeded.”

Concert report: Rock the Bells 2007, featuring Rage Against the Machine

I never really got the chance to update the blog with a “I’m leaving” post, but I have not yet abandoned this blog. I was in fact gone for a few days on a pilgrimage of sorts to go see Rage Against the Machine at Rock the Bells in San Francisco. We (Erik, my roommate; Nicole, his girlfriend; Charles, whom we know from high school; and Aisha and Dylan from our floor) arrived in time to catch Immortal Technique from the ridiculous line to get in and Pharoahe Monch after we were in, who was impressive – very talented backup and singers. We then caught Talib Kweli, Mos Def, The Roots, and part of Public Enemy, at which I saw Flava Flav (who appeared again later with an iPhone in hand). I then went with Erik and Nicole to watch Blackalicious, who blew my mind – I didn’t really think that Chemical Calisthenics was physically possible live, but he did it. Along with the fastest rapid fire freestyle ever imagined.

We then took a break and caught Wu-Tang Clan who was really nothing but a self-advertisement machine, but we only watched them to get a decent spot for Rage.

And then there was Rage. I don’t need to go into how awesome it was, it should be expected. They tore through songs like you wouldn’t believe, and while they were off a couple of times, they were in general very solid. All the songs you would expect them to play were played, with a speech in the middle of the main set closer Wake Up involving how we, as the people, have the true power in this country (sounds like a good topic of debate). After a dubious break (which really wasn’t all that dubious given that Tom Morello literally ran off the stage the moment the song was over), they came back on and played a few more, finishing off with Killing in the Name, which drove the crowd insane.

If you’ve never been among 50,000 people leaving a parking lot in the middle of San Francisco, do try it sometime. It also helps when they’re all riled up from just yelling “fuck you I won’t do what you tell me” a good number of times. It’s somewhat like a giant angry flood of water pouring into a small area. I half expected riots to break out, but the chaos was limited to an utter standstill in traffic as people just spilled over intersections en masse. That was a bit of quite something.

The trip back was a great deal more relaxed, thank goodness.

Nice one, AT&T

Think they’re late on the whole iPhone thing at all? Check out the email I just got today:

Touching is believing.
The Apple iPhone is now ready to go. And surf. And play. And of course, talk. Use our online store locator to find the closest AT&T store near you and get your hands on one today.

I signed up for this email in January. Last I checked, the iPhone’s been “ready to go” for a while now…

edit: Actually, I’ve just recieved word that AT&T’s marketing department was in fact waiting for Stan Sigman to complete his speech about the iPhone from the MacWorld Expo before sending out the email, but eventually got sick of waiting.

Are we really supporting our troops?

The BBC is reporting that US Army suicides are at a 26-year high. The official reason is, of course, not related to battle, but the Army itself has found “a significant relationship between suicide attempts and the length of time soldiers spent in Iraq, Afghanistan or in nearby countries in operations supporting those wars.”

And our government says morale is at an all-time high.

How can we do this to our soldiers? How can we send them — often those who have no choice whatsoever, for financial reasons or otherwise — again, and again, and again into a war that two thirds of this country refuses to support anymore? Forget even the fact that we’re apparently too cheap to even supply proper body armor to these pawns, forget even that we’re in a country that does not wish us to stay there, forget all the ideological and logical reasons we bring up so often as reasons to pull out, and to do it soon.

How can we do this to people? Our fellow citizens? What have we become?

I always hated how the now not-so-freshly elected Democratic congress is so often claimed to have been brought about as a “referendum on Iraq.” To my perhaps delusional mind, I’ve always hoped that there were a million and one reasons that the American public finally got fed up with the GOP and George Bush’s tricks; which, indeed, there are as many, if not more. I furthermore also cringed when Pelosi stood on that podium and proclaimed that it was “time for change!” I hoped that she and all the Democrats wouldn’t have to eat those words come 2008, though given their track record, it was inevitable. And guess where we are now? I don’t see any change, that’s for sure.

If you can’t even achieve the single most simple, defining, and advertisable goal that the media and you yourselves have declared as your raison d’étre, if you can’t even perform your duty as a “referendum on Iraq,” then what the bloody hell did we put you there for? Again, and again, and again you put up shows, you put out strongly worded speeches about how this time, this time we will never back down, that we will fight this one to the end, and yet again, and again, and again you fail the American people.

Yes, you are failing the American people. The American people that put you there to represent our best interests, our will. Much as CYA seems to be the modus operandi in Congress these days, your job as a politician is to do whatever it takes to act in the best interest of the citizens of the United States. Are you doing that? Search your soul. Act.

Joss Whedon @ Comic Con ’07

Serenity II is possible. Everyone buy the special edition Serenity DVD! Nothing would make me happier (just finished another Firefly marathon).

Changes in Vista SP1

So they’re restoring the Vista logo on startup in SP1, among other things. I wonder what happened to the hilarious “we shaved 3-4 seconds by removing the logo!”

Here lies SCO…

For those who have not heard, SCO has recently just been set back significantly, perhaps permanently, in their effort to systematically disable the entirety of the Free and Open Source Software community. Their slimy move to acquire the license and patents to UNIX for the sole purpose of turning around and suing those who benefit from its free descendants, both for profit in consulting and for free in use, was despicable, and was only compounded by their evident lack of actual respect for the technology, giving up any attempts to actually do any good with it after only a handful of half-heartedy, feeble starts.

The point has been brought up, of course, that SCO is right in its claims. That the case is a landmark for the future of Intellectual Property rights, and that the precedent set could set an entirely alien course on the entire software industry as we know it. There is some truth in the argument, but there is also a great deal of fear, uncertainty, and doubt being slung around. While it may or may not be true that in their recreation of the UNIX platform, the GNU project stepped beyond the bounds of the haven of reverse engineering, I think it’s quite honestly several steps too far to infer that by any means this case will open the floodgates for a deluge of stolen intellectual property.

The case of UNIX’s descendants is a very unique one. There are very few cases in our modern world of computing where such a feat must be accomplished to create a viable free alternative to an existing or entrenched commercial standard. OpenOffice.org has reverse engineered Microsoft’s Office document formats for the sake of compatibility, but there is absolutely no point to be had in fully duplicating the entirety of Microsoft’s Office – indeed, if such an effort were to be attempted, it would probably never see the light of day given how counterproductive and impractical it would be. In fact, Microsoft is releasing the new OOXML (Office Open XML) format as a standard; this is a step towards convergence, compatibility, and choice, even if Microsoft’s true intentions are suspect and indivinable at this juncture.

I think that whether SCO is right or not, there is something to be said for the greater benefit of technology and humankind in having a fully functional, viable, and free alternative in Linux. It’s a very solid fact in today’s technological world, something that’s done and said and is here to stay, and to challenge its existence for profit alone as SCO is doing is purely malicious. Even if the FOSS community gains significant traction and uproots the current model of the commercial software industry, it would be an absolute lie to say that there is no money to be had in open source software.

The future is now. It’s time to start living in it.