Sunday, October 5, 2008

how long with drivers!

my attempts to make debian work in macbook still goes on and i'm struggling with driver issues one more time. win2k systems i've to deal with during my military service reminded me that drivers are still a problem source even if you're using a commercial system.

first of all, i don't understand how people are convinced to buy their computer from one company and operating system from another. they sell a hardware and their hardware doesn't mean anything without a software developed by another firm. not just PCs, even if when you buy a webcam, you need a computer and a working operating system (and this means 3-4 months for a regular windows user, afterwards system will begin meaningless crashes), maybe then your webcam can serve you if it wants, and if the manufacturer had written a driver for your system.

i think all had went to a wrong direction at one point, probably IBM's move to free PC standards is the breaking point. first of all why devices need to an external operating system to work, why they don't come with their own operating system inside?

unix is a system designed for file management, and today's operating systems are based on this system. first rule in unix is "everything is file". in other words, the ethernet card or the webcam you plugged-in to your computer are no more than simple files for unix. for output you write something to file, and for input you read something from file. and drivers are just translators between system and device in this read-write operations. that is to say, computers are consisting of two concepts: "input-output", "encode-decode". it was so in 1900s and it will be so in 3000s.

but i hope, we won't deal with drivers in 3000s. in year 3000 when i board on a space ship, if the ship asks me driver CD for the device i brought, i can burn that ship.

thanks god, nowadays bell labs are working on plan9 project which will fix the wrong direction turned with unix by thinking everything as a file. the new system takes internet as a model, and this makes me really hopeful about future.

making any device work shouldn't be harder than an adsl modem. after making connections right, it must be enough to open an address in browser to do configuration, and make it work.

consider that we're in a space ship and you want to send a picture of you to your friends at home. there are many smart devices around and they have only two questions in mind: "where i will take input from?" and "where i will send output?". questions about encode-decode are already placed in their mind when they were born or afterwards, as hardware or software. what you need is a webcam, a file server to record taken picture and an e-mail server to send message.

now let's answer to questions of the devices:

in webcam configuration page: when the display is frozen send output in a file format with this settings to this file server, for input use this shortcuts in this keyboard, this shortcut is to freeze display and this shortcut to make it goes on.

in file server configuration page: for input accept the display streams from this webcam, save frozen image to this path and send it to this e-mail server with this settings as output.

in e-mail server configuration page: as input accept data coming from file server, when transfer is complete send message to this e-mail address as output.

if you don't want to save picture, you can prefer not to use a file server. it is enough to change webcam settings to connect it directly to e-mail server.

unfortunately today it's not possible to scale or easily change components of a PC in this way, according to your needs. because our products are useless without a PC. we are in a world where PCs are masters and devices are slaves. we are only allowed to use our devices with limits of our PC. but if IT sector had progressed on devices based on sharing and communication at the beginning, now we would be able to use our devices with their real power without any dependency to the system we're using, or maybe there will be no system at all.

as sayed in sun's mission: "the network is the computer", i hope it will.