2010: The year of music

No comments:
For me, the new music landscape has been all but barren for many years. KROQ was my radio station from middle-school on (and actually KTWV - The Wave - was my station in elementary school. I still have a fondness for New Age to this day. A lot of it is insipid crap, but Vangelis? Ray Lynch? Mike Oldfield? all of them pure genius). KCRW resuscitated my interest in new bands around 2005, and ushered in a flurry of wonderful bands: from Sigur Ros to the Yeah Yeah Yeahs to Jesca Hoop, it was a wonderful thing. But that impact slowly faded away to another wasteland.

Hunting My DressAnd once again, in 2010, I've been lucky enough to get a second musical rennaissance. Jesca Hoop released her second album this year, and it was far better than I had any right to expect. "Murder of Birds" is in the top 5 tracks of all time. If I had written this 2 months ago, that would have been the major highlight. We'll get to that.

ActorSt. Vincent released an amazing album late last year, Actor, which I didn't discover until this summer - coincidentally on the same day Annie Clark was playing a show in San Diego (which I went to). Ironically the song that set me off was "Laughing with a Mouth of Blood" and it wasn't the strongest on the album, not by half. Annie is a brilliant songwriter with a wonderful ear for texture and contrast. Her first album, Marry Me, is just as good.

The Way OutThe real highlight of the year didn't happen until late in the year. In November, I think, The Books played a live set at KCRW. I thought "interesting, but no big deal". But then I heard their newest album, The Way Out, in it's entirety and instantly fell in love and planned to buy 10 copies to give to friends. I don't think I've felt this strongly about an album, ever.

