Программисты: русские, индусы, китайцы и канадцы

If you need coding, go to Indian; if you need solution, go to Russian

Любой русский программист, после пары минут чтения кода, обязательно вскочит и произнесет, обращаясь к себе: "Переписать это все нафиг!" Потом в нем шевельнется сомнение в том, сколько времени это займет, и остаток дня русский программист потратит на то, что будет доказывать самому себе, что это только кажется, что переписать — это много работы. А если взяться и [...]

← Вернуться к полной версии записи «Программисты: русские, индусы, китайцы и канадцы»…

Автор: ; опубликовано в: Юмор; метки: юмор
7
Апр
2008

RSS Комментарии к статье «Программисты: русские, индусы, китайцы и канадцы» (18)  »

  1. Из личного опыта (lmdiamondsandgoldjewellers.com):

    [-]
    View Code PHP
        $sql69="select * from dj_config";
        $temp69= new dbQuery($sql69, $conn->connId) or die(mysql_error());
        $i="";
        while($i<=5){
            $res69=$temp69->getArray();
            $i++;
        }
  2. Да, а шведские программисты тоже те еще кадры… Сейчас работаю над одним шведским проектом (правда, не знаю, каким) — я им помогаю с интеграцией WordPress MU.

    И вот, в файле authorize.php нашёл замечательный код:

    [-]
    View Code PHP
        $sqlstr="select MemberID,FirstName,LastName from Member where Username like '$Login' and Password like '$Password'
            and Username not like '' and Password not like '' and CancelSuspend is null"
    ;
        $result=mysql_query($sqlstr,$conn);

    Переменные $Login и $Password берутся из $_POST.
    Мне очень нравится подобный механизм аутентификации: если введённое имя пользователя похоже на настоящее и введённый пароль тоже похож, то пусть заходит :-) Ужас!

  3. Из той же серии про суровых скандинавских программистов:

    [-]
    View Code PHP
    $result = $db->fetch("SELECT `BannedEmailID` FROM `BannedEmail` WHERE '" . addslashes($_POST["Email"]) . "' = Email");
    if (mysql_num_rows($result) > 0) $msg .= "Your email is banned! Please change.<br>";

    Ладно хоть LIKE в другую сторону :-) а вообще, в чем глубокий философский смысл бана адреса, если система сама любезно предлагает сменить адрес?

  4. За статью тебе надо памятник поставить. Улыбался, смеялся, ржал и много думал. Хорошо написано. Супер!

  5. Теперь про русских…

    Ты знаешь про время жизни объекта? Так вот… Из метода передавался в объект (который работает в ДРУГОМ потоке) адрес локальной переменной. Представляешь, что случается, когда метод выходит? Правильно, локальная переменная уничтожается. Адрес становится инвалидным. А так как объект, в который передается этот адрес, работает в другом потоке, то это вполне реальная маза. Я на это втыкаю долго… И иду спрашивать, как это работает? Ведь ясно же, что это ошибка. На что мне чувак говорит: ставлю у потока более высокий приоритет и благодаря этому объект УСПЕВАЕТ вычитать содержимое переменной. А ты говоришь – «Архитектура»… «Планирование»… Индийцам до нас далеко. Чисто по-русски. Успеть хапнуть, пока не пришел писец…

  6. «Что такое индустриальное программирование?» — »Сидят индусы и пишут триальные программы!» (с) Sergej I. Lakhno

  7. Не знаю, какие программисты писали этот запрос, но выглядет потрясающе… и безнадёжно одновременно:

    [-]
    View Code SQL
    SELECT * FROM wp_comments WHERE comment_post_ID = 192 AND
    ((comment_approved = '1' AND EXISTS
    (SELECT * FROM wp_posts WHERE comment_post_ID = wp_posts.ID AND
    (wp_posts.post_status = 'publish' OR (wp_posts.post_status = 'private' AND
    (EXISTS (SELECT * FROM wp_postmeta WHERE meta_key = '_disclosesecret_cap'
    AND wp_posts.ID = wp_postmeta.post_id AND
    (meta_value IN ('switch_themes', 'edit_themes', 'activate_plugins', 'edit_plugins', 'edit_users', 'edit_files', 'manage_options', 'moderate_comments', 'manage_categories', 'manage_links', 'upload_files', 'import', 'unfiltered_html', 'edit_posts', 'edit_others_posts', 'edit_published_posts', 'publish_posts', 'edit_pages', 'read', 'level_10', 'level_9', 'level_8', 'level_7', 'level_6', 'level_5', 'level_4', 'level_3', 'level_2', 'level_1', 'level_0', 'edit_others_pages', 'edit_published_pages', 'publish_pages', 'delete_pages', 'delete_others_pages', 'delete_published_pages', 'delete_posts', 'delete_others_posts', 'delete_published_posts', 'delete_private_posts', 'edit_private_posts', 'read_private_posts', 'delete_private_pages', 'edit_private_pages', 'read_private_pages', 'delete_users', 'create_users', 'unfiltered_upload', 'edit_dashboard', 'administrator', 'topadmin')))
    OR EXISTS (SELECT * FROM wp_postmeta WHERE meta_key = '_disclosesecret_role'
    AND wp_posts.ID = wp_postmeta.post_id AND (meta_value in ('administrator')))
    OR EXISTS (SELECT * FROM wp_postmeta WHERE meta_key = '_disclosesecret_user'
    AND wp_posts.ID = wp_postmeta.post_id AND (meta_value IN ('1')))
    OR wp_posts.post_author = 1))))) OR ( user_id = 1 AND (comment_approved = '0'
    AND EXISTS (SELECT * FROM wp_posts WHERE comment_post_ID = wp_posts.ID AND (wp_posts.post_status = 'publish' OR (wp_posts.post_status = 'private'
    AND (EXISTS (SELECT * FROM wp_postmeta WHERE meta_key = '_disclosesecret_cap'
    AND wp_posts.ID = wp_postmeta.post_id AND (meta_value IN ('switch_themes', 'edit_themes', 'activate_plugins', 'edit_plugins', 'edit_users', 'edit_files', 'manage_options', 'moderate_comments', 'manage_categories', 'manage_links', 'upload_files', 'import', 'unfiltered_html', 'edit_posts', 'edit_others_posts', 'edit_published_posts', 'publish_posts', 'edit_pages', 'read', 'level_10', 'level_9', 'level_8', 'level_7', 'level_6', 'level_5', 'level_4', 'level_3', 'level_2', 'level_1', 'level_0', 'edit_others_pages', 'edit_published_pages', 'publish_pages', 'delete_pages', 'delete_others_pages', 'delete_published_pages', 'delete_posts', 'delete_others_posts', 'delete_published_posts', 'delete_private_posts', 'edit_private_posts', 'read_private_posts', 'delete_private_pages', 'edit_private_pages', 'read_private_pages', 'delete_users', 'create_users', 'unfiltered_upload', 'edit_dashboard', 'administrator', 'topadmin')))
    OR EXISTS (SELECT * FROM wp_postmeta WHERE meta_key = '_disclosesecret_role'
    AND wp_posts.ID = wp_postmeta.post_id AND (meta_value in ('administrator')))
    OR EXISTS (SELECT * FROM wp_postmeta WHERE meta_key = '_disclosesecret_user'
    AND wp_posts.ID = wp_postmeta.post_id AND (meta_value IN ('1')))
    OR wp_posts.post_author = 1))))) ) )
    ORDER BY comment_date

    В оригинале было в одну строку.

  8. [...] плагина ОднаКнопка для WordPress. Что же, пришла пора Русскому Программисту написать что-то [...]

  9. [...] имена параметров, всё остальное было переписано в «родном, мудром, обьектно-ориентированном» [...]

  10. [...] первом месте оказалась Индия (я об этом уже писал), причем лидирует она весьма уверенно. На второе место [...]

Пожалуйста, не используйте эту форму для комментирования! Данная форма предназначена исключительно для ботов.

Оставить комментарий к записи «Программисты: русские, индусы, китайцы и канадцы»

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Оставляя комментарий, вы выражаете своё согласие с Правилами комментирования.

Подписаться, не комментируя

गते गते पारगते पारसंगते बोधि स्वाहा