Ludoo
static bits and pieces

I don't usually post entries on news items I read on other sites, as I don't like repeaters blogs too much. I will make an exception tonight, since the article I'm writing about summarizes well a few important things I like about Python.

The article is titled Rapid Development Using Python and appeared today on Linux Journal. I learned about it from a Google News Alert agent, which is usually not very interesting (so this entry is a double exception).

A few key points from the article, which is a good read if you like Python, and of course an even better one if you have never used it.

The interactive interpreter

We anticipated making changes frequently on a remote device, with a customer representative viewing the interface and providing instant feedback.
Python allowed us to achieve this environment primarily because it is easy to use interactively. Prototyping through an interactive interpreter is an effective mechanism for exploring different approaches to solving a problem.

Introspection

We wanted to dispatch Web requests to code in a very direct fashion. An architecture based on a central controller that used introspection to determine where to route requests seemed a clean and simple choice.
[...]
an inspectable run-time is nearly equivalent to running an application under a debugger while making changes.

String Manipulation and File I/O

Iterating over the content of a file takes two lines of Python. In comparison, Java requires five or five instantiations followed by two or three lines to read. Once read into memory, content must be tokenized before iteration. While iterating, casting is required.

Development experience

Because it supports import-on-demand and module reloading through introspection, Python allowed us to change logic within external modules and have the changes be accessible immediately by the central controller.
Instead of wasting time fighting with the language, we spent time fulfilling customer requirements. Our rapid development environment blazed to life fueled by Python.
We found that looking at problems from a Pythonic standpoint often led to simple and elegant solutions that addressed both functionality and portability.

I completely agree with all of the points above. My experience with Python, though short (I came to Python pretty late) and not very broad (I haven't been able to use it at work as much as I would have liked to) is very similar to the one outlined in this article.

ludo ~ Dec 02, 2003 23:12:00 ~ upd Dec 02, 2003 23:35:21 ~ category Python

One of the customizations I did when I switched back to Windows was to find the best way to access my ext3 partitions. I already knew about explore2fs, a nice explorer-like ext2/ext3 browser, which lets you copy files from your Linux to your Windows partitions.

What I was looking for was a way to natively access my files (I have most of my reggae cds ripped as mp3 on my Linux partitions at home and at work), so I tried a few drivers and finally settled for ext2fsd as it's the only one that worked on my system. I've been using it for the past week and it works very very well.

To set it up, download the latest ext2fsd release (0.10), extract it somewhere, enter the Ext2Fsd\Setup folder, run setup and install the .inf file. To mount your partitions, use mount.exe in Ext2Fsd\Mount.

I copied mount.exe in %SYSTEMROOT%\windows32 (usually c:\windows\system32), and linked to my Start Menu Startup folder a .cmd file containing these two lines:

net start ext2fsd
mount 0 2 h:

where 0 is the first ide disk and 2 is its second partition. Easy.

ludo ~ Dec 02, 2003 21:00:00 ~ upd Dec 02, 2003 21:30:36 ~ category Misc Stuff