The album is pure genius from beginning to end, with a lush, intelligent, unique sound. If Annie Clark is perfecting her linear contrast (it's most obvious on the track "Your Lips Are Red" on Actor), The Books have perfected the profound/absurd contrast simultaneously. By sampling esoteric self-help tapes and dubbing them in absurd ways, but playing this over an enormously complex, textured and agonizingly detailed and beautiful arrangement it's like The Books are consuming the swirl of modern day information, and responding with wordless insight, biting humor, and hope. More than any other band in existence, I feel like The Books are "my band".

Have One on MeIf this was "The Year of The Books", then along with St Vincent and Jesca Hoop there were two other really good albums released this year. Both artists have been around a few years but both are new to me. Joanna Newson's "Have One On Me" reminds me a lot of Kate Bush and JRR Tolkien. Kate because of the emotionality, visuals, and complex musicality, Tolkien because of the focus on the natural world. Even if she mostly sings of love, this is love on a farm, or in the mountains. She sings of the wind and the rain, and it's lovely. Particularly the track "In California".

This Is HappeningOn the lighter side was a wonderful release by LCD Soundsystem, "This is Happening" containing my favorite dance track in a long time, "I Can Change". Just try listening to that track without moving some part of your body. And of course the single "Drunk Girls" is hilarious (check out the video - it's insane & quite funny).

Oh, a few last things. I finally picked up my own copy of Joni Mitchell's "Ladies of the Canyon". It's still as good as when my parents used to play it, and it stands up really well to the test of time, too. Also, Arcade Fire did a decent job with their 2010 release, "The Suburbs". In all honesty I find Arcade Fire to be a bit mediocre, a bit boring, but nothing really objectionable. The New Pornographers released an album ("Together") that I was into for a while, but then realized that all those deep lyrics were really just free association nonsense and rapidly lost interest. Really good music, though. (I wish whoever writes the lyrics for them would get their shit together (or adopt The Books' method of overdubbing stuff that is obviously nonsense). The track "We End Up Together" should be a rousing anthem, but instead it's just nonsense. I felt betrayed when I realized I'd been duped!)

Quantum mysticism and other syrupy nostrums

No comments:
"History abounds with religious enthusiasts who have read spiritual portent into the arrangement of the planets, the vacuum of space, electromagnetic waves and the big bang. But no scientific discovery has proved so ripe for spiritual projection as the theories of quantum physics, replete with their quixotic qualities of uncertainty, simultaneity and parallelism. [What the Bleep do we Know] abandons itself entirely to the ecstasies of quantum mysticism, finding in this aleatory description of nature the key to spiritual transformation. As one of the film's characters gushes early in the proceedings, “The moment we acknowledge the quantum self, we say that somebody has become enlightened." A moment in which "the mathematical formalisms of quantum mechanics [...] are stripped of all empirical content and reduced to a set of syrupy nostrums""

-Margaret Wertheim

(Margaret: thank you, thank you, thank you.)

How to install ICU on OSX

11 comments:
The readme makes this very difficult to suss out. Here you go:

Installed ICU (International Components for Unicode) by hand on my Mac. The readme is incredibly obtuse. Hopefully this will save you pain. Here are the instructions:


tar xzvf icu4c-4_4_2-src.tgz
cd icu/source
chmod +x runConfigureICU configure install-sh
./runConfigureICU MacOSX
make
sudo make install

A smorgaspost

No comments:
I haven't posted in a while (and I see that when I did I was in rather a bad mood; poor GRRM!) and there's a lot to talk about:
  • Geeking out with Clojure, a functional language.
  • Geeking out with Legos. More about that later.
  • Geeking out with Plants Vs. Zombies.
  • Geeking out with Java: OSX, Eclipse, and Google App Engine.
  • Geeking out: issues with Linode
  • Geeking out: making a decision about PHP and WordPress
Clojure is neat, but it's so general that it's hard to get your brain around the fact that, really, you can do whatever you want with it. The number of patterns in Lisp/Clojure are immense - even more in Clojure because it's a dynamic functional language. The two things I want to write in clojure are: a completely dynamic webapp framework, which basically starts off life as a network aware REPL and kinda "grows" from there. When you install it, you "regrow" the system. Your apps "grow" too. Of course this should run on App Engine and *never* have to be redeployed. The other thing I really want to write is a GUI app that takes a two dimensional bitmap and interprets it in arbitrary ways: strings, numbers, etc. I'd like to "grow" that into a full-fledged text editor. The community is really great, btw. And I like that the logo is at once geeky and hippy (that's a lambda in there, baby!)

Legos somehow I got the itch to buy some of their Star Wars kits. I used to love building things with Legos as a kid - specifically spaceships. I would build them and then throw them in the air (I loved the wind rushing past their "hulls") and then when they hit the ground I'd not touch anything, observing carefully what had happened. Depending on my mood I would either do minimal repair, or I'd try to make it even stronger. A fun game. But these newfangled kits are nothing like that: the X-Wing was ~350 pieces and there were maybe 40 "normal" Legos in there. Maybe. The other 310 were customized, you'll-never-figure-out-how-to-use-this-in-anything-else sorts of pieces. The AT-AT was 1200 pieces, and the ratio was about the same (although, in fairness the AT AT was a motorized beast that required some custom bricks.) It's hard for me not to draw a parallel between this sorry state of affairs and computer science: it's become cliche to treat "Legos" as some sort of monicker for standardized interchangability. What irony that Legos are no longer standard or interchangable. And this is probably for two very simple reasons: the models look better with more custom bricks, and you're more likely to buy more Legos if you aren't tempted to "roll your own". As I was building the models I kept thinking "why did they make that brick? They could have used these other two together..." which is something I also think about when building software. Weird.

Plants Vs Zombies is the clear "runner up" in the "great casual game wars of 2010" (the winner being Angry Birds, of course). PvZ is a really good take on the tower game genre. I think I saw it for the first time on a demo PC at Costco. Anyway, apart from needing some more balancing (Gloom Shroom is WAY overpowered) it's a great game. It's also an interesting exploration of the interdependency of a team - each individual contributes different things during the game (and different things during different phases of the game), and it would be foolish for one plant to claim that they are better than any other plant. For sure, there are some plants which are more valuable, in that they would be more expensive to replace. It's hard not to draw the parallels to building a business, a team, and seeing that team change and grow.

Java is still my mainstay (and increasingly Google App Engine) and ironically all this work with Clojure has made me, if anything, even more fond of the old beater language/environment/coffee that is Java. To that end I actually spruced up my environment (OSX and Eclipse) a bit. For Eclipse mainly consisted of updating the OSX developer library (for javadocs and JDK source), adding TLD files to my GAE projects (without them the JSP editor complains when you use JSTL). While I was at it I reinstalled macports (which had somehow got corrupt) and spruced up my .bash_profile to fix my prompt and ls defaults. I also installed ForkLift - which is a nice Finder (and CyberDuck) replacement, and a Clojure plugin for Eclipse (which is shockingly stable). This all fits in nicely with my newfangled "Workspace" philosophy, which I may write about later.

Linode has annoyed me. They deleted my images when the CC I had on file failed. This upsets me, but not as much as you'd expect: I didn't have anything too heavy running on the host. I'm not even sure if I want a VPS anymore. On one hand, it's nice to have a persistent host with a stable IP address completely under your control somewhere in the universe. There's just so many things you can do with it (not the least of which is to install the Dropbox daemon so that you have an offsite backup not controlled by Dropbox). But Linux sysadmin is not my forte or interest, those stable IP addresses are like honey to hackers. I'm not sure if I'm going to reup or if I'm just going to settle for the much-less-general-but-super-easy-to-administer Google App Engine. The bottom line is that, unless you're a control freak, you don't need your own host for even the most involved websites - so why bother?

Making a decision about PHP and WordPress. I've pretty much made a decision to avoid this technology stack. It's a justifiably popular solution for lightweight CMS that most websites need. This isn't to say that there's anything wrong with it, per se, it's just that there is only so much I want to learn. I actually really admire PHP's directness and the fact that it's purpose-built. And Wordpress has a pretty amazing bang-for-the-buck ratio, especially when you take into consideration available templates. I guess I just don't like munging HTML on the server anymore. If you want to munge HTML, do it on the client, with JavaScript, the way God intended. The server should really be just a dumb, RESTful data store used by the DOM to populate itself. (Interestingly it is theoretically possible to write a WP template that does things this way...tempting!)

Speaking of Google App Engine - what a great product. Dealing with some Linode drama I have come to realize the costs and benefits of running your own host, and what a great job the GAE team has done making deploying and managing your apps as easy as can be. They have lots of nice touches, like the ability to deploy in-active versions for testing, and full text search on logs - all through the web. This is all stuff that you can do with linux/apache/tomcat but it takes a lot of work to setup and maintain. Kudos to GAE.

Knowing and No'ing

1 comment:

The delicate art of saying "no" to people when they are looking for technical help, especially at parties.

The thing is, I'm pretty smart. I'm no Einstein but I can hold my own when it comes to math, science, computers and most nerdy things. I have a physics BS from a not-too-shabby school (UC Irvine) and I've been using computers since the Apple IIe first came out. (That's like, 25 years).

It's pretty cool to know all the stuff I know. It's useful. I can Do Stuff.
The thing that gets me down, though, is that when people realize how much I know, then they want my help. Usually they want my help fixing their computer. Now, this is something I used to do 15 years ago. But it is unreasonable for a conversation to turn, as if on a dime, from something fun that we are both enjoying to what basically boils down to getting grilled on all manner of technical matters.

Generally, I like helping people, and I like explaining how things work. But not all the time, and not on demand, and certainly not in the kind of detail that people seem to want, and not at a social event.

One bitter irony is that even if I suck it up and try to answer the question, whatever information I give them will soon be forgotten, and their problem won't actually be fixed. The bottom line is that they are not getting the help that they need, nor am I getting to enjoy myself.

This is something I don't understand. Upon finding out that someone is a hairdresser, do you start asking them for advice about your hair? Or if a person is a lawyer, for advice on a case you're involved in? Or a doctor about your ailments? Why is it then so acceptable, in a social situation, to start asking a programmer about computers?

The bottom line is that it isn't acceptable. If you really want my help with something, you can hire me to fix your problem, and it will get fixed (assuming it's in scope of what I do, which is custom software, not computer repair). I'll even be happy to explain what I did, why, and the technologies behind the solution, much like a good doctor would. But what I will not do is talk about work at a social event to satisfy idle curiosity.

There are two exceptions to this: first, if you are yourself an experienced geek wanting to debate  some esoteric idea, and if I'm in the mood for the discussion, great. Second, if you are not a geek but want to debate about either the philosophy or politics of technology, then that's cool, too. But I do not want to discuss why you can't sign into your AOL account or how your Dell laptop has gotten slower over time and do you have a virus and how do you clean it off and will it require a reformat of the hard-drive.

Publishing an ebook on Amazon - 2010 edition

No comments:
A friend asked me to publish an ebook for him. I agreed.

In initial Google search turned up a lot of (expensive, in terms of wasted time) dead-ends:
  1. Askville - where Steve Weber (who writes books and a blog on self-publishing) tells you you need an ISBN block, a mobi-pocket account, and the mobi-pocket software. circa 2006? NO LONGER ACCURATE
  2. Fonerbooks - where someone very nicely lays out the ISBN landscape, and how to deal with the Bowker monopoly, and the connection to "Books in Print". crica 2005 (but apparently still valid). Bowker reminds me strongly of ARIN!
  3. LighteningSource - which is really a dead-end for me because I don't want print-on-demand.
Could it really be this hard to self-publish?! Not too terribly surprised, but a little disappointed, I set to work following the steps described in #1. Block of 10 ISBNs, $250, check. I dutifully downloaded the (Windows-only) mobi-pocket creator - which looks like it hasn't been touched since Windows 95 was hot stuff.

The manuscript was in a combination of (custom) InDesign and EPS - which I (imperfectly, I'm sure) converted to PDF. I dutifully added some meta data, generated the file, and then tried to publish via the Creator interface. I waited expectantly...

...to find out that mobi-pocket accounts are deprecated, and the entire process has been stream-lined and simplified.

It's called the Amazon Digital Text Platform and you don't need an ISBN (it's optional), you don't need to download conversion software, and you can use your existing Amazon user account. (Granted you have to add some data, like your Social Security number and a mailing address for royalty checks, but still...)

I had to fill out some metadata again, but it only took about 15 minutes to setup the account and upload the PDF of the manuscript. Amazon now says that the book is "in review" and theoretically you'll be able to buy it on Kindle any time now.

[Update: the book is published]

An Application Programmers Appeal

No comments:
My fellow application programmers,

Have you ever noticed how sometimes you learn on the run, slapping together code from working examples, and other times you take your time, really study the technology, savoring it and understanding its complexity? Have you noticed that there are some things which are far more amenable to one than to the other?

What if all learning starts out as "on the run" learning? You pull something into a project to make your life easier, to abstract away something that you don't want to do. You don't want to become an expert. If you can adapt an example its a good sign: you are playing to the libraries strengths, and don't really need to learn much about it for it to be useful. JodaTime might be a good example, or any of the Apache Commons.

Sometimes you pull something in and it works, but it leaves you feeling a little uncomfortable. There's just too much about it that you don't understand. It's a nagging itch that you want to scratch: what exactly is going on in there? Personally, I had this feeling with log4j - a deceptively simple little library with a surprising amount of depth. (And actually I'm still not entirely clear how commons logging, java.util.logging, and log4j all mesh together, even though I'm pretty sure we're talking about like 20 small classes).

Over time there are these "idea" technologies which just don't make sense unless you know the idea behind them. Spring is perhaps the best example of this. Learning the control flow of a Spring app without prior knowledge would be like learning French from a French dictionary. It seems like there are lots of idea tools out there, and more every day. Most of them are NOT amenable to quick uptake.

It would seem like most library authors would enjoy having you become an expert in their library, to become passionate about it, to understand it's delicate intricacies - especially the idea-driven tools. But often this just doesn't happen. Why not? Because when it does it is by persistent necessity rather than inclination. Consider Spring: people learn it because they use it for project after project. It is a persistent feature of the application landscape. It pays to learn it, and to learn it very well. But Sax? Or Java IO? Or Swing? You might need it occasionally, but there's no reason to dig in. Ignoring these libraries is a smart play.

The technology that seems to do the best are those rare gems which are both easy to adopt when you're in a hurry, which are broadly useful across a lot of projects, and which reward the student as they get deeper into it.

These observations drive a few conclusions. First, for an application programmer, be kind to yourself and recognize when you're running and gunning, and when you're taking your time to savor the moment. We will always experience a combination of both modes, and neither mode is better than the other, so don't berate yourself for not taking the time to learn that library better or using it to it's full potential. You didn't have time, and 99% of the other users didn't have time either. Second, for the library author, recognize and embrace those two modes because they are both important. Too often you make it difficult for us to use your libraries, expecting us to know magic incantations (class casts, method chains, constants) to accomplish straight-forward tasks. I have no doubt that the complexity is necessary to handle edge cases: but that's not why I'm using the library! I'm using it for the core case. Give me a utility class and mark it clearly as such (oh boy, nothing slows people down like trying to figure out dueling utility classes, abstractions on top of abstractions done with different idioms within the same project, and finding out that they were just facades over the *real* library). For God's sake use package level JavaDocs liberally to explain how the pieces go together with simple example code, and make some reference to applicable utility class in the lower level classes.

It's not easy being a Java programmer, and it never will be. Our language's expressivity is inherently (and intentionally) limited in the hopes that the compiler and other programmer tools can make our programs more error free. This trade-off between safety and freedom makes it all the more important that our libraries be incredibly well-designed, because we just don't have the linguistic freedom to mold your library to our liking.

Sincerely,
(Java)Josh

Going gung-ho on the yaught

No comments:
I feel good being rather more gung-ho about boating. Replacing an engine using the main mast and main sheet block, and, today, jumping into the marina water to remove a prop shaft...well, lets say that not everyone does things this way. John and I (well, mostly John) did it this way. It's good.

The cool part about it all is feeling less trepidation about things. Most boaters are vaguely uncomfortable with the true innards of their boats: the through-hulls, the packing glands, the ball valves, the bilges. The thinking is that if you ignore it, and nothing goes wrong, then you're fine. If someone tells you something is wrong on haul-out then you just pay them to fix it.

It's a little different for a restoration. I know what a packing gland is because I've removed one. I know exactly how much water will come into the boat if you take it off, because I've seen it. I know what a cutlass bearing is because it's a pain in the ass to pull a prop shaft through one. I know how zinc is mounted to a prop shaft because I've been underwater holding my breath to disassemble one. I know how sharp a prop is because I've had to manhandle one to get the prop shaft out.

And now I have to figure out a way to replace a cutlass bearing underwater. Based on info from the internet, I don't think it can be done. But it doesn't mean I'm not gonna try. I don't see why those instructions can't be executed underwater - with the exception of the dremel tool, which can easily be substituted.

I just need one of those hull cleaner's machines that forces water down to the diver. Or maybe I can build one myself. How hard could it be? Just need a regulator and an air pump.

A way to improve corporate ecological responsibility

No comments:
I propose a simple law who's purpose is to align the interests of executives with the interests of the communities in which their companies have great effect. If your company releases "safe" waste water, you must swim in it. If your company releases "safe" exhaust, you must breath it. If your company provides "healthy" food, you must eat it. I propose that there be spot checks (in the case of eating) and surprise drills (in the case of breathing and swimming) to avoid gaming the system.

This would also make a very entertaining reality-TV show, similar to "Undercover Boss" (which is a great idea, BTW). Imagine the old white executive having to put on a speedo and swim in the muck he's been releasing. Tell me executives wouldn't take a more...personal interest in making sure of the truth of their environmental impact!

(This idea was inspired by the gloop I saw in the riverbed behind the DWP power plant in Seal Beach. I thought to myself, wow, if the execs had to swim in that, it would be a lot cleaner.)

Don't like the idea of burning Korans? Here's what you can do.

No comments:
Don't like the idea of pastor Terry Jones burning the holy book believed in by like a billion people? Well, we can't really stop him, and we shouldn't - he's exercising free speech. But we can offset the loss:

Sep 11 2010 is now Print a Koran Day.

Here is the Facebook Page. Please like, comment, and print!

Jones will burn 200 Korans. How many can we print? Then we can find our local mosque and give them a replacement. Together we can offset the hate of one man, and show that we value and respect those who's beliefs differ from our own.

How to Jailbreak your iPhone - with mistakes.

No comments:
I had some spare time today, and I wanted to upgrade my iPhone to iOS4. I had heard that jailbreakme.com was making it super easy to do. So I let iTunes 10 upgrade my iPhone to iOS 4.0.2.

Big mistake. Jailbreakme.com doesn't work with 4.0.2, only with 4.0.1. Of course, you can't know that until it's too late.

Most people at this point would be screwed - you're upgraded, and the only way to use your phone is to go to AT&T with your tail between your legs and ask for a 2 year contract. Nicely. Luckily, I had, at some point, saved something called an "SHSH" with Cydia for iOS 3.1, which will allow me to downgrade to 4.0.1, and continue using my T-Mobile prepaid SIM card like God intended.

I haven't yet recovered, and I might not recover. In which case I'll have to forcibly switch to Android. Oh well.




A drawback to writing your own word-processor

No comments:
So I wanted to write a word-processor whose native format was plaintext or close to it. This was to support version control, portability, and tool unification. I hacked something together in an evening and have used it for a couple of stories. To get a PDF you do this:
  1. Write the story in Textile. Eclipse has an almost nice WYSIWYG editor for this.
  2. Load the story into my Viewer, which is a simple Ajax application that renders textile, applies CSS and generally gets it ready for printing.
  3. Print to PDF
This is actually not as bad as it sounds, and I have to say it's really nice to format a story (or any printed document really) using CSS. It's also really nice to write a story using the same tools I use to code. Code folding and syntax-highlighting is useful in stories, too! (Would be nice to define a "Convert to first person" refactoring?)

The big drawback is that, after printing, it's almost impossible to integrate edits made in pen back into the plaintext. It's a drawback I just didn't expect, which makes it interesting! With an ordinary word-processor you have 1-1 page correspondence, and you locate the edit spatially. This is totally lost with my method, and it's a deal breaker.

The only way is to scan the text for the nearest heading and then for paragraph breaks and then keywords. It's slow and difficult.

Interestingly, this is also something of a problem with Google Docs, which also does not render page breaks.

One work-around is to render the textile text in the same shape as the printed page. I haven't tried this and I don't want to talk myself out of it as a solution, but it seems like this would be pretty difficult to do correctly. Another work-around would be to actually do the editing within the browser. Of course, there the problem is that I'm no longer using friendly tools.

For now the roll-your-own open technology wordprocessor for stories is on the backburner. But who knows? I might resurrect it.

Lovely science coverage in the NTY: Seashells

No comments:
Just a quick mention. The NYT has a photo-heavy article on seashells, vaguely related to a book named, "The Book of Shells" by M. G. Harasewych and Fabio Moretzsohn. I like the elegant Crispate Scissurelle (Anatoma Crispata) and the stunningly beautiful Matchless Cone (Conus Cedonulli.

Looking at these pictures, I couldn't help but think about complexity how recursion so beautifully addresses such problems. Recursion gives you simplicity and complexity: that there is some small amount of code being executed to create these shapes, ordering vast numbers of molecules into a coherent shape.

An important lesson for American innovation: will we listen?

No comments:
NTP Inc. (wiki - they don't have a website) "holds a number of patents but doesn't manufacture any products" according to the Wall Street Journal (wsj.com). And it has filed suite against Apple, Google, HTC, LG, Microsoft and Motorola over wireless email. Blackberry has already settled a similar case with NTP for $612.5 million.

With the priviso that I know only as much about this case as was reported in the WSJ, I'd say we have something to learn. When I say "we" I mean "congress" and when I say "lesson" I mean "patent reform".

In the beginning, an artisan could make money by selling products. This was fine as long as the product was difficult to make: there was no point in protecting the design when the method of manufacture was the barrier-to-entry for competitors.

Over time, the ability to manufacture or copy a device has become easier and easier. Artisans, now called engineers, were less encouraged to innovate because, at best, they would only be able to produce a few of the items before the design was copied.

And so the patent system was invented to protect intellectual property independent of the specific devices. It accomplishes this by protecting the idea behind the design of a product. If a product is created with the same backing idea as another, then it's fair game for a lawsuit.

What's happening now is that people are taking out patents on ideas they do not intend to develop into products. They then attack the companies that turn the idea (which is almost always independantly derived) into an economically viable product. This creates a society which rewards documenting ideas, and badly punishes executing an idea. So, if we want to live in a world of thumb-twiddlers, by all means, carry on.

It seems to be happening more with software patents, but I'm sure it's happened during the entire history of the patent system. It's hard for me to imagine that the patent system doesn't have some provision limiting remedies to those who never bother to turn an idea into a product, viable or not.

The other problem with the system is complexity. Patent law is complex. Proving prior art is notoriously complex. Patent's should be simpler to get, to verify, and to litigate over. The IP system in this country needs a serious overhaul.

Why am I concerned about it? I'm an independant inventor of no great note. The entities most at risk are those with deep pockets: companies like the defendants in the NTP Inc. lawsuit. If anything I'm more likely to benefit from patent trolling myself!

This might sound naive, but I'm against patent trolling because it's bad for society. Yes, I want to invent things and get paid for it (and get paid handsomely!). But I want to do it fairly: by getting a patent, and either developing it or shopping around for licensees. I wouldn't be able to live with myself if I filed a patent and sat on it for a few years until someone else came up with the same idea and made millions, and then I come out of the woodwork with a lawsuit. "Ha!" I say, "I have a patent on that!"

Here are some related links:

A writers printer

2 comments:
Brother HL-2140orororHP LaserJet Pro P1100 Printer series - Black and White Laser PrintersorHP OfficeJet H470WBT  Mobile Color Inkjet  Printer with BatteryorCanon PIXMA™Compact iP100 Portable Photo Printer

These are all small, monochrome laser printers, around the $150 mark, with the exception of the last two which is $330 and battery powered, and $230 without a battery, but very small. (I love the idea of taking a printer with me to the coffee shop!)

A great upgrade

No comments:
Seagate Momentus XT 500GB 2.5" SATA 3.0Gb/s with NCQ Solid State Hybrid Drive -Bare DriveI'm super happy about an upgrade I did last night, and encourage everyone out there to consider it. I installed a Seagate Momentus X25 hybrid SSD drive ($145 incl tax from NewEgg) into my uni-body Mac Book. It was slightly more involved (and expensive) than I expected, but I am so pleased with the result.

My first attempt at upgrading involved a no-name USB to SATA cable thing. It didn't work - the drive would mount for a few minutes then forcibly unmount, with or without the external powersupply. I wasted a few hours with this approach.

Western Digital My Passport SE 1TB 2.5" USB 2.0 Ultra-portable External Hard Drive for MacThe right way to do the upgrade is with a backup-restore. Which requires a third hard-drive. For this I purchased a "Western Digital My Passport SE 1TB 2.5" USB 2.0 Ultra-portable External Hard Drive for Mac Model WDBABW0010BSL-NESN" (say that 10x fast!). It was not cheap at $200 from Best Buy (including tax). But it's a small, pretty little device that doesn't need an external power supply. I then used Time Machine to do a complete backup, which took 7 hours for 230GB of data.

Physical installation was tougher than most laptops, but not by much. You need a tiny philips head and a torx T-6 tool. It's pretty straightforward and took about 10 minutes.

To restore you need your startup disk. This is a critical piece and I bet lack of it will stymie many would-be upgraders. Select Utilities|Restore from Time Machine Backup, and wait. I was a bit freaked out by the extended white screen on boot, but apparently that's normal. Restore took about 5 hours.

This drive is freakin' fast. My whole machine is noticeably snappier. I didn't want to buy the external USB drive, but I'm kinda glad I did: it's a nice bit of insurance. (I was slightly tempted to get a Time Capsule, which includes an 802.11n router with a 1TB drive, but decided against because of the $340 price tag, and the almost certainly slower performance.)

It's Good to be the King

No comments:
They're getting married! She's 32, blond, Olympic swimmer hot. He's 52 and looks like a jowly accountant. How did they hook up?

I don't know the story, but I'm guessing that being the fantastically wealthy prince of friggin' Monaco didn't hurt his chances.

Prince Albert of Monaco to wed Olympic swimmer Charlene Wittstock the headline reads. It should read, "It's Good to be the King."

The Smartphone Age is a great time to learn chess!

No comments:
I'm excited to report that the portable chess problem has been solved, and the solution is called a "smartphone" (aka iPhone 3GS). As a result, there is no reason not to learn this fabulous game.

My reintroduction to the game was made by my iPhone courtesy of Deep Green, but only really deepened with Shredder Chess (a total steal at $7.99 - the desktop version starts at $50) particularly thanks to the puzzle feature. "Puzzles" are generally mid-game problems with solutions from 1 to 8 moves in length. They are fantastic "aha!" teaching moments, and they are fun to solve. I've learned more about forks, time, and pinning from these puzzles than in years of casual play. I can apply these lessons directly to my normal games.
  • Click here to get a sense of a shredder chess puzzle (updated daily).
  • Click here to play against shredder free online.
The great innovation here is two fold. First, portable computer chess finally has found a great platform: the smart phone. Most people's interest in chess isn't high enough to justify a separate device, which have been sold for years. But it's enough to sustain an app on a phone you carry anyway. Forget Doodle Jump - play chess when you're waiting around for something! The second innovation is Shredder Chess' concept of a Chess puzzle.

Chess puzzles highlight the beautiful parts of a chess game. Openings are about memory and style, end games about mathematical certainty. But mid-game situations are where that big advantage is won or lost, and so where the game is won or lost even if it takes another 30 moves to knock over the king.

Shredder's software execution is all but perfect, particularly the ability to play the puzzle then switching to play the position against the computer, allowing you to test out alternate theories from both sides. That is, the solution to the puzzle is only the start. You can regress the game and ask the all-important question: I beat my opponent this time. How could he have avoided this fate?

Without a single word, these puzzles say so much! What a perfect way to learn the game: rather than memorize and apply the insights of masters, this method encourages you to make your own insights, which in turn makes the game in a very rewarding game of discovery rather than a boring game of regurgitation or application of theory. The insight of masters are invaluable, but to really appreciate them you must have your own framework of understanding. (Many Go teachers say that you should play at least 100 games of Go, before studying theory for this very reason.)

I should add that while you generally don't have to play out the puzzle game to it's end, I often do, as my end game is (was?) a big weakness. I might be up a queen and still lose in my rush to end it. But now I really understand the significance of a passed pawn and the slipperiness of the King and the need to be thoughtful and careful even when you have an enormous power advantage. Carelessness kills.

I can't say enough about Shredder on the iPhone, but there is one thing missing: openings. Very few of the puzzles occur in the opening, and most of those take advantage of fairly obvious opponent mistakes. Shredder has a cool feature where it identifies and names your opening. But it would be nice if it had an "opening drill" feature to help you memorize openings (and understand their implications for the rest of the game).

Not to take away anything from the amazing and innovative new kinds of games like Flight Control, Doodle Jump, Angry Birds, or Spider but why not kill two birds with one stone (or two stones with one bird, if you play Angry Birds). Chess is an aristocratic game of kings. It's good for the brain and a lot of fun, and perfect on this platform.

Kinda tempted to build a gaming computer

No comments:

9693859 Angle Large

A cheap, good gaming PC for $430. Really, just to play Portal 2, Counter Strike:Source, and maybe some old stand-by's like Supreme Commander and Ultima III in the Apple IIe emulator. (It may be a $60 card but it will drive my 30" Cinema at full resolution.)PNY GeForce GT 240 VCGGT2405G5XEB Video Card

The Oil Spill War.

No comments:
The oil spill is a major threat to the United States. It is correct for the federal government to act to act to mitigate this threat to us all. It is important for Obama to remain clear on this objective. BP has unwittingly triggered an attack on US soil, and they can and should help with defense, but it's our collective interest at stake, and we must take the lead.

This is a battle with three objectives:
  1. Stop the flow.
  2. Cleanup the mess.
  3. Don't get distracted.
Stop the flow. Cap it, divert it or plug it. And don't stop trying until you succeed. One solution would be to ask every oil company in the world to come and drill into the field and drain it as quickly as possible. Make this a condition of ever doing business in the US again. Oh, and make sure that your blowout preventers are working.

Cleanup the mess. Use booms and sponges to keep floating crude away from shore. Figure out a way to sieve dispersed oil from seawater (fund a research project). Enlist locals help cleaning the coast.

Don't get distracted. By the blame game. By flow calculations. By political calculation. By philosophical positions. By questions of prevention. By principles. By critics. This is by far the most important objective, because without it all other objectives will not be met.

9 ways to write native iPhone apps with JavaScript

No comments:
John Resig writes about iPhone JavaScript development back in November 2008. Here are the projects he mentions. (status as of June 2010 in brackets):

  1. JiggyApp requires a jailbroken iPhone [offline]
  2. JSCocoa "full bridge" for doing full bore Cocoa programming in JavaScript. My take: kind of like Swig but instead of Java/C it's JavaScript/Obj-C. Written by Patrick Geiller. [online. moderately active]
  3. PhoneGap adds some native functionality (accel, gps, but no magnetometer) to an app . Also has great documentation - a free O'Reilly book "iPhone Apps" (which talks about cached webapps, too). Targets Android and Blackberry, too. [online. active]
  4. WebTouch is basically a "blank" iPhone app with a single WebKit instance. John likes this one the best. Code. Author. Blog. [online. inactive]
From the comments:
  1. Capuccino/Objective-J
  2. Use "Transfer and View" apps like Dropbox or Files - see this blog post.
  3. QuickConnect - an Xcode template. Code and blog. Development started 4 years ago?! [online. active.]
  4. MotherApp - generates an Objective C application from JavaScript (presumably). [online. active. commercial]
  5. Big5 is an app store app that somehow lets you tap into native functionality. Now open source at github. The readme points users to phonegap.
Not really sure what the state of the field is today, but PhoneGaps documentation (courtesy O'Reilly) is pretty huge.Summary: PhoneGap is the winner. But I really like the transfer and view concept, and JSCocoa for doing desktop development.

Make yourself happy and avoid the Nexus One

2 comments:
In the end, there are two reasons I cannot recommend this phone:
  1. The display is unreadable in sunlight. If you like the outdoors, like I do, this is a deal breaker. (If you're a vampire, read #2)
  2. The buttons along the bottom of the Nexus One do not work. Or rather, do not work all the time, which is actually worse from a usability standpoint.
Regarding the first point, it is astounding to me that anyone would sell an electronic device that completely fails in sunlight. The sun remains the world's most important light source, and to make something that doesn't work in the sun is outrageously stupid. Only those who never leave a building should consider this phone, and that includes using it in your car. And I don't like to disrespect the sun on general principle.

(I can't help but wonder what this implies about the Google culture and possible vitamin D deficiencies there.)

As for the second point, well, the buttons gotta work. Every time you hit a button and it doesn't work, your expectations are blown, and you cause feelings of fear and anxiety in the user. They are small feelings. But they add up. Eventually, the user is all but flinching before touching a key. They look for ways to avoid touching the offending keys. This is usability 101. But you have to stab, cajole, pray, and otherwise beg the shitty Nexus One buttons to register a tap.Absolutely unacceptable. Apple has shown how to do great touch UI with an absolute bare minimum of buttons. The back|menu|home|search buttons on the Nexus One are worse than useless: they actually eroded myexperience to the point where I just don't want to use the phone anymore.

And since point 1 rules out all users except vampires, that means point 2 is going to mean Google has to deal with a lot of pissed off vampires. Maybe someone can get Stephanie Meyer to chronicle the inevitable vampire assault on Mountain View. In the meantime, I'm selling my Google stock.

I'm sorely tempted to eat the $45 restocking fee and return the thing, but I need an Android device for a business project (which doesn't rely on the display, luckily). So I'm gonna keep it, but I'm not gonna like it.

(For the record, there are three good things about the Nexus One: Google Voice, Live wallpaper, and strong syncing tools. And, to be honest, when you turn the brightness all the way up the indoor display is quite fetching.)

Imponderables in the geekosphere

No comments:
What happens when you combine this law with this gadget?

The Joy of Shopvac

No comments:
Yesterday I bought a small ShopVac from Sears [correction: it's a Craftsman brand. But like Kleenex, the brand name is also used as the generic]. It's a 2 gallon, 1.5 hp model that cost me $25 + tax. And it's awesome. It is surprisingly powerful.

Why? Because it solved a hard problem: cleaning my bilge. And it will solve other problems, like cleaning my cushions and the deck. And I can use it to inflate the Avon. And it's small enough to put anywhere.

Fantastic.

A practical guide to "spreading the love"

No comments:
Lots of people talk about "spreading the love", but what do they mean and how do you do it?

Online, the first step to spreading the love is to filter. You read positive items, items that are useful to others, and ignore everything else. The actual love still needs to be spread, so send the link in one of myriad ways. Make them feel special, and that you're thinking of them. The love has been spread! Good job!

If this sounds good to you, read on. Realize that we read things for all sorts of reasons. To stay informed, to grumble, to reinforce our preconceived notions of how the world works, to waste time, to learn about a topic. This becomes clear when you observe yourself as you read: some items create feelings of hope, delight, or wonder; others create dread, fear, or pain.

Offline, "spreading the love" can take the form of an extra generous tip, a compliment, or a smile.

One of the most interesting things about it is that, if you are in a good mood and resolve to "spread the love" you will find a practical way to do it, and believe me, it will make a difference.

There is limited love that one can spread on a computer: recognize this limit when you reach it and close the thing down!

A great album - Kate Bush: Hounds of Love

No comments:
Hounds of LoveThe Hounds of Love, Kate Bush's 1985 tour de force, has been a favorite album of mine for many years. It is still as good today as it was in 1994 or so when I first heard it. The second side (titled "The Ninth Wave") is by far my favorite part of the album, and contains two of my most played tracks: The Morning Fog and Watching you Without Me.

Kate is known as a meticulous producer, and it shows. Every second of this album is impeccably produced, and the sound quality is amazing. Normally I would scoff at good production as being rather pointless - the music is what matters, after all. But Kate's music is so intricate that it requires this kind of careful treatment to be heard. Indeed, I can imagine that Bjørk would really benefit from production like this. (Actually, so would Sigur Rós, where bad production actually ruined Ágætis byrjun for me after I started catching all the artifacts on relistens.)

Do yourself a favor and buy this album today. It's amazing.

How to *really* rock the vote on Memorial Day

No comments:
It's an absolutely picture perfect Southern California memorial day: sunny, bright, and warm. Unusually, we don't even have any smog. Which is a great time to get some clarity about a political change that I support: military service as a condition of the vote.

This is a fairly radical position, and it's not seriously discussed on the national stage. So let me explain. First of all, it's not that radical. Compulsory military service, or national service, is common throughout the world: Austria, Denmark, Finland, Germany, Greece, Guyana, Israel, Iran, Malaysia, Mexico, Norway, the Republic of China (Taiwan), Russia, Singapore, South Korea, Sweden, Switzerland and Turkey all do it. Israel is particularly commendible for conscripting women as well as men.

Military service does two things that are useful for voters: first, it organizes them in the largest single organizational structure our nation has. This teaches people to work coherently in large numbers, which is a good basis for acting coherently when it comes time to national votes. Second, and more importantly, our service men are putting their life on the line to achieve this countries geopolitical goals. That's a more important and more meaningful contribution than tax dollars, and should be rewarded with something more meaningful, like the vote. The most i

It is hard to imagine veterans putting up with the kind of vitriolic non discourse that dominates today's landscape. Veterans know that talk is cheap, it's easier to be a critic than to act, and that actions mean something, even if you get it wrong. They understand that honor isn't an abstract, useless thing, that without honor organizations fall apart. The vitriol will die off because the demand will disappear.

This is a long term play. It will take at least a generation for the effects to fully be felt. But it's an experiment that's worth making.

A hearty salute to all our soldiers out there, domestic and abroad. Kick some ass!

Peace.

When hot girls sing.

No comments:
When you like someone you put up with a lot. If your girl likes to sing, and she's bad at it, you let the girl sing anyway. No harm. But for some reason, Barnes & Nobles believes that Him & Her needs to be played while I shop. This is odd because I'm pretty sure is dating Zoey Daschenal (lead singer of Him & Her) neither Barnes nor Noble, or the awkward young man in the music section, so it's not clear why they are doing this.

(Perhaps to avoid having to play Vampire Weekend? That I understand.)

Of Sailboats and Pianos

No comments:
Sailboats are nice because they are fun to sail. It's nice to own one because you have control - if you want to change something, you can.

My boat is a 1972 35' Ericson. And I just had a mechanic tell me that I shouldn't bother fixing it (the engine is seized). Why? Because the engine, fiberglass and gelcoat things I want to fix are 'tradesman jobs' and that I shouldn't bother.

This kind of "can't do" attitude get's me down. It's un-American. Economies of scale are, at some level, great - they are an incredible way to inject large amounts negentropy into the world. Think about how cheap it is to buy a piano! But they also seem to set expectations way too high. It's like, "if it can't be factory fresh, I don't want to bother!"

Tuning a piano correctly is beyond most laymen. But it only needs to be done once in a while, and is relatively cheap. What if we kept pianos submerged in salt-water? Then it might not be worth it to own pianos at all!  Factories that produce big, dead things aren't really doing us much good: maybe inexpensive durable goods are a poison pill. Factories simultaneously raise our expectations of our stuff, and reduce our ability to understand our stuff.

So, I have to consider the question seriously: is it even worth it to own a boat? Is the mechanic's assertion correct, that a boat is something you spend $150,000 on, put it in the water for 10 or 20 years and then throw it away?

No. I don't really buy this can't do attitude. I think it's possible to maintain my boat. It doesn't have to be perfect. It just needs to be relatively safe and get me in and out of the slip. The gelcoat and fiberglass needs to be watertight and functional, not perfect. Basically, I'm content to let the super-high standards set at the factory go by the wayside and gain some skills maintaining and repairing my own stuff.

The way out is simple: ditch that downer mechanic, and figure out another way. And so I have: I'm going to pull out the old Universal Atomic 4 engine and put a electrical engine in. I'm very excited about this. It's really a perfect solution. Electric motors are light (about 30lbs for the motor itself) and efficient. It even does regenerative power from the rotating prop when you're under sail - a very cool form of wind power. It's good for the environment. It's quiet and there are very few moving parts to maintain. Pop on some solar panels (Costco has a 60w deal for only $270 right now) and I'm set.

I can do it, and I will.

Goodbye Facebook, Hello Facetime

No comments:
I finally deactivated my Facebook account. Been thinking about it since Facebook patented the "newsfeed".I feel good about it already. I really enjoy seeing what people are up to in the world, and reconnecting with old friends, but at some point Facebook became an oppressive force in my life, and now it's time to go. The recent privacy problems are just another reason to ditch the service.

A great deal of Facebook is actually recreated in the open with FriendFeed (friendfeed.com/javajosh), which creates a kind of open newsfeed which other FriendFeed users can comment on, like, etc. Recommended.

Here are some other ways to stay in touch:
  1. Phone or Text (562) five four six-3882 (or 562 54 METTA).
  2. Everything (friendfeed.com/javajosh). Most of my online activities go here, particularly the media I consume. It's better than a Facebook Newsfeed, actually.
  3. Email (javajosh@gmail.com). Tried and true. Personally, I really dig email. Way better than Facebook Messaging: it's search-able, universal, and far more private, reliable, and flexible.
  4. Chat (javajosh@gmail.com, Skype/javajosh). I'm not a big chatter, though. Would much rather just have a quick phone conversation.
  5. Link sharing (delicious.com/javajosh, google.com/reader/shared/javajosh). Sharing links is an easy way for me to say, "Hey, this is neat!". Kind of takes the place of Twitter.
  6. Blogging (javajosh.blogger.com). Replaces "Notes" in Facebook, but more general and flexible.
  7. YouTube, GoodReads (goodreads.com/javajosh), last.fm (last.fm/user/ablation). Find out what videos I've watched, books I've read, and music I've listened to.
  8. Flickr (flickr.com/jaakel). Photos I've taken. This account has languished recently, alas. It's time to change that. Or not. I may start using Picasa Web Albums (picasaweb.google.com/javajosh) instead (partly because I can't stand the URL I got with Flickr - thanks sis!) Actually, photos are one area where I think facebook does a better job, although I bet these other services will do a good job catching up.
  9. Twitter: not for me.

I hope that, in the end, leaving Facebook will improve my connections with others. One things for certain, I look forward to reconnecting with my blog,
which has a far more spacious & open feel to it. Here, I feel free to write
what I like, rather than the pithy, tiny, and ultimately pointless
quips that the Facebook format seems to encourage and reward. Ah, a new, old day has dawned.

Keep in touch,
Josh

Career choice: vigilante!

No comments:
I'm going to take off my liberal hat for a while and rant about something. I read stories about admitted scumbags getting life in jail, and it  ticks me off. What a waste. That visceral angry part of me demands true justice. Someone should have hunted him down long ago - but instead we have a civilized trial and spend $10m to keep him secure and alive for the rest of his life.

At least dump him in Iraq and let him defuse IEDs. With a pair of pliers and a smile.

Oh! To be a dark avenger stalking the evildoers of the night in righteous vengeance! To clean the streets of rapists and senseless drive-by shooters!

You know, like Batman.

The immune system of our society is ponderous, slow, and unfocused. The body of law that police are expected to enforce and the legal system is expected to prosecute is so complex that actual enforcement is not only impossible, but would be counter-productive if everything was perfectly enforced. Regarding minor criminal acts, we are not a nation of laws, but a nation of discretionary enforcement which is too often abused.

Far better than a lone vigilante would be a simplified body of law, something that can be enforced and prosecuted swiftly. Speed is essential because justice, like inspiration, is perishable.

Why require login to unsubscribe from spam?

No comments:
I think most people create a lot of accounts in this Internet world. Most of these accounts are silly because there is no data of interest, and nothing to protect. Two such accounts, like those at Auctiva and JBoss.org, both spam you when you sign up for an account, and both require a log in and manipulation of email preferences. Of course, I don't remember these accounts, and, really, I don't want to go to that amount of trouble. Which means I hit the spam button in Gmail, which is easy, quick, but makes it possible, if not likely, that neither companies newsletters will make it even to legitimate customers. Which is something I know neither company wants.

Come on people. Make it easy to unsubscribe (like, a single click). It's a Good Idea.

A cure for motion sickness

3 comments:
I am quite pleased to report that my motion sickness is cured, and I hope that this cure can be applied to other cases. I'm fairly certain that there are many kinds of motion sickness, so let me describe mine and how I (inadvertently) treated it. If the treatment helps you, please let me know!

My motion sickness, first and foremost, prevented me from reading in a car, or any moving object. This could be a considerable problem, particularly when faced with navigating maps - the effort to concentrate on a map would cause nausea within two minutes or so, and take perhaps five to dissipate. I experienced this profoundly while on recent trip to New Zealand traveling in the back of a camper van.

Occasionally, my motion sickness would attack me while sailing - but usually not within many hours of being on the water. And usually I would vomit once or twice and then be fine. The one exception is one time when I had a touch of flu, and was sick within an hour of being on the water (and violently ill the entire 12 hour journey - which is a story for another time). Reading of any sort, or any concentrated activity, especially below decks, would cause a wave of nausea.

That's the extent of it: I have never been motion sick on a roller coaster, and never on a large plane, or on a large ship. (Well, I did feel a bit sick when the pilot of a small plane showed me some acrobatics, but that hardly counts!)

(Why not Dramamine? I found out early on that I despise Dramamine more than I despise being motion sick - Dramamine makes me feel sleepy without allowing me to go to sleep, keeping me in this incredibly uncomfortable in-between state that feels awful. I would only use it in exceptional circumstances, like that 12-hour torture sail mentioned above.)

Anyway, I've been living on a small sailboat for about 4 months now, and recently discovered that, somehow, my motion sickness has all but gone! I can read in the car! Heck, I could even write stuff in my laptop in the back of a taxi (which would normally be even more nausea inducing than reading)! I'm quite pleased about this and can't wait to test the limits of my newfound tolerance.

So that's it! Live on a boat for a while, and maybe that will help your motion sickness. If it does, I'd love to hear from you.

(My guess is that the constant motion while sleeping on a boat conditions the body to respond in a more normal way to small motions. I say "all but gone" because I can feel the discomfort begin while, for example, reading in the car. but it never gets past discomfort into full-blown nausea. It's like the waves are still breaking on the beach but they just aren't strong enough to get past the boardwalk).

Hope this helps!

Something wierd about the iPad

No comments:
I'm a gadget guy: I love toys and electronics and shiny things that run on electricity in general. I often feel an unaccountable lust for objects I see on New Egg and in the Fry's ads in the back of the sports section. "$88 for 4G of RAM? Wow! I must have it!" I think, forgetting for the moment that I don't even own a desktop PC. The same thing happened when I saw the 30" Cinema display: it was simply gorgeous, and I had to have it, even though I didn't have a computer to drive it's insane resolution. And I felt the same way about the iPhone - and I actually bought it.

So, the weird thing about the iPad is that it inspires no such feelings of lust in me. It's weird because, by rights, it should inspire such feelings. It has all the traits: it's a neat toy and it's a solid metal block that has a computer inside of it. But there is no stirring in my brain's gadget-passion center.

(I've had this strange experience once before, with World of Warcraft. By rights, I should have been badly addicted to the game, but it was merely meh.)

I think the thing that gets me about the iPad is that I don't need it. I've never been in a situation where I thought to myself "Gosh, I wish I had a tablet right now." I own a tablet, actually, the IBM X10. It's really good for a very narrow range of tasks, mostly drawing and note-taking. The only feature of the iPad I have actually wanted is 10 hour battery life and the very light weight. Indeed, it would make an interesting "world traveler's device". Except, of course, netbooks are cheaper, more robust (clamshell protects screen), and have a built-in keyboard and useful ports (like USB and SD card slots). Indeed, with iPhone 4.0 including bluetooth keyboard support, the iPhone 3GS itself may be the best "world traveller's device" (especially if you buy downloadable maps). It's lighter than everything else and is a phone, and while it sucks for reading it's passable. And it's much better for watching movies than you'd expect.

Truth be told, my gadget-lusting brain is far more interested the Kindle and Nook. They have even better battery life, include lifetime 3G connectivity, and make reading digibooks relatively painless. I'm not real happy about page transitions, so maybe the next revision. I'm also very not excited about having to rebuy my physical books.

How I learned to stop worrying and love Apple's iThing developer restrictions

No comments:
At first blush, Apple is confusing. On one hand, I like the polish of their products. Apple makes some of the very finest producty products - shiny, smooth metal objects that have computers in them. I love that. On the other hand, Apple is being very restrictive about what I make and, now, how I make it.

As a developer, I want to play with the insides of these metal objects. I want to break it apart, see how it works, and write code that runs on it. Part of the reason is that I see my software as a shiny metal object, and Apple promises to help me create that effect, both inside and out. In fact, not only does my app get to run on a shiny object, my app can be purchased through a shiny store. So the entire user experience is shiny! This is an opportunity that no other software platform gives me. It is absolutely unique.

It doesn't bother me that Apple is restricting it's developers on how they write their software, because the best mobile apps are ones written for bare metal. It's the only way to squeeze the most performance per watt from an app. For years, programmers have been decrying the fact that we just push around abstractions, and have lost the art of Deep Knowing, and rely on ever increasing PC specs to make up for sloppy coding practices. Well, guess what: now Apple is forcing you to know their devices inside and out before you write code for them. Everyone already knows you have to be a low-level programmer to write the shiniest possible apps, and Apple is simply forcing us to code The Right Way.

Of course, it's the uniqueness of Apple's product (not just the iThings but the entire shiny end-to-end user experience) which gives them the leverage to do it The Right Way. But since it's really just forcing us to do what we already know is right, why worry?

And also, of course, Apple gleefully realizes that as programmers learn the iThing environment they will be loath to abandon their hard-won skills and may even be tempted to write native apps for OSX.

Hamid Karzai declares war on the US; the US "fully supports" the move

No comments:
Kabul, Afghanistan. The nation of Afghanistan is rejoicing today at their leader's decision to declare war on the US. Incensed by the occupation of his country by "foreign devils" Karzai has asked the US for an increase in troop levels, but the US has declined. "President Karzai already has 100,000 US troops under his command. It's not that we don't want to help him prosecute his war against us, but we're already stretched thin, and don't hav00000afghanistane the resources to spare," said secretary of state Hillary Clinton. "President Karzai is taking an incredibly brave and principled stand, and we wish we could give him more support."

US troops stationed in Afghanistan were circumspect. "I'm not real happy about fighting against other Americans, but hey, what the commander in chief says, goes. Besides, I'm kind of looking forward to a stand-up fight, for once," said Leuitenent Commander JP Whitmore, 3rd division.

Defense contractors have been quick to assure both sides of the impending battle of their unwavering, fair-minded support. "We pledge to show no favoritism to the US troops in Afghanistan or to the US troops which are preparing to attack them," said CEO David J. Lesar of Halliburton. To so do so, he said would be "unfair to the taxpayer as much as to the troops themselves." He did add that it would be convenient if both sides of the battle would use the same logistical pipeline. "If both sides rearm and refuel from the same depot, we could see unprecedented efficiency improvementspakistan-political-map-v2," said Raytheon chief William H. Swanson. "Getting those supply lines in place is a major headache," he added, "and we would hate to duplicate effort unnecessarily." "This is an unprecedented opportunity to show how efficent war can get," echoed GE CEO Jeffrey R. Immelt. "It just doesn't get any better than this."

Joint Chiefs of Staff Chairman Michael Mullen in a press conference this morning, "No matter what happens, we will prevail in this conflict." He continued, "They know our strengths, they know our weakness, they are highly trained and professional, just like us. We are fighting for basic human freedoms," looking confused for a moment he continued, "but of course we do not abandon our allies, especially when helping them to fight for freedom against an oppressive, imperialist occupation. Our support of Karzai is unwavering and he will be victorious with our unwavering help," pausing for a moment, "and we will also bring Karzai down without mercy," he concluded.

A capitalist defence of socialized medicine.

No comments:
The American healthcare system is broken. My first-person experience is that it is merely broken (long wait times; exorbitant fees; healthcare professionals who are more concerned with billing data than symptoms). Poll data and 3rd party anecdotes suggest that it is severely broken (coverage is denied; rates increased beyond reason, arbitrarily). The twin problems facing healthcare are: 1) poor, expensive care and 2) unreliable insurance coverage.

I believe in capitalism and in the ability for markets to correct themselves. In this case, the capitalist response is (correctly) that I should be shopping for a better doctor and I should be shopping for a better health insurance provider. I have found that, in both cases these products are extremely complicated, the markets are completely opaque. Insurance shopping is left to the professionals (called agents or brokers). On the care side, actually shopping for a good doctor is largely left to word-of-mouth (there are no brokers). It is impossible for me to find good care at any price. It is impossible for me to shop for healthcare services based on price - I have found that the front desk will quote a price, and then later offer a cash discount. It is not practical to ask every provider for every procedure via the phone. It is impossible for me to predict what any insurance company will cover in advance. It seems like this is a problem too big for me to fix. Or rather, it's a problem that outstrips the utility of it's solution.

When lots of people have the same problem, and no individual seems able to fix it on their own (or rather it is cost prohibitive for each individual to solve the problem), it makes sense to cooperate and solve it together. The first thing you might do is look at other places and see how they solved the problem. Look at France, or Hawaii. In both cases people seem happy with their care; certainly I would appreciate the act of just getting healthcare without going through the rigamarole of providing billing information.

That said, I think the Hawaii system should be rolled out on a state-by-state basis. I don't want the federal government involved. I would like each state to take a good hard look at Hawaii and see if they can swing it. So thats it, a capitalist defense of socialized medicine.

Facebook, leaning toward evil.

No comments:
Facebook has patented the news feed. The opportunity for mayhem is incredible.

This patent is just wrong. It would be like a newspaper patenting narrow columns. It's not right. They already have a strangle-hold on my data. This is the last straw. I'm leaving Facebook.

Change always hurts

No comments:
It's funny how people vote for politicians advocating "Change" and then when it comes to actually changing, people balk. This is for a good reason: all change hurts somebody.

Take health care reform. That's a big change, and it will surely hurt insurance companies. I am not being flippant: insurance companies have investors who want to make a profit, and those investors could very well be me or you thanks to the 401(k) investment. Health care reform, in it's current incarnation, will also cost more money, and increasing the size of the government, hurting the taxpayer's wallet. The hope is that such a change will improve people's lives, overall.

I voted for Obama, but I have to admit his healthcare reform initiative took me by unhappy surprise. With all the crap going on the world, and with the US already bleeding money thanks to two thankless wars, why now? Why not wait until the wars are over, we stop bleeding money, and can make these changes without making the government any larger than it already is?

I want smaller government, not larger. I think there are very few Americans of any party that want a larger government. This is not a matter of principle, it's a matter of practicality: the federal government already appears to be a hulking, wasteful lumbering thing. Rewarding the government for a job poorly done is no way to spend resources. If the government were more effective, doing only those things which require a fierce concentration of power and resources, then I would be more open to giving it more money.

Change is always painful. We just have to be smart in judging whether some pain now will yield benefits in the future. The interesting thing is that, if you take virtually *any* historical decision, even ones that we now perceive as good, or even great, you will find enormous opposition. The creation of central park was going to bankrupt New York. Desegregation was going to destroy America. Entering world war 2 was going to bankrupt us and needlessly entangle us in world affairs. Landing on the moon was going to be a wasteful misuse of government resources, and probably kill the astronauts. Revolt against Britian was needless, and going to end in utter defeat.