Posts

Showing posts from September, 2004

My email to Microsoft requesting OOo file format support as a standard feature for Word

This is probably not of too much interest to many people, but the use of open file formats is a very big issue to me. I submitted this email by going www.microsoft.com, hitting the 'contact us' link, then selecting the 'suggest new feature for product' choice. If you happen to be one of the small number of people who care about file formats, please send them a message of your own! Here is my email: Hello, I am an author of 14 published books - many of them written using Word for Windows and for the Mac. While I basically like the functionality of Word, it would make my life very much easier if Word would also support the (soon to be an international standard) OpenOffice.org XML file format (gzipped XML files in a very clear format). The problem is that I consider what I write to be **my data** and I would sometimes like to reuse **my data** in other ways. I find the OpenOffice.org file format to be very easy to process using simple programs written in Python,

A great article by Senator John McCain on courage and social responsibility

I believe that the Senator gets this right . It is a fairly long article, but in my opinion well worth reading. I often do not agree with McCain's politics but he is one of the few politions at the federal level that I trust, and he is definitely on my "good guys" list.

Small and nimble: small but valuable companies in the future

Paul graham has a new essay that covers good things that came out of the Internet Bubble: ...doing good work will matter more than dressing up-- or advertising, which is the same thing for companies. That people will be rewarded a bit more in proportion to the value of what they create. To me the interesting thing is the tension between two trends: on one hand huge corporations evolving into efficient world powers and on the other hand the naturally higher productivity of small loose working groups. I believe that there is a unifying force that will undo the tensions between these two trends: to approach peak efficiency mega size corporations will federate into smaller business units (*) that may become their own cost centers and also take maximum advantage of consultants and other suppliers. Not to sound like a technical-marketing guy, but future technologies like semantics aware web services and SOAs really will allow work processes to become finer grained and distributed for

Automatically sorting out "Java blog entries" from "non Java blog entries"

Because of the intense interest in politics (at least for me :-) I have been writing more political blogs than usual. I think that the Java blog agregators should simply automatically filter out non-Java blog entries. For example, if a blog entry does not contain at least on of the words: "Java", "EJB", or "J2EE" then do not include it in an agregated feed. I have recieved some polite requests to not submit political blogs. So far, I have been telling people who complain that after the 2004 elections, I will naturally stop writing about politics to a large degree. However, like a lot of bloggers, I like to dump all of my blog ideas into one blog (covering a variety of topics). In addition to technical topics like Java, AI, Semantic Web, etc., I also like to sometimes mention my family, hobbies, and yes, even politics and the economy. To me, the solution is for Java agregators to filter out posts based on lack of a few key words. The same

Major update to one of the best AI programming languages and platforms: Swi-Prolog

New verion 5.4 pre-built binaries and source code are available at Swi-Prolog Home Page . Windows, Mac OS X, and Linux are suported. If you are into the Semantic Web, the good news is that the semweb library is built in and works great to read and logically query RDF and OWL files. Very useful stuff. Swi-Prolog also has built in libraries to parse SGML and XML, built in socket servers, socket client libraries, CGI, HTTP support, ODBC support, and supports SSL. Prolog is not always the best language for a task, but when it is, Prolog programs tend to be very consise - get the job done with relatively few lines of code. In a sense, Prolog is also a late binding language like Python, Lisp, and Smalltalk. Swi-Prolog is licensed under the LGPL. HIGHLY RECOMMENDED!

Good thing: European OSCE commision to monitor U.S. elections in November

Whether you voted for Gore or Bush, I think that almost all of us can agree that the disenfranchising of over 20,000 black voters in Florida right before the 2000 presidential election was a national disgrace that we never want to see repeated. A BBC News article has some good information and if you want to see about 600 politically charged responses to this article, head on over to Slashdot. Seriously: transparency and honesty are all important for a democracy. Inspection of the U.S. election process by respected international organizations can only be a good thing. I just Google-searched for more information about this; the following two sites were the first two hits and contain material that seems reasonable to me: Disenfranchising Blacks as Political Strategy Florida's 'Disappeared Voters': Disfranchised by the GOP PS. I just noticed that the OSCE was asked by Secretary of State Colin Powell to monitor the election. Also, Congress has recently passed le

Use the right tools for a job: platform choice vs. available open source projects

