May 31, 2002
The Python Business Forum

Python in a tie.

Posted to Python by Simon Brunning at 11:39 AM
May 30, 2002
Totally awesome software?

This article at Salon Tech is a good introduction to Extreme Programming.

There are some good ideas in XP. I must say, though, that I think that it would have a lot more chance of being accepted by the pointy-haireds if it was called something else. Oh, wait, it is! It's also referred to as Agile Programming - see this article in Software Development.

Well, perhaps it isn't exactly the same thing, but it's pretty close. And it has a much more sensible name.

BTW, I have now ordered Java Tools For Extreme Programming.

Posted to Software development by Simon Brunning at 02:59 PM
Conway's Game of Life

MetaFilter has a good set of Conway's Game of Life links.

Posted to Toys and games by Simon Brunning at 12:29 PM
Muggings and Robberies halve in cannabis area

According to the BBC, violent street crime has dropped dramatically in Lambeth, where police are trialling a scheme to treat cannabis offenders leniently.

Looks like a cut-and-dried case to me.

Posted to by Simon Brunning at 12:18 PM
May 29, 2002
In a Japanese Arcade near you.

OK, well, nowhere near you.

Anyway, I don't usually stoop to 'aren't foreigners funny' type posts, but this is seriously weird stuff.

Posted to Funny by Simon Brunning at 05:22 PM
Wicked Problems

Fascinating article in this month's Software Development magazine.

We have all worked on projects like this. Nice to have a name for the phenomenon, and to know why they are so difficult to deal with. A couple of good tips on dealing with wicked problems, too.

It's interesting how giving a name to something makes it easier to grasp. Somehow, concepts are more tractable when they have a name.

Patterns are like this. Once you have decided that you need, say, an abstract factory, all of a sudden you know a lot more about your problem than you did before.

Posted to Software development by Simon Brunning at 03:33 PM
Language Neutrality and the Java Platform

Interesting links from Lambda the Ultimate.

Of course my favorite language has been implemented on the Java platform, so it's good enough for me!

Posted to Java by Simon Brunning at 01:57 PM
May 28, 2002
Carl Sagan's Baloney Detection Kit

Carl Sagan's Baloney Detection Kit.

Tools for skeptical thinking about new ideas.

(Via the Python Daily URL.)

Posted to Science and technology by Simon Brunning at 10:08 AM
May 27, 2002
Small Objects of Desire

I want one of these! The Sharp Zaurus SL-5500 (see the PC Pro Review.)

It's a Linux PDA, so naturally you can run Python on it.

If only I had five hundred quid to spare!

Update 12th June: O'Reilly review - The Sharp Zaurus - A Lovely Little Computer

Posted to PDAs by Simon Brunning at 04:46 PM
PC Pro

PC Pro is probably the best mainstream PC magazine available in the UK at the moment. But it almost never mentions non-Windows or non-commercial software.

When it comes to practical information about the Windows platform, running it, configuring it, and the purchase of hardware and software for it, I think that its content is considerably better than that of its closest rival, PCW.

But I have to say, in some ways, it's beginning to irritate me. It seems to totally ignore the Linux platform, and OS software in general. In terms of development environments, its pretty much Microsoft all the way, with a smattering of Delphi. Even Java is left out in the cold.

Just for a change, though Dick Pountain's column mentions Python. I was very glad to see this, despite its inaccuracies. A change on the horizon?

Dick refers to Python as a typeless language. It isn't. It's a dynamically typed language, but it's also a strongly typed language. The distinction is real, although of course the terminology is somewhat subjective. The terms that I have used are common in the Python community at least. Dive into Python explains the distinction very well here.

Also, Dick had no way of knowing this, but Python is probably going to grow a boolean type in the near future.

I referred to PC Pro as a mainstream magazine. Some of the more, uh, specialist magazines are excellent. DDJ is very good, and I recently came across Software Development. Both worth a look. If you are a total nerd, that is.

Posted to Books and magazines by Simon Brunning at 01:38 PM
Why won't users RTFM?

According to this article it's basically because manuals aren't interesting.

This is true, but what can you do about it? If you are writing a game, well, perhaps you can make things more interesting. But if you are writing a manual for, say, an insurance system, well, what can you do?

In fact, Joel points out that users don't read anything.

Posted to Software development by Simon Brunning at 12:42 PM
May 24, 2002
The MEMS Exchange Architecture

AMK wrote this very interesting article, discussing the architecture that he and the MEMS Exchange team used to implement a complex web based application.

