winter
Opus,Projects
Audio clip: Adobe Flash Player (version 9 or above) is required to play this audio clip. Download the latest version here. You also need to have JavaScript enabled in your browser.








![]()


Audio clip: Adobe Flash Player (version 9 or above) is required to play this audio clip. Download the latest version here. You also need to have JavaScript enabled in your browser.








![]()


I should use a new catch-all title for this kind of stuff. So, here’s code news, and you should follow me on GitHub1.
If you have an Illustrator-based web design workflow, try pictorial which automatically monitors a directory of choice, and runs exported .PNGs (it’s regex-based, so maybe other PNGs or any PNG whose name matches a particular pattern) thru PNGCrush2, and shows a Growl notification after every iteration. I do this manually 100+ times a day, and not having to do it manually anymore certainly helps.
If you trace many Git forks locally, or if you do git clone a lot, clone can help by cloning to the “right” directory named with both the user’s screenname and the project name.
@cloudhead went to the future, found CSS 4 and gave us LESS. To write LESS efficiently you need syntax coloring. My fork of LESS Syntax Mode provides many fixes. Have a look into it if you use Coda or SubEthaEdit.
Because “follow me on Twitter” is kind of cliché and talk is cheap. However, I do keep a for-links account. ↩
I will not go into details nor tread too deep here, but this is intended for device-color-dependent UI snippets only. Since web browsers took flight before most of the hackers were aware of color management (figuratively speaking) our web looks very snobby and uncalibrated. sRGB, a lazybones standard which assumes standards by assuming nothing, is the color standard of the modern web. ↩
It all starts with SSH. First of all make sure that for each account, you have its respective identity file at hand, preferably stored under ~/.ssh. Most code in this article derives from Aeonscope and this is an empirical reincantation of the article.
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+.
lib.tidyCJK.jsFor 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.
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!
Check out Wikipedia’s comparison table — IE 5.5+ is presumably already on JS 1.5. ↩
In the old days, say String.prototype.hex = function () { foo; }. ↩




Besides the 2 secret (“they’ll be out when they’re done”) projects, publiusEditor and arboreal, I will work on these stuff this week. Git’s submodule functionality totally rocks, and it had led me persuading our cofounder into buying GitHub’s paid plan. (Cabal once said at C4 on Coda Confidential, that, paraphrased, “oh the largest purchase at the time probably was a $500 SSL certificate, and we argued over that…”)
I need to pray. And yeah some stuff got ditched. They will not come back.
It ALWAYS bugs me why polished OS X text editors have flush white backgrounds. They ought to be rgba(0, 0, 0, .05), so there’s no eye strain. Flush white stuff is never honest.
Everything is fine. Flat but fine. Bodily troubles galore, but such is the unavoidable pain that being alive yields. No compromises shall besiege, and definitely. Please try judging me with my pixels (a placebo for “padding stuff”).
I have to interrupt our ordinary program and announce that sadly, audion got cut off. Things are very complicated, but in a nutshell I collaborated with 2 coders, and they ditched my (already paid) interface citing the design being too difficult to implement.
Heck.
My first iPhone app will be released under my own label then, and it would not be a book app.
Another startup team turned me down 2 weeks ago, citing a lack of experience in handling large-scale web apps. (Oh the irony; I was a photographer-wannabe 18 monthes ago.)
I need to rework my personal site and blog some day. They look pale compared to those custom-ordered pixels. Yeah, I am available starting early April, hopefully.
If I unfriended you anywhere on Facebook, Plurk or Twitter, that is not because that I hate you; quite the opposite, our relationship is so cherished that it ought not get strained by excessibe babble from either party. Let’s switch over to plain emailing, and so be it.
Anyone interested in a CPCoderNight in Taipei?
Iconology is about delivering idealism, transcending the border between dream and reality. Iconology is not about perspection, nor is it related to realism. Photorealism is a word often used and cited in retrospection, but in actuality it’s far off. Iconology is the art of delivering an ideal in terms of visual metaphors, that melts and immerses in an universal sense.
So using a 3D suite for icons is a pesky move, and needs careful consideration. Apple’s LLVM icon is not done with 3D, but meticulously constructed planear 2D vector graphics. And whenever somebody points you to the Human Interface Guideline, bear in mind that it’s no lesser than the W3C’s CSS 3 book — both standards in progress, and whatmore in retrospection.
Remember that the guideline is in itself anecdotally a guideline. Guidelines are meant to be followed like rules, and rules are ought to be broken by those gifted with adequate merit.
Beginners shall study photography and learn what not to do (I assume that all interested iconologists are merited, and would never resort to a yet more planear mind; I believe in individuals).
So be it. It is hilariously exciting to nit-pick my own old work and find the faults.