infundibulum

Joel whines some more, and I whine back

November 2nd, 2005

It’s easy to spend on marketing and PR, since that just takes cash, but it’s hard to spend on software development, because that actually takes time and talent.

Joel on Software

Except, not really.

Since when does throwing cash at anything get you anywhere? I can understand the fact that programmers sometimes get frustrated by marketers. I’ve been there. But that doesn’t mean that “talent” has nothing to do with successfully promoting technology.

And I agree that Live.com doesn’t whelm even a little, and that start.com is only slightly better. Also, Netvibes is better than either.

Laser Printer Fonts

October 28th, 2005

Ah, the endless confusion of all the little squiggles on the intarweb.

I bought a Samsung laser printer, which is really quite nice. It’s just black and white, which is fine for me, and it’s really fast, and the quality is much better than the last two crappy inkjets I’ve owned.

Thing is though… fonts. I vaguely remember reading some stuff about “where the fonts live” being different between inkjets and laser printers… or “real postscript”only being available in laser printers… or something like that.

Bottom line: sigh.

Original text: What my printer printed:
Hallo Welt!	German
你好,世界!	Chinese
Hello world!	English
Olá mundo!	Portuguese
Hallo wereld!	Dutch
こんにちは 世界!	Japanese
Καλημέρα κόσμε!	Greek
Merhaba dünya!	Turkish
Hola mundo!	Spanish
Halo dunia!	Bahasa Indonesia
Helló Világ!	Hungarian
Salut le monde!	French
Hallo verden!	Norwegian/Bokmal
Chào thế giới!	Vietnamese
Hejsan, världen!	Swedish
Привет, мир!	Russian
Tere, maailm!	Estonian
안녕, 세상!	Korean
Saluton Mondo!	Esperanto
Ahoj svet!	Czech
Hylô byd!	Welsh
Terve maailma!	Finnish
Laba ryta, pasauli!	Lithuanian
Halló heimur!	Icelandic
Sveika, pasaule!	Latvian
哈佬世界!	Cantonese
สวัสดีราคาถูก!	Thai
Hallo, wrâld	Frisian
Ave, Munde!	Latin
photo of lousy font handling by printer

It’s so RANDOM. Okay, so I can determine that there are missing fonts for several Asian languages by looking at this stuff. But what about Greek? Why does the “mu” show up but the rest is just blank?

And where do I look to start debugging such a problem? Which kinds of fonts does my printer “understand”?

In situations like this I generally think to myself… uh… I’ll solve this later.

And then I don’t.

I Bet You Didn’t Make Any Money…

August 25th, 2005

Here’s an update to a random idea I had a while back: Want to Know How to Make Some Money?, where I babbled:

Want to Know How to Make Some Money? Here, I’ll tell you.

News Sentinel | 06/24/2005 | Funding cut for translator service

Asterisk
+ Wireless network + Laptops + Webcams + Subscriptions + Nationwide
(Worldwide?) network of on-call interpreters for lots of languages.

Well, go on.

The idea being that one could start a business capitalizing on the relatively cheap availability of video conferencing tools to sell distributed interpretation services.

Well, I talked to my sister about this idea. She’s a nurse.

The concept is D.O.A., and here’s why: there are strict rules about how the interaction between doctors, patients, and interpreters are to take place. Specifically, the interpreter is not allowed to be a “participant” in the conversation: the interpreter must not speak directly to the patient. The patient looks only at the doctor, never at the interpreter.

That’s a rule.

Which obviates the whole point of the webcam idea. Perhaps the VOIP aspect would still be doable, however.

Javascript Mailing List?

August 25th, 2005

There’s a Rails mailing list and a bunch of Python mailing lists and small industry of Perl mailing lists and so on and so forth.

So where’s the Javascript mailing list? Am I just missing it? Because it seems like something that would be useful, what with all the webappishness going around and unobtrusivity and all that.

Bueller?

☞ update

Steve Clay made a recommendation on the jQuery list about a general Javascript mailing list:

Javascript Info Page

I just signed up, we’ll see!

In which I ask You

August 13th, 2005

Why don’t word processors keep the cursor in the middle of the page?

Good grief.

Down arrow, down arrow, down arrow, up arrow, up arrow, up arrow, edit. Cursor goes down to the bottom of the page. Repeat. Get mad. Repeat.

Font Problems with Hindi in Firefox

August 1st, 2005

Debugging font issues is a pain , in my experience. If something isn’t rendering correctly, my first reaction is usually “I have absolutely no idea why that’s happening.” Gentle reader, feel my pain.

I find myself working with an awful lot of languages (you’ll see why when Jonas and I launch our project), and I often have to learn just enough characters to determine that a particular script seems to be rendering correctly. We have to know if rendering problems are caused by some kind of configuration problem that we can fix, or if it’s something out of our control: “Sorry, no hieroglyphics in Unicode, not our problem!”

Debugging such stuff is not the same thing as actually being able to read in all these languages: in most cases it’s enough to learn just a bit about how the script is put together and how characters combine, and perhaps a few words for testing purposes.

So here’s an example of a typical problem that I face. Compare a the two screenshot clips I took this morning. I added the red-bordered boxes to point out the differences:

Even if you don’t know Devanāgarī from a salad fork, it doesn’t take much to guess that something is askew in my Firefox’s rendering of that page. (Never mind the fact that the word “Hindi” is actually spelled incorrectly… Doh!) Opera seems to get it right.

Now I’m not going to get into the details of how Devanagari works in Hindi at the moment (primarily because I don’t know much, heheh). The main problem for me is that there are so many possible causes for any problem in text rendering. Is this a configuration problem on my end, or is it some pernicious software problem buried in a library underneath the text?

  1. The font could be bad.
  2. The browser?
  3. Is it the case that my operating system is missing some library? (Linux, in my case.) If so, what library? Can I upgrade something to fix it? Who ya gonna call?
  4. Or maybe it’s part of my desktop environment? I wonder if it works in that other desktop environment… blech, switching desktops is a pain…
  5. Could it be an encoding problem? Maybe the HTML page is encoded incorrectly in the first place.
  6. Or, maybe their server is futzing up the encoding somehow?
  7. Is it part of that “font shaping” thing, Pango? Am I even using Pango?

nd, but dag.

update…Σμς suggests an eighth potential culprit to this situation: there could be a problem with CSS. He also found a relevant bug in the bug database for Firefox. (See the comments. Thanks, Simos!)

In this particular case, the comparison above leads me to suspect #2, of course. But you get the picture here: these kinds of problems are a mess. Particularly in the open source world, it’s hard to know what to do in this situation. And I’m moderately techie. Imagine what a run of the mill user faces.

I was chatting with Chad Fowler and he made an interesting observation: for the development of any given application, in order to be sure, really sure, that everything is okay for every particular writing system, each development group would have to have someone who can read each language. Which, er, ain’t gonna happen.

And it shouldn’t really have to: the operating system is supposed to abstract the basic rendering of text away from coding.

OSX is pretty darn good at this. But then, it’s also a very closed system: it’s all tested, Apple owns and delivers a wide variety of high-quality (proprietary) fonts with its machines, and there are far fewer points of variation than you’ll see in your average Linux distribution.

Matters in Windows are less variable than Linux, but more complex than OSX, as Michael Kaplan can attest in great detail at his excellent blog.

I think these complexities are makes many programmers reticent about Unicode: they’ve been burned in the past with encoding matters, gotten a glimpse of the gruesome entrails underlying text rendering on their platform, and decided I just don’t have time to really learn how all these text rendering variables fit together.

And quite frankly, despite being something of a Unicode zealot myself, I can sympathize.

Most developers accept that they need to know the absolute minimum about Unicode. They already know that Unicode is good. The thing is, as a previous commenter pointed out, and as this tiny example demonstrates, the “Unicode” part of handling text is only the tip of the iceberg.

And it’s a big iceberg.

Sitepoint’s CSS and DHTML Books

July 25th, 2005

I’ve recently become a fan of Sitepoint’s books on programming. They’re very cleanly put together, and generally speaking seem to be quite up to date. Here are a couple of titles I went ahead and took the plunge on:

HTML Utopia: Designing Without Tables Using CSS
I like this book quite a bit. The CSS reference in the back is almost worth the price of admission… there are references online (duh) but I guess I’m just still a sucker for paper. There’s a lot of useful info on styling text, which turns out to have more tricks available than I’d ever heard of. One thing about this book that annoyed me intensely was in chapter 6, “Putting Things in Their Place,” when he gives a Javascript solution to the problem of getting columns to flow to equal heights. Admittedly, he gives an alternative, but there are a lot of pure CSS solutions to this problem out there, and one would think that if there’s a reliable one out there, that this would be the book to find it. So yeah, that bit rubbed me the wrong way.
DHTML Utopia: Modern Web Design Using JavaScript & DOM
I’ve been looking forward to this one for quite a while. At that link you can get the first four chapters for free. To be honest, I debated whether to buy the book, because judging from the table of contents, it seems that most of the stuff that I had doubts about was in the free sample chapters. But I’m a big fan of the author and editor: Stuart Langridge through the ridiculously awesome LugRadio (or listen on Odeo) and Javascript/Python guru Simon Willison. So in the end I felt pretty good about picking up a copy. Haven’t started digging in yet. One nit to pick: forty smackers is a lot to ask for a book that’s just 300 pages. Not saying it won’t turn out to be worth it in the end, but dag.
update… The sample chapters are available as HTML now: DHTML Utopia: Modern Web Design Using JavaScript & DOM. I can’t seem to get the example from this chapter to work, though, can you?

All this DHTML stuff is surprisingly fun. And I’ve mentioned before that Javascript has the right policy on Unicode, which makes me pretty happy.

Like this ☞ ☺

Especially considering the headache that is dealing with multibyte stuff in just about every other scripting language. Which makes me kind of sad.

☹ ☜ Like that.

Weird Interface Moment

July 5th, 2005

I just had a weird interface moment.

I use Backpack constantly as an outboard brain, and drag and drop lists were recently added. So I’ve sort of become used to them.

Now, here’s the weird part: I was just trying to type up a list of stuff, in a run-of-the mill text file (in my favorite text editor, gedit). And I had this urge to reorganize the list drag-and-drop style. Except, my word processor couldn’t do that . Kinda backwards, eh? Usually web interfaces are thought of as the relatively impoverished cousins of desktop apps…

Yes, friends and neighbors, the browser will eat the desktop, sooner or later.

on second thought…
I guess gedit sort of does have drag and drop: you can highlight a line and then drag and drop that. But it’s still not as simple as Backpack’s lists, because it’s really hard to grab or skip newlines just by highlighting–with an HTML list there are bullets.

On-the-fly ASCII to Unicode Transliteration with Javascript?

July 2nd, 2005

Here’s an interesting little script I found on the Reta Vortaro (that is, the Esperanto web dictionary).