Category Archives: software

SQLite will be everywhere

One of the core components in Google’s new Gears API is SQLite, an open source database engine. I’ve been an enthusiast for SQLite for a while now – I first blogged about it in 2003. I’ve also worked a little on SQLIte wrappers for Java and Delphi.

It’s a superb embedded database engine and I’m pleased but not surprised to see it now picked up by Google. It’s part of PHP 5.x, and also used by Apple for Core Data and Spotlight search in OS X. Now it is part of Gears and I imagine will be widely deployed. Google is also apparently contributing to the project – Full Text Search has been mentioned here at Developer Day – though I’ve not yet looked at this in detail. Congratulations to the primary author D. Richard Hipp, truly a star of the open source world, and thanks to him for making SQLite “completely free and unencumbered by copyright“.

 

My question to Google

I grabbed the first question after the opening keynote today. It was prompted by my visit to the Google Gears site – I’d intended to install the beta. I was confronted with this dialog:

I asked:

Why does Google display an 8-page agreement in a box 7 lines high?

More significantly, why does it include this clause which strikes me as unreasonable:

12. Software updates
12.1 The Software which you use may automatically download and install updates from time to time from Google. These updates are designed to improve, enhance and further develop the Services and may take the form of bug fixes, enhanced functions, new software modules and completely new versions. You agree to receive such updates (and permit Google to deliver these to you) as part of your use of the Services.

Of course I’ll have to install Gears; I can’t do my job otherwise. But I’m inclined to do so in a virtual machine, because I prefer to keep control of what gets installed.

There’s plenty more in the agreement that you might object to- have a read and see.

It all sits uncomfortably with the stuff we’ve heard about how much Google loves open source, Creative Commons licenses and so on.

My question wasn’t answered, but Chris DiBona invited me to email him with the question, which I’ve done, referencing this post.

Technorati tags: , ,

Not convinced by LINA

Set for public release next month, LINA is a new approach to cross-platform development. Write your app once, for Linux, then deploy using a lightweight virtual machine, implemented for Windows, Mac and Linux. Why even Linux on Linux? Well, on Linux compatibility is a problem, with a multitude of different distributions out there. A VM provides a secure, reliable and predictable environment for your app. LINA’s creators claim to have solved the obvious problems: access to resources in the host operating system, and matching the look and feel which the user is expecting.

I’ll look it with interest when it appears next month, but I’m sceptical. It strikes me as a heavyweight approach, and I’d like to see the extent to which LINA blends with the host O/S before believing all the claims. Some of the publicity annoys me too. Here’s a quote from the white paper:

All computer users – individuals and organizations alike – make the most fundamental software decision when they choose an operating system. Historically, this choice locks the user into a single, clearly-demarcated realm of available software. As a result, Windows and Mac users have virtually no  access to the vast world of Open Source software.

I do most of my work on Windows Vista, so apparently I have “virtually no access” to open source software. Yet happily installed on the Vista box in front of me is:

  • Open Office
  • FireFox
  • Filezilla
  • Apache web server (installed with Delphi for PHP)
  • Tortoise SVN (Subversion client)
  • 7-Zip file archiver
  • Audacity sound editor
  • Ethereal Network Protocol Analyzer
  • NetBeans Java IDE
  • Eclipse Java IDE

and I’m sure there is more if I spend time looking. All open source, mostly cross-platform. Some of this is on the techie side; but the first two above are true mainstream apps.

Writing cross-platform apps is still a challenge, but easier than was the case a few years back, with numerous viable approaches available. So do we really need LINA?

 

Offline blog authoring with Adobe Contribute

I generally use Microsoft’s Windows Live Writer to write my blog entries. It has a few annoyances, but I like it better than trying to type directly into WordPress. After installing Adobe’s Creative Suite 3 I noticed a new Contribute toolbar appearing in my web browser, including a Post to Blog button, reminding me that blog authoring is a feature of the new suite and that I ought to try it out. I opened Contribute and set up a connection to this blog; in fact, I’m writing this post in Contribute now.

As you would expect, Adobe has provided a sophisticated tool. Contribute sets up a template that lets you edit a blog entry within an editable area on a page that replicates the blog itself. It is more WYSIWYG than Live Writer. The editing tools are impressive too: along with basic HTML formatting, there is an Insert menu offering Flash, Video and PDF, a spell checker, a table editor, and an image editor with options to rotate, crop, sharpen, set brightness and adjust contrast. Inserting Technorati tags is easy, as is selecting categories from those I’ve defined.

Any complaints? Well, I miss the clean, uncluttered appearance of Live Writer. It feels a touch over-engineered. And if you want to inspect or edit the HTML code, you have to open the blog entry in Dreamweaver, which isn’t a great experience because you get the template as well as the blog entry.

It may sound strange, but Contribute does more than I need. I might use it for authoring WordPress pages, as opposed to blog entries, but otherwise I’m likely to stick with Live Writer. Unless Word 2007 can tempt me away; mini-review coming shortly.

,,,,,

Microsoft: .doc and .xls are dangerous

