Wednesday, August 31, 2005

Free end user privacy and anonymity tools

I've recently become interested in lightening my electronic footprint. In that line, I'll give you a quick list of the programs I've been playing with.

Instant messaging: For real anonymity, you want the gaim-otr Plugin. Adium already has OTR in it. OTR stands for off the record, and offers the highest privacy you could have in an online conversation, including most significantly, deniability - the other person can provide no subsequent proof that you said what you said. That's what I call privacy! A number of *nix distributions provide a package of gaim-otr, so you can just install it, namely Arch, Debian, Fedora, FreeBSD, Gentoo, NetBSD and linuxpackages.net for Slackware. If you didn't know, you can easily check package availability using the whohas tool.
Note that the current version of OTR has a flaw in it, but this will be fixed soon.

Browsing: The typical approach to make browsing untrackable is to use the tor proxy, which is actually an encryption and redirection technology, which allows traffic to be bounced through a series of onion servers, so that traffic appears to come from one of those servers rather than the user. Privoxy is a front-end to the tor client, and provides some further privacy filtering. A good summary and installation instructions for Firefox on Windows (Linux, for one, is very similar) can be found here. You can also use tor as a proxy for other internet services, such as IRC - the article describes how.
I think the fact that tor is an anagram of otr is accidental, but I'm not sure what tor stands for - something onion routing? Tor, again, is available for quite a few *nixes, namely Arch, FreeBSD, NetBSD, OpenBSD and Source Mage Linux, as well as Mac OS X through DarwinPorts.
There was at one point a LiveCD by the name of Privacy Knoppix, and I read somewhere (but can't find it, please let me know!) about a distribution of portable Firefox with Privoxy and tor - incredible amounts of privacy for internet café usage!

Email: Now, this is an old one, and most of you will know that the way to be safe is with Thunderbird, Enigmail and GPG (or gnupg, as packages are sometimes named). You'll find plenty of instructions by googling for those keywords. I could only find packages for enigmail in Debian and FreeBSD - I suspect this may be due to it having another package name; gnupg, however, is ubiquitous.

Thursday, August 25, 2005

What a Tiger wants

Just playing around with my new machine (iMac G5 20 inch, 2GHz) and OS. Here's a list of things you will probably want to install if you're in the same situation:

Adium
Cyberduck
Firefox (with extensions Document Map, AniDisable, Flashblock, textareatools; Enhanced Bookmark Search does not seem stable, unfortunately)
iTunes Monitor
Quicksilver
Skype
X-Chat Aqua

Unix heads will want to get Fink, which I found to be superior to DarwinPorts, but that's just my particular mileage. I also like Audio Recorder.

You'll also want to switch off auto-installing of Dashboard things (security vulnerability! find it in Safari settings), make Firefox your default browser (ironically, this is also done in Safari settings), get rid of the Dashboard icon, (more to follow...)

You may also want to get the following video players:
MPlayer OS X 2
VLC
Windows Media Player

I don't know what the deal is with RealPlayer at the moment - I don't seem to need it...

These not-strictly-necessary-but-currently-more-compliant messengers (Adium actually supports both protocols):
ICQ
Microsoft Messenger

Tuesday, August 09, 2005

Document repositories in an online classroom

This is the kind of thing I keep talking and thinking about:
Claroline (ClassRoom online) is a collaborative learning environment that allows teachers or educational institutions to create and administer courses through the Web. The system provides group management, forums, document repositories, a calendar, chat, assignment areas, links, and user profile administration in a single, highly integrated package. It has been translated into 28 languages.
Emphasis mine. By the sounds of it, version control could really make this particular project into a killer app. I'm sure if you sifted through freshmeat, opensourceCMS, the CMS matrix and OngETC long enough, you'd find something that matches the criteria.

Wednesday, August 03, 2005

Portable devices: lack of consolidation

Even five years ago, things were simple: you had PDAs, you had mobile phones, you had digital cameras and you had mp3 players. Synchronisation, if any, was always with a PC and by USB. Storage media were mostly supposed to stay inside the device. There was no particularly useable or affordable web access outdoors.

Nowadays, you have a head-spinning multitude of removable storage devices; you have various weird and wonderful attempts to unify the PDA and phone, you have camera phones and all intermediates between a PDA and notebook laptop. Everyone wants internet access through mobile networks, and everyone wants to be an mp3 player, even the USB sticks. Not to forget the games consoles that want to be more (anyone remember the Sega handheld games console that doubled as a TV?)

So where's the real innovation, where is the consolidation?

It's easy enough to come up with a concept for an ideal device, and I did so some time ago. But it seems to be incredibly hard for the large tech companies to integrate the technologies into one device in a sensible and user-friendly way. Notable exceptions are gizmondo and the Archos AV. I suspect that the technology companies' lack of confidence in users' abilities is a major part of the problem. Do technology leaders need to look for new methods for developing software that does exactly what the majority of potential users expect?

By the way, I'll probably be up for hire in about a year's time. ;)

