trs80 is currently certified at Apprentice level.

Name: James Andrewartha
Member since: N/A
Last Login: 2010-02-27 11:19:58

FOAF RDF Share This



Email: trs80 ucc gu uwa edu au


  • Lead Developer on UCC

Recent blog entries by trs80

Syndication: RSS 2.0

The map of the Mozpad universe was recently linked from planet mozilla, and lists some apps built upon XUL and other mozilla technologies. Spicebird in particular looks quite interesting, almost an open source Outlook with an HTML today page (Gecko instead of MSHTML), email and calendaring (IMAP and CalDAV instead of Exchange) and IM integration (XMPP instead of MSN).

This reminded me that it's been over half a year since the RIA buzz peaked, so let's see how the other RIA platforms are going:

Eclipse has a list of open source and commercial RCP apps, although claiming Azureus as an RCP just because it uses SWT is stretching it a bit. There's a fair few AIR apps showcased but the Silverlight showcase requires Silverlight, so who knows how many apps they have ;-)

JavaFX's main competitor is probably Android, so it'll be interesting if it gets marketshare before Android ships late next year (which is also when they've promised the source - until then it's basically proprietory vaporware). Neither seems likely to have an easy time porting to the iPhone.

Also in the realm of "I can't believe it's not JavaScript" is Crockford's HMTL 5 with the nasty bits removed, which might be implemented in IE8 if the scuttlebutt is to be believed.

Prism is more AIR than XULRunner, although in Prism you can use XUL, Java and Silverlight as well as Flash and AJAX. WebKit continues to gain more brainshare, ending up in Qt4.4, epiphany, AIR, Android and the iPhone.

This was originally an email to sogrady, but as I was rereading the comments on the RIA Q&A, I noticed him admonishing me for emailing instead of blogging. Coming soon: an extended blessay on a variety of subjects, with a common thread of change.

7 Sep 2007 (updated 7 Sep 2007 at 01:07 UTC) »
StevenRainwater: Vala is an object-oriented language based around GObject and GLib that compiles to C. ncm: C still has the advantage of being the ABI on many platforms, something none of the VMs (or even C++) can claim. As for iPodLinux on the new nano, apparently it won't happen, because the firmware is encrypted.
8 Aug 2007 (updated 8 Aug 2007 at 05:09 UTC) »

As promised, I'm going to talk about communities, which is a horribly multivalent word, but it's the best there is1. No, I'm not going to give you advice on how to manage a community or trott out Clay Shirky, I'm going to talk about what happens when someone fucks up.

First, let's set the stage. There are many websites whose visitors form a community - wanting to belong is part of human nature. There are discussions, flame wars, friendships2, disagreements. And then, out of the blue, someone in power does something that crosses the norms of the community, and all hell breaks loose. Why? Because most of the time, 90% of the user base is silent, so when the shit hits the fan there's suddenly 10 times the volume of comments. I'll give some examples of the reactions to poor community management.

Back in May, Digg started quietly pulling stories containing 09-f9-11-02-9d-74-e3-5b-d8-41-56-c5-63-56-88-c0, the AACS MKBv1 processing key, and banning the users that submitted them. Digg users are more technologically inclined than the average person, and have quite a dislike for DRM. So when the Digg blog said this was happening because they'd been served DMCA takedown notices, the Digg users revolted, posting the story continuously. Digg management responds by banning more people, and eventually taking down the submission page. Eight hours later, the whole site is taken down for maintenance and Digg capitulates to this civil disobedience.

Flickr recently expanded into several countries and languages. However, as part of this they decided that due to a German law, German users were not allowed to see pictures labeled "moderate" and "restricted", as they did not have measures in place to stop minors seeing them. This change again occurred with no warning, causing users to moan loudly and leave, and note that Flickr was misreading the law, as the German definition of inappropriate for minors covers less than US laws, and Flickr only needed to take down photos when notified, instead of pre-emptively filtering them. After a few days Flickr started talking and after a week relented to allow "moderate" pictures to be shown, but still banned "restricted" images.

Eve Online has been subject to continued allegations that CCP employees have been giving favors to one of the main factions. Some allegations have proved true, others turned out to be disinformation. CCP already had an internal affairs division that performed regular audits, but there were still accusations of bias. So CCP will hold elections for an oversight committee which will audit CCP's operations.

