Laugh at the world with The Onion Atlas

No comments:
The Onion's Atlas is a hilarious and very un-politically correct look at the nations of the world. Some are funnier than others, of course, but overall this beats the hell out of the CIA World Factbook for a laugh.

IMAX: I am Legend

No comments:
Fandango enrolled me in a newsletter (annoying!) when I bought a ticket through them for Beowulf 3D (which was funny because the line for the Fandango machine was almost as long as the ticket line) but it did remind me that I really do want to subscribe to new IMAX releases because IMAX is amazing. They also have coming releases - including I am Legend on Dec 14! I love post-apocolyptic movies, and this one looks really good - they played a trailer during Beowulf, and it was deeply impressive. I could almost feel the wind on my face as the camera moved through the deserted, ruined New York landscape.

Penalty chess

No comments:

Rent vs. Own calculator

No comments:
http://www.ginniemae.gov/rent_vs_buy/rent_vs_buy_calc.asp?section=YPTH

It's a nice tool but doesn't take into account the fact that rent increases over time. But here's a static data set that makes sense:












































































Years
Rent Payment
Mortgage Payment
Monthly Difference
After Tax Savings
Yearly Difference
After Tax Savings
1 800 1000 -200 -50 -2400 -600
2 840 1000 -160 -10 -1920 -120
3 882 1000 -118 +32 -1416 +384
4 926 1000 -74 +76 -888 +912
5 972 1000 -28 +122 -336 +1464
6 1021 1000 +21 +171 +252 +2052
7 1072 1000 +72 +222 +864 +2664
8-30 Savings increase every year

Judge a framework by its applications

1 comment:
Just like Eclipse gave SWT a shot in the arm, I think applications like craigslist remixed (which is actually a very useful tool) really give a shot in the arm to the technologies that enable them (in this case Tibco's General Interface, an AJAX framework that was around before AJAX had a name).

(GWT just doesn't have anything out there - except maybe Lombardi's workflow tool.)

An Access Competitor in Java: WaveMaker

No comments:
I wonder how WaveMaker competes with, say, Tibco General Interface? Or even OpenLaszlo?


Comment on Extremetech's music software shootout

No comments:

I'm glad to see ExtremeTech doing some more pro-audio and music creation coverage. A surprising number of geeks are musically inclined (or think they are) so I think it's a good direction to go in. But I have two comments about this article:

  1. It's a very strange selection of software! The review seems to imply that these three products are all that's out there, and that they are even the dominant players. There are so many choices out there: Cakewalk has many other offerings, but there's also Cubase, Pro Tools (already mentioned by another poster), Fruity Loops, Logic (mac only), Garage Band (mac only), Ableton Live, Reason and.... Not to mention the fact that as a free, virtual multi-track device, Audacity is really, really good (and used by a lot of podcasters).
  2. You can't really talk about just the software when it comes to music. Do you get an Mbox? A Tascam us-122? A firewire device of some sort? An internal card? How many channels of audio? What are the real limits of using just a sound card? What about a mic? Or a USB mic like the Snowball?
Yes, I realize ExtremeTech is more consumer-oriented, and to get deep into this stuff you go to another site! (I used to subscribe to Electronic Musician and Keyboard Magazine to get really into this stuff). But even for a consumer, Fruity Loops is a great tool, and so is Ableton - both of them have very strong virtual instrument support and relatively easy to learn interfaces.

The way I see it there are basically two approaches for the beginner: buy a good A/D converter and a mic, and use something simple like Audacity. Just do all your takes live, and multitrack as needed. It's an easy process, and you can focus on your music not on the software. Of course, this is only possible if you sing or play a real instrument. Or, if you just want to make pretty sounds, you can play around with looping and virtual instrument software like Fruity Loops. Ableton Live is an interesting mix of the two approaches.

Now, the big problem that most people have with sequencers is that you actually have to have some training in music, composition, and arrangement to make things songs that good. In other words, to use Cakewalk, Protools, or even ACID/Magix sequencing effectively you really should have some training. Unfortunately, most people don't have the training, and yet most software companies delight in selling overkill software to laymen. (Of course the "oversell" phenomena is not limited to audio software!)

The other problem is that the act of playing music, composing music and sound recording engineering are all different. All three are arts in their own right, but they are different. Most people just want to play music.

My recommendation: stick with a good sound card, a good mic, simple recording software (Audacity), and play real instruments into the mic. Be happy - play music, don't worry about fiddling with software! If you really think you have a music score in you, go to music school and learn how to compose and arrange music first; and by the time you're done, you won't need to go to ExtremeTech to get music composition software advice, because you'll probably do a lot of the work on paper, and the recording into something at a friends studio. :)

Confessions of a patent holder on Extremetech

No comments:
Art Reisman criticizes the Vonage-Verizon verdict and the patent system in general. Although he doesn't come to the same conclusion, it seems like his beef is with patent standards rather than patents themselves.

