...more recent posts
Okay, so I've totally fallen down on posting more often. I really tried to put something together, but I just couldn't get it out. In any case, it's the new year, and as I sort of said, some big changes are coming our way in digital media land. But instead of getting out ahead of these things I'm just going to comment as we go.
Like, for instance, today Google releases the Nexus One. This is Google's own Android smartphone entry. Android, of course, is a smartphone operating system built on top of the linux kernel by google. It's open source and freely available (including the entire network stack) under the very permissive Apache license. What this means is that anyone can use Android as the OS for their own smartphone. And people have, most notably HTC, who really got the space rolling with their G1, and Motorola, with the current champ Droid. But, somewhat confusingly, the name 'Droid' is licensed from Lucasfilm by Verizon, and thus there are also other Droid phones on the Verizon network such as the HTC Droid Eris. So 'Droid' seems to be Verizon's branding for Android, although at this point most people would assume you mean the Motorola Droid if you just said 'Droid'.
In any case, back to the Nexus One. It too - to further complicate the threads - is built by HTC. But the branding is 100% Google. They designed it and outsourced the construction to HTC (much as Microsoft designed the Zune, but it was built by Toshiba.) The top link in this post has probably the best info so far, as Engadget has had a unit for a little over a day. But also Engadget is liveblogging the Google event at CES right now where the device is to presumably be unveiled.
Hardware specs are very impressive but I'll skip the boring details. The real story here is the way the phone is going to be sold. Supposedly Google is going to sell the phone online, unlocked, directly to consumers, for $529. Or, alternately, with a 2 year T-Mobile contract for $179. This puts google in a position of competing directly with their partners (like Motorola) which is something they had previously said they weren't going to do. (Think here about how Microsoft never entered the PC hardware business - they didn't precisely for this reason: they didn't want to compete with their partners like Dell and HP. Google is abruptly taking an alternate route.)
Long blog short: There is a ton of hype and excitement here for a phone that seems to be genuinely well thought out and well built but not really breaking too much new ground, and with a price that would seem to put it well out of the reach of most consumers unless you want to be on the T-Mobile network. From what I've seen I really like this phone, and I welcome competition in this space as being vital to our future, but the Nexus One is merely a competent entry and not a game changer.
P.S. the name Nexus One should be interesting to Blade Runner aficionados.
Fake Steve Jobs at his finest.
Really interesting TED talk from Pranav Mistry, an MIT Media Lab PhD student, about future augmented reality computer interfaces. Great video demonstrations. Worth the 12 minutes.
Please design a logo for me. With pie charts. For free.
Haven't been able to blog recently, although I've made a few failed attempts. It is starting to look like a really interesting time is coming up so I want to keep trying to restart. But there are so many different pieces I haven't been able to put it all together. I'll try here with a series of posts about the "interesting to me" topics without necessarily trying to tie it all together. If you can tie it all together please clue me in because we're in for some real changes in our computer networked world.
I used to think much more clearly, and therefore maybe not as deeply, about the tension between intellectual property (IP) and the digital world. I knew for sure that no digital rights management (DRM) scheme could ultimately work on a general purpose computer, and so all such schemes would prove ineffective and either IP rights enforcement would therefore be impossible, or general purpose computers would have to be prohibited legislatively.
But, to skip right to the end, I now think neither of those two options has or will come to pass. DRM protected digital IP is already somewhat effective (from a rights holder's point of view) in a world of freely available general purpose computers which can, in theory, break the DRM. And even better, for this side of the fence at least, a new computing device is about to emerge that will make things even more secure. It won't be, by my particular definition, a general purpose computer, and it won't be capable of circumventing the controls. This new class of device will exist along side our general purpose computers, and we will buy and use them despite this drawback, because they will do their specific tasks better than our general purpose computers.
To put the central issue in a different way: what used to be a solid line (or even wide gulf) between general purpose computing devices (what we would call "computers") and single purpose computing devices (like a thermostat, or fancy fuel injectors, or a fax machine) is now growing fuzzy. And that's pretty interesting.
Sometimes I read people who say "Wow, it's amazing that we actually have this whole internet thing that is so open - you'd think 'they' would have never let it happen." I think this sometimes myself. But if that sort of reasoning makes sense to you, then what should really seem amazing is not that we got the internet, but that we got the general purpose computer. Denying that is the way to really lock things down. And that is what is happening. Except not by outlawing the general purpose computer, but simply by building something new, something like a "just less than general purpose computer," and making it better than the alternatives. I really didn't forsee this possibility.
This would all be more clear if I could just say what this new device is going to be. But it's not that clear to me yet. In one way it's here already with the iPhone and now Droid. Except I'm not talking about just phones, and they are just one of many beginning. But since I'm looking for a place to pick up the thread for some new blog posts I think that's the place to start. Droid is really important. Or Android is really important and Droid is the first device to show it. (How long has it been since I've said "Way to go Motorolla!" Feels kind of good :-) And the iPhone is probably the most important because it shows where we are going with closed stack systems for interacting with DRM protected digital IP. It's not the iPhone so much as the iPhone + iTunes + iTunes Music store + App store universe. It's really breathtaking what they have built. Probably I sound like what's derisively called a fan boy when I say that. And I guess I am a fan in the sense that I really like some of Apple's products. But I don't say breathtaking here with any of that feeling. I'm genuinely not sure whether to be scared or not. I don't know how it's going to come out, but we've been at an impasse for some time and that is about to break. The future of our commercial mediasphere (which I guess might be a better way of saying "DRM protected digital IP") is about to take shape. My hope is to post a series, starting with the iPhone and Android, and see if writing it out can help me see more clearly.
Nice industry I've worked my way into: Help wanted, full working knowledge of Php, Ruby on Rails, and Java required - $10/hour. In NYC!
If you have an email account on my server I'd be very curious if you've seen any improvement in spam (i.e., if you've seen less spam) over the past 24 hours.
Just spent the entire morning trying to get text inside a custom height input field to vertically align in FireFox. Turns out the answer is to just put top and bottom padding on the input and leave out the height style all together. Only took 4 hours to figure that out. Good times.
It does get easier every time. I'm not sure if that's me getting better or the software getting easier. Probably a little of both. Here's a big chunk of my day yesterday getting CentOS 5.3 with qmailtoaster, apache, mysql, and PHP up and running.
Minimal install (just 'base' - nothing else) CentOS 5.3 i386 (only need CD 1 of 6)
But networking didn't work. To fix:
vi /etc/sysconfig/network-scripts/ifcfg-eth0add:
TYPE=Ethernet
GATEWAY=xx.xx.xx.xx
ifconfig eth0 upand uncomment the
service network restart vi /etc/yum.repos.d/CentOS-Base.repo
#baseurl=
line from [base] [update] [addons] and [extras] sections
Then do:
yum update yum install httpd php mysql-server mysql mysql-devel php-mysql gcc gcc-c++ rpm-build zlib-devel libtool libtool-ltdl-devel libtool-ltdl automake autoconf gdbm-devel expect mrtg pcre-devel bzip2-devel gmp-devel curl-devel libidn-devel(should be all one line of course.)
chkconfig mysqld on chkconfig httpd on(last two lines to get apache and mysql to start automatically on reboot)
shutdown -r now(because yum update updated the kernel and we need to reboot or qmailtoaster will complain)
mysql -urootmysql: use mysql;
mysql: update mysql.user SET Password = 'newrootpassword' where User = 'root';
mysql: delete from user where User = '';
mysql: drop database test;
mysql: exit;
yum remove sendmail(qmailtoaster doesn't want sendmail - I think I could have not included in the initial install but I didn't.)
rpm -Uvh http://qtp.qmailtoaster.com/trac/downloads/1 yum install qmailtoaster-plus qtp-newmodel(say 'y' to all the install toaster options and 'y' to unioned sandbox)
qtp-newmodel is slick, but it doesn't make the vpopmail database, so in mysql do:
mysql: create database vpopmail;
mysql: grant all on vpopmail.* to 'vpopmail'@'localhost' identified by 'passwordhere';
mysql: flush privileges;
Then change the /home/vpopmail/etc/vpopmail.mysql file with whatever you chose for 'passwordhere' above.
The only catch is that the long 'yum install httpd php mysql...' line was originally just those three things, and everything else was added one at a time as I was trying to get qmailtoaster to run (i.e., try to install it; fail; read in the logs what was missing; yum install that one thing; repeat.) So I didn't really install them all at once like that. Still, I don't see why it wouldn't work this way.
And I guess there are probably people out there who would think I'm crazy for running qmail. It's clearly solid and powerful, no one disputes that, but the community seems to have standardized away from it a bit. Some of it had to do with the personality of the original author. But I'm won over by the community. The mailinglist is extremely responsive and helpful. That really means a lot to me. So qmail it is.
Moved my MySQL data directory onto it's own drive last night. Went pretty smoothly with only a couple minutes of down time. For my records, here's what I did. In my case I'm changing it from the stock /var/lib/mysql location to /data/mysql.
Make a copy of MySQL conf file in case anything goes horribly wrong and we need to revert to where we were:
cp /etc/my.cnf /etc/my.cnf.bakEdit my.cnf and in the [mysqld] section change
datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sockto
datadir=/data/mysql socket=/data/mysql/mysql.sockThen in the [mysql.server] section change
basedir=/var/libto
basedir=/dataSave /etc/my.cnf when done. Then do
service mysqld stop rsync -vrplogDtH /var/lib/mysql/ /data/mysql/to stop MySQL (so no data gets lost while we are changing locations) and then rsync to copy all the data to the new location. Then here's where I'm not 100% sure, but after one false start where I couldn't connect to MySQL after starting it up at this point I did it all again adding this step after the rsync:
ln -s /data/mysql/mysql.sock /var/lib/mysql/mysql.sockto create a link in the new data location to the old mysql.sock (which is what a client uses to connect to the database.) Then just:
service mysqld startWorks fine although I'd like to understand better about having to link mysql.sock. I would think this wouldn't be necessary since my.cnf should contain enough info to figure out where the socket is. But maybe other things on the system expect it to be in /var/lib/mysql? I guess that's the case since it seems like you need that link.