Archive for the 'Technologia' Category

May 21 2008

Craplets

Published by Mark under Programming, Technologia

I don’t read the consumer technology press much (at all), so I hadn’t heard of this excellent term for all the little pieces of junk software one finds on a new computer until my Dad brought it up. This happened while I was in the middle of trying to remove a bunch of them from a new laptop he had purchased for my Mother. I don’t know if Walt Mossberg coined the term, but he certainly gave it more visibility in a column last year. The symptoms which had brought Mom’s shiny new HP unit to my desk included slow boots, and a strange configuration of nested desktop folders. When I first began examining it I found seven or eight entries in the Startup folder, and another fifteen or so under the various flavors of the RUN key in the registry.

What causes slow boots in a Windows machine? In fairly rare circumstances it can be problems with the registry, page file, disk, or a device. Typically, though, it’s software that has to be loaded at startup. When software is set to run from the Startup folder or the registry it is essentially added to the work that the operating system must do before handing control over to the user, because by definition “startup software” must be running before the system can be considered to be fully up and functional. Of course, a large chunk of the software that we find running at boot is nothing like essential to the function of the system. Thus the term “craplets.”

So which were the culprits in the case of Mom’s new luggable? The usual suspects: update notifiers, system tray monitors, context menu handlers, etc. There was Java’s update checker, and Adobe’s update checker, and HP’s update checker, and Quicken’s update checker. I was glad to see the first two of these on the recent ZD.Net UK list of the most annoying software. Update notifiers are among the worst offenders in my book, simply because there’s no good reason for them at all. Yes, people have a vested interest in knowing when new versions of important software are available, which is why Windows Update is a good, if imperfect, mechanism. But the criticality of the need tracks the criticality of the software, and outside of the operating system most of it just doesn’t qualify.

Do I need a separate process running just to check and make sure that there isn’t a new version of Java available? Or the Adobe PDF reader? Of course not. What’s wrong with checking every so often when the software is run? Many applications do just that (Google Earth, for one example), and the system works great. I can’t help but think that many of the software OEMs that dump these craplets onto new machines are in pursuit of some vaguely positive branded relationship with users, but it’s a misguided pursuit. Users have good branding experiences with software when it helps them get something done, not when it interrupts what they are trying to do with useless information.

No responses yet

May 14 2008

SSH Update Breaks NX Server

Published by Mark under Technologia

If you use NoMachine’s very cool NX server to access a linux system remotely, and you installed the open-ssh update for the broken random number generator problem this morning, then you may have run into a situation where the update breaks NX server. The problem is that the local host’s RSA key is stored in a file used by NX Server, and when that key was regenerated it no longer matched.

The NX list of permitted host keys is stored in /usr/NX/home/nx/.ssh/known_hosts (at least it is on debian). You should see two identical entries, one for localhost and one for 127.0.0.1. If your NX Server install is more complicated than mine your mileage may vary. Your shiny new RSA host key is located in /etc/ssh/ssh_host_rsa_key.pub. Replace the key value in known_hosts with the new key value for both entries, and you should be all set.

Note that running /usr/NX/bin/nxserver –update might also fix it, or one of the other commands might. I didn’t experiment beyond trying nxserver –history clear, which did not do it for me.

2 responses so far

Oct 27 2005

Playing with Konfabulator

Published by Mark under Programming, Technologia

There is one area in which the Internet has had an effect perhaps more pronounced than all its other ramifications: software names. From Skype, to Ubuntu, to Greasemonkey, the young developers who currently stand astride computing technology’s leading edge seem to favor the off-the-wall, the punnish, and the pleasingly ethnic. Just which of those categories Konfabulator falls into, I couldn’t say if my life depended on it. That hasn’t kept me from having a lot of fun with it, though.

The best way I can describe Konfabulator is this: it is a shell that runs Javascript, provides a framework of common services that extend the language, and allows scripts to easily do things like display images, read files, connect to COM objects, etc. Konfabulator loads the scripts and runs them. The scripts themselves provide the user interface and the functionality. Konfabulator also parses XML entities and instantiates them as objects, so that the script can access and manipulate their properties. This is how user interface elements are created, among other things. Konfabulator’s creators decided that these bundles of XML and script should be called widgets, and widgets they are. Currently I have six running on my desktop.

Konfabulator started on the Mac, and is hugely popular on that platform. The Mac has always been notable for the slickness of its interface, and the widgets that are available for Konfabulator flaunt that ancestry with striking design, soft colors, transparency, and reflective effects. In other words: they’re pretty. They are also useful. I have one that runs Winamp, another that displays an elegant analog clock, and a third that monitors CPU and memory load. None of them are essential, but they are cool.

No good idea remains unmolested, of course, and Konfabulator now has plenty of competition. Skinning the Frog at Joeuser.com has a nice article comparing some of the different platforms. In addition to Konfabulator and Samurize, probably the two most popular, there is DesktopX, and Object Dock, and now Microsoft and Apple are both adding widgets, or gadgets, or whatever the marketing types decide to call them, to their own shells. Recently, Yahoo purchased Konfabulator, and it may be that, as with browsers, the independent guys will be out of this market in a few years. That would be a shame, but the creators of Konfabulator will always be a part of the history of the applet paradigm.

Konfabulator is very easy to use. You can download the latest version, 2.1.1, here. Once it is installed you will find a folder of widgets that come packaged with the apps. Just open the folder and double-click on a .widget file, and you’re in business. Once you fool around a bit you can visit the Konfabulator Widget Gallery and grab a few more. Most are small, and download in seconds. Once you have a few running on your desktop, hit the F8 key, and experience one of the application’s neatest features: Konspose mode. In Konspose mode all the normal Windows XP desktop elements receed behind a grey fog, and all the widgets pop up to the front. Very slick.

If you would like to write widgets you’ll need a text editor and a paint program in which to create graphics, and of course some knowledge of Javascript and XML will be helpful too. If you don’t have that, then Konfabulator is not a bad environment to learn it in. The reference .PDF docs make the process and syntax pretty clear, and in a lot of ways working with widgets reminds me of programming in BASIC circa 1980: you make a change and run the program and see the results immediately. The whole environment in which the app runs is very simple and makes it a pleasure to explore new capabilities. So now that you know about Konfabulator, you have something better to do than read this website. Go accessorize!

No responses yet

May 16 2005

Greasemonkey and the Definition of Content

Published by Mark under Programming, Technologia

In web design (or more generally: user-interface design) you will often hear the terms “content” and “presentation.” These terms are useful devices for classifying the stuff that shows up on a web page when we browse to a URL, or on an application’s user interface. Content is the stuff you want to see, whether it is a number representing an account balance, or an image representing a funny moment in time. Presentation is the way in which that stuff is… er… presented on the web page. If the account number is shown in boldface Verdana 10pt with a 1px red border around it, or if it is displayed in Courier 12pt bereft of adornment, it is still the same account number. Only the way in which the user views it has changed. This factoring into data, function, and views has roots that stretch well back into the history of human development across many disciplines, including my own: software engineering. In fact, the evolution of “document” structure on the Internet parallels in many webways the evolution of structured, and later object-oriented and component-based, techniques for architecting software systems. Just as early unstructured programming languages tended to result in “spaghetti code” that carelessly interleaved data and the functions that operated on it into a single view, so did early HTML documents tightly weave content and presentation. Many still do, including the one that you are reading now. Continue Reading »

No responses yet