Featured Post

Linkedin

 These days, I mostly post my tech musings on Linkedin.  https://www.linkedin.com/in/seanmcgrath/

Friday, September 11, 2009

Yup, Python sure is slow

This web server clinches the argument. A mere 8 *thousand* requests a second. Pah. Humbug.

:-)

Saturday, September 05, 2009

SGML and justifiable complexity

Rick Jelliffe is writing some interesting stuff these days on parsing : SGML, XML, HTML etc. Rick talks about GROVES and that triggered a flashback. Boy, those were the days! DSSSL, HyTime...I remember GROVES being extruded into Graphical Representation of Property values. Rick says GROVEs—Groupings Of Valid Elements. Tomayto. Tomato. Its very instructive to watch the recent RDF goings-on in the light of the GROVE stuff of old.

Anyway, Rick makes the important point that you cannot linearize SGML parsing because it has feedback. Amen to that. SGML has more feedback loops than a room full of amps and microphones - as anyone who has tried to write a true SGML parser will tell you.

For me, the big question is this: is that complexity justified? Given that SGML is, after all, an invented language, its degree of parsing computational complexity is in human hands. With invented languages, we make parsing problems that we then have to solve. Does the cost outweigh the benefit?

In the case of SGML, I believe the answer is no. Charles Goldfarb has a brilliant mind but it is the mind of a lawyer moreso than a computer scientist in my opinion.

Now I work with legal texts a lot in my day job. I have read Peter Suber's Paradox of Self Amendment and I'm pretty familiar with the difficulties of creating homomorphisms between concepts from logic and concepts from jurisprudence.

    "That legal rules may be bad logic and good jurisprudence at the same time is yet to be established, of course, but I will at least allow myself to proceed as if that conclusion were not foreclosed a priori." -- The Paradox of Self Amendment


I am as fond of hermeneutic circles as the next language nerd person but I think we need to create Strange Loops with caution in computer science. We need to bring an awareness of the issues they create downstream from the intellectual delights involved in their creation.

Now insofar as markup languages are attempting to be expressive in a human language sense, we get pulled towards parsing complexity. Insofar as we are designing them for machine readabilty, we get pulled towards simple models in the Chomsky-esque taxonomies of language types.

It is the age old debate in disguise. Are markup languages a branch of linguistics or a branch of mathematics?

The answer of course is "yes" and there-in lies the heart of the problem.

Saturday, August 29, 2009

Never extrapolate...

Note to self: Never extrapolate anything from an experimental observation population of size two.

Sunday, August 16, 2009

Software application architecture versus software application design

A software variation on a theme by Antoine de Saint Exupéry:

"A software application architecture is finished when there is nothing left to take out. A software application design is finished when there is nothing left to add."

Thursday, August 13, 2009

JSP (the real one) and XML

Sadly, another year has passed and my 100% record of not attending the Balisage conference is intact.

This year looks to have been particularly interesting with Michael Kay speaking not only on pipelines but on the fascinating overlaps between markup processing and an all-but-forgotten software design methodology known as JSP (Jackson Structured Programming).

At SGML '96, I gave a talk on the relationship between the JSP methodology and SGML processing. At the time, we were using the ideas in JSP extensively in an C++-based SGML processing toolkit we called IDM. Its great to see JSP get some air again as there is a lot of stuff in Michael Jackson's thinking that really resonates today. Not only the ideas in JSP but also the ideas in JSD (Jackson Structured Design).

I had the great good fortune to work for Dave Croydon of Fiamass when I left college. He introduced me to JSP in the context of building real-time financial trading systems in 8086 assembler! I didn't know it then but what I learned from Dave hugely influenced the approach I would end up taking to everything from programming to system architecture at Propylon.

Tuesday, August 11, 2009

MyTouch - first impressions

Well, my problems with getting up and running with the MyTouch turned out to be a SIM card problem and has now been fixed. I'm into my second day with this thing now and so far so good. It is taking me some time to get used to the on-screen touch keyboard but I'm getting there.
The app store is so far a little disappointing as there are lots of "doesn't work on G2" comments. Some of the apps I've downloaded have flat-out not worked but a good few have worked fine. I'm still exploring. Biggest hardware disappointment so far: that weird cable you need to add to turn the usb connector into a headphones jack. What where they thinking?

Friday, August 07, 2009

When is a mobile phone not a phone?

When is a mobile phone not a phone? When it is a smart phone apparently.

I got a T-Mobile MyTouch. My SIM needs to be provisioned for data services before I can use the internet stuff on it. Ok fine. I found out today that it might take 48 hours...Hmmmm, not great but ok, fine.

But here is the kicker, unless I am missing something I cannot make a phone call in the interim! My "phone" insists on being a computer first and a phone second it seems.