Archive for November 2007
I have lately been trying to convince the lead developer of Publishers’ Assistant that he ought to be switching technologies for his next version of the software — and he ought to adopt a new business model along with it. The reason for this is that the software is currently written in Visual FoxPro, a proprietary programming language and data environment. Microsoft is pulling the rug out from under FoxPro: they’re not releasing any new versions, support for the latest version ends in 2015, and they’re not going to release the source for any version because it contains “too much intellectual property” (translation: “We’d rather continue to sell expensive SQL Server licenses, thanks”). Granted, it will still continue to work, at least until Microsoft stops releasing 32-bit versions of Windows, but it will continue to age and there’s nothing we can do about it.
For this reason alone, it’s worth looking into other technologies, but there’s another, more business-oriented reason: FoxPro doesn’t run on Macintosh machines, which are widely used by small publishers. As long as we stick with FoxPro, he estimates that about half the market will be inaccessible. At the moment, Publishers’ Assistant is a 1.5-man company (I’m counting myself as .5), so there’s a lot of room to grow — if we can reach the people who would most benefit from the software.
I am suggesting Python as a replacement for FoxPro. There are a lot of good reasons to do so, in my mind:
I’ve been meaning for quite some time to write something about John Kenneth Galbraith, specifically an idea he put forward in The Affluent Society (1958). It’s an idea worth repeating, because it exposes an underlying assumption in contemporary debates about everything from government spending to school choice to health care. Roughly, Galbraith’s claim is that when supply and demand are not independent in an economy, (neo)classical economics fails to describe the behavior of that economy. This means, among other things, that the conclusion that unfettered trade will best serve to fulfill the wants and needs of consumers is either invalid or reduced to tautology.
Today, I came across two different organizations that are doing things to empower individual citizens, in the face of different kinds of controlling interests. I don’t know much about either yet, but I am intrigued enough to urge you to check them out yourself. The two organizations are unrelated except for the fact that both are dedicating themselves to “fighting back,” in one way or another, against larger entities that have the resources to navigate and manipulate the American legal system. I suppose this tells you something about my browsing habits, if nothing else.
I spent a good portion of today trying to get a WebDAV share set up on a Windows Server 2003 machine. This machine is a test environment for a web service that accepts information about book titles from clients, including cover images. We decided to use the HTTP PUT method for uploading the image files, instead of HTTP POST or FTP, to keep things as simple as possible — we didn’t want to write a POST acceptor (or use someone else’s) or switch protocols mid-transmission. HTTP PUT is implemented through WebDAV in IIS, so getting WebDAV working was the first step.
It was recently expressed to me that the essence of the American debate between “conservatives” and “liberals”1 is something like this:
Conservatives believe that
- People should be free to “stand on their own two feet,” that is, to pursue their own goals, interests, and activities with the least number of hindrances; and
- When people are free to stand on their own two feet, they will provide the compassion and care for one another that they require (and probably be happier and more prosperous besides).
- As a (perhaps paradoxical) corollary, if they are made to provide this care for one another, through regulation or other impositions on individual freedoms, the quality of the care declines and it becomes ineffective, insincere, and a haven for corruption and inefficiency.
Liberals, on the other hand, believe that the best way for society to provide care and a happy life for its members is to impose laws and regulations that institutionalize this care, instead of allowing people the freedom to provide it personally.
Now, I think this characterization of the debate is based on a misunderstanding, but it is a misunderstanding that is very common and often propagated by people on both sides. After all, the idea that people should be free to pursue their own interests and activities is the original liberal idea. I want to examine this expression of the debate, in order to help correct that misunderstanding.
I’ve just spent some time trying to get MySQLdb, a Python module for connecting to MySQL databases, running on OS X. Following the installation instructions resulted in this error when trying to import the MySQLdb module from Python:
ImportError: dlopen(/Users/richard/.python-eggs/MySQL_python-1.2.2-py2.5-macosx-10.3-fat.egg-tmp/_mysql.so, 2): Library not loaded: /usr/local/mysql/lib/mysql/libmysqlclient_r.15.dylib Referenced from: /Users/richard/.python-eggs/MySQL_python-1.2.2-py2.5-macosx-10.3-fat.egg-tmp/_mysql.so Reason: image not found
Pretty ugly-looking, eh? Fortunately, the fix was pretty easy; I found a solution on this page in the MySQL forums. Instead of creating a /usr/local/mysql/lib/mysql directory and copying the library into it, though, I made it a symbolic link back up to its parent. Thus, my version of the fix is just one line:
sudo ln -s /usr/local/mysql/lib /usr/local/mysql/lib/mysql
Now, the MySQLdb module imports just fine!
I have written a letter to the President and Vice President of the Vermont National Education Association about supporting the use of Free Software in Vermont schools. As I pointed out to them, I believe that free software should be used in schools because it:
- eases the pressure on schools to spend less, which is currently a hot issue in Vermont
- gives teachers more control over the software used in their classrooms
- removes the educational ceiling we are currently imposing on curious students by using proprietary software
- emphasizes educators’ respect for and interest in students’ individual freedoms
- exposes students to an environment where cooperation and helping others is the norm, and teaches them that there are alternatives to the proprietary software world’s values of dividing users and profiting from helplessness