The LiveJournal section of this post exploded so I've moved it to a separate page. The short version is that SixApart has consistently acted against the LiveJournal community in an arbitrary and unjust fashion, while the community has been unable to effect much change - most often after a scandal LiveJournal claims nothing has or needs to be changed: "We are making no major policy changes, we have made no changes to the TOS, and we do not anticipate making any changes in the future." Even open letters with suggestions and asking for clarifications are being ignored for days.

Facebook had over 700,000 people protest over its introduction of News Feeds which broadcast everyone's activities to the world. At first Facebook claimed everything was ok because "The privacy rules haven't changed" but then three days later backed down and added more privacy controls.

So what can we learn from the above cases if you're the owner of a site that has a community? Firstly, don't govern by stealth, banning people on the sly and leaving no traces, because people will notice and complain. Inform your community of the rule changes you're making ahead of time, and make it clear who is affected by them. This is now backed up by law, due to the recent Ninth Circuit3 decision requiring notification when terms of service change. Secondly, communicate. As Hugh McLeod says, corporate blogging reduces the difference in conversations between the company and the community, so the company understands what the community is on about, and is therefore less likely to act stupidly and piss them off. And when you do fuck up, communicate quickly to say you know you've fucked up, explain why you fucked up, and are working on fixing things. Otherwise people will continue to rant and lose faith in the site owners. Thirdly, be consistent. Don't ban some people and not others. In particular, don't let yourself appear to be doing the bidding of a third party with an agenda. List your rules, make a decision about edge cases, and stick to them impartially. Ideally you should involve your community in making these rules, but sometimes that isn't possible.

Or, to steal the conclusion of Governing Transformative Technological Innovation: Who's in Charge? which I chanced upon in the Co-op Bookshop while buying Accelerando (synopsis: Singularity, Stephenson-style), governance must be Accountable, Responsible and Transparent. In particular, I applaud CCP for their creation of a player-based audit committee. The second most recent LiveJournal fuckup prompted this response proposing

that any business entity that is primarily driven by and dependent on an active and content-generating user base be obligated to assign some share of real and actualized decision-making power to democratically chosen representatives of that user base.
It remains to be seen if more businesses will open themselves up to scrutiny by their community.

However, there's a bigger issue at play here - in the case of sites devoted entirely to community, there exists terrible lock-in. Or, to quote Blizzard:

Advantages that accrue to highly successful MMORPGs... high consumer switching costs - the player has to leave their characters and friends!
This removes a lot of the incentive for the owners to behave responsibly, since they'd have to fuck up incredibly badly to force people to leave. LiveJournal seems to have managed this, but the diaspora is spread across a variety of sites based on the LiveJournal code, causing pain for those whose friends are now on different sites. It's somewhat ironic that the "network effects" these sites have accrue by making everyone use the same database instead of being spread out over the network. It's just another level of N=1 thinking, and leads to pleas like "You can have any social network you want, as long as you all pick the same one."

But everyone using the same system is never going to happen, no matter how much Google, Facebook, Microsoft or Yahoo desire it. Which is why the Online Desktop excites me so much, in particular the work towards an open service definition and applications that fulfill it. It's proposing a counter-narrative to the silos of the online behemoths. This is what Eben's talking about. Or as Luis put it:

We are standing at the brink of a huge change in how people store the data that makes up the emotional content of their lives. We must start coming to grips with the policy implications of that ... and I’m excited to think that free and open services could be part of that.

So what I am going to do about it? As a natural sysadmin I have the confidence to host online services myself, and UCC provides the perfect place to host them and provide them for my friends as well. But that doesn't help with integrating with the rest of the world. So for my fourth year project I hope to work on integrating identity across online services. I'll go into more detail once my proposal is submitted.

One closing thought - IRC can act as a social network system, or at the very least helps create an identity story. I talk with most of my friends via IRC, it's a nice unmediated public. And yet IRC is used mostly by the technically inclined, in part because it's most rewarding if you stay connected all the time, which requires technical assets (knowing how to use screen, or having a computer on all the time). IRC is pretty much a non-starter from a mobile device, unlike IM, SMS or any of the web-base social network systems.