It's an interesting idea though that patents should be limited to physical things, and that software (and all information products) should be protected by copyright and trade secrets.

"Art Reisman is chief technical officer at APConnections, a manufacturer of the NetEqualizer bandwidth-shaper."

Small Serendipities

No comments:
The other day I was explaining to a friend the concept behind the "ping of death". I reached for my TCP/IP book and opened it. There in front of me was the page I wanted: the ICMP data structure diagram.

Now, this is not something that I look at a lot - or at all. So it's not like the spine was bent so that I would go to that page. It was just luck.

Yesterday, I was thinking of project names for something, and it involves trees and graphs, and it's in Java, so I thought "Juniper" would be a nice name. I opened my "Field Guide to North American Trees" (a dendrologist's favorite) to look for icon ideas, and what do you know - a juniper was staring back at me (a weeping juniper to be exact).

It happened a third time when a "faith based" person at Socrates Cafe decided that special relativity and spacetime was unChristian. His arguments were not convincing, but when I got home I wanted to brush up on the topic so I pulled my trusty "Spacetime Physics" wanting the "twin paradox". But alas, I had to use the index. :)

Chocolate convention in Pasadena

No comments:
Yummy. December 9 2007 11a-5pm. $20.


A sample of salon participants includesL'Artisan du Chocolat, Mignon Chocolate, Decadent Tastes, Yum!Chocolate, Vermeer Dutch Chocolate Cream Liqueur, Chuao Chocolatier,Guittard Chocolate, The Chocolate Traveler, Malibue Toffee, CocoaPrive, The TeaRoom, Amano Artisan Chocolate, Chocolate Covered Company,Randy Fuhrman Events / Randy's Brownies, Silver Stone Wines, C'est TresChic Chocolate Molds, Le Creuset, Swissmar, Putumayo World Music,Chocolate Television, and much, much more.

OLPC in political trouble (BBC news)

No comments:
OLPC logoThe OLPC is a great idea (see this Clickable guide to the key features of the $100 laptop) - and now Microsoft and Intel are competing against the OLPC in Nigeria?

Dr Aja-Nwachuku said he was now assessing OLPC alongside other schemes from Microsoft and Intel.

"We are asking whether this is the most critical thing to drive education."


Whaa? That's just...wrong

Adobe AIR - no System.exec()??

1 comment:
This is weird - according to the Adobe AIR JavaScript docs, applications can access the local filesystem, clipboard, and network, but doesn't let you shell out and invoke another process!!! Why bother with that restriction? That's like making sure the cash register is all locked up tight - and then keeping the money in a jar sitting on a nearby counter top.