A common phenomenon in the tech world is when vendors trash their own past products in an effort to convince you of the value of shiny new ones.

Here is an example. Microsoft’s security advisory 937696 and the related KB 935865 tells us of the dangers posed by Office binary formats including .doc, .xls and .ppt:

MOICE uses the 2007 Microsoft Office system converters to convert the Office binary format files into the Office Open XML format. This process helps remove the potential threat that may exist if the document is opened in the binary format. Additionally, MOICE converts incoming files in an isolated environment. This helps protect the computer from a potential threat.

What’s MOICE? It’s the Microsoft Office Isolated Conversion Environment, proving that even after Silverlight, the department of verbose and meaningless names is alive and well in Redmond. It is an add-on to Office 2003 or 2007 that automatically converts Office binary formats to Office Open XML (OOXML). Further, administrators can now choose to implement File Block, which prevents users from opening specified binary document types without first converting them.

The presumption here is that OOXML documents are safer. Probably true, especially since documents containing macros now require a different extension (.docm, .xlm) to flag the fact that they contain macros.

A side effect is that MOICE spreads the adoption of OOXML. Like Joe Wilcox, I can’t help wondering whether it was this, rather than security, which has prompted this release.

OOXML has real advantages, yet it can also be tiresome. Users install Office 2007, email a Word document to someone, then get a perplexed reply saying that the document won’t open. I’ve been known to show people how to set the default back to the old binary formats to avoid this problem – I would love to know how many Office 2007 rollouts do this as a matter of course.

After all, it is late in the day for Microsoft to consider blocking these formats. The Sophos web site has a Top Ten Viruses page with a neat feature: you can see stats for the last 10 years. These confirm my hunch. Back in 1999, there were 9 office macro viruses in the top 10 (Sophos prefixes these with WM or XM). Today? None. Further, note that the top 10, according to Sophos, account for 94.6% of all viruses in the wild.

The reason is that in the intervening years Microsoft has built reasonably good macro protection into Office. A factor here is that emailed documents rarely need to contain macros, so if you double-click an attachment and it wants to run a macro, that’s a big clue that something is awry.

That said, there is clearly still some risk from macro viruses, or from documents with crafted corruptions that infect a PC. Recently, Open Office has also been shown to be vulnerable. So MOICE has a value, but is it enough to compensate for the cost in terms of inconvenience? After all, while Office binary formats are almost universally readable, that’s not the case for OOXML. If you run Windows, and have Office 2000 or higher, and broadband Internet, and sufficient rights to install the converter, then the process is reasonably smooth; but that is a long way from universal.

MOICE strikes me as low priority in security terms, but nevertheless an intriguing development in the battle for XML office format adoption.

 

Adobe CS3 won’t install

Users are complaining that Adobe Creative Suite 3 simply won’t install. I’m one of them, running 32-bit Vista Professional. Pop the DVD in, click Install CS3 Web Premium, setup starts running, then silently closes. No error message, no install either.

Of course I have tried a few things. I’m not the only one struggling: the Adobe user forums are full of similar problems. Note: similar but not identical. There appear to be multiple issues, and not just on Vista but on XP as well. Here are some popular solutions:

I’ve tried the first two without success so far, on two different machines. Next stop tech support.

It looks to me as if Adobe is having Windows Installer issues. Perhaps nobody had time to read and observe the Tao of the Windows Installer. Still, I reckon Adobe could do a better job with the error logging and reporting. There are installer logs by default in \Program Files\Common Files\Adobe\Installers\, but mine have nothing helpful; no errors are reported. The Windows installer supports a detailed logging mode, but it seems difficult to enable with this particular installer. The calls to the installer itself are wrapped by some kind of Adobe package manager, and the .msi files are designed to prevent you from opening them directly.

Here’s what I get if I run setup from a command prompt:

Begin Adobe Setup
UI mode: Full GUI
End Adobe Setup. Exit code: 4

Hardly illuminating. If I do the silent mode, I get Exit code: 7 instead.

The bottom line is that I have no clue what is going wrong. Perhaps it is a campaign to promote the Mac version. I’ll keep you posted.

Update

I fixed it. First, the logging was more helpful than I realised at first. In the Installers folder mentioned above, there is a file called:

Add or Remove Adobe Creative Suite 3 Web Premium 1.0.log.gz

I’d not looked at this because I also had a file called:

Adobe Creative Suite 3 Web Premium 1.0.log

It turns out that the former is more useful than the latter. Of course it is compressed in .gz format, which Vista does not understand, but the open source 7-zip archiver takes care of that. So I extracted the log and found this entry:

DEBUG: Error 2739: Could not access JavaScript runtime for custom action Internal Error 2739.

That gave me something to troubleshoot. I soon found this article which says to re-register JScript:

regsvr32 jscript.dll

from an administrator command prompt. I was away; the setup ran fine after that.

Incidentally I did call tech support, but the techie didn’t help directly; he asked me to email the log though, and it was looking at that which gave me the answer. Now I can get on with the review…

Technorati tags: , , , ,

Microsoft has “no plans to litigate”

