Friendster goes PHP – check out the comments. Didn’t realize Java v PHP flamewars were still in vogue. Architecturally, I like Java (sometimes it would be *really* nice to have a long-lived VM), but as far as ease, simplicity (definitely an order of complexity, at least), PHP remains my preferred ‘do stuff’ language.

Joyce follows up:

1) We had not one but TWO guys here who had written bestselling JSP
books. Not that this necessarily means they’re great Java devs, but I
actually think our guys were as good as any team.

2) We tried rewriting the site in Java twice, using MVC and all
available best practices. It actually got slower. Anyway, what does MVC
have to do with speed or scalability? I thought it was a design
cleanliness and maintainability thing.

3) We tried different app servers, different JVMs, different machines.

4) Anything that money could do, it did.

I’ll try to get permission to publish some performance stats soon.

Now, that’s something I want to read.

Related: I’ve been working my way on/off through both Advanced PHP and J2EE Best Practices. For some reason the J2EE book is just a real slog in comparison. I guess EJBs just isn’t my thing.

I must have been under a rock. I’ve just caught Rilo Kiley’s new single, Portions for Foxes [6.2MiB MP3]. It knocked my socks off. Got the KCRW rips from this Barsuk thread (has track-listing as well). Here’s a local mirror.

Reference (Psalm 63:9-11):

My soul cleaveth unto Thee; Thy right hand holdeth me fast.
But those that seek my soul, to destroy it, shall go into the nethermost parts of the earth.
They shall be hurled to the power of the sword; they shall be a portion for foxes.

Indie/BeatPunk MP3 site: http://teachingtheindiekidstodanceagain.blogspot.com/

Weblogs, Wikis, and Comments – apparently some people thinking on the same track as I am. I’m trying to juggle a bunch of balls, but am angling away towards some implementation. Let me ruminate/reiterate on some issues:

  • Nodes – similar to Drupal’s conception of data data elements/types – this has the possibility of leading down very long rabbit holes, however
    • Attributes/Values – nodes should have attachable arbitrary attributes and values, and sets based on type; now, are these attributes/values also nodes? What should first class entities be?
    • Relationships – can this be abstracted to relationships? (is a, has a, parent of, child of) — hey, did we create an RDF triple store?

    At the very least however we can understand nodes as either a single piece of microcontent, or subdivide into arbitrary transcludable elements (in HTML, block-level elements work well), and also links (hyperlinks, internal links) as first class types

  • Versioning – ok, yeah, this is really straightforward. I wrote some SQL for it earlier (w/ self joins since MySQL doesn’t support subselects). This is a no-brainer — now, exploring versioning interfaces, that’s interesting (see also version-control w/ changesets etc [subversion, arch, etc.])
  • Annotations – comments are a type of annotation, these are nodes that have a relationship to other nodes/collections, attached at a point, rendered separately. Lets de-abstractify: Aanotations apply to certain nodes or collections (another type of node?) and should be threadable (can be stored in classic linked list format, or more efficiently as PTT/MPTT)
  • Transclusion – ahh, this is where current blikis seem to fall down. How do you give blog posts multiple contexts? — Using collection nodes is one way, or straight out rulesets/property queries for faceting. It’s one thing to discuss theoretics and another to code, however
  • Identity – a requirement (and what’s most notably missing from wikis) are explicit authX, profiles, author sorting, trusts. You can’t have collaboration w/o a strong sense of the personalities interacting

Central to these issues are interfaces/methods of interacting w/ pages, and the ability for effective web-based multi-user locking and presence. I’m trying very hard right now to cut down my simultaneous activities so that I can effectively work on these.

My hopeful short-term goal is to clear off as much dead wood as possible and make a schedule to work on:

  • KB/KM/Collab env, basic notepad/task manager
  • specific JS widgets, comm protocol
  • blog overhaul, code distribution setup
  • Event-related/organization code
  • possibly: network level DigID/DSS code

Work seems to currently tie in closely with my current interests: Portal/CLE dev, KM/KB development, Events

Hopefully, the first of my deliverables will make it out in time for the MT contest deadline. I think that once I figure out my code distribution setup, things will be easier. I’ve been writing lots of random things over the past while, some of which is worth writing up and/or packaging.

The check engine light has been plaguing my GTI recently. I was getting a recurring 16795 - Secondary Air Inj. System Incorrect Flow Detected code and since I needed to get rid of it to pass emissions, I took it in to get it checked out (Renner Motor Sport, whom I’ve had previously good experiences with).

The fan unit itself seemed to check out ok, but after a couple of days, the light came back. So, I took it to the VW dealer down the street from work and apparently the combi valves are leaking… boo-urns.

It cost $92 for the checkup, but the $400+ for the part and $300+ for labor seemed a bit excessive. So, I’m going to be bringing it back to Renner (and run through the tests on my VAG-COM) to see if it might be something cheap to fix, to see for sure what’s leaking ) either with the vacuum lines, sealing the plastic, or replacing the valve itself w/o paying for a complete brand new fan unit. Also perhaps the air filter, although the ’96 and ’97 models had service bulletins on the combi-valve vacuum hose seating so it’s not all the surprising perhaps…