(I want to write a little app that will invoke Ant. Do I have to write my own Adobe AIR to do this? Or should I wait for the Prism Project? If I do write my own as per this earlier post, I think I'll call it "Eclipse DIRT", roughly based on the GWTShell.)

Make your PC look Like a Mac (summary)

No comments:
Interesting article over on crave cnet about making your PC look like a Mac. It's kind of annoyingly laid out (although you do get to see "screen shots"), so here's the meat of it:
  1. Stardock
    - could be useful
  2. MyExposé
  3. Konfabulator
  4. DeskSpace - my personal favorite
  5. FlyakiteOSX 3.5

Motion capture from MIT

No comments:
Some MIT students made an inertial motion capture system for under $3k in off-the-shelf parts. This video shows a guy playing ping-pong, skiing, driving, and walking. (I noticed that he didn't do any jumping!)

(I always thought that this was how motion capture was done, but apparently they mostly use optical capture.)

Game designers and movie studios will be all over this.

Idea: Iphone speakerphone volume booster

No comments:
Many users report that the iPhone speakerphone volume is too low, even when on the highest setting. It would be a nifty device for home or car that would attach to the base of the iPhone and boost the speaker. Well, actually it would probably *replace* the speaker.

Come to think of it, I wonder if the new generation of iPod speaker docks (the old generation does not work with my iPhone, alas) could be used for this purpose.... It's worth a shot, even if the iPhone mic might get obscured (the mic is also on the bottom of the phone, and would be blocked by the doc.) One could "mod" the doc by, say, drilling a hole in it to give the mic some space.

Grammar myths exploded

No comments:
For some reason Google decided to put an ad for a grammar book on top of an email I was reading (perhaps they're trying to tell me something about my writing?) The book was titled "Woe is I" and being somewhat intrigued I clicked on it. And lo! I was rewarded with this little jewel of a page, debunking some common grammar myths. Here's one:

TOMBSTONE: It's wrong to end a sentence with a preposition.
R.I.P.
We can blame an 18th-century English clergyman named Robert Lowth for
this one. He wrote the first grammar book saying a preposition (a
positioning word, like at, by, for, into, off, on, out, over, to, under, up, with)
shouldn't go at the end of a sentence. This idea caught on, even though
great literature from Chaucer to Shakespeare to Milton is bristling
with sentences ending with prepositions. Nobody knows just why the
notion stuck—possibly because it's closer to Latin grammar, or
perhaps because the word "preposition" means "position before," which
seemed to mean that a preposition can't come last.

At any rate, this is a rule that modern grammarians have long tried to get us out from under.


Useful blogs I'm glad I don't have to read

No comments:
  1. http://www.ofccp.blogspot.com/
    - an enthralling look at the fascinating regulatory landscape of affirmative action law


(I will probably add to this list over time.)

Installing Bugzilla - step 1, install Jira instead

6 comments:
Installing Bugzilla on Windows could be easier. The kind people at mozilla.org have provided instructions - but sheesh! It's muy complicado.

The instructions are no better for Linux! Sheesh! (How do you upgrade MySQL with cpanel? I have no idea.... Although these instructions are available, they warn it will take an hour. And this is real brain surgery on a working host.)

I did some digging and I think CollabNet will be a better solution. I just need a box for it.

[Update: this post was originally titled "Installing Bugzilla - step 1, install Collabnet instead". Mark, a subversion commiter, kindly pointed me toward SFEE. However, I had problems installing it, and had to look elsewhere. I was able to install Jira without any issues, and I was able to integrate it with Mylyn quite easily. Yes, it is $1200 and that seems like a lot to me, especially without the SCM integration "FishEye", which is another $1200. I'd say a grand for both is reasonable. While shopping for an issue tracker I was interested to note that Joel Spasky makes a bug tracker, too, called FogBugz. It looks like a good product and has per-user licensing ($200/head). It even has a Mylyn connector. But I already installed Jira and I like it!]

Matt Raible comparing 6 web frameworks

No comments:
I didn't really like the talk all that much, but I did like what Matt
says at the end, "only start shopping for a new framework when your
old one starts to give you pain. Don't just switch to something
because it's fashionable."

Amen to that.

Idea: virtual KVM

3 comments:
Ok, so I often have two machines running, a desktop with two screens and a laptop with one screen. It looks like this:
photo.jpg
(Click on the photo for an explanation of each screen). It would be cool if my mouse would work on all three screens, even though it's another computer. It would be REALLY useful if they also shared a clipboard. How would it work?

A program runs on both the master and slave computer. The slave waits for mouse event information on a port, and when it's recieved the slave software generates low-level mouse events. The master waits for a certain gesture (in this case, hitting the edge of the middle screen) and then starts sending mouse events to the slave. Moving clipboard information around is more interesting - basically I would make it so that when the "remote" cursor copies something and then it comes back, a clipboard transfer occurs. I have no idea how copy/paste information is stored or how it would be transferred - and that's where the interest lies. One could extend this easily to transmit keyboard events as well.

This is kind of like CrossLoops or LogMeIn but without the need to reproduce video data.

This would be a really nice little utility for a Windows hacker to come up with. (Could it be done in Java? probably)

[Note on making this post: what a cool workflow! I took the photo with my iPhone, emailed it to flickr, went to my flickr account and dragged the photo into Scribefire. I then posted, looked at my blog in another tab and copied the link into Flickr. Sweet.]

[Update: Jim White points out a wonderful tool called Synergy that does exactly what I want. Big thanks to Chris Schoeneman & friends for writing it.]

[Update: Well, Synergy works great. I still think it would be a fun Java
project though (and heaven knows that we computer programmers will never tire
of reinventing the wheel).

Additionally there are four enhancements I would like to see:
  1. Support for cross-machine drag-n-drop.
  2. Improved security (when on the client machine keystrokes and clipboard data are transmitted in the clear; could be solved with a simple tunnel)
  3. Improved usability (setup could be a lot more intuitive)
  4. Support for arbitrary screen locations (screens are always assumed to be at the same height, which is often wrong; my tablet is often *below* my primary screen when used as a writing surface)

And as much as I love cross-platform C++, I'm a Java guy. :)


Technorati Tags: , ,

Mass Effect

No comments:
Bioware is a great game company, makers of the fine Neverwinter Nights game for the PC. I am deeply impressed with the gameplay trailers for Mass Effect, a sort of Sci Fi RPG shooter kind of thing. Alas, it's not enough to make me spring for an Xbox 360. Come on guys, release for the PC!

SF Idea: a post-human society of tiny people

No comments:
Some of my favorite authors like to explore post-human societies: people like Ian M. Banks, Greg Egan, and (arguably) Frank Herbert. One interesting take would be to posit a future Earth where humanity has taken a smaller physical form (perhaps the size of ants). This hypothetical society does this primarily to support more human life, and in a less intrusive manner. Despite supporting trillions of people, Earth viewed from space would look idyllic. Members of this society are immortal and high intelligent, of course. Other reasons to become ant-size come to mind - when you're that small you can fly! You also have superpowers like being able to leap many times your own height (like a flea). Assuming these post humans are built from a diamondiod substrate (a la Drexler), such tiny humans would be essentially indestructible, able to take enormous accelerations without damage. (They would be very resistant to heat as well, but could still be destroyed by being exposed to too much radiation.)

These tiny humans could create a city of thousands in a single tree. The Earth's natural state could be left basically untouched, despite supporting *trillions* of human lives. Space travel becomes enormously cheaper - people are so small, and life-support relatively meaningless, that they can be hurled into space by railguns. (You'd still need a fairly large spaceship, I think, at least the size of a canon ball so that it can overcome atmospheric friction without ionizing the poor tiny people)

Of course, sometimes people might need to assume temporary larger form for certain kinds of macroscopic work (like construction). A cynic may say that such a form would result in an arms race of size - but I would contend that the ubiquity of nanotechnology would make size-based warfare pointless. The idea is that if you step out of line, you'll get disassembled!

I would imagine that most humans of the world would have access to a very fast and ubiquitous data network, letting people across the globe stay in close contact. However, physical travel would be fraught with risk. You can't die, but you could loose a lot of time getting swallowed by a seagull (and waiting to get pooped out) or falling down a cliff, and have to climb your way back up. (Interestingly, this is much the same "downside" to dying as you experience in games like World of Warcraft.)

So how would our society get to be like that? Unlike Egan and Banks, I don't think it's even theoretically possible to quickly and easily "upload" people into a computer and reassemble them in a virtual world. The brain and body is very complex and consists of many, many cells composed of many, many atoms all in constant motion. I suspect that what may happen is that we humans will create robots with similar capacities as ourselves, but with a more regular physical representation of mind. The first few generations will be raised by humans (perhaps even simulating growth by "molting" their old bodies). For all intents and purposes, these robots will BE human. Eventually the last biological humans will die out, leaving only the immortal versions behind. These post-humans will choose their physical forms with much more freedom than we ever could. (No doubt there are some wonderful stories about the early days around robots who choose, perhaps out of love, to take a biological form and die along with their bio-human lover...a kind of mix of JRR Tolkien and Philip Dick.)

The story possibilities of this world are really grand: perhaps there are sub-cultures that cherish death and the fear that comes with it ("to make life worth living" or somesuch), and so go out on adventures where they face real risk of destruction; at any time, the number of children will be small, and so perhaps there is a unique-to-the-world place where children are raised together with their "parents"; unlike Earth, where native life is protected, the moon is an enormous city, supporting even more post-human life than Earth does (it's the utlimate metaphor for city/country divide); humans live in many of Earth's most forbidding environments: at the bottom of the sea, in vast underground caverns, and within the crust of the earth. Perhaps a conscious decision is made to let nature take it's course, but that extinction level events should be prevented if possible (e.g. prevent meteor impacts, but don't prevent natural climate change). Perhaps people will try to increase the mental capacity of their children in increments, and see how that works out. Perhaps they will create vast intelligences (the size of a squirrel) and see how that goes. Perhaps those with wanderlust and a taste for real adventure would join (relatively small) generation ships that are sent out occasionally to nearby suns. Perhaps there are a few hold-out groups of bio-humans who, back in the dimmness of time, resisted the trend, and who, despite their loathing of the small people around them, are left alone as part of 'nature'. Perhaps these bio-humans are relegated to vast, lifeless underground territory where they can "do no harm" to the natural environment. Or perhaps they got (terraformed) Mars. Perhaps the bio-humans want the Earth back, and are only held back by the overwhelming numbers and technological superiority of the post-human civilization. (Now that's an interesting scenario - who does the reader root for, the bio-humans wanting to retake the Earth and mold it to their desires, or the conservationist, but alien post humans who want to preserve and protect Earth's natural grandeur?)

Definitely fertile soil for a story or three.

Crayon Physics at Thanksgiving

No comments:
I couldn't resist - I brought my tablet to Thanksgiving dinner, with Crayon Physics loaded up, and showed it around. Watching people work with it was even more interesting than the game itself!

My older aunt (in her late sixties), who plays a lot of online poker, was a bit mystified by the whole thing. I had to explain what the point of the game was several times (e.g. 'get the red ball to the star'). I found it rather interesting that something as simple as that sort of objective would be difficult to understand. I suspect that she didn't get it because the game has no "payoff" - loud sounds or images to celebrate your "victory". Also, there was no money involved. :)

Once she sort of got the point, she was very tentative with the stylus. She didn't want to touch the screen with it. Once she sorta got over that, she kept wanting to "push" the ball directly. Of course, this is not the nature of this game - you can only indirectly interact with the ball by creating a variety of objects).

Then, when the ball wasn't rolling fast enough for her, she tried tilting the tablet! That was awesome. It gives me an idea for a little card (either pc card, sd card, or whatever) that could give that sort of feedback. Note: the iPhone has a limited accelerometer of that sort.

When I showed her how to reset the level (by pressing escape and
clicking "reset level") she was also a bit confused. She never did get
used to just touching things with the stylus. Once again, I would guess this is because of the great pains she had to go through to unlearn all of that intuition when working with computers, and is now loath to give that up!

Next up was my small cousin. He's five. He had absolutely no problem with the stylus. In fact, he took to the whole interface like a fish in water and was delighted (at least for about 30 minutes). The interesting thing with him is that he liked to draw smaller squares right on top of each other, and right on top of the ball, which has an interesting (and useful) effect in the game. He got through "teeter-totter" level by basically squirting the ball with a succession of small squares. (for the record, when I solved it, I was enthralled with the idea of using the the teeter totters to hurl the ball in an elegant arc. I eventually settled on an elegant two box approach, which none of the children ever figured out. But when I showed them they were duly impressed.).

He had a few good ideas on the "space" level - building a structure on the lower level, rapidly drawing boxes to try to control the ball's decent. But he eventually started trying the "shotgun" approach of drawing lots of (big) squares over the ball and hoping that it would squirt in the right direction. He got really close a couple of times. (The solution I used is 3 boxes. I tried to give him hints in that direction, but I don't think it took).

Anyway, I could see him getting frustrated and by this time we had a crowd of little cousins watching us, so I skipped the level. Once again, he surprised me with a new approach to the "barrier" level - after a few false starts, he used little boxes to successively raise the ball to an equal height with the barrier and then push it over. I think that was clever. (My own solution was very, very different, and relied on getting the ball under the barrier.)

If you have a tablet, I highly recommend doing this experiment. Let me know how it goes (either in email or comments.)

My shiny new public key

No comments:
I've played around with PKI stuff for a long time. Just about the only real application I've ever had for it is at work where admins would often use public keys to indicate allowed access rather than username/password pairs.

Recently, I found another practical application: it's a great way to send sensitive information (especially passwords) through the mail.

Theoretically it's also a great way to prevent people from snooping on your conversations. But that's never been a huge concern of mine.

The big drawback to this sort of thing (alluded to in another post) is that you have to a) keep the private key file around, and b) you have to remember the passphrase you used to encrypt your private key. I had an older public key that is now useless because I forgot my passphrase!

Anyway, here's my public key. (I've also sent it to a variety of public keyservers.)


