27 December 2009

Flightwish Reboot

Restarted working on Flightwish today. A lot of background stuff... seeing that the DNS is correctly set up for all the FW domains... getting Subversion properly configured on the dev server... restoring the old FW software trove... all the dirty little details of permissions, software configuration and setup that don't usually get mentioned in software development plans, but eat into your time in such a big way.

I've installed the Pebble blog engine on the server, and I have to say it looks pretty nice. Far more impressive than the Blojsom engine that I'm still using for my personal blogs. Simpler to use and customise, and performance feels somehow snappier. The only real snag I hit is that Pebble is supposedly able to interpret WikiCreole - not my wiki syntax of choice, but better than no wiki syntax at all! - only it doesn't seem to work. At least I couldn't make it work. Well, it was pretty late in the day, so maybe my brain has simply had enough for the day.

My idea is to first just get a Flightwish blog up and running so that I can get some content up on the site, and update it reasonably regularly so as to improve its pagerank. I was a bit surprised to see, though, that despite having only reactivated the flightwish.com site a few days ago, its pagerank is 3. Not bad for a dead site! I guess it must be because it has been a real site in the past, and also due to its age (several years.)

After that my next priority will be to get a forum system up and running and looking reasonable so that people can start to sign up and chat. Yes, it would seem to be Yet Another Social Networking Website. Hopefully we'll have enough of a real focus to make it a bit different. The idea is (as it always has been) to do something in the travel space, with a strongly social slant.

As soon as the forum is set up I'll focus on writing a bunch of content - to be released at several-day intervals - telling the stories that drive/drove the initial concept of Flightwish. Those stories (you'll have to subscribe to the Flightwish Blog and wait a few days if you're interested - there's no content there yet) will explain the shape of the Heart of Flightwish as it exists in my head. I'll probably also reminisce about some of the experiences we've had with this thing in years past... the long, long road we've travelled to get here.

Lots of work for a one-man-band! But I think we can do something really interesting, different and meaningful in the travel space. Certainly I'd love to visit Bolivia, Peru, Guatemala, Mexico, Belgium (for the beer) and loads of other places, but I don't think I can do it without a bunch of help!

10 September 2009

Network Disasters Happen in Threes Fours

Only 9 more sleeps to go...

Strike 1: Last week, disaster struck in the form of a 2-day DSL outage. Telkom -- my current DSL provider -- blithely went and cleared the fault ticket after 24hours -- without any consultation with me -- because their test centre said that my router was getting a connection to the local exchange. The ticket comment was, "Fault closed at customer request." Liars!

Much wailing and gnashing of teeth later, they discovered that a whole lot of people in the area were experiencing the same problems: very sporadic connectivity with almost no traffic getting through. Turned out to be a fault on the exchange itself.

Strike 2: On the same day that this problem started, my London-housed server went down for Reasons Unknown. Of course I was blissfully unaware of it until Friday. 2 days of server outage. Then my service provider there was terribly slow to rectify the problem (which -- as the universe will insist upon -- involved a fractal nesting of sub-problems with their own sub-sub-problems ad mandelbrot.) As I write, the server is still only partially up. Apache service -- the one my paying customers rely on -- is up and working fine on one IP address, but Tomcat, hosting my personal and "corporate" sites, blogs and wikis still cannot talk through the other IP address. The service I get from VAServ is pretty kak, but not so kak as to be noteworthy -- they really are giving me a very low-cost package, and, as always, You Gets What You Pays For.

Strike 3: At the same time an FTP backup service I use for offsite backups refused to authenticate me, using the same credentials I've been using for years, with the result that I could not even ensure the safety of all the data! Be Still, My Twitching Ulcer.

You're Out: Welcome to this morning, where we present -- for your entertainment and edification -- a reprise of last week's DSL outage. Telkom, predictably, and once again, are in complete denial that there is actually a problem. Their tests show a solid connection between my router and their exchange. No shit, Sherlock! Pity the bits can't squeeze through the tiny opening.

I've always been very happy with the ISP service I've received from WebAfrica, and have, over the years, put many friends and colleagues onto them, not one of whom has had anything less than Sterling service. I've asked WA to take over my DSL service1, too, in light of recent events. The only bit of business Telkom will be getting from me for the foreseeable future will be POTS.

Only 9 more sleeps to go...2

I think this sorry whining actually has a point; it tends to back up my long-held belief that telcos are constitutionally incapable of competently running IP services. The cultures and philosophies that make end-to-end controlled networks are unable to comprehend -- in some weirdly deep, DNA-level way -- how to cope with IP networks which have almost no intelligence in the middle, but live, instead, with all the intelligence at the edges.