I'm particularly interested in looking at Quixote and ZODB.

Now I re-read the article, though, Grouch looks worth a look, too. unittest less so, since PyUnit made it into the Python standard library.

Posted to Python by Simon Brunning at 04:14 PM
Currently residing in the where-are-they-now file...

Untitled Document used to be one of the funniest sites in the 'net.

But then the updates became intermittent, then stopped altogether. Shame.

Posted to Funny by Simon Brunning at 03:01 PM
May 23, 2002
Shock Horror!

Factual error found on the Internet!

Posted to Funny by Simon Brunning at 02:27 PM
WTF?

Freja and Ella would love this notebook!

(Freja and Ella are my daughters, BTW.)

Posted to Funny by Simon Brunning at 02:23 PM
The Art of the Screensaver

Some pretty cool looking screensavers here.

I still favour Electric! myself, but every time I leave it on, Tracey comes over and turns my monitor off. Sigh.

Posted to Software by Simon Brunning at 02:20 PM
Bicycle Repair Man!

There seems to be a new version of Bicycle Repair Man. I'll have to check it out.

Bicycle Repair Man is a refactoring browser for Python.

I use the Java refactorings in Eclipse extensively, but I haven't given Bicycle Repair Man a bash yet.

Posted to Python by Simon Brunning at 01:52 PM
Zelda on the GameCube

The Legend of Zelda. The GameCube's killer app?

I'll be keeping an eye on it, that's for sure. The Zelda games on the Gameboy Color [sic] were incredible.

Posted to Toys and games by Simon Brunning at 01:42 PM
Yet more new Eclipse stuff

A long way off, though. The Graphical Editor Framework (GEF) proposal looks very interesting.

Amongst other things, it could form the basis for a GUI builder.

According to the Tools Charter, XML and Python support might also be in the works.

Yesterday's new version is looking good, too. A few menu options have moved around, which take a bit of getting used to, but it feels really solid.

Posted to Java by Simon Brunning at 01:35 PM
May 22, 2002
Sigh. More unmissable daily reading...

Question of the Day at HowStuffWorks.

Posted to The Internet by Simon Brunning at 01:23 PM
Google Labs

Check out some of Google's new toys.

Pretty cool, most of them. But Voice Search? Why?

Update: Ha! Beat them to it! BTW, don't expect quick responses from Google's lab machines for a while.

Further update: Incredible! It really works!

Posted to The Internet by Simon Brunning at 12:42 PM
Eclipse Freeze Build F1

Eclipse Freeze Build F1 is out. From now on, expect only bug fixing - no new functionality will be added.

This build shouldn't crap out when a project rebuild hits huge numbers of errors. This is generally a problem when one of your main classes has a compile error, and then many other classes in the project which refer to it also fail. We have over two thousand classes in our project, almost all of which extend a single abstract class. When that fails to compile, we generate huge numbers of errors - over forty thousand - and this tended to break Eclipse. Hopefully, this won't happen any more.

Other Eclipse news - an AspectJ plug-in seems to be in progress. For more about AspectJ, see the AspectJ web site, this developerWorks article, and these JavaWorld articles.

Update: I've installed it, and it works fine. The preferences have been cleaned up, but I havn't spotted any other changes yet.

Posted to Java by Simon Brunning at 12:33 PM
iSeries triggers at V5R1

An interesting article about DB2 UDB for iSeries triggers over at DB2 magazine.

I have used basic triggers extensively, but the V5R1 changes (column level triggers and the STATE parameter on the CHGPFTRG) are new to me. Also, some nice examples of procedural SQL.

Posted to iSeries by Simon Brunning at 09:18 AM
May 21, 2002
Pub guide

What an excellent pub guide!

Combine with CurryPages, and all your evening planning needs are catered for.

Also check out the pulling guide. I follow the Nik and James technique myself.

Posted to The Internet by Simon Brunning at 04:49 PM
Doh!

Oh dear!

Posted to Funny by Simon Brunning at 02:34 PM
Eclipse 2.0 soon

According to the release schedule for Eclipse 2.0, it will be released at the end of June.

We use Eclipse as our IDE for Java development. It is bloody good.

It is also going to form the basis of future versions of the WebSphere Development Tools for iSeries. RPG in Eclipse - I can't wait!

There are also Eclipse plug-ins for C# and Ruby - perhaps a Python plug-in is in progress? Can't find one.

Posted to Java by Simon Brunning at 12:33 PM
Dilbert is at Google.

Google's logo is currently featuring Dilbert.