1.Calling the people who frequent a website users is too passive, participants is too vague, contributors is too active. Lacking a more specific term I'll use community for the rest of the post.

2. Friend, now there's a multi-valent word that causes issues.

3 Which includes California, Oregon and Washington, hence Google, Amazon, Yahoo, Microsoft, SixApart and many other dotcoms.

I feel confident in predicting that 2007 is the year of free standards-based calendaring. Why? Because it works already - I'm using Lightning with Bedework (which is not shit(tm) despite being a java webapp), and there's also RSCDS which is a simple PHP CalDAV server, and Leopard's iCal will have CalDAV support to go with Apple's Darwin Calendar Server. There's also a Outlook CalDAV connector, the somewhat fear-worthy OpenGroupware fork Scalable OpenGroupware project which has a WebUI designed to mimic Thunderbird and Sunbird, as well as having a GroupDAV extension for Thunderbird's contacts and an extension to do free/busy in Lightning. And who knows, Chandler might even ship this year ;-).

Actually, OS X Server 10.5 looks really hot, and I'd even go so far as to recommend it to to people wanting to move away from Windows Server. And with any luck Apple will open source more of the components, or said people will get a taste of open source quality and move to a distro with real update support (ie, Debian or Ubuntu).

Steve Yegge was definitely correct in saying JavaScript is the next big language - Pyro, the plethora non-webbrowser usages that have appeared lately, plus the sheer size of the web creating new 1 ecosystems like most RIA platforms and the ever growing number of widget engines.

Life On Mars is pretty awesome. At the end of Transformers, when Optimus Prime is giving his speech while two humans get it on on Bumblebee, this image just popped into my head.

Uni started this week, I'm doing Databases, HCI, my final year project, and Software Engineering Industry Project Leadership which has to be in the running for "most uninformative unit name". The main task is "coaching the team [who are doing Professional Computing through several of the development stages." Hopefully there will be a team with UCCans in it, which I think is fairly likely as PC isn't being offered in semester 1 2008. The BCS is also being reworked next year, resulting in the new Web Technologies and Entertainment Technologies majors and a Game Design and Multimedia unit, with the how to use a word processor and spreadsheet first-year unit replaced with Web Technologies.

At work I'm migrating work's address book from FoxPro (ugh) to LDAP, using ConTagged, which is a nice web frontend for LDAP address books. I'm also coding up some wrappers for PBSmapping, which is an R mapping library.

Meta: I know I said I'd talk more about communities in this post, but it'll have to wait until next time. And yes, I did make as many phrases link to a relevant page as I possibly could.

1. notwithstanding

Stephen O'Grady has a distinctive Q&A style he uses for many of his in-depth posts. He's posted a little (item 2) about why he uses it, but I've now got a slightly deeper look at why it works. Jon Udell has posted the answers to some questions about screencasting. He talks about the "conversational demo" as a type of screencast, but I think it can also be applied to the Q&A (in fact I thought he was applying it to his Q&A) which is an attempt to provide a conversation in one blog post. People have conversations with each other via their blogs, but that's hard to do when you're the person with all the info and want to explain it to people, hence the Q&A.

Via jgovernor comes Zen and the Art of Attention, and in the comments people talk about ignoring unread item counts. All I'll add is my bookmarks page doesn't have unread counts, and I love it.

The three religions of RIAs takes me back to last month when every man and his dog was announcing a RIA toolkit. My particular interest was to do with the discussion surrounding XULRunner as a RIA platform, which resulted in providing a bunch of links for Stephen's RIA Q&A. For a while on Planet Mozilla there were vague rumblings about XULRunner as a competitor to Adobe's Apoll^WAIR, which intensified with the announcement of Silverlight at MIX and Chris Messina's hour-long ramble. Discussion went back and forth on the planet, and then there came the announcement that MoFoCo wasn't planning on making a pre-packaged/standalone XULRunner binary distribution until Mozilla 2 was first read as "we're ignoring it", although that was later clarified to say there would be no system-level XULRunner, but that it would still be developed. Which is fair enough, particularly given MoFoCo's limited resources, and Brendan Eich's justified belief that XUL's best hopes for becoming a fully armed and operational web/RIA platform is Mozilla 2.

