tidyCJK
Announcing lib.tidyCJK.js which pseudo-kerns Chinese, Japanese and Korean passages by properly inserting a space between CJK glyphs and Latinate / numeric glyphs in them. Clone it or fork it on GitHub.
It’s an early alpha, so might be full of bugs. With imminent field application, its quality and accuracy will likely improve. tidyCJK uses Unicode1, so it needs to run in an environment that supports JS 1.3+.
Why use lib.tidyCJK.js
For the exactly same reason why Cappuccino is strong: standard bodies move slowly, and despite that CSS3, a work in progress, already has much in store, we need similar capabilities now. And we often have to interact with existing material, which comes from all places in all sorts. Better post-process everything and make them look good than wait for everyone to conform.
Finding a character’s code easily
Add this little cute recursive JavaScript method if you’re targeting JavaScript 1.5+ 2, so you say String.hex instead of String.hex() 3:
String.prototype.__defineGetter__("hex", function() {
var response = [];
for (i in this) {
var charCodeString = this.charCodeAt(i).toString(16);
response.push("\\u" + (function(stringToWrap, finalDigits, padding){
if (stringToWrap.length >= finalDigits) return stringToWrap;
return arguments.callee(padding + stringToWrap, finalDigits, padding)
})(charCodeString, 4, "0"));
}
return response;
});
And call String.hex — for example:
> "f(*^%)g".hex
["\u0066", "\u0028", "\u002a", "\u005e", "\u0025", "\u0029", "\u0067", "\u0066"]
Happy Kerning!
On A Popular Misconception, and iA’s reality check.
Design mixes idealism and realism. Despite that there are no leather buttons “in the real world” [sic], we use it sparingly. The key, undoubtedly, is “sparingly”. Kitsch? It is necessary if it works nice.
Quoted,
The passive (or as Apple calls it: “lean back”) tablet format suggests creating limited information architecture with linear use modes. In comparison to a website, an iPad app is like a closed egg.
[This] is one of the main challenges iPad app design poses to interaction designers. How do you make navigating on iPad as easy as breaking an egg? And in particular, how do you measure information on a device without static scrollbar?
In order to make the user feel in control of an iPad app you either need a strong and simple structured overall content model that is consistent with the mental model of most users (like the brilliant Marvel application)—or you need to re-invent the way information is measured and orientation is given.
We’ll see.
Why teamwork is not always a fine choice
Depends on whether the goal is to develop or maintain something.
People who think about software frameworks ought not use the same thought pattern against consumer and practical, applied software.
That’s why the dubbed “C on Rails” is outright a joke. We can’t live without embedded software, but things start to get awry when people obsessed with embedded software start dictating how applied, consumer software ought to be done.
Perhaps because I’m obsessed with applied software. Perhaps because I love prototyping, and am bad at mass-producing. Time will tell.
Factoring Estimations
By anectodal evidence, it takes me approximately 1 week to churn out a full-fledged design, but that week is often scattered within a span of 2 or 3. That means my turnaround is not “one week” but 3. Rule of thumb: multiply the budget, and the time it takes to finish everything by 3.
A designer friend of mine goes this way:
“Two monthes of cushion time to the estimation, always.”
Word.