One painful thing about translating between two languages is that you usually have to specify a direction. That’s bollocks. Life’s already too complicated to worry about whether you’re translating from English to Spanish or the other way around.
In that spirit I created the str(“Super/Simple/Synchronous TRanslation”)YubNub command. You specify, in any order, 2-letter codes for the two languages you want to translate between and the text you want to translate. str avoids the direction decision by doing both at once, each one presented in an individual vertical frame. This is not only much faster in practice, it’s more unconscious and habit-friendly.
You can try it right here! (en stands for ENglish, es for ESpañol=Spanish)
You can see more instructions and the 2-letter codes at str’s man page.
YubNub, for the uninitiated, is “the (social) command line for the web”—a social webapp to use (and create!) handy commands that search your favorite websites and do a whole nother bunch of wonderful things. The simplest way to use it is from their homepage but there are a ton of ways to install it. Installing it in the location bar, as I once explained here, is in my opinion one of the coolest.
A 16-line hack to make the JS DOM API a tad more humane.
...absolutely amazing. I’ve yet to find a smaller and yet more astounding example of how you can encapsulate functionality within JavaScript and create brand new APIs on the fly.
Web pages are written in HTMLWP but as they have become more and more complex, they now tend to be written, clientside, through JavascriptWP, which can manipulate and insert HTML. Google Images, for instance, uses Javascript to write the HTML that displays your image results.
Yes, it’s roundabout, but it’s due to the nature of the languages: Javascript does stuff, HTML displays stuff. When you want the browser to do things (instead of merely displaying dumbly what it receives) and when these things themselves involve a lot of displaying, you end up writing HTML through Javascript.
HyperScript is a bizarre and quixotic attempt to write French in English; that is, HTML in Javascript. Basically, you do what went on in the Norman conquest of EnglandWP: you anglicize as many French words as you can; that is, you turn into Javascript as many HTML words as you can.
The lark itself takes gratefully (and rather surpisingly) only 16 paltry lines of Javascript code (highlighting thanks to Mark “Tarquin” Wilton-Jones.):
functioneach(a, f) { for(vari=0, l=a.length; i<l; i++) f(a[i]) }; each('a big blockquote br b center code div em form h1 h2 h3 h4 h5 h6 hr img iframe input i li ol option pre p script select small span strong style sub sup table tbody td textarea tr ul u'.split(''), function(label){ window[label]=function(){ vartag=document.createElement(label); each(arguments, function(arg){ if(arg.nodeType) tag.appendChild(arg); elseif(typeofarg=='string' ||typeofarg=='number') tag.innerHTML+=arg; elsefor(varattrinarg){ if(attr=='style') for(varstyinarg[attr]) tag[attr][sty]=arg[attr][sty]; elsetag[attr]=arg[attr];
};
}); returntag;
};
});
and you can play with it right here, right now:
Test Area:
The translation between HTML and Hyperscript is straightforward, where you would have written
Remember that wacky koanELZR about reading processors(“what is to reading what a word-processor is to writing?”) and how it led to the idea of a text spacer (illustrated at length in this example)?
Well, I just found out about Live Ink by Walker Reading Technologies(via KurzweilAI.net’s newsletter, though it was slashdotted earlier) and realized people have been toying with the idea for over a decade now. Live Ink is clumsy marketese for what they also elegantly and precisely describe as visual-syntactic text formatting and these guys have not only coded it and are now marketing it, but they have already done some interesting homework, carrying on a year-long experiment where it allegedly improved reading proficiency. They offer a 30-day trial program implementing the technology called ClipRead(screencast) and though the interface is positively abysmal (why, god, why, must bad interfaces happen to good people?), it’s still very much worth downloading to play with.
Here below is a (fitting) paragraph from Charlie Stross’s Accelerando for comparison.
Amber scans the README quickly. Corporate instruments are strong magic, according to Daddy, and this one is exotic by any standards—a limited company established in Yemen, contorted by the intersection between shari’a and the global legislatosaurus. Understanding it isn’t easy, even with a personal net full of subsapient agents that have full access to whole libraries of international trade law – the bottleneck is comprehension. Amber finds the documents highly puzzling. It’s not the fact that half of them are written in Arabic that bothers her—that’s what her grammar engine is for – or even that they’re full of S-expressions and semidigestible chunks of LISP: But the company seems to assert that it exists for the sole purpose of owning chattel slaves.
I like how they limited the spacing to linebreaks and indents; it’s a good starting constraint—it simplifies the task enormously and the results are still quite good. Highlighting the verb is also a clever touch—the nuance with the biggest syntactic payoff. Overall, while the simple flaws do stand out (because we’re such effortlessly gifted syntactic parsers), what surprises me is how decently it works, how the formatted text feels more accessible than the monolithic paragraph. At several points—interestingly, at some of the most usefully formatted parts—the algorithm at work seems oddly straightforward: nestedly indent and linebreak prepositions. Ahh… I’m itching to write some regex hack… Probably will write one in a couple of days, together with some handcrafted spacing of the above paragraph, just to see what we’re aiming at.
According to VentureBeat, meanwhile, the company is poised to taking the world any minute now. I doubt it. But they have given spacing (visual-syntactic text formatting) a broad hearing and there’s now a flurry of attention on it and, probably, on the broader idea of reading processors. There are bound to be some intriguing reinterpretations and extrapolations in the coming months.
What was meant to happen, happened. I ended up participating in my own infodesign calendar challenge(where, of course, I’m one of the judges—my mom and a friend being the other two). Rather, I was one of the judges. The challenge’s doing a lot of soul-searching right now, looking for new judges, and even wondering whether it would be better to call itself a cooperation instead of a competition. (Thoughts?)
I started the challenge because while I thought designing a better calendar was a fascinating problem, I had no idea whatsoever of how to attack it. Then a magical thing happened with other people’s submissions: no big idea came, but a myriad minor improvements suggested themselves. So I started building mockups and tweaking them a little here, a little there, to prove minor points to myself. The tweaking got out of control, ate more and more of my time, and suddenly biggish, elegant ideas started coming up.
So I spent the past 5, 6 days drawing calendars over and over (and over). It was part escapism from my grandfather dying in the room below mine, but it was also unbelievable fun designing something and then have it be extruded into atoms by my clunky but trusty HP—how concrete and intricate, how physical!EEM I felt like a miniature artisan or a clockworker. And it really is wonderful to work in a simple problem you can easily explain to people.
This down here is the current outcome (there’s a Spanish version here). Click on it for detailed instructions (if you need’em), descriptions and critique. It’s the end result of a lot of incremental improvements I’ve painstakingly tried to document in this Flickr set—funny it now looks so glaringly obvious.
What do you think? I’ve fiddled with it for several days now and have returned to it again and again. My tired eyes see no clear way of improving it—how about yours? (Here, btw, is the (Excel 2007) source file—yours to fiddle with and build upon.)
(btw2: I did all my prototypes in my beta-testing version of Excel 2007ELZR. Thought it would be a good chance to take it for a spin and see what the much-vaunted interface improvements amounted too. Turns out they’re rightly vaunted. It’s as good as they told you and then a little better. It’s just so much easier, so much more pleasurable to use the program when so many options are so neatly displayed. The live previews I thought so little of in the videos turn out to be surprisingly helpful. Goodbye toolbar clutter, welcome ribbon. It’s a revolution worth Vista’s failed one.)
A better design to fit a year calendar comfortably within a business card.
Thumbnail Gallery of Submissions
Introduction
It all started because my 48-year-old mom, blessed her, can’t read small type very well. She has trouble using little calendar cards because the day numerals are so small and last time she complained I paused and empathized with her travail. The problem, it was suddenly obvious, was not only the marketing debris that encroaches upon every poor card but rather the quite wasteful scheme we use for representing a year—the same table with the same thirty-something numbers over and over.
Dream Constraints
Take a fancy flight, don’t assume anything, not even numbers, as long as you keep these things in mind:
The bigger the type size (or meaningful features) the better.
The smaller the design the better. The original goal was for it to fit comfortably (you can use both sides of the paper) within 86 by 54 millimeters (3.370 by 2.125 in) of paper (your standard business cardWP) but something slightly bigger could be just as useful. We are going for useful. (Thanks Dave Pawson!)
Immediately understandable (or pretty darn close).
Should span an entire year.
On any given “date” of the year, be able to easily tell what its name, its month, and its month number is.
Instant: The less steps you need to know before knowing a date’s data the better.
Contextual: You should be able to easily “walk” from a date to another one close by, thereby counting the days between them. People do this all the time.
Markable: You should be able to easily mark (circle, cross, check) holidays and special dates.
A Note
Yes, I know mom could carry some sort of foldable large-type calendar, 12 calendar cards with a month each, or simply start wearing her prescribed glasses (nigh impossible), but that’s off the point right now. Let that true story be our convenient pretext for innovation.
Also note that though the idea arose out of accessibility concerns, everyone would benefit with it, just as we all grip the helping handles in hotel bathtubs.
Getting The Inspiration Thing Going
I think the best existing metaphor for what we would like to accomplish here are modern statistical innovations like the boxplotWP or the stem-and-leaf plotWP—proof that novel, almost magical displays of breathtaking elegance are just around the corner. IBM’s thread arcs is a recent example.
Another good metaphor might be the Roman number systemWP vs. the Hindu-Arabic oneWP. For some five thousand millennia the best humanity could produce in its oldest art, reckoning, was the crude, procrustean Roman system—so primitive that it made even multiplication specialists’ labor. Then in a flight of fancy some unknown Hindu stumbled upon the (graphical!) principle of position—it was as far-reaching a discovery as can be imagined, allowing for the development of simple, clear-cut arithmetical rules that became the cornerstone for algebra, itself the cornerstone of modern mathematics. (If the topic interests you, do read Tobias Dantzig’s classic account, NumberAM)
More down-to-earth, the calendar and clock pedias are obvious and essential starting points—history is as good a source of what could be as it is of what has been. Information Aesthetics’ Creative Calendar Design showcase should get your creative designs flowing, and so should a quick search through the site for clocks. Tokyoflash has some interesting interfaces for telling time.
Also, dad showed me an old planner of his that had something called a perpetual calendarWP: a 5-page calendar that tells you what day it was between 1821 to 2080. Here’s a scanning of it. Perhaps it could help to find useful patterns in the Gregorian calendarWP.
Finally, don’t let constraints paralyze you. Don’t think a proposal has to be “perfect” or “right” to submit it, the tiniest improvement could turn out to be crucial.
The reason we have more efficient technologies is that we learned from doing it wrong the first time. Progress is continual refinement. It’s not about the goal, it’s about the process. The point is not to do it “the right way”. The point is to do it.
Anyone can submit a proposal. A proposal consists of a picture mock up. To submit a proposal comment this post with your name and a link to your mockup (we’ll put the picture up here in the post in the Submissions section). Submit as many proposals as you wish. Submit in parallel to the Information Aesthetics post on the challenge for extra promotion to your work.
Though you submit proposals through the comments that doesn’t mean your comments need limit to proposals. Not at all. Please share ideas, point to inspirational sources, suggest evaluation criteria, ask, answer, pick your favorites, praise, mock, and critique proposals. Warning, mini calendar making is highly addictive!
I’ll consider today, Monday January 22, 2007, the challenge’s start date. It will be open for a month (we have to give the unconscious time to do its magic), closing Tuesday February 22, 2007. My biotech friend Zamantha, my mom, and me will be the judges. I’ll announce the winner Monday February 26, 2007—my birthday—here in this post.
The challenge will still end by Feb. 22, 2007, but since I’m participating I don’t know who should be the judge or whether there’ll be a judge at all—or even a “winner”. Perhaps we should call this a cooperation instead of a competition?
The judge has spoken(congrats to Adam Sporka!) but the challenge ain’t over friends. Please keep the submissions flowing! Take our breath away with an evolutionary/revolutionary design!
Reward
The journey. Of course. ;)
Just imagine if your design works. It would make for an unbeatable showcase to scream your mindboggling information design talent to the world everywhere you go: by definition, it’d be universally useful, universally impressive, portable, and easy to explain (even to your mother!). It would be (literally) the perfect presentation card. People would use your creation many times every year and mutter praise to your name every single time. The eternal gratitude of the presbyopeWP kind would be yours (and with most people over 40 afflicted to some degree, that’s a substantial percent of the global population). Even more far-reachingly, people who use your calendar would mentally represent and understand the year through your design—you would have created a new metaphor for time. Just think about that.
%(p)(Plus! It’s still early in the year, The year’s almost over, what better gift for friends and family than a 2007 2008 pocket calendar of your own making?)%
Excuse’s user testing went so well I decided to improve it. The original strip had color but it was somehow so distracting that black and white looked better. Then I found about the burn tool in a Photoshop tutorial I chanced on. What a difference it made! There’s a lot more focus! Much better outlines. (No doubt about it, learning Photoshop would be one of the best investments of my time…)
I think the changes are for the better. And so, it’s time for phase 2 of the plan: the metacomic. Print the comic on hard paper and carry it in your pocket, tote, whatever. Next time you’re bored in the subway, bus, wherever, show it to your right-hand neighbor (in the absence of a right-hand neighbor, feel free to substitute your left-hand one). Let it be your excuse. Report on what happened. :)
It was a very simple idea—a girl and a boy, in the subway—and yet actually drawing it was a nightmare. There are any number of things I would do different for my next webcomic. I guess that means the effort was worth it: much was learned.
So, again, the idea is a girl and a boy in the subway (I used this Flickr photo to “remember” the subway). None of them can muster the courage to speak to each other, none of them can come up with a clever excuse for starting the conversation. Until the girl realizes there’s no bad excuse for meeting someone. And that is her excuse. That’s it.
KinKey is a tiny app that makes it easy to type with a US keyboard the special characters of
-Spanish
-French
-German
-Portuguese
-Italian
-Catalan.
It works in Windows XP/2000/Vista.
KinKey is now running in the background (and will run itself at every startup unless you uninstall it). At any2 text-editing place you want, you can now, say, press E and ^at the same time(in the same way you press Ctrl and C to copy) to get French’s e circumflex, ê. The order doesn’t matter, you could just as easily have pressed ^ and E to get ê.
Here’s a list of the characters you can type with KinKey:
Example:
Pressing A and / results in á.
Pressing Shift (or with CapsLock on), A and / results in Á.
To uninstall KinKey, close first the program by right-clicking its traybar3 icon, , and selecting Exit. Now just delete KinKey.exe itself and Kinkey’s gone. Similarly, if you want to move KinKey.exe close first the program.
Para desinstalar KinKey, cierra primero el programa haciendo click con el botón derecho en su icono a la derecha de la barra de tareas (al lado del reloj) y seleccionando Exit. Ahora simplemente borra Kinkey.exe y Kinkey ha sido desinstalado. Similarmente, cuando quieras mover el archivo KinKey.exe cierra primero el programa.