However, people are building applications on XULRunner now, leaving an unmet desire for developer support, so various interested parties (including AllPeers, Songbird, Flock, ActiveState, IBM, Joost, SeaMonkey, TomTom) started up Mozpad. This was partly possible due to the flexible nature of the term "Mozilla" - MoFoCo are quite happy to let it cover every aspect of the wider Mozilla community rather than exercising strict control over what can be called "Mozilla". So everyone ended up fairly happy. But what happens when there isn't this sort of flexibility available to a community at odds with its host? I'll be going into some examples in my next post.

Other notes: OpenStreetMap is kind of addictive. Also, hate to udev and alsa - renumbering my cards to a consistent order is a right pain, particularly since when testing udev rules you have to reboot to test each change.

43 older entries...


trs80 certified others as follows:

  • trs80 certified trs80 as Apprentice
  • trs80 certified yakk as Journeyer
  • trs80 certified gbowland as Apprentice
  • trs80 certified mtearle as Apprentice
  • trs80 certified mrd as Apprentice
  • trs80 certified xf as Journeyer
  • trs80 certified mdeegan as Apprentice
  • trs80 certified dayta as Apprentice
  • trs80 certified m as Journeyer
  • trs80 certified k as Journeyer
  • trs80 certified lathiat as Apprentice
  • trs80 certified daniels as Journeyer
  • trs80 certified jamesh as Master
  • trs80 certified ajt as Master
  • trs80 certified Alphax as Apprentice
  • trs80 certified robogato as Master
  • trs80 certified jeek as Apprentice
  • trs80 certified Ankh as Master
  • trs80 certified mbrubeck as Apprentice
  • trs80 certified DV as Master
  • trs80 certified Phoon as Apprentice
  • trs80 certified fweiden as Journeyer
  • trs80 certified Xorian as Journeyer
  • trs80 certified Creslin as Journeyer
  • trs80 certified grin as Apprentice
  • trs80 certified banram as Apprentice
  • trs80 certified jnewbigin as Apprentice
  • trs80 certified nooks as Apprentice
  • trs80 certified fflewddur as Journeyer
  • trs80 certified buckley as Apprentice
  • trs80 certified dfenwick as Journeyer
  • trs80 certified bjf as Apprentice
  • trs80 certified marcelo as Master
  • trs80 certified acme as Master
  • trs80 certified mathrick as Journeyer
  • trs80 certified mascot as Apprentice
  • trs80 certified MichaelCardenas as Journeyer
  • trs80 certified menesis as Journeyer
  • trs80 certified rjp as Apprentice
  • trs80 certified samj as Journeyer
  • trs80 certified wal as Apprentice
  • trs80 certified fxn as Journeyer
  • trs80 certified mpesenti as Master
  • trs80 certified invoke as Journeyer
  • trs80 certified theo as Journeyer
  • trs80 certified footrot as Apprentice
  • trs80 certified etbe as Master
  • trs80 certified skribe as Apprentice

Others have certified trs80 as follows:

  • trs80 certified trs80 as Apprentice
  • ib certified trs80 as Apprentice
  • yakk certified trs80 as Apprentice
  • m certified trs80 as Apprentice
  • jlouis certified trs80 as Apprentice
  • mrd certified trs80 as Apprentice
  • mdeegan certified trs80 as Apprentice
  • xf certified trs80 as Apprentice
  • buckley certified trs80 as Apprentice
  • jamesh certified trs80 as Apprentice
  • kai certified trs80 as Apprentice
  • dfenwick certified trs80 as Apprentice
  • sdodji certified trs80 as Apprentice
  • mathrick certified trs80 as Apprentice
  • lerdsuwa certified trs80 as Apprentice
  • rjp certified trs80 as Apprentice
  • wspace certified trs80 as Apprentice
  • wal certified trs80 as Apprentice
  • fxn certified trs80 as Apprentice
  • codedbliss certified trs80 as Apprentice
  • gbowland certified trs80 as Apprentice
  • footrot certified trs80 as Apprentice

[ Certification disabled because you're not logged in. ]

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!

Share this page