GPS receivers with bluetooth are growing in popularity, and it makes sense. I want my digital camera to have bluetooth as well so it can record where each picture is taken.
But as I was drivng from the airport last night, I realized that my cell phone has location awareness in it (for dialing 911 and location aware apps) and my laptop has bluetooth in it, and mapping software if connected to a GPS -- so why couldn't my cell phone be talking to my laptop to give it my location for the mapping software? Or ideed, why won't it tell a digital camera that info as well?
Very technical post here. Among the children of Unix (Linux/BSDs/MacOS) there is a convention that for a program to open a TCP or UDP port from 0 to 1023, it must have superuser permission. The idea is that these ports are privileged, and you don't want just any random program taking control of such a port and pretending to be (or blocking out) a system service like Email or DNS or the web.
This makes sense, but the result is that all programs that provide such services have to start their lives as the all-powerful superuser, which is a security threat of its own. Many programs get superuser powers just so they can open their network port and, and then discard the powers. This is not good security design.
While capability-based-security (where the dispatcher that runs programs gives them capability handles for all the activities they need to do) would be much better, that's not an option here yet.
I propose a simple ability to "chown" ports (ie. give ownership and control like a file) to specific Unix users or groups. For example, if there is a "named" user that manages the DNS name daemon, give ownership of the DNS port (53) to that user. Then a program running as that user could open that port, and nobody else except root (superuser) could do so. You could also open some ports to any user, if you wanted.
Some flat panel displays being made today have modestly thin edges, and people like using them for multi-monitor systems with a desktop that spans one or more monitors.
There are a lot of popular programming languages out there, each popular for being good at a particular thing. The C family languages are fastest and have a giant legacy. Perl is a favoured choice for text manipulations. Today's darling is Ruby, leader of the agile movement. Python is a cleaner, high-level language. PHP aims at the quick web/HTML scripter language and has a simpler access to SQL databases than most. Java's a common choice for large projects, with lots of class libraries, slower than C but faster than interpreted languages.
I've written before about the desire for a new universal dc power standard. Now I want to rethink our systems of household and office power.
These systems range from 100v to 240v, typically at 50 or 60hz. But very little that we plug in these days inherently wants that sort of power. Most of them quickly convert it to something else. DC devices use linear and switched mode power supplies to generate lower voltage DC. Flourescent lights convert to high voltage AC. Incandescent bulbs and heating elements use the voltage directly, but can be designed for any voltage and care little about the frequency. There are a dwindling number of direct 60hz AC motors in use in the home. In the old days clocks counted the cycles but that's very rare now.
On top of that, most of what we plug in uses only modest power. The most commonly plugged in things in my house are small power supplies using a few watts. Most consumer electronics are using in the 50-200w range. A few items, such as power tools, major appliances, cooking appliances, heatters, vacuum cleaners and hairdryers use the full 1000 to 1800 watts a plug can provide.
So with this in mind, how might we redesign household and office power...
On the wall now near desks are plates with power and ethernet (and phone until VoIP takes over.) I've been wondering if we shouldn't add another jack -- air, and plumb our walls with pipes to move air for cooling electronic devices.
This idea started by reading about a guy who attached a plastic vent hose from the output of his PC fan to a hole he cut in his wall. This directs much of the heat and some of the noise into the wall and up to the attic.
I started wondering, shouldn't we deliberately plumb our houses to cool our devices? And even more, our office buildings? And can we put the blowers at the other end of the pipes, to move the noise away from our devices? How much would we save on air conditioning?
At my bank (Wells Fargo) and some others I have checked, the ATM lets you make a deposit with an envelope. You must key in the total amount being deposited, even if you put several cheques in the envelope. This in turn shows up as just one transaction in my statement, and in my download of my transactions to my computer.
Everybody is annoyed at how long it takes computers to boot. Some use hibernate mode to save a copy of the system in a booted state, which is one approach. Booting procedures have also gotten better about running stuff in parallel.
Recently I purchased an external battery for my Thinkpad. The internal batteries were getting weaker, and I also needed something for the 14 hour overseas flights. I picked up a generic one on eBay, a 17 volt battery with about 110 watt-hours, for about $120. It's very small, and only about 1.5 lbs. Very impressive for the money. (When these things first came out they had half the capacity and cost more like $300.)
In recent times, I and my colleagues at the Foresight Nanotech Institute have moved towards discouraging the idea of self-replicating machines as part of molecular nanotech. Eric Drexler, founder of the institute, described these machines in his seminal work "Engines of Creation," while also warning about the major dangers that could result from that approach.
Recently, dining with Ray Kurzweil on the release of his new book The Singularity Is Near : When Humans Transcend Biology, he expressed the concern that the move away from self-replicating assemblers was largely political, and they would still be needed as a defence against malevolent self-replicating nanopathogens.
I understand the cynicism here, because the political case is compelling. Self-replicators are frightening, especially to people who get their introduction to them via fiction like Michael Chrichton's "Prey." But in fact we were frightened of the risks from the start. Self replication is an obvious model to present, both when first thinking about nanomachines, and in showing the parallels between them and living cells, which are of course self-replicating nanomachines.
The movement away from them however, has solid engineering reasons behind it, as well as safety reasons. Life has not always picked the most efficient path to a result, just the one that is sufficient to outcompete the others. In fact, red blood cells are not self-replicating. Instead, the marrow contains the engines that make red blood cells and send them out into the body to do their simple job.
A lot of older computers that people are ready to throw away can be decent linux boxes, in schools or in other charitable locations.
All my sites were off today as I did an emergency switch of servers.
The whole story is amusing, so I'll tell it. I used to host my web sites with Verio shared hosting, but they were overpriced and did some bad censorship acts, so I was itching to leave. One day my internet connection went out, so I went onto my deck with my laptop to see what free wireless there was in the area. One strong one had an e-mail address as the SSID, though it was WEP-locked. Later, I e-mailed that address with a "hi neighbour" and met the guy around the corner. He had set the SSID that way to get just such a mail as mine. (I have a URL as my SSID now for the same purpose.)
My neighbour, it turned out, knew some people I knew in the biz, and told me about a special club he was in, called "Root Club." The first rule of Root Club, he joked, was that you do not talk about root club. Now that I'm out, I can tell the story. Root Club was started as a group of sysadmins who shared a powerful colocated web server, and all shared the root password and sysadmin duties.
Corporate servers have used network storage, ranging from fileservers, to SAN for several years. Now, with USB IDE external drive cases selling for as little as $20, people are using external drives on their PC, and get pretty good response with 400 mbit USB 2 or with 1394/firewire. You can get most of the capacity of a 7200 rpm drive over USB 2.
So I want to call for the production of a cheap home external storage box. This box would have slots for 4 or 5 drives and cooling for them, ideally as big a fan as possible to keep the rpms and noise low in the desk model, and an even more powerful fan in the basement model. The desk model might have sound insulation though that's hard to combine with good cooling.
While this box could and probably should have USB or 1394, even better would be gigabit ethernet, which is fast enough for most people's storage needs, especially if there is a dedicated gigabit ethernet card in the PC just for talking to the storage.
This could allow for a radical redesign of PC cases of all types, with no need for the space and heat of drives. And of course these diskless PCs would be much quieter. You could put your disk cube under your desk (and thus have it be a bit quieter) but ideally you would like the basement model, to which you string cat5e cable and get a mostly silent PC.
On both a personal and professional note, I am happy to report that the federal courts have unanimously ruled to strike down the FCC's broadcast flag (that's a PDF) due to our lawsuit against them.
Dear [[blog-reader's name]]:
When it first started arising, in the 60s and 70s, everybody thought it was so cute and clever that computers could call us by name. Some programs even started by asking for your name, only to print "Hi, Bob!" to seem friendly in some way.
And of course a million companies were sold mailing list management tools to print form letters, filling in the name of the recipient and other attributes in varous places to make the letter seem personal. And again, it was cute in its way.
Linux distributions with package managers like apt, promise an easy world of installing lots of great software. But they've fallen down in one respect here. There are thousands of packages for the major distributions (I run 3 of them, debian, Fedora Core and Gentoo) but most packages depend on several other packages.
In writing an essay I'm working on about why hard disk video recorders are as novel as they are, I explored a concept I think is worthy of its own blog entry. This is the concept of Telepathic User Interface or TUI.
A TUI is a user interface that you use so much that it becomes unconscious. Perhaps the classic TUI is touch typewriter keyboard. I just think letters and they simply come out. I am no longer consious of the mechanism. In many cases I think sets of letters and even words and they just come out. From the mind to the computer -- telepathic.