They often feature special logos.

I missed their April 1st announcment this year. Godd, but April 1st 2000 takes some beating!

(Via The Shifted Librarian)

Posted to Funny by Simon Brunning at 12:21 PM
Are All Languages Equivalent?

No!.

"If you want to trick a pointy-haired boss into letting you write software in Lisp, you could try telling him it's XML." Classic.

I don't think that Python is a Lisp clone, though. It steals borrows from loads of languages.

(Via Lambda the Ultimate)

Update 28 May 2002: Paul Prescod's reply, On the Relationship Between Python and Lisp. Oh, and Lisp isn't XML. Still a good line, though.

Posted to Software development by Simon Brunning at 12:05 PM
.NET to be patented?

Over on c.l.py, it has been suggested that Microsoft might patent .NET, C# and so forth, despite opening the standards.

Is this true? If so, what will happen to Mono?

Posted to Software development by Simon Brunning at 11:29 AM
May 20, 2002
What is Well-Commented Code?

Interesting discussion at Slashdot Developers.

I must say that I am commenting a lot less these days. Using modern IDEs like Eclipse or Boa, long names are not a problem., so I'd rather give a function a self explanitory name, and not bother commenting it at all.

Back on the iSeries, 90% of my work is on existing RPGIV code. With a six character limit on field and subroutine names, well, loads of comments are needed..

One of the comments on the /. discussion agrees with this. And has a link to a Radio 4 live feed! Cool!

Posted to Software development by Simon Brunning at 12:57 PM
May 17, 2002
Microsoft violates its own Statement of Privacy

(Via SlashDot)

Anyone who uses Microsoft's Hotmail service will be interested to know that they have decided to share all its user's private information, without consulting them, and in violation of their own Statement of Privacy. New privacy settings have appeared on the profile options page allowing MS to give personal information away, and they all started out checked by default. You can uncheck them, of course, but that is shutting the stable door after the horse has bolted - MS has already given the information away.

Well, you can only uncheck these settings if you use IE - other browsers can't access the options page. Funny that.

And I say that they gave the information away. Actually, they sold it, naturally. Note that it's not just your email address that are selling - it's your full name, your age, your sex and your occupation.

I don't use Hotmail myself - I never trusted MS in the first place. But if you do, it's time for a new email address. And I know just the place to get one.

Update 28th May 2002: Yes, I know, fuckmicrosoft.com only offers a forwarding address. If you want an email address that you can access via the web, well, there are lots of alternatives, but I like beer.com. Just because the address is cool, basically.

Update 26th July: They are deleting your old mails now. Bastards. Hotmail, just say no.

Posted to Rants by Simon Brunning at 01:51 PM
May 16, 2002
iSeries DocFinder

If you develop on the iSeries, or operate one, you need a shortcut to the iSeries DocFinder in your favorites list.

My shortcut is called 'INDEX 400', which tells you how long I've been using it!

The other must-have shortcut is to comp.sys.ibm.as400.misc - whatever problem you might have, you are not the first.

Posted to iSeries by Simon Brunning at 01:35 PM
Prevayler

Prevayler looks like an interesting solution for small scale object persistence in Java.

There are a couple of articles about it over on Advogato.

The big problem with this so far as I'm concerned, is that everything is kept in RAM (like Gadfly). They can talk about Breakthroughs In Memory Technologyand servers with multi-gigabyte RAM, but I'm used to working with multi-gigabyte databases, and in the real world, you just don't have that kind of RAM available.

I'd like to give it a try for something small, though.

Posted to Java by Simon Brunning at 01:01 PM
What's New in DB2 for iSeries at V5R2

IBM has published an overview of the changes to DB2 on the iSeries at V5R2.

Personally, I'm most interested in the SQL enhancements. Views over unions will be useful, and identity columns will make a lot of jobs simpler.

Posted to iSeries by Simon Brunning at 12:09 PM
May 15, 2002
Kuro5hin

K5 is becoming increasing eclectic - less like /. every day. Interesting stuff, when it isn't navel gazing.

For example, there are a couple of articles on particle physics, a discussion about US military doctrine, a guide to eating for cheap, and a discussion about violent video games and sport.

They have nerdyness in common, I suppose, but other than that, they are pretty varied.

Posted to The Internet by Simon Brunning at 01:53 PM
The Phobia List

What did we ever do before the Internet? Where would we have found a complete list of phobias?

Posted to Funny by Simon Brunning at 01:50 PM
Enemies reunited

The Grauniad has this article about a net stalker. Be careful out there!