The distribution homies

Linux seems to draw a lot of people who want to do specific things, like, say, video editing or bioinformatics. All too often, such groups of people go off and start their own distribution that does only one thing, but does that one thing well. This is a fruitful way to proceed if the issue is porting Linux to new hardware. I myself have been known to propose a dedicated distribution for laptops (and if I were to make the same argument again today, would doubtless include tablet PCs). But making a whole new distribution just because you mostly just need, say, the music editing tools, strikes me as counterproductive. Entrat autopackage, which allows people to define dependency relationships and build instructions in a distribution-independent way - using tools such as this, people could use any standard Debian, Slackware or Fedora base and put their own tools on top, without becoming incompatible with major package repositories.

So if what you're trying to achieve with Linux does not depend crucially on some very specific kernel patching, why not put your own distro aside and contribute to one of the big community-driven Linux projects, like Debian, Fedora or Gentoo?

tags:, , , , , ,

opinion: Firefox and the e-conomy

(This post is a year older than its post date here, so keep that in mind when reading!)

Since starting to use Firefox, my Windows has stopped getting corrupted. IE is now used merely to access windowsupdate.com, and suddenly, I feel safe. Happy to do my online banking. Happy to shop at amazon, buy tickets for transport and entertainment online. In this way, Firefox is indirectly better leveraging the potential of the web economy. Dot com bubble, where art thou?

There is one more step for me to go: from buying real-world goods online to buying virtual goods, online. I imagine that my events magazine could allow me to subscribe, at a small extra cost over what I already pay for the mag, to an online database of movie reviews. Maybe my Linux magazine will do the same. I don't want to subscribe to the mag, because not every issue interests me that much. But not having to keep boxes of old magazines around in case I need some information would be well worth a small investment.

In the same way, I am already paying for internet radio that came bundled with my broadband connection. And happily so. What else is there that I could become convinced is actually useful for me? Who else is going to reassure me that they are not spying on me, merely providing a transparent service that I feel in control of?

Currently, there is a reluctance on the part of the content providers to invest in such web databases, interfaces and new subscription models. After all, not all users may think like me. But they could. And once they start doing so, the web economy will be running smoothly once again. And Firefox is the key.

Original post published on Jan Fri 21st 2005:
http://forums.mozillazine.org/viewtopic.php?t=205381

Edit: What has been missing from the publication model so far is to allow customers to mirror content locally, so that if they unsubscribe from a magazine, they keep their past copies. This is particularly important in scientific publishing, where published articles retain their importance for at least several decades after publication. Unfortunately, this is especially poorly understood in science, and it has been hard for me to communicate the importance of local mirrors to library staff and boards at my institution.

The evolution of the web

What Tim O'Reilly saw many moons ago is now becoming clear even to me. The web is going to take over; the browser will be our window to the world.

In that line, let me revise what I said about tabbing and browsers in a previous post here. What is actually happening is that the tabs are becoming the windows, as the browser increasingly is going to become the window manager. As Bloglines is taking over from desktop news aggregators, other web-based applications (take GroupOffice as an example) will take over from other desktop applications. Web services such as Flickr will take over from local photo management suites. What I said about the browser turning into the operating system was spot on: this will happen. From the perspective of the browser alone, the change is seamless. If you take other applications into account, the migration may be a bit bumpy. I would predict that any desktop environment that smoothly integrated access to web services such as Flickr, Blogs and data storage on Yahoo or simple ftp hosting services, with local applications for file manipulation, such as office and image manipulation software, will do extremely well, even financially.

Curiously, this is what .Mac should have done - I can only guess that its platform dependence made it unattractive, a disadvantage that has been Apple's deliberate bane for a long time.

And hence my post about version control for the desktop, with the link to an article about keeping all your settings in version control on the web.

What Microsoft have never understood...

...is that they have the power to grow or shrink the economy in which they operate. Sell overpriced products, cease to innovate, and you shrink your economy.

This may be why Apple is doing so well. People who use Apple keep getting richer. (No, I have no data for this, let me know if you find some!)

Package lists

All distributions must have package lists that are publicly accessible on the web without downloading iso images.

You must tell your customers what's inside the box - don't expect technically literate people to get interested in your distribution if you don't give them this information. And let's face it, it's the technically literate users you're after, as they're going to be more helpful with bug reports, and are more likely to end up helping with the development of your software!

Tuesday, August 02, 2005

Domain vs. IP: the future of bookmarks

Since several cases have come to my attention recently of domain registration being borked up by a provider, or due to some threat of legal action, as in this case, I will reiterate my suggestion, originally made on May Sat 7th 2005:
http://forums.mozillazine.org/viewtopic.php?p=1463579
of saving IP addresses with bookmarks, in addition to domain names, so that when domain registration is discontinued for some website for some reason, the website can still be reached through its IP address (assuming that this has remained the same).

