4 ms·
Thats because Unicode is STILL a pain to use. I read the articles that come along about Unicode and still don't understand why handling it is so impossible. Unt
by a2tech 14y ago
Thats because Unicode is STILL a pain to use. I read the articles that come along about Unicode and still don't understand why handling it is so impossible. Until its transparent for a programmer to use, it won't be as widely used as it should. My apps (and I'm ashamed to admit it) aren't Unicode friendly. But its too much work currently for too little reward to go through and make all that code Unicode friendly.
- sp332 14y agoWho even makes a UTF-8 implementation that can't handle UTF-8? Unfortunately, having dealt with mysql libs lately, I don't doubt that at all. That said, if you think Unicode is a pain, try storing and retrieving "𝒜" in any other encoding. I'll stick to Unicode, thanks. :)
- aidenn0 14y agoI've had very few issues making programs I've written unicode friendly, but then I gave up on MySQL about a decade ago. The only real issue is handling bad input, as you never get an error with decoding e.g. ISO-8859-1; for a lot of applications you need to handle potentially malicious input, so you can do it there, but even for trusted input, there is a lot of really-broken external programs that output "UTF-8" or "UTF-16" (scare quotes intentional). I really think a lot of the problems with unicode is that a lot of languages/libraries try to handle it transparently, and that just doesn't work; encoding/decoding is part of dealing with external formats, and trying to do it transparently means that it will fail unexpectedly.
- henrikschroder 14y ago> Thats because Unicode is STILL a pain to use. I think that depends heavily on what programming language and frameworks you are using.
- jpdoctor 14y agoPointers to a comparison across languages would be welcomed. TIA.
- arnsholt 14y agoTom Christiansen's talk Unicode: The good, the bad, & the (mostly) ugly covers a lot of Unicode wrinkles and how Javascript, PHP, Go, Python, Ruby, Java, and Perl handles them. Slides for that talk and two other Perl-related Unicode talks are at http://training.perl.com/OSCON2011/index.html http://training.perl.com/OSCON2011/index.html
- LoonyPandora 14y agohttp://training.perl.com/OSCON2011/index.html http://training.perl.com/OSCON2011/index.html Specifically the talk titled "Unicode Support Shootout: The Good, The Bad, & the (mostly) Ugly" It's a year old now, but it's still relevant. It gives a very detailed look at unicode support across JavaScript, PHP, Go, Ruby, Python, Java, and Perl.
- BenSS 14y agoThe root of it is that most things still assume ASCII, etc by default. I griped about this a while ago, as a whole, we should be moving all our tools to being UTF-8 by default, and ASCII being the 'odd' case instead of the other way around!
- rwallace 14y agoImplementing the display, collation or suchlike manipulation of Unicode text isn't feasible for the nonspecialist, to be sure (in practice that means you call an appropriate library/framework/API and hope they got it right). But storing a stream of UTF-8 and retrieving it on command is not remotely difficult. You almost have to go out of your way to screw that up.
- rwallace 14y agoImplementing the display, collation or suchlike manipulation of Unicode text isn't feasible for the nonspecialist, to be sure (in practice that means you call an appropriate library/framework/API and hope they got it right). But storing a stream of UTF-8 and retrieving it on command is not remotely difficult. You almost have to go out of your way to screw that up.