People who run IP networks, on the other hand, are able to provide perfectly adequate voice services over IP, which is why they're going to eat the telcos' lunch over the long term.

[1] There's no transfer/installation fee. Their monthly rates are at present the same as Telkom's, and as they roll out their own infrastructure, they anticipate reducing the charges. Their support desk is outstanding, staffed by people who actually know stuff, don't mind admitting mistakes and problems, treat customers like Real Humans instead of problem-id's, and follow through on promises and commitments and ensuring that things get fixed. I can't see any downside, can you?

[2] Of course, it occurs to me a little late, that I'll only be able to actually post this when I get the server working properly again. Which will only happen when I get some reasonable connectivity back. Which might happen slightly after Lucifer goes skiing from his front doorstep.

27 May 2009

Word processors

If Word Processors are to Words as Food Processors are to Food.... no wonder they're so bloody awful to use!

15 May 2009


Nice story on /. this morning about a faulty backup strategy gone wrong and its consequences. I'll bet a lot of smalltime operators are checking their backups this morning.

I know I am ;-)

14 May 2009

MikroBlog Brainstorm, Part One

Part one of a wiki-essay on "Thinking about a new/different way of doing blogging... and about what blogging is all about... "

Original at: http://mikro2nd.net/bits/Wiki.jsp?page=MikroBlog

Comments/constructive criticism welcome; be aware, though, that Part One is just painting background for a brainstorm, and not intended as a comprehensive, or even accurate, Recent History Of Blogging. Still very much a Work In Progress!


Blogging in the conventional manner -- having a blog at BlogSpot or LiveJournal or WordPress or even at your own domain using some custom blog platform -- it all seems a bit passè, now, after the hype and frenzy of a couple of years ago.

The format is very much that of a newspaper article, isn't it? Headline, dateline, reporter, article. Even TV reporters follow the format. Oh, except for the commenting, of course! And ratings. That's what was so exciting; a new form of conversation. Two different kinds of conversation, really.

The first is the __News Mode__ conversation. It's a ''broadcast'' mode, primarily; News from me and my world to y'all out there who might be interested in following my drivel. Great for venting. Later that morphed into podcasts -- where did that all go to? -- and photoblogs, but it's all much the same thing. Think of Life Magazine in the 50's and 60's. That's why the mainstream news-media has managed, though it took them long enough, to successfully incorporate blogs and the blog style of things into their websites and mainstream content: it's not so very different from what they were doing before blogs came along. Though let's note in passing that many of them are still extremely uncomfortable with the free-and-easy, short-and-to-the-point, frequently vituperative style that commenters use. There's still a whole lot of this style of blogging going on, and I don't think it is going to disappear.

[{Image src='http://www.adfreeblog.org/adfreebutton.jpg' width='150' height='56' align='right' style='' class='image' }] It can be demanding, though, for the C-list bloggers like Yours Truly. Bloggers with, perhaps, a couple of dozen regular readers who share some niche common interests, read and comment regularly on each others' blogs, and, over time, become friends-at-a-distance. These are the bloggers who are not in it for the money. On their sites you'll see "Proudly Ad-Free" badges. They tried AdSense, and made the grand sum of 32 cents from it. The pressure from all those "How to be a Successful Blogger" websites... the feelings of having let people down should you fail to blog three times a week on a regular schedule... keeping that blogroll up to date... acknowledging all the comments... keeping the comment-spam under control... It all becomes too much after a time, and we see many of these C-listers give up their blogs after a couple of years. Sad, really, because many of them bring a fresh, interesting, if slightly myopic, story to the world.

The idea that bloggers were going to replace conventional journalism with news-from-the-streets... where did that go? Sadly not too many bloggers are keen to follow the Courts beat, nor to drag about after boring political hacks looking for the stuff the mainstream media masticates into news.

But! The conversation is peculiarly stilted. You leave a comment on someone's blog. Perhaps they reply via another comment. Perhaps somebody else comments on your comment. You probably never get to see that. Did you bookmark that conversation? Unlikely! And even if you did, will you remember to go back and visit the bookmark? You might comment on half-a-dozen blogs on any given day. It's a hell of a lot of work keeping up with all those conversations!

There have been various technical fixes to the problem -- email notifications on comment follow-ups, websites that follow the conversation for you and attempt to centralise it -- but none of these have been particularly successful. So as a means of actual conversation, conventional blogging comes up deficient.

But it did get us started, didn't it? We're all writing and conversing much more than we were a decade ago when we were still mainly a television audience -- mere passive consumers of the torrent of crap deemed by the Media Powers to be in our best interests -- and their way of ramming crappy advertorial down our collective gullets.

28 April 2009