Posted to The Internet by Simon Brunning at 01:45 PM
Jakarta-Tomcat tutorial

O'Reilly are running a series of articles on Jakarta-Tomcat.

See Part 1, Part 2, Part 3 and Part 4.

I've recently started using Java servlets, and these articles taught me everything I needed to know about their deployment. Well worth a read.

Posted to Java by Simon Brunning at 01:38 PM
Python GUI toolkits

Deadly Bloody Serious mentions the current c.l.py thread, covering the various GUI toolkits available for Python. No mention of the anygui project, I notice.

anygui will be very interesting when ready, I think. For the moment, though, c.l.py tends to lean towards wxPython. I can see why - look what you can do with it. Also, the forthcoming Boa Constructor uses it.

Boa isn't running over Python 2.2 yet, but when it does, I think that it may replace PythonWin as my Python IDE. For a start, it has PyChecker support built in.

Posted to Python by Simon Brunning at 01:27 PM
Seriously useful web page

dive into mark pointed the Web Color Visualizer (sic). All this in just 3094 bytes!

Posted to Website construction by Simon Brunning at 12:24 PM
Déjà vu

Scientific American summarises the modern therories explaining déjà vu. Interesting.

Posted to Science and technology by Simon Brunning at 11:51 AM
The BBC's search engine

According to The Register, the BBC's new search engine isn't as "editorially independent" as they would have us believe.

Quite how they thought they could improve upon Google, I can't imagine. Still, it's only money. Our money, that is.

Posted to The Internet by Simon Brunning at 10:28 AM
May 10, 2002
"We're going to cut up their passports."

Missing pensioners 'unaware' of hunt. Brilliant!

Posted to Funny by Simon Brunning at 04:10 PM
Python Web Frameworks Overview

Paul Boddie has posted a preliminary Python Web Frameworks Overview.

I'm looking forward to hearing what he has to say about Quixote. It sounds very interesting.

Posted to Python by Simon Brunning at 02:51 PM
MegaWiki

Good Lord, yet another release of MegaWiki from Jerry Hedden. Does the man not sleep?

This application is one of my Palm must-haves. Others include:

Am I missing anything?

Posted to PDAs by Simon Brunning at 02:35 PM
May 09, 2002
Winnie the Pooh

Mark Pilgrim has some excellent Winnie the Pooh links.

Posted to Funny by Simon Brunning at 01:41 PM
Ad complaints

The ASA has released a list of the most complained about ads of 2001.

The Queercompany one wasn't 'offensive', IMHO, but extremely distracting. Nearly made me walk into a lamp-post, anyway.

Posted to Funny by Simon Brunning at 01:32 PM
How IBM became the good guys

Business 2.0 has an interesting article about the way that IBM now embraces Open Source, This Is Your Father's IBM, Only Smarter.

Posted to Open source by Simon Brunning at 01:25 PM
Open Source and the UK government

Someone in the UK government knows about open source, thank God.

Blair hasn't been sucking up to Microsoft so visibly recently, I suppose, but we are still a million miles behind Peru.

Posted to Open source by Simon Brunning at 01:15 PM
iSeries tool vendors plugging into Eclipse

The Vendors Ponder Eclipse article at the iSeries Network says that a number of iSeries tool vendors are building tools to plug into the Eclipse framework. I'm looking forward to the results...

Posted to iSeries by Simon Brunning at 01:08 PM
May 08, 2002
The Python Pattern

"Developers typically see a tenfold productivity increase when they switch to Python" according to Bruce Eckel, speaking during a Design Patterns In Python class.

Check out Bruce's Thinking in Java. I bought the printed version of this after going through the first couple of chapters of the soft version. Highly recommended.

Thinking in Python is an interesting project. It isn't a Python tutorial - it's mainly about patterns, with implementations in Python.

If I were interested in C#, I'd take a look at Thinking in C#, a preliminary version of which is now available. But I'm not, so I won't.

Posted to Python by Simon Brunning at 02:10 PM
FUD fighting

Peru is proposing a Free Software law. Check out Microsoft's FUD letter, and Congressman Edgar Villanueva Nuñez's superbly reasoned response.

See here for the originals, and links to coverage.

Posted to Open source by Simon Brunning at 01:31 PM
Freaky

Have a go at Clifford Pickover's ESP Experiment. Works for me.

Does it work for you?

Update: It's been explained to me now. Clever! I won't spoil it for you, though.

Posted to Funny by Simon Brunning at 01:01 PM
May 03, 2002
Google's Genius, or Google's Gaffe?