pub 1024D/3CC46BE7 11/20/2007 Josh Rehman <josh@joshrehman.com>
Primary key fingerprint: 8256 F0E4 70F9 A9C8 C9DA BF50 6369 29BD 3CC4 6BE7

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.7 (MingW32) - WinPT 1.2.0

mQGiBEdDr20RBACwZzC/CzkWwVcQANcpYZ4jxmtxPDQlKIi0zW3DGjVfXA0KMnqH
wg30O8D0J/uhtaZN4nVLrqBLT6Ag3NOA7SPESoaM6Lzl+ZolXRgG5dFLganrfMzE
Cxje7MIzuOH+q3xCf10NN/T+wp2MFbu98p3r39LFcrpq87Bj5VxggA8ecwCgtDQb
YKjR8rcoMHaKnnV5gXZoHdMEAKALOw3AtqTdQ0OluCejFdHsQUrWDAEdCDVWVNoO
AtdRItpsByS/lRKlZgqkdWhO5QINzjoMPgyUxv5bSoV9VZda8y6IYyBbVtF17m/1
5N+t9dBXSStkGeZi+6Gaf2/bKqNuS3R46J1kzDxs1bmyD5QRBGqt5/YzNSEGo9ST
jTQ0A/9rAKf70yuPOHNQFRHbbSwJSdBUfEBp+WKZHMImtHptuQYg33LV72cBRWmJ
/yJKWy1X0CepT6CULULubdmxnmfdzjtoiD3bH3uzwQBC1jcDoPbf68sV6d08EvOX
46k27ISQcdYK1iUDLAbwVz9z195RB2E0CVz91fBZDXwCAYkqVbQhSm9zaCBSZWht
YW4gPGpvc2hAam9zaHJlaG1hbi5jb20+iGAEExECACAFAkdDr20CGwMGCwkIBwMC
BBUCCAMEFgIDAQIeAQIXgAAKCRBjaSm9PMRr52ayAJ9AVQRPeQKd3oA1+uJ6zWT1
gz/0kQCghy7Fyyg4O1d7CxMhscyFXYf56k+5Ag0ER0OvbRAIAIW3M8Pshx3x99jC
tfy53QlcFZ46KdcwvzGu0tj4BQN4oD1WzN8pwNQHBndgS8tcLvui6EmrhrVMp7kT
UJ51euLdB3vXdBsjN4yBHcmE0JpecrpsJhA3sFuFVse5U/8ccsGFs2/bCOyUvSN8
DLKug3Ej2xnnhAyXVIy0STTeh+JdZh/pRdnHUNkl15AAClYzbP66KpKuXtN1HTiC
nYgHADfUAf57PxbH9XICMFObo9Bi3hNxvotG6lRyI8Rdw+PFDwKkozzbnTFHoLxm
ohLIV5a0jbxMEcEnbZbG9AJYABHpOhu8XRxfRYELOR9dyqdhbLayktvQgBrd5wqk
yIDgK58AAwUH/iN0fUC8gKwbwkbgvBLcK0p7NjUeab+6eOk429yka0sk24Nc2E4s
a1CmD5Ao3voozzcpe3ryoqgqHLYh3TrNw8EWBfsJJhoB5AqcuHPN9sIJdPlJ5IAL
SDwVgAfdvEdCwh/WbqvgfhCzEAtIV4T8R52CktImRqMeFNiCEaVzxeCdHNeX8Ade
Ao2JXal3fNrDvBy9KeFAK35IXQZk5ui45SVYL5zWr+PIShwYPolM+ziERyMUGFWB
pPR0A5fEBCmcLWrV2QXlVeHyr7jj8UKbQ46RS8CRSqBa0dq0sUjHIDBiXwO9CYCK
KmjpCSfbBKi8ZnPKg4/7Hlogcc5v0NXsFiSISQQYEQIACQUCR0OvbQIbDAAKCRBj
aSm9PMRr5wBbAKCNktUaTKHdCRrbKwkX81cJN/67nwCgp8+lV/hXiuSf4dzdPpLo
pEio86k=
=YpJK
-----END PGP PUBLIC KEY BLOCK-----