Code as Exploration of Unknown Territory

I have come to view coding as the act of exploring and charting unknown territory -- the wilderness of our cognitive space.

If we let it, as we go along, our code illuminates the crevices and crags of our understanding, and shapes as it goes, our ideas of where to go next.

Version-control is the key mapping tool.

I've just reached a point in the development of the mikroblogging tool where I (finally!) believe I understand what's needed; what might work as something new-ish and interesting-ish in the conversations we have over this Internet thingie...

It's not a conventional website like Twitter or Blogger. It's not a standalone desktop/PC-installed system doing some sort of smart p2p stuff. It's not a conversation follower nor a search tool nor a Bayesian-interest-detector. More something hybrid from all of these.

Let's see where the code will take me next...

21 April 2009

Sun and Oracle

TL;DR: A fucking disaster for everybody except Oracle and Sun's execs and (maybe) shareholders. i.e. The Kakistocracy wins and the rest of us get shafted. (As usual.)

I think Oracle are getting an absolute bargain. $7.4 billion is chump-change for the IP they're acquiring. The question is, Which pieces are they going to keep, and which are toast? Some of this is blatantly obvious, other bits are pure crystal-ball-gazing on my part.

Java: the no-brainer. Oracle are heavily invested in Java for the Enterprise stack. Bad news for open-source Java? Maybe! Or maybe not... it all depends on whether Oracle were backing Apache simply as a tactic against Sun in the JCP. I've heard a number comments along the lines of "it's GPL -- the boat has sailed". They're forgetting that the owner of the IP can do as they please, including closing the source completely in the next release. (Not that I think it very likely; just a possibility.) Yes, an open-source community might be able to follow, but I'm betting that there would be compatibility problems.

MySQL: Toast. (Personally I never bought the logic behind Sun acquiring MySQL, and then they went and mishandled the whole thing badly.)

Glassfish: More toast. What will this be... Oracles fourth appserver? I lose count.

Netbeans: A cold shaft of ice pierces my gut. I love Netbeans. I just don't much like its competitor (just a personal preference; don't read too much into it!) But I fear that this might be the end of the road for NB... OTOH it can -- unlike so many of Sun's other open-source projects -- probably survive, nay flourish, as a standalone open-source IDE. After all, that where it came from in the first place.

OpenOffice.org: Makes perfect sense for Oracle. I bet on them keeping this one going. In fact, this might be the Secret Weapon Acquisition... the knife with which Oracle goes seriously for Microsoft's jugular in the Enterprise space, together with Solaris and the Sun hardware.

Solaris: I'm betting it stays. Oracle's strategy has been (to the limited extent I bother to keep track) to lock up the mission-critical, "hard-to-do" stuff in the Enterprise space. And there's still a whole lot of stuff that Solaris does way better than Linux.

VirtualBox: also plays well into the Enterprise/datacentre "integrated offering" strategy.

JavaFX: not one I'm capable of guessing about... any offers?

And the Sun hardware: makes pretty good sense for Oracle, in my limited understanding.

On a more personal note, much closer to home: How likely is it that Oracle will retain Sun's training programs for Java? Methinks it unlikely, since they already have their own training programs. What does that mean for the first Sun-authorised Java trainer in Africa?

Not good news at all, I'll bet!

All-in-all I think the acquisition is terrible news for Sun people, and probably not good news for their customers, either. I am finding it hard to see it in a good light for Java, either, and, having (literally) bet the farm on Java for the past 13 years, find the prospects quite discouraging. And for open-source in general it's a disaster. Despite the Slashdot whiners, Sun has sunk an incredible amount of money and effort into open-source projects, and I simply don't believe that Oracle has the same largeness of vision.

Oh well. Shit happens. I suppose its still a step better than Sun going under completely... Best I get a move-on with further developing my own training material and courseware.

13 April 2009


Twitter looks vaguely interesting. Not too much. Not enough for me to bother with it. I think it's very Flavour Of The Day.

But it does suit one thing I've had in mind for a while... the idea of a "stream of consciousness" blog sort of thing. Essentially a blog where I can just post a line or two or three, without all the formality and palaver of Subject lines, Categories, Tags, etc. In a nutshell, Twitter,but without the 140 character limit, and hosted on my own server as part of my own infrastructure.

Maybe I'll just write it....

<i>I need another development project like I need more holes in my head. Only two major development projects on the go at the moment, and a couple of minor ones.</i>

26 March 2009

SL-275 and Java Programmer Certification

Midweek; past the halfway mark (in time, anyway) of teaching Sun's SL-275 "Java Programming Language" course. I wonder how many times I've taught this course over the past 12 years... I still love it! Even though its just the basics, there's something just plain fun about introducing Java to new minds.