I have to admit a bias towards using Java on the server side because I have so very much time invested in mastering the J2EE stack. That said, I will be using PHP for a major task for my customer in India because an existing open source project written in PHP gets us about 90% of our requirements 'out of the box'. I suppose that this is a common enough occurence for consultants: to get a job done efficiently often platform choice is not as important as the availability of open source projects that match project requirements. For my own research and product development (which unfortunately has been put on hold - I am working on a full time job until near to the end of this year) I have a common pattern: some back end process that I would like to make available through a web interface and/or a SOAP/REST/XML-RPC interface. Much of my research programming is done in Common Lisp because it is a very productive language (I also like to use Python and Smalltalk for research pr

Why don't we call 'tax cuts' 'tax deferments'?

Really, taxes are not being cut - they are being defered to future generations. It works like this: our government is spending lots of money while reducing revenue with tax deferments. This works by borrowing money (from foreign central banks, investers, etc.) that will either have to be paid back with lots of interest, or our government will have to declare bankrupcy (something that only the most extremist "cheap labor conservatives" want). There is a lot of public talk by the most extreme neoconservatives in the Bush administration about "starving the government until it is small enough to drown in a bathtub" but I believe that these views are way out of touch with what average Americans want. Really, who wants to see the end of public education, etc.? (Well, the extremist "cheap labor conservatives" do but they hardly represent normal human or American values).

One of my favorite things about Java: packaging both code and data in JAR files

Sure, other programming languages like Python, Lisp, and Smalltalk as faster to develop in (for the usual reasons: late binding, more interactive development, etc.). However, one feature of the Java platform that I really like is being able to easily package both compiled code and required data in a JAR file. Typically, I serialize required runtime data to a binary file and when I create a JAR file I add the binary serialized data file as a top level entry. To read the data into memory, I use something like this: InputStream ins = this.getClass().getClassLoader().getResourceAsStream("my_data.ser"); ObjectInputStream p = new ObjectInputStream(ins); Vector my_vector = (Vector) p.readObject(); // etc. Then, I can just use the JAR file in other applications and I have both code and required data.

Getting people to think

After seeing the (good!) new movie Sky Captain and the World of Tomorrow this weekend, I was reading an interview with the stars Gwyneth Paltrow and Jude Law. The interviewer asked them what they thought about movie stars going public with their politics. Gwyneth Paltrow said something that I thought was right on: she thinks that it is OK if stars want to politic but she said that she would simply like everyone to think for themselves. That really is what I want also: regular people should be able to respect other people's opinions about politics. I find the polarization going on now in the U.S. more than a little disturbing. I would hope that a liberal and a conservative could sit down and discuss mutually interesting issues like: Benefits and drawbacks of tax cuts Pros and cons of strong environmental laws How to fight crime - effects of longer prison terms vs. community outreach, etc. (what makes our families the safest?) Advantages and drawbacks of military operations in

Amazon's A9.com search portal is cool

I know, this is old news, but I have been giving A9.com another look. Privacy advocates probably do not like A9.com because the first thing the site does is to read your amazon.com cookie so A9.com knows who you are. A9.com maintains a search history and is especially nice when search results are from inside a book - you can often read relevant pages out of books. A9.com uses Google, the internet movie database, the amazon.com database, and other information sources. I have been using the Google SOAP web services API for about 18 months - very cool to be able to use Google easily in my own programs. I would like to see Amazon offer something similar. Amazon does have both a SOAP and a REST API for accessing its main site, but I don't think that this is tied in with their search site yet.

Being an OS X user I forgot about the hassles of Windows and Linux

Really! I use a few Mac OS X computers for my business, but I keep a Chinese PC clone (*) around for the odd job requiring Linux or Windows. My wife was sharing the PC, but decided that she was just going to use her HP laptop in the future. So, since all my stuff on the PC was old and crufty, I decided to wipe the disks last night after dinner and clean install SuSE Linux and Windows 2000. What a hassle - it took me an hour, and I don't have everything I need re-installed except for the firewalls and security updates. I decided to just install software as I need it since I use Windows and Linux so seldom now. Yes, I am a happy Mac user :-) (*) a nice machine: a little slow, but uses very little power, runs cool, etc. cost me $199 at Frys Electronix

Demand for U.S. Treasury Notes by foreign banks at a historic low

Former President Clinton shocked the hell out of me a month ago when in a speach he refered to the U.S.'s inability to apply any pressure on China because they are our banker. I can not remember the last time I heard a politition from either party be so honest and forthright about an issue that no one wants to talk about: for the last few years foreign banks have been propping up the dollar by buying U.S. Treasury Notes to try to maintain the value of their existing investments. If not for foreign central banks in countries like Japan and China, our economy would have probably have been screwed several years ago. While our current adminstration has been telling the lie that our economy is just fine, the reality is unfortunatey otherwise. It is impossible to predict the economy: it is just too chaotic. Still, we can use common sense to figure out what "ought to happen" (*). Low demand for U.S. Treasury Notes is very troubling indeed. (*) If you can handle real

AI research at Microsoft: question answering system

I just saw this interesting Economist article linked on the latest AAAI alert email. Eric Brill is one of the best known people working in statistical natural language processing, and Microsoft's ambitious question answering system looks interesting! BTW, I have a simple question answering demo that I created on my www.knowledgebooks.com web site.

Budget deficit is $422 billion - or $571 billion counting borrowing from social security

Why do we keep hearing the number $422 billion? I am not picking on just the Bush administration here: the democrats tend to not be transparent on budget issues either. It is a common belief among law professors and economists that if corporations divulged their finances like the federal government did, that there would be a lot more people in jail. What is wrong with more transparency? Obviously the politicians would not like it, but think about how much better our government would be if: Outlaw voice votes in Congress - this is a way to hide voting records from constituants. By law, force Congress to publish clearly on a web site all voting records and have appropriate selection filters so that people could quickly see how their representatives voted. Correlate voting wih data on campaign contributions. Require people in government to sign off on finance data and make it a crime to lie about it. Polititions are very well paid and have great benefits - I don't think that I

Java article, SOAP, XML-RPC

I saw this article on Patterns and Strategies for Building Document-Based Web Services linked on ServerSide.com this morning. I had a little thrill when I first saw the title: most of my recent work has been designing and writing a web based document repository (a 'Knowledge Management' application). I am extremely interested in managing different document types, searching, automatic categorization (not done in my current project), etc. The linked article is on a different subject, but still very interesting: on document based interactions instead of RPC type interactions. In other words, using SOAP for RPC style communication is (in my opinion) an overkill. I think that SOAP is best used for requesting a complex structured document. Something like XML-RPC is much better for simply RPC-type communication. This point is discussed both in the linked article and Michael Daconta's (et. al.) useful book The Semantic Web .

Kerry and Bush: keeping fairly quiet about urgent economic problems

This will piss off supporters of both Kerry and Bush, but, I am a little pissed off myself. There are largely ignored but still overriding issues today that affect the security of Americans: the economy and scarce resources. Sure, both candidates are talking about unemployment, but there are potentially more dangerous issues affecting our security: Huge trade imbalance Reliance on Chinese and Japanese Foreign Banks to prop up the dollar Lack of conservation of limited resources: water (in the South West at least), oil for food production and transportation, and natural gas supplies Both candidates avoid the hard issues, with the lower grade going to Bush (his reelection team will do absolutely anything to keep the public mind off of economic issues). Still, Kerry is little better, and personally I give him a poor grade also for failing to address threats to our security. (If you think that the security of the U.S. is more threatened by terrorists than the issues that I just mentio

Why do I have to read foreign news to get accurate information on my country's economy?

From the BBC I blame the Democrats(*) and Republicans(*), and our feeble news media. It is true, that some news sources like the Christian Science Monitor and the New York Times are pretty good at giving us straight talk, but I admit that I am talking in generalities here. (*) Bill Mahr says that the Republicans are the "feel good" and "party" people: they bullshit about the current economy being OK, bullshit about how we are totally screwing over the Iraq people right now, etc. But, they make people feel good! WooooHoooo! Mahr describes the Democrats as being downers: they point out and fret about real problems, and make people feel bad. I think that Mahr has put his finger on how the Republicans hold political power! Really, think about it: Most polls show that the vast majority of Americans support a woman's right to choose. Most Americans favor universal health care (I don't, but that is another issue...). Most Americans are grossed

Tailoring web apps to use FireFox; comments on Open Source

I spend a fair amount of time working on interactive web applications and I would love to be able to standardize on using a single browser. FireFox would be the obvious choice because it is fairly standards compliant and available for most platforms. I saw an article on Slashdot this morning on Mozilla SunBird: a standalone calendar application that can use any WebDAV server to support a shared event space for multiple users. I just spent a couple of days creating a web based multi-user calendar from scratch for a custom project - it would have been good to use something already written, but it was also nice having total integration with our business data models, etc. In any case, there are many great open source projects that enable consultants like me to put custom systems together quickly and inexpensively. I just started offering a 1/3 discount for any work supporting open source projects - I am booked solid work-wise for several months, but when I do have time available, I

JDK 1.5

Or Java 5.0 if you prefer... I am fairly much enthusiastic about version 1.5, mainly because of the auto boxing and unboxing between native types and objects and generics. I guess, the big thing is the ability to make Java programs shorter. That is one reason I love to program in Common Lisp so much: programs can be very terse. I look forward to more terse Java programs. I basically 'live' in Mac OS X, so I need to wait until Apple has a robust JDK 1.5 distribution. That is OK - by that time, most of my customers will probably be fine with deploying JDK 1.5 with Tomcat 5.5 (which is compatible with JDK 1.5). I like stable programing languages, and I hope that Sun freezes the core language now.

Russell gets it right

Usually I don't simply post link to other people's stuff, but this is just too good not to pass on .

Why Open Source will win in the Knowledge Management and Document Management space

I have friends who believe Microsoft's hold on knowledge and document management via proprietary document formats and the mass acceptance of Microsoft Office is unbreakable. I wish to throw out a contrary point of view: First, I believe that the open XML document formats of OpenOffice.org, AbiWord, etc. will make it so much easier for ancillary applications to index documents for search, extract structured information (e.g., Phoenix ), etc. that there will be more pressure from IT professionals to move their companies towards open document formats. For example, in Java applications, it is trivial to extract and manipulate OpenOffice.org documents: open a gzip input stream, feed this through a SAX or DOM parser, use either custom code or XPath to pull required information, etc. Try getting useful information out of Office documents! (If Bill Gates really wanted to support Microsoft customers, he would move the company towards standard documented file formats - not good for Mi