Live data from Hacker News

I couldn't debug the code because of my name

mikolaj-kaminski.com

91–100 of 300 posts

Re: I couldn't debug the code because of my name

#92

For a list of strings that often cause problems to, e.g., add to a test suite, see https://github.com/minimaxir/big-list-of-naughty-strings

It's also important to width-test fields. Never forget to make sure that WWWWWWWWWWWW doesn't cause weird application wrapping.

Re: I couldn't debug the code because of my name

#93
I, too, have the Ł letter in my name, and yes, it is a sick joke that so many things even in a supposedly modern systems make an assumption that the world runs on ASCII.

In the case of the Windows operating system, the worst fact is that every single part of it behaves differently. Some parts display the path with a wrong encoding, but handle it correctly. A third-party app can display it correctly, but fails while trying to access any file. From what I remember, even the built-in PATH variable editor/manager goes through some arcane steps to display the letters in a wrong way, but getting them to work sometimes.

I can only imagine how much more pain it is for someone using any of the less widely-used writing systems or those with more advanced features compared to ASCII (Hebrew’s RTL, Arabic scripts mid- and final forms, etcetera).

Re: I couldn't debug the code because of my name

#94
post #92

For a list of strings that often cause problems to, e.g., add to a test suite, see https://github.com/minimaxir/big-list-of-naughty-strings

It's also important to width-test fields. Never forget to make sure that WWWWWWWWWWWW doesn't cause weird application wrapping.

I used a system where the maximum length on the "new password" field in the change password form was longer than the password field in the login form.

The symptom was that I could login if I used my password manager browser plugin, but not if I pasted it from my password manager.

Re: I couldn't debug the code because of my name

#95
post #72
post #42

Earlier quoted context omitted.

Especially if those products are developed by a company from Russia, where Cyrillic is used. For me, a Russian myself, this situation is honestly ridiculous.

Do you write "if" statements in Cyrillic when you write in ?

No. Keywords are ASCII everywhere (no, APL's are not words). Mixing English in keywords and non-English in identifiers feels odd.

Algol-68 supported localized sets of keywords; fortunately this language is gone.

You can #define non-ASCII stuff in modern C++. It's your best chance to "localize" a mainstream language.

Same would work for Clojure, but Lisp uses a lot of quirky abbreviations like `cdr` or `setq` that give awkward translations.

Re: I couldn't debug the code because of my name

#96
post #86
post #84

Earlier quoted context omitted.

An enormously useful list, I’ve used it several times, and it can often dig up some real nastiness if you haven’t been super careful. This entry, by the way, is a fantastic little easter egg in the list: https://github.com/minimaxir/big-list-of-naughty-strings/blo...

No, seriously, wake up

[deleted]

Re: I couldn't debug the code because of my name

#97
post #2

It's somewhat common to see videogames issue a patch shortly after release where they fix crashes due to non-ASCII Windows usernames or non-English locales. I'm not sure what the root cause of the confusion is, other than text strings being hard in general.

In case of a home-grown code, it could be simply the question of a programmer awareness. There are still many outdated and/or unfinished tutorials that use WinAPI without any concern about enabling Unicode and wide chars support.

If we are talking about ready game engines like Unity and Unreal... it is probably a naive assumption about input being 1 byte wide and things getting lost because of that in some gamedev-made script.

Re: I couldn't debug the code because of my name

#98
post #94
post #92

Earlier quoted context omitted.

It's also important to width-test fields. Never forget to make sure that WWWWWWWWWWWW doesn't cause weird application wrapping.

I used a system where the maximum length on the "new password" field in the change password form was longer than the password field in the login form. The symptom was that I could login if I used my password manager browser plugin, but not if I pasted it from my password manager.

You're lucky they weren't different lengths in the backend. I've been bitten by that surprise one too many times (which is any number higher than zero)

Re: I couldn't debug the code because of my name

#99
post #50
post #38

Earlier quoted context omitted.

"You're holding it wrong" The problem is the technology, not the user using it in a reasonable way. ł is older than computers and the only reason computers struggle with it is lack of foresight or choosing to make things harder for most of the world by some of the people involved early on.

Obviously the IDE is at fault here. Rider has a bug with Unicode. BUT, there is an easy workaround to avoid all Unicode related bugs: don't use Unicode. If that's morally objectionable for you, then you can keep fighting this fight.

Avoiding unicode, or anything but 7-bit ASCII is like using chiseling text into a stone instead of pen and paper because the pen might break. Fix the pen! Or replace it with a computer (and we're back full circle)!

It is not morally objectionable avoiding, it's just stupid.

Re: I couldn't debug the code because of my name

#100
post #94

Earlier quoted context omitted.

I used a system where the maximum length on the "new password" field in the change password form was longer than the password field in the login form. The symptom was that I could login if I used my password manager browser plugin, but not if I pasted it from my password manager.

You're lucky they weren't different lengths in the backend. I've been bitten by that surprise one too many times (which is any number higher than zero)

The most ridiculous thing is the UI for setting the password even said "X-Y characters long, must include at least one..." but the login page could not support Y characters.
Post reply on HN