This one is interesting; 5 of the students have flown from Stockholm, Sweden all the way to Cape Town, especially to attend this course! Wow! (Of course they might pick up some sunshine in the middle of the Northern Winter. I guess that may help. ;-)

The trouble is that Java has grown so large over the years that there's a hard choice: cover (mostly) everything in a shallow way? or leave a lot out to get more depth?

Add to that, Sun punt the course as "the" prerequisite for writing the Java Programmer Certification Exam. Frankly, I shudder at the thought! Programmers would need a lot more than just this course to be in a position to tackle the exam. And programmers who are in a good position to tackle the exam don't really need this course!

As it currently stands, the course is inadequate for students attending it in order to prepare for the Certification Exam. There's very little I can teach them and still remain reasonably close to the course materials. The course is pretty good as an intro to Java for experienced developers, but pressure from more experienced developers in the class -- especially when they are in a significant majority -- could, if I'm not careful and strong in controlling it, leave the less-well-versed-in-Java students stranded. (I assure you that I don't let this happen.)

The solution is to split the course in two. One would be a truly introductory course aimed at otherwise-experienced developers. And the second would avoid all basic material -- syntax of if statements, declaring classes and interfaces -- in favour of homing-in on the deeper, less well known details of Java execution that the Certification Exam aims to test.

I sure wish Sun would do it soon! It would make life so much easier for us trainers, and would deliver a much better focussed value to customers.

18 January 2009

Open Course Development

It strikes me that, whilst I am deep into the design of a number of programming-related courses, I am making a terrible mistake. The mistake of not talking about what I'm up to. The mistake of assuming the entire burden of course development.

Instead I ought to be employing Open Source development principles. At least some of them. Seems to me that (at least) the Thousand Eyeballs principle applies quite well, at least to the course structure, content and sequencing.

Right now I'm in the thick of codesigning three courses that I (with good reason!) believe are served very poorly by the corporate training world, and I think I can design courses that deliver much, much better value for money. The three I'm busy with right now are "Elements of Object Oriented Programming", "OO Analysis and Design" and "Patterns of Software Design".

"Elements" is intended as an introductory foundation course for programmers coming from a non-OO background who want/need to learn the OO concepts quite quickly. Nobody in their right minds would believe that a 3-day "Elements"-style course is going to turn any Natural programmer into an OO expert... we all know that the process of learning to Think Objects takes 9 months. But I do believe that it is possible to teach the foundation concepts really well.

"OO A&D" seeks to demystify the analysis and design process -- to the degree that it is possible to demystify an essentially creative process.

And, finally, the "Design Patterns" course aims to teach something useful about... well... design patterns. I've taught variations on this one numerous times over the years, but never really been satisfied with the value I was able to deliver, so I've completely rethought the approach from the ground up, and -- I think -- come up with something Just a Bit Different. A whole lot of the Design Patterns courses I've seen offered seem to add up to nothing more than a whole lot of droning through the GoF patterns catalogue. I think there's a whole bunch more to the topic than that, and I plan to use the course to explore that.

I've also outlined a whole bunch of other courses that I want to develop over the next year or so, but developing even these three is a daunting enough task for now.

I'm openly stealing some of the concepts -- the approach to teaching -- exemplified by the Head First books, and I'm really interested to see that O'Reilly are themselves developing a bunch of courses -- I gather they'll be web-based courses -- under the Head First brand. Good for them! It's about time we saw a better approach to teaching technical stuff.

So I'm aiming to make the courses colourful, interactive and fun. I'm trying to build in lots of of pictures, music, video, games, practical exercises, movement. (Trying to figure out how to include flavours and smells... ;-)

I've also been breaking away -- especially for the "Elements" course -- from linearity in the course sequencing. Essentially I'm developing using a Spiral Model. First introduce a concept, then go on to related concepts, etc., in time spiralling round to repeat the discussion of the topic in greater depth, and so on. I've long known that it is too easy to give too much detail all at once, so for my own course material, I'm explicitly shying away from that. I think it equates -- somewhat -- to the concept of Progressive Disclosure in user-interface design. As luck would have it, after several weeks working on this stuff, I tripped across this article just today, and went "Aha! Somebody else who Gets It!"

Right now I am stuck. Struggling to come up with good great practical ways of exploring the topic of "Encapsulation" in a way that doesn't stray too far from the way it's meant in OO programming, whilst remaining vaguely interesting.

As soon as I get the relevant bits of machinery up and running, I'll post the course outlines. (Will take a while: I am unexpectedly and suddenly off to London for a week for a spot of consulting work.)
Related Posts Plugin for WordPress, Blogger...