Necessary for this is some mechanism for the user to indicate that the website he was redirected to by a bookmark was not the one he intended to visit, and hence try the IP instead. I suggested to give the user a button in the status bar, maybe labelled "IP", that shows up when he's used a bookmark. The user can then decide whether the page that showed up is the one he was looking for, and failing that, can press the IP button to get to the IP address of the original server (plus the rest of the URL, i.e. the path on the server and/or parameters for php, perl or other (database) scripts).

This will lead to IP-hogging as a new phenomenon, but we're no worse off than we were before, as long as domain is given precedence over IP.

Complete browser history

A common problem with browsing context is that when you go back one page and forward to a different page, you lose the previous branch of the tree you were on:

1) index.html <- about.html
2) index.html -| [snip] about.html
-> contact.html
I can think of three possible solutions:

1) Weaving: under this rule, the above move would imply a history of
index.html -> about.html -> index.html -> contact.html
Problem 1: with larger jumps, it moves recently accessed pages back quite a bit in the history.
Problem 2: the chain grows forward by quite a bit as you go back and then onto a new branch.

2) A nested history interface, where each accessed url is like a folder, containing any pages that you accessed by following a hyperlink in the former. Typing a url in the top bar puts you back in the "root" directory, as does accessing a bookmark.
Problem: The hierarchies thus created are very deep and are difficult to represent graphically.

3) The banana throw: Only pages not immediately adjacent in the chain get appended to the head of the chain upon being visited.
Problem: the historical context in which pages were visited is not preserved.

The original post was made on
Apr Fri 8th 2005:
http://forums.mozillazine.org/viewtopic.php?p=1373879

A discourse on GUI layers

Over the last few years, we've seen the Mozilla family of browers [1] evolve into feature-rich, usability-oriented browsers, especially with the new concepts of tabs and extensions, the latter allowing, amongst other things, new side pane applications.

This differs markedly from the traditional "one app, one function" mantra of the Unix community, although there are parallels with the history of the editor Emacs, which some say is now an operating system in itself. (Someone is bound to remark that Firefox is not primarily a Unix application, neither one with a strong Unix history, but - read again - I wasn't saying that!)

From a Linux perspective, it may seem like a mistake to embark on including tab functionality within the application rather than contributing to existing window manager projects that allow tabbing. Will the Linux community thus come to suffer from a Windows legacy in Firefox?

Secondly, the idea of side panes can also seem short-sighted under the same considerations. While some side panes provide functionality that is clearly part of the browser, others do not, and other parts of Firefox that could fall under the side pane paradigm are not implemented in that way: for instance, the download window.

A compromise would be to rebuild the framework such that the user could decide whether a given app should run in the sidebar or an external window. However, the main browser window menu does not interact with sidebar content except to determine what should be shown in the sidebar. Hence, the sidebar could always be a separate window that the window manager could be instructed to always place next to the browser. The simplest way to deal with switching between different sidebar views, e.g. history and bookmarks, would be to simply spawn a new window. Hence, different sidebar windows could be shown as tabbed.

I conclude that having "Downloads" as a separate window is a step in the right direction, and that this should be applied to all extensions. The focus must then be on contributing to a window manager that supports the above features. The one I am thinking of is Ion [2]; there may be others with similar features.

The fundamental problem is that there are three layers: virtual desktops, windows and elements within windows (e.g. sidebar vs. main pane), and this affects the generality of Alt+Tab, leaving aside for a moment the question whether we really need three layers anyway.

Multi-window apps like the Gimp (before version 2.0) are difficult to manage in some existing tabbed window managers because there is no one-to-one mapping of processes to windows. In addition to this, it must be possible to identify the function of a process (e.g. download window vs. main window) - I'm not sure what the functionality sysfs provides in this regard. (I should check whether there is one-to-one mapping in KDE, although process names are even less helpful there!)

So let's go back to the question, how do users use the outermost layer, the ability to have several desktops? To (a) group apps by current activity, (b) have less clutter over the desktop (minimising windows has a similar effect, although the effect varies according to how your taskbar is set up, if any) and perhaps originally, to (c) always have one virtual desktop where one actually had access to the files represented on the desktop. Now, compare this to what Exposé can do:
1) group windows by apps (c.f. (a))
2) unclutter windows (c.f. (b))
3) provide a clear view of the desktop (c.f. (c))

So window handling in Mac OS X makes a huge amount of sense, although typically, Mac OS X apps have only a single kind of window, and the use of sidebars is favoured. Note also that Safari includes tabs, so even Mac OS X certainly still deviates from a purist ideal.

[1] Mozilla, Firefox, Epiphany, Galeon, Camino, ...
[2] http://modeemi.cs.tut.fi/~tuomov/ion/intro.html

My original posts on this were made on and after Jul Wed 6th 2005:
http://forums.mozillazine.org/viewtopic.php?p=1585763
http://www.linuxquestions.org/questions/showthread.php?s=&threadid=340583
http://www.linuxforen.de/forums/showthread.php?t=188370 (in German)

tags:, , , , , , ,, , ,,

iArsey

If anybody's looking for a name for their next IRC client, how about iArsey?