Encrypt something and send it to me! It's fun!

Scrap theory in action

No comments:
Crayon Physics is a lot of fun on the tablet - too bad it's so short (only 7 levels). The amazing thing is that, to Petri Purho, this is "scrap". (see my earlier post on scrap theory)

This guy Petri Purho is releasing a game a month and writing about it on his blog. He was interviewed about it, and apparently it's just a hobby. But a serious one!

Damn, that's inspiring.

The three forces pushing our energy policy HARD

No comments:
Three powerful forces are pushing the first world toward alternative energy and energy efficiency:
  1. Prices - gas is getting very expensive, and this hurts every part of our economy.
  2. Politics - petro dollars empower some of the most extreme countries in the world, our enemies.
  3. Climate change - there is increased acceptance that people are affecting the world's climate, and not in a good way.
I believe that businesses and people will respond by living more efficiently and seeking less expensive alternatives: living closer to work, walking and biking more, consuming less. I also hope that alternative, renewable, cleaner fuels like solar, biodiesel and ethanol get more attention. The bright side is that there is a fortune to be made during this tectonic shift. And it's a fortune fueled primarily by technological innovation, which the US (knock on wood) still has in heaps.

New developments in desktop applications written with web technology

No comments:
Adobe AIR is a skunkworks type tool that allows developers to write desktop apps using their favorite web technology (HTML/JavaScript, Flash, Flex). There are also lots of tools that go "the other way", that let desktop developers write desktop apps and publish them on the web. Is AIR good? Is it a good direction for software to take? Or is it a short lived distraction? I think its good. I hope that all client code can one day be deployed regardless of target environment. Furthermore, although they've been derided for many years as simply poor replacements for desktop apps, many web applications actually have a lot going for them in terms of architecture.