Paul Prescod wrote an article suggesting that Google might have made a mistake in basing its new Web Service API on SOAP.

Sam Ruby thinks different.

Mark Pilgrim, the voice of common sense as usual, points out that all existing Web Services are pioneers. Have a go with all the web service protocols, 'cos a de-facto standard won't arise for a while yet.

The effbot, meanwhile, has his own opinion.

Joel also has his opinion on this, in which he claims that "the trend is away from variant-bound scripting languages (VBScript, PHP, perl) towards typed code (C#, JSP).". See here for why I think (and certainly hope) that he's wrong.

Posted to Software development by Simon Brunning at 01:17 PM
May 02, 2002
Jython Essentials

I picked up Jython Essentials on my way home last night, more or less on a whim. I don't actually use Jython, but a juxtaposition of my language of choice, my favourite technical publisher, and my workaday language was impossible to resist.

Its a good book, and I learned a lot about Jython. It's even cooler than I thought. You can subclass Java classes in Jython, or vise versa. A Java class subclassed in Jython can then be re-subclassed in Java again. It's just all too cool to be true!

Type conversions between the two languages is pretty much automatic, though you can get fine control if you want it. You can embed Jython in a Java app if it needs scripting. You can compile a Jython app into a single Java class or jar, either a small one requiring the jython.jar to run, or a big standalone one. And the interactive prompt is a brilliant way to explore the behavior of Java existing classes, and to smoke test your own. It's a one stop shop for all your Java scripting needs.

It also got me thinking again about why I prefer Python to Java so much. The things which irritate me the most are these:

  • Boiler plate code. This is the code which you end up writing again and again and again. Looping through the containers, for example, requires so much code. Now I don't object to verboseness as such - where it adds value. But where it just adds characters, it's irritating. Python's


    for line in list:

    line.whatever()


    syntax is perfectly comprehensible, and concise.


    And don't get me started on Enumerations...


  • Integration of data structures into the language. You can't override the the built in operators for classes, which leads to very verbose code.


  • Hand holding. If Java tells me one more time that a local variable 'may not have been initialised', when I know damn well it will have been, I swear I'll scream.

Having said all that, Java has its pluses - interfaces are really cool, and JavaDoc is a wonderful tool.

Posted to Python by Simon Brunning at 03:59 PM
The mullet is back!

Salon says that the mullet is back. I say that Salon is insane.

Posted to Funny by Simon Brunning at 12:50 PM
May 01, 2002
OpenOffice 1.0 released

Or so Slashdot reports, anyway. I certainly can't get to the OpenOffice site - totally slashdotted!

I'll try again tomorrow - it certainly looks worth a try. Anything other than Micro$oft, after all.

Posted to Software by Simon Brunning at 05:30 PM
Syntax Checking the Scripting Way

Cameron Laird and Kathryn Soraiz's article is well worth a look.

One of the most frequent objections to scripting languages (such as Python) is that their lack of static types and declarations will make your code buggier. Until I tried Python, I would have thought the same thing myself. In practice, though, it just doesn't seem to be a problem.

At work, I use Java. Sure, some of the mistakes that I might make are picked up at compile time (or earlier, using a smart IDE like Eclipse). But only some of them. So I have to unit test thoroughly anyway. So all that the static type checking buys me is that I find some errors earlier than I otherwise would.

This would be good, except that static type checking makes me jump through a lot of hoops sometimes to get stuff done. I am certainly many times more productive with Python than with Java.

Now, I would never have discovered this unless I had given Python a try. Dave Thomas and Andy Hunt recommend that a professional developer should learn one new language a year, and preferably one based upon a new paradigm. I'll second that.

My next target is the functional language Haskell.

Posted to Software development by Simon Brunning at 03:58 PM
EuroPython 2002

If only! My company aren't into Python, and there is no way I could afford to go off my own back. Ah well...

Posted to Python by Simon Brunning at 12:13 PM
Joel talks to Tom DeMarco

Joel's chat with Tom reveals that groups of developers can work in open plan offices. Bah!

I find that I have real problems staying in the zone these days. Phones ringing, other peoples conversations, you name it, it all distracts me.

See also Joel on XP.

Posted to Software development by Simon Brunning at 12:11 PM
IBM releases iSeries model 890 Regattas

Story at The Register.

Lots of macho hardware figures here, but what's new in terms of OS/400? (Or have they rebranded it as iOS yet?)

Posted to iSeries by Simon Brunning at 11:55 AM