According to Bill Hilf, general manager of platform strategy, Microsoft is not planning to litigate against open source after all. In an interview for Infoworld he says:

Our strategy from everyone in the company — from [Steve] Ballmer to Brad Smith to me and everyone in between — has always been to license and not litigate as it relates to our intellectual property. So we have no plans to litigate. You can never say we’ll never do anything in the future, but that’s not our strategy.

I am not surprised – for the reasons I stated earlier. Of course, the other side of the coin is that if Microsoft doesn’t intend to enforce its patents, then all this patent waving is little more than bluster. It is shadow-boxing. We will see plenty more of it on both sides.

 

Technorati tags: , ,

Open Office chokes on Open XML spec

I’ve been looking at the notoriously lengthy specification for ECMA-376, also known as Office Open XML. You can download it here in both PDF and Open XML (.docx) format. I grabbed both.

At 5219 pages the Markup Language Reference is a seriously large document. The PDF is about 34MB, and the docx about 14MB. I started with the PDF, which opens easily enough, but is desperately slow to search, prompting me to try the alternate docx version. This dialog amused me:

There are too many spelling or grammatical errors in Office Open XML Part 4 - Markup Language Reference_final.docx to continue displaying them.

The docx took longer to load than the PDF, but searching is indeed quicker. Frankly it’s impressive that it is usable at all. I was trained to avoid long documents, on the grounds that they are prone to corruption, and that if they do corrupt you lose more work. That was when we thought 100 pages was long. I cannot think of any good reason why this document is not broken into smaller pieces

Still, it makes an interesting test case. I wondered how Open Office would cope with a document this size. I saved it as a .doc – 68MB – and loaded it into Open Office 2.1. This took several hours (I left it overnight). Once loaded, Open Office repaginated the document to 7453 pages. Searching it was pretty quick though, if anything faster than Word. Finally I saved it in Open Document format. 15MB. Note that both Open Document and Open XML are zipped formats, which explains their smaller size.

Open Office takes 31 minutes to load the Open Document version – quicker than loading the .doc, but not tolerable for normal work. By contrast, Word 2007 can load the .docx to a usable state in around 5 minutes. It all suggests that Word 2007 and/or Open XML is superior for very long documents. I’m using Vista by the way, with 3GB RAM.

What about the content? So far I’m impressed. The entries I’ve looked at have been clear,to the point, and include example code. No doubt there are dark corners, but this strikes me as a good effort.

 

Technorati tags: , , , , ,

Microsoft vs Open Source: only one loser

Microsoft, of course. Fortune reports that Microsoft will seek to extract royalties from users of open-source software. That would be monumental folly. Here’s why.

First, the company already has an image problem. It’s the “Evil Empire”, the vendor we love to hate. Litigating against free software would be appalling PR.

Second, let’s consider who would lose out if Microsoft succeeded in making widely used open source operating systems or applications illegal. Clearly, it would be the users of that software. But these users are in many cases also Microsoft’s customers. Windows on the desktop, Linux and Apache on the server, for example. Anyone who uses the internet uses open source software. If Microsoft litigates against open source, it will be litigating against its own customers.

Third, Microsoft won’t succeed. I don’t find it difficult to believe that:

…FOSS infringes on no fewer than 235 Microsoft patents.

as Fortune reports. But what if big patent holders like IBM decide to trawl their files looking for ways in which Windows or Office might infringe a patent or two? I’d be astonished if they came back empty-handed. This is not a game that Microsoft can win.

Fourth, the free and open source software movement is good for all of us. It’s lowered prices and fostered innovation. That’s a problem for a company that decides to attack it, because everyone will want it to fail.

Fifth, Microsoft has a dismal record in the courtroom.

Sixth, major legal confrontations are a huge distraction. They drain productivity. They divert energy and attention away from what the company is good at.

If Fortune is to be believed, Microsoft has been listening too much to its lawyers, and not enough to its customers.

Microsoft can thrive alongside open source. The way to do so is to create great software like Silverlight. Not by embarking on unwinnable legal contests.

Despite the above, I can understand (though not approve) that Microsoft may wish to mutter about its patents now and again, to spread a little FUD and dissuade customers from a switch to Linux. This may be no more than that. Otherwise, it is making a costly mistake.

 

Technorati tags: , , , , ,

Why you should keep UAC enabled on Vista

Ian Griffiths has a nice post on why you should not disable UAC, even if you are are a developer.

I’ve followed that advice and it works for me, though there are still one or two apps where I have to Run As Administrator.

That does not include Visual Studio 2005. Despite the warning which it issues, I find it works for me without it (I realise there are scenarios where this won’t be the case).

The intriguing thing is that (as Griffiths notes) even Microsoft is not solidly behind UAC. I’ve commented on this before.

Since there is still a myth that running Vista with UAC enabled results in an avalanche of intrusive dialogs, it’s worth popping up from time to time to say that it is not so.

Windows security affects all of us, even if you do not like Windows or use it. UAC (and IE7’s protected mode, which depends on it) is a step forward and worth supporting.

 

Technorati tags: , ,