A related idea I had some time ago is to use the Eclipse Rich Client platform to give users a way to execute their favorite webapps in special windows. Using this hypothetical tool, Gmail would have it's own icon and look like a normal application to the operating system, rather than just another browser window. You wouldn't see or be bothered with all the browser crap you don't need with gmail. You'd have a recognizable icon in your taskbar (rather than a generic browser icon). And you won't worry about mixing tabs around, etc, or accidentally closing the application. In addition you could support a high degree of offline operation. Of course, this could (and should!) be applied to any webapp which is designed and intended to run for a long time on the desktop - think enterprise cms tools, etc.

[Update] Thanks to Eric Case for pointing out the wonderful Mozilla Lab's Prism Project. This project doesn't use the Eclipse RCP, but it's goals are essentially the same as mine. He also pointed out a Mac/Gmail specific desktop integration product called Mailplane. Indeed, Mailplane goes even further than I was thinking, supporting things like drag-n-drop for adding attachments (which is really nice!). Although it doesn't seem to support offline operation, which is kind of odd. That kind of environment could provide a Greasemonkey like facility allowing developers to insert something like the Dojo Offline Toolkit. (You could do something in native code too, but why bother?)


Idea: secure webmail proxy

No comments:
Ok, so it's well-known that travellers of the world are being keylogged and hacked big time. Additionally there are growing concerns about webmail privacy.

Solve both problems with a private secure webmail proxy that does two things: defeat key loggers with a graphical challenge response credential check, and defeat eavesdropping by making encryption easy to use with webmail.

The system consists of some host on the internet - preferably one that's stable and owned by the user. E.g. a home server. (This minimizes some risks, but maximizes others...) That system provides a web interface that can be accessed world wide (unfortunately most consumer ISPs block port 80, and some internet cafes block alternate ports...). The system contains your username password for gmail, for example, and prompts you with a fancy graphical clickable scheme to verify who you are. It then logs into your webmail, and provides you with content.

This is enough to defeat keyloggers (although there are easy tricks to do that), but since we're proxying, why not go one step further and make PKI services easy to use? The basic idea is that a small piece of software on the proxy will be looking for encrypted content and unencrypt it for you. It could be presented as text, but it would be even cooler to present it as an image, making it that much harder for someone to eavesdrop assuming they have complete control over the client machine.

This addresses one of the severe usability flaws of modern PKE software - it's too easy to mess up. It's easy to loose your private key; it's easy to forget your private key decrypt passphrase. It's hard to install the correct software and use it properly, on all the systems you might want to use it on. In this system the private key file is stored on your (presumably secure) home system, and the proxy has the ability to decrypt the private key.

Because of the nature of this sort of software, it basically must be open source. Ironically, as it becomes more popular so the countermeasures will become more popular as well. However, it's like those red bars people put in their cars - they are possible to remove, but if presented with two cars one with and one without, why bother?

A "not too shabby" variation is to use something like FireGPG, which is a Firefox plugin that at least eases the integration woes between GPG4Win and the browser. Frankly I think my idea is better. :)

Scrap theory

No comments:
When people love to do stuff, they can't stop doing it. Since 90% of everything is crap (Sturgeon), that means that people who love to do stuff generate a lot of crap. Or scraps. In the sense of a woodworker makes scraps, or perhaps more in the sense of the failed prototypes. When the scraps are information (ideas, writing, songs, art, programs), the internet is a good dumping ground for them. After all, one persons scraps is another persons treasure.

I daresay that "scrap theory" itself qualifies as a scrap of sorts. :)

Anyway, if you believe this is true, then it's all the more reason to be fearlessly creative. It's also a good reason to be open and non-proprietary about your creations. Share them! Let them out! And if your not sure about what you love to do, then check out the scraps that you leave behind you in your life.

The 12 TV ad formats

No comments:
Slate TV has a nice rundown on the 12 tv ad formats.

Chinese Espionage

No comments:
The US-China Economic and Security Review Commission said some pretty disturbing things to Congress today about China. They are particularly worried about theft of military technology.

Grilled Cheese tip

No comments:
I like grilled cheese sandwiches. Mahalo Daily inspired me to share my own tip:
Butter the bread, put the cheese in, then sprinkle good parmesian cheese over the outside of the bread before grilling. This results in wonderful salty, burny, cheesy bits all over the bread and can turn a mediocre sandwich into something special.

The "parmesian on the outside" tip can be used for quesadillas as well (and it is, to great effect by my local 24 hour coffee shop, the Shorehouse Grill).

Productive Day

No comments:
I got a lot done mostly because I was just feeling like a stubborn bastard, and wouldn't take no for an answer. At certain times I felt like I was metaphorically shooting a six-gun at my computer's feet while yelling maniacally, "dance!" It worked because by golly now it's doing a jig. Nice.

The unbearable strangeness of internet culture.

No comments:
I've been spending more time on the internet, like the real internet, than I ever have in my life recently. It's kind of weird because I've been coding for the web for a long time. But really, I don't use it as much as some people do. I start to understand the blogosphere - there is a kind of breathlessness to the discourse. There are so many people, saying so many things, it's a bit overwhelming. Take, for example, this strange site. It's basically pictures of cats with strange, illiterate captions that are meant to be humurous. (I found it through Veronica Belmont's delicious tags. She could be the poster child of the modern social web. Or perhaps that's Andy Wibbels job?)


There has always been an undercurrent of self-deprecating illiteracy in the computer world, especially in gaming. I find this lolcat thing exceedingly strange. There are some ultra talented independant humorists out there (like the atrox, ben and eric, and quiet library to name just 3 "internet wave" sketch artists). So I'm not sure exactly what the point of this lolcat stuff really is.

A very handy online Javascript reference - quirksmode.com

No comments:
So, it turns out that doing real app development with GWT doesn't save you from having to learn about JavaScript. I'm disappointed, but not surprised. Luckily the "JSNI" feature of GWT (which allows you to write small snippets of JavaScript) is easy to use, and helps to minimize the amount of script you have to write.

Anyway, I'm not a JavaScript person, and I needed to learn a thing or two. Good references are surprisingly hard to find! The first link on Google, for example, is the truly awful javascript.com - not only is it useless, I actually fear getting malware while browsing the site. The local bookstore had the usual suspects, but something told me to stay away from the O'Reilly tome(s) - they are mostly reference and that struck me as rather redundant, given how quickly changing such things tend to be. Luckily I found Peter-Paul Koch's excellent QuirksMode website, which is exactly what I wanted. I like it so much, I bought his book just as a small thank you. He's got a lot of handy tutorials and references which seems perfectly targeted toward someone like me.


Technorati Tags: ,

Buzz: some useful tools.

No comments:
  1. Online backup $5/mo. http://mozy.com/news
  2. Shared folders - free (for now). https://www.foldershare.com/
  3. Remote control for sysadmin work, whatever - free. LogMeIn
  4. Remote control - free. CrossLoop.
  5. Painless VPN (great for tunneling games, CVS access, etc) - free. Hamachi
  6. NetBeans - Eclipse really kicked it's ass, and they're learning. Better JEE, Swing support than Eclipse. http://www.netbeans.org/
  7. Glassfish - Sun's best piece of software ever? https://glassfish.dev.java.net/
  8. Google docs - free, zero install, Office collaboration. http://google.com/docs
  9. Google reader - a very good rss aggregator. http://google.com/reader
  10. The best blogging tool ever, scribefire. http://www.scribefire.com/
  11. Some other stuff I haven't tried: CamStudio MWSnap
Some of these I found out about through friends, others through Slashdot, and still others through Extremetech and various miscellaneous online forums.

You'll never run as fast as when you're running for your life.

No comments:
Case in point:

How to charge your phone in an emergency.

No comments:
Let's say you're stuck in the middle of nowhere - or perhaps you don't have access to a USB enabled computer, and forgot your wall charger. You're phone is dead. You need a phone number off of it, or perhaps you need to use it. What should you do? Well, if you have an onion and some Gator-aid (actually, simple salt water would do) you'll be ok. Here's what you do:

Problems with Autoplay? Check this out.

No comments:
I found this handy Autoplay repair wizard which can help you if your drives stubbornly refuse to stop asking you what you want to do when you plug in the device. Unfortunately, it didn't figure out what the problem is in my case - I suspect that the IBM/Lenovo software is responsible. I could call IBM's tech support, but my cell phone minutes are running dangerously low. Perhaps next month, or perhaps I could ask to borrow someone's landline.

Cool Security News Website

No comments:
They have an article on new-fangled botnets which sound quite scary. Looks like a good site for the paranoid computer users of the world (apparently they really do have something to worry about!).


(There's also a REALLY COOL ad type that I've never seen before. It's an animated dog-eared corner of the page that, when you click on it, "peels back" to expose a very colorful yet tasteful ad. It moves enough and shows enough to be intriguing, and it doesn't take you away from the main site. Plus it supports a very strong paper metaphor. I wish I could reproduce it here for you, or at least find out who's responsible... The ad is for Arbor Networks.)

Another YouTube Gem "my name is lisa" short film

No comments:
It's so wonderful to see all the excessive talent in the world being brought to light by services like YouTube. Check this out:

S.C. Dems reject Colbert candidacy

No comments:
Stephen Colbert in 2007What a sham. S.C. Dems reject Colbert candidacy. This isn't about entertainment, this is about people actually caring about civics again. I thought it was great when Colbert brought the paperwork for getting on the ballot out and filled it out on air.

Colbert is providing us with a tongue-in-cheek, down-to-earth civics lesson. Yes, it's also a thumb in the nose to those in the establishment who have no wish to have the details of their arcane practices understood.

The beauty of Colbert's treatment is that the man himself is incredibly intelligent and detail oriented; in combination with being funny, he's a great teacher!


Powered by ScribeFire.

A "Be the Refugee" computer game for kids - finally!

No comments:
Finally, something American kids can really use - A Refugee Game! Yay!


The game was designed by workers in the United Nations Office of the High Commissioner for Refugees (UNHCR).

Its various challenges include escaping from a hostile
town, guiding your character across a dangerous border and staying
alive in foreign lands with unfamiliar languages.


Screenshot from the UNHCR's online game, Against All Odds


Powered by ScribeFire.

The Innocent Inventor says, "It's gonna CHANGE THE WORLD!!!"

No comments:
Part 3: "The Dojo Programming Model" reminds me of a simpler time when inventors inevitably predicted their inventions would utterly change the world. You know, that cars would make horses go extinct. Phones would make the post office go out of business. That sort of thing. In this case, the well-meaning Dojo people obviously intend to be the be-all-end-all of JavaScript libraries.

(And there's no shortage of other contemporary examples. Good heavens, I don't think anything will ever me truly obsolete from this point on. Vinyl records are coming back into fashion, potentially replacing CDs. "Classic" video games are being recycled via subscription services and mobile devices.)

But programmers seem particularly vulnerable to thinking this way. We always seem to think our One True Library/Language/Tool/Whatever will replace everything else because it's Better Cheaper and Prettier. Of course, this is rarely, if ever, the case. Looking back in time, we see that older technology can be supplanted, but it never really goes away. We still have telegraphs; we still have blacksmiths, and horses, and vaccum tubes. Heck, we even have gas ranges (something I'm sure the microwave people didn't think would stick around).

One key question is, does this sort of cynicism hurt the innovation process? To know that your device or idea really won't change the world can be humbling. But isn't it better to be realistic? Truth be told, I'm not sure. A part of me (a big part) is on Dojo's side - I hope they DO change the world.