piggymouse: (barcode)
[personal profile] piggymouse

Continuing with this topic.

Thanks to [livejournal.com profile] sema's advice, reinstalling the service pack after changing the regional settings really helped. But now I have another problem. I'm not able to make the "system default" check box switched on. And the bloody DayNotez Desktop seems to abandon my choices of font scripts and always substitute the wrong ones. I think, these two facts must be connected. So, my next question is: how do I switch on the bloody checkbox?

Update: I have solved the DayNotez font problem by simply setting all fonts to MS Sans Serif, which has only the script for system codepage. So, thanks to everybody and forget about all that.

P.S. All this, especially the DayNotez's difficulties, reminds me of the old maxim I proclaimed a few years ago: most programmers in the world don't give a fuck about codepages and locales that differ from those configured locally at their workstations!

Date: 2003-02-25 02:24 am (UTC)
From: [identity profile] vadikas.livejournal.com
я тебе в офисе ТЭГа оставил имидж сидюка с Псоем Галактионовиче Короленко.
:)

Date: 2003-02-25 02:25 am (UTC)
From: [identity profile] piggymouse.livejournal.com
Spasibo! A kakogo al'boma? A to tri oficial'nyh u menja vse kuplennye.

Date: 2003-02-25 02:41 am (UTC)
From: [identity profile] tyrex.livejournal.com
ты просто не в курсе, это не чекбокс, а кнопка
привет от бг. :-)

Date: 2003-02-25 02:54 am (UTC)
From: [identity profile] yole.livejournal.com
Я как раз сейчас пытаюсь убедить одного, кгхм, разработчика на Visual Basic, что дробная часть числа может отделяться не только точкой, но и запятой, и это не повод падать по Type mismatch прямо на старте, и что это стоит пофиксить, и я не понимаю, почему это так сложно и в какой такой куче мест он на эту точку завязался.
Впрочем, проблемы там на разделителе дробной части не заканчиваются. И меня еще спрашивают, за что я не люблю Visual Basic...

Date: 2003-02-25 05:06 am (UTC)
From: [identity profile] vadimkle.livejournal.com
ох... Ну почему бейсик? Сам ведь пишешь про идиота-разработчика.

Date: 2003-02-25 05:11 am (UTC)
From: [identity profile] yole.livejournal.com
Начиная с того, что в бейсике нет нормальных средств для диагностики ошибок. Поэтому все, чем приходится довольствоваться - это Runtime error '13'. (Да, я знаю про On Error Goto, но назвать это нормальным средством довольно сложно).
Потом - например, на тех же Delphi проблема решается одной строчкой:
DecimalSeparator := '.';

Date: 2003-02-25 05:28 am (UTC)
From: [identity profile] piggymouse.livejournal.com

I can't exactly call it syntactic sugar — let's say that ON ERROR GOTO and VBA.ErrorOnject are simply a French for exception handling and functionally are quite equivalent to a restricted try/catch/throw (and actually 100% equivalent to SEH __try/__except bastardy). So, if you call the latter error handling means "normal", why not call the former the same?

Concerning the decimal points and localization in general, I see two viable strategies: strictly obey the system locale (i.e. accept comma as decimal separator on Russian systems, dot on US etc.) or be as permissive as possible (accept any shit as decimal separator unless it leads to an ambiguity). Actually, DecimalSeparator := '.' isn't acceptable for both approaches.

Date: 2003-02-25 05:47 am (UTC)
From: [identity profile] yole.livejournal.com
Признаю, что претензии мои относятся в большей степени к тому, как на VB принято писать, чем к тому, что позволяет сам язык. А принято на VB писать очень просто: лепить к каждой процедуре одинаковый обработчик ошибок (есть куча разных визардов, позволяющих делать это автоматически), невзирая на то, могут ли вообще в процедуре быть хоть какие-нибудь ошибки, и на то, как именно их нужно обрабатывать. Как следствие - среднестатистический кусок кода на VB состоит из обработчиков ошибок процентов на 60.

Единственный случай, когда я видел такую "стратегию" обработки ошибок в коде на C++ - это Microsoft Reference Implementation for E-commerce Applications, или как-то так оно называлось. Там тоже каждая функция, даже та, которая представляла собой однострочный вызов API (например, SysReAllocString()), была обернута в одинаковый try/catch. Поэтому warm and fuzzy feeling создавался, а эффект был отрицательный (коды возврата-то никто не проверял!).

Насчет DecimalSeparator - согласен, опять же, что в принципе это неверная стратегия. Но лучше потратить 3 минуты на добавление этой строчки, чем падать при старте (а потом выпускать еще один билд, в котором ошибка вроде как исправлена, но который точно так же падает при старте, по этой же самой причине).

Конечно, не язык виноват. Конечно, и на VB можно писать хороший и аккуратный код, и даже довольно быстро. Я пробовал, у меня получалось. Но почему-то корреляция между средством разработки и качеством результата, несмотря ни на что, прослеживается очень четко.

Profile

piggymouse: (Default)
איש אי הכלבים

April 2011

S M T W T F S
     1 2
34 56 789
10 1112 13141516
17181920212223
24252627282930

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Mar. 20th, 2026 05:56 am
Powered by Dreamwidth Studios