Software

Free Software, Vendor Relations, and the Underdocumented Edge

I was listening to Josh Berkus speak to Laporte and Schwartz about PostgreSQL versus Oracle on FLOSS Weekly, and a real bona fide gem emerged.

Josh relates the difference in product offering between a Sun supported PostgreSQL and a typical Oracle offering, and it isn't the price difference (significant though it may be) which is the real issue, it is the difference in expectation between Sun and Oracle.

Oracle need to sell the database as it is their primary product. At Sun, if the PostgreSQL business breaks even that is well enough since it wasn't the primary business: the platform is. PostgreSQL is just part of a stack making the whole platform look more appealing.

So as a commercial database consumer, you have a choice there, and the choice goes to the heart of vendor relations quality (upon which most other cost and performance factors can be demonstrated to depend). One of the vendors will want you to use the product because it will create a direct revenue stream for them, and the other has no direct commercial interest in you using the system, though they wouldn't mind it if you ended up liking it and looking at their other products.

Of course, this is over-simplifying matters a little. But when you're talking vendor relations management strategy, you're talking long term and when you talk long term, it's the broad brush that paints the clearest target.

More writing

I was very happy to see my article, The Free Software hardliner, the Corporation, and the Shotgun Wedding on linux.com a few days ago.

For one thing, it is obviously an honor to have articles you've written running there. For another, that article discusses some things I eeded to get off of my chest, and the comments section of the article indicate that there may be others who feel the same way.

And of course, it's nice to be paid for writing! (No, this little puppy isn't making anything other than €0.00 per copy yet...)

eurobrussels.com python screenscraper

Much like unjobs.org, eurobrussels.com is an excellent resource for vacancies in Europe with multilateral organizations and all form of interesting private enterprises.

Unfortunately, the site is still RSS-disabled and the process of looking on the site for new jobs is temrinally inconvenient. So what's a python programmer to do?

Out comes BeautifulSoup and PyRSS2Gen. A quick examination of the source code reveals that the geeks there are good enough netizens to use (relatively) reasonable CSS classes. A little bit of time, and you've got a nice screenscraper for your RSS generator.

Find the python script attached to this post.

UNJobs.org Screenscraper and RSS Generator

The UN Jobs site is useful as a compendium of what postings are being opened where, but as an information system it is nigh on useless. There is no way to track what you have seen and what you haven't seen, and no way to tell precisely what is new between now and the last time you visited (the new postings page notwithstanding).

I've written a small screenscraper which pulls down all the postings and converts them to an rss file. I don't know about other feed readers, but liferea can read from a local file. There's a ton of dependencies like BeautifulSoup and PyRSS2Gen, but anyone with a little motivation should be able to get this working.

pycurl CurlMulti mini-HOWTO

In the course of writing a little python command line RSS engine, I naturally came to a point where I needed to download the RSS feeds to store them and work with them.

My options looked like this:

  • Use urllib2.urlopen which would download the feeds serially. When you have hundreds of feeds in your opml file, that takes too long. Besides, what do I have ADSL for?
  • Use Twisted. But, my application is not a web app and frankly, switching the whole thing over to the Twisted event-driven model is overkill and unnecessarily complicated.
  • Use wget with threads. The problem with that would have been that I'd have to jump through hoops to pass the data from the threads back to the main application, possibly with messy kludges like temporary files. No thanks!
  • Use libcurl through the pycurl library. Ah, yes, perfect. Or so I thought.

Better notifications with xosd and the at daemon

Here is a neat little application which extends the UNIX at daemon with the XOSD (X on screen display) for very effective, non-blocking, and simple notifications.

Software Requirements Specification: A Modern Look at How the Enterprise Determines What It Thinks It Needs

Most modern schools of requirements gathering and system specification development are user driven; this can often be the death of a development project. The truth which is known to the more successful technology development outfits is this: the user is irrelevant, the user does not know what is good for the system, and the user will often try to mislead you into developing software which does something they find useful.

Why do we develop software requirements specifications?

The iptables Rate-Limiting Module

Introduction

What is rate limiting with iptables?

iptables (http://www.netfilter.org) is the packet filtering firewall rolled into the GNU/Linux kernel starting with version 2.4.

In the transition from ipchains to iptables, many fairly significant changes were made. The most widely acknowledged was the introduction of statefulness, or 'connection tracking'. The more fundamental, and in my opinion, more exciting shift, has been the increased emphasis on modules.

This article will discuss the rate limiting module. The module itself is not overly complex, and I will try to emphasise application more than plain old invocation.

Mail sanity checker, new edition

This version is ported to python (don't bother checking my code, it isnt pythonic; I take the approach that I learn the standard libraries by practise and let the pythonisms adopt me).

Added feature of checking whether a reply has had enough quoted material trimmed, user-configurable.

I'll start versioning these things if it ever gets bigger than 500 LoC, but till then it's just a useful little trifle.

Islam, Intellectual Property, and Free Culture

This article was written with the objective of understanding how traditional Islamic law would or does regard intellectual property, with the emphasis here and there (as relevant) to open culture and free software. I am not a lawyer, and this article was written with the support of some beer (though not too many); my claims to authority, weak as they may be, are living in Egypt for some 17 or 18 years and having played a solid role in creating the Egyptian Linux Users Group. I am open to discussion (that's what the comments are for!) and will revise this article when time and reasons avail themselves.

Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License.

Syndicate content