• Карьера менеджера IT-проекта. Как устроиться на работу в ведущую технологическую компанию
    0
    Они перевели «Cracking the coding interview» как «Карьера программиста», теперь вот «Cracking the PM interview» как «Карьера менеджера». Интересно, собираются ли они переводить новую книгу той же авторки «Cracking the Tech Career». Ведь название «Карьера программиста» уже занято (незадача). Наверное, назовут «Карьера программиста — 2.0» или что-то типа того.
  • Tips & tricks for MySQL Developers. Работа с SQL
    +3
    Вопрос по первому примеру. Вы сравнивали производительность запросов с EXISTS и INNER JOIN? Проверять лень, но тут, имхо, сравнение будет в пользу EXISTS, ибо в запросе с INNER JOIN есть DISTINCT, для которого может понадобиться временная таблица.
  • Что нужно знать каждому разработчику о кодировках и наборах символов для работы с текстом, часть 2
    0
    Это значит, что строка кодирована во внутреннем формате перла.
    Для устранения этих проблем есть модуль Encode.
    Пример (исходник сохраняете в utf8):

    use strict;
    use warnings;
    use Encode;
    
    my $str = "бла-бла";
    print $str; # тут будет всё нормально
    
    $str = Encode::decode_utf8($str); # переводим строку из utf8 во внутренний формат перла
    print $str; # упс! Wide character in print
    
    $str = Encode::encode_utf8($str); # переводим строку обратно в utf-8
    print $str; # бинго
    
  • Как два программиста хлеб пекли
    +3
    Маркус безнадёжен. В 99% случаях неиспользование нормального ООП и паттернов там, где они напрашиваются — следствие узкого кругозора разработчика, а не мудрости. Маркус, похоже, не знаком с понятием технического долга и ненавидит всех, кто будет сопровождать его код.

    То, что у Бориса много квадратиков, а у Маркуса — мало, ничего не означает. Помимо отвлеченной схемы классов автору следовало привести то, что внутри. У Маркуса там 100% адский ад.

    Почему-то в последнее время стало модным отрицать заповеди Макконнелла и Фаулера. Это очень удобно, не надо развиваться, изучать теорию, исписывать 100500 страниц в блокноте в попытке найти красивое решение. Зачем? Можно дать себе индульгенцию на говнокод, оправдываясь меняющимися требованиями или погодой или тем, что «надо было срочно». Фигня всё это. Разработчик либо рефлексирует, либо пишет код в стиле дамп потока сознания, как Маркус.
  • История об аспирантуре в США. Часть 1: Поступление
    +2
    Здорово, 7 баллов на IELTS — очень хороший результат, насколько я знаю.

    Спасибо за ответ, люблю читать чужие истории изучения английского, очень мотивирует :)
  • История об аспирантуре в США. Часть 1: Поступление
    +1
    Согласна, это могут быть мои субъективные ощущения.
    Прорешала очень много тренировочных тестов по IELTS (сам экзамен не сдавала, ибо без надобности), трудности были, тест показался довольно сложным (особенно если следить за соблюдением регламента), но всё познается в сравнении.

    Когда я открыла учебник для подготовки к TOEFL и увидела вопросы типа «как вы можете охарактеризовать <имя персонажа из текста>?», а дальше список каких-то прилагательных, ни одно из которых мне незнакомо, и потом еще штук 5 таких вопросов, я решила, что TOEFL пока мне рановато. Я почти каждый день смотрю американские фильмы, сериалы, лекции, читаю новости и документацию, но эти жуткие слова из TOEFL мне ни разу не встретились. Поэтому я понятия не имею как подготовиться, а у автора это получилось.

    А какой у вас уровень был, когда вы начали готовиться к TOEFL и IELTS? Как тренировали speaking?
  • История об аспирантуре в США. Часть 1: Поступление
    +1
    Спасибо, очень интересно.
    Не могли бы вы описать процесс подготовки к TOEFL? На мой взгляд, это очень сложный тест, по сравнению с IELTS. Как вы вытянули английский до уровня TOEFL и сколько времени это заняло? Какой (примерно) у вас уровень был до подготовки?
  • Хочешь быть программистом — будь им!
    +1
    >>Свой код сопровождать проще

    Вы в одиночку делаете проекты? Тогда понятно. Только если после вас проект будет сопровождать другой программист, для него этот код своим уже не будет.

    Мне легче сопровождать проект, который сделан на известном фреймворке(даже если я его не знаю), чем изобретенном noname чуваком.

    >>обработку такой ситуации фреймворк не предусматривает
    Фреймворк реализует базовый функционал низкого уровня, остальное — надстраивай, расширяй, бизнес-логика само собой вся самописная.

    >>в любых решениях всегда есть и ошибки, и неочевидные с первого взгляда ограничения

    Вы считаете, что в вашем велосипеде не будет таковых?

    Ограничения фреймворка вполне закономерны и полезны. Это рамки, при выходе за которые фреймворк как бы говорит тебе — «ты начинаешь писать говнокод, вернись и подумай как использовать существующие механизмы».
    Если ядро не накладывает ограничений, то ядра как такового и нет. Есть спагетти-код, с которым можно делать все что хочешь — полная свобода.
  • Хочешь быть программистом — будь им!
    0
    Нужно руководствоваться не тем, что вам проще, а что проще в сопровождении.

    >>маленький механизм для данной конкретной ситуации

    А потом потребуется еще один маленький механизм для реализации похожей, но не совсем такой ситуации. И еще один. И еще. А потом эти механизмы не разгрести будет.
  • О найме программистов и других инженеров
    0
    >>Если человек, скажем, вместо напсиания чего-то более абстрактного вам напишет 4х иф и это работает, не стоит его снижать на уровень лоха и неплатить

    Почему?
    Не-лохи не пишут говнокода.
    А пока не умеешь писать как надо, изволь получать меньше. По-моему справедливо.

    «Работает» — это критерий качества для студенческого курсача, а не для востребованного ПО, которое разрабатывается и поддерживается более чем одним разработчиком. Обезьянка тоже напишет, чтоб «работало».
  • О найме программистов и других инженеров
    +1
    Почему вы думаете, что «девочка HR» априори менее компетентна в вопросах найма инженеров, чем «мальчик HR»?
  • Чем платят за успех IT-специалисты
    +3
    Хм, я вот, к примеру, ничего не знаю о семейной жизни своих коллег и не имею особого желания быть в курсе))

    К тому же успешная семья — не для всех цель жизни (да-да!).
  • Чем платят за успех IT-специалисты
    +1
    Распространенное и довольно забавное мнение. Ибо наличие семьи вовсе не означает, что человек об этой семье заботится.
  • Признаки плохого программиста
    0
    Видно, комментатор кода все же знает, что в некоторых языках (типа С, на котором, вполне возможно, написан вышеприведенный кусок) оптимизация хвостовой рекурсии является чистой инициативой отдельно взятого компилятора, а в самой спецификации языка нигде нет упоминания, что хвостовой вызов непременно соптимизируется. gcc по умолчанию не оптимизирует хвостовой вызов, если не задать ключом определенный уровень оптимизации. Так что все зависит от языка, не везде рекурсия божественна. По-моему, в С желательно обходиться итерациями, где это возможно.
  • Зачем нужно высшее образование?
    0
    Я не о том, что кто-то там плохо преподает по дурацкой программе. У нас реально полезные предметы шли только первые 3 курса. Только я ни разу не видела человека, который бы блистал по предметам, которые он считает нужными, а по остальным получал трояки. Все либо хорошо учились, либо забивали. Никакой доблести и пользы в последнем я не вижу.
    В моей группе отличиники и связями обросли, и стипендии всевозможные и награды получали, и на конференциях выступали, и работу по специальности имели уже с середины обучения. А троечники работали максимум какими-нибудь продавцами-консультантами или девочками на телефоне.
    Эта логика про «заводить связи» вызывает у меня недоумение. Ничего себе приоритеты. Может, для кого-то это и нужно, общение всякое, социализация. А кто-то хочет сидеть и читать учебники, решать интегралы. Это плохо? Почему первое полезно, а второе — пустая трата времени?
    К тому же, людей, которые забивая на учебу, тратят время на что-то полезное — единицы. В большинстве случаев это самоутешение: «Трояков я, конечно, нахватал, но эти предметы все равно дебильные были и никому не нужные». Ага.
    И я буду очень благодарна, если расскажете о своей методике опеределения нужных в будущей жизни предметов. По-моему, никогда точно не знаешь, что пригодится, а что нет.
  • Зачем нужно высшее образование?
    0
    Что значит, по-вашему, включать мозг? Переписывать у «ботаников» готовые задания? Что-то мне не кажется, что для этого нужно много мозгов. Постоянно слышу про то, какие талантливые троечники, а работодатели, как только видят средний балл диплома 3,5, сразу понимают, что к ним пришел светоч, для которого слишком унизительно было делать университетские задания. Как правило, ничего общего с реальностью это не имеет.
    И что значит «тратить кучу времени»? Основное занятие студента — это получение знаний, а потом уже все остальное. Так что посвящение своего суперценного времени курсовым, домашним заданиям и прочей заведомо бесполезной фигне неизбежно. Тот, кто этого не делает, — не студент. Какая может быть оптимизация мышления, если ничего не делать, а 4 считать своей планкой? Нужно всегда стараться получать только лучшие оценки и делать все лучше всех, а универ — это первое место, где человек может увидеть конкретные результаты своих усилий.
  • From user to developer
    +1
    У нас на кафедре тоже жаловались, что денег им не дают, все старое и т.п., всё они, бедные, сами покупают. Тем не менее другие кафедры нашего факультета находили бабки на нормальные компы, мебель, стеклопакеты, выпуск методичек и даже на оплату практики своих студентов. Недостаток денег — это следствие некомпетентности кафедрального состава. Не знаю ситуации в вашем универе, но наша кафедра на 90% состоит из старперов-нахлебников, которые просто не секут ни в чем, а в своей жизни читали только собственноручно написанную в 80-м году методичку, по которой и продолжают вести все свои курсы.

    Если на кафедре свое дело знают, то туда идут учиться и на платное очное, и на второе высшее. Кафедра должна зарабатывать бабки. Если она это делать не в состоянии, значит никто в этом не виноват, кроме сотрудников кафедры. Молодых специалистов, желающих преподавать, предостаточно. Только, как всегда все сталкиваются с тем, что свободных мест нет, типа все занято. А между тем качество образования на нуле. Зачем тратить бюджет университета на такую кафедру? Что со старыми лабораторными стендами, что с новыми, все останется по-прежнему фигово.
  • Девушки идут в компьютерщики… Снова!
    +1
    В том, что вы перечислили, нет ничего сверхъестественного ни для женщин, ни для мужчин. Только человек, который будет соответствовать этому «идеалу хорошего программиста», как мне кажется, просто себя не уважает. Не есть, не мыться… давайте продолжим, еще ходить под себя можно, только я сомневаюсь, что это как-то увеличивает продуктивность труда и повышает ценность работника в глазах работодателя.

    Другое дело, что сотрудник, который в 18 часов ушел домой и «моя хата с краю», видимо, не слишком заинтересован в своей работе, программистов я таких не видела, ни мужчин, ни женщин. Если долго не получается что-то, или факап какой-нибудь, или просто попросили что-то сделать, я могу до посинения на работе сидеть. Но продуктивно работать по 10 часов в сутки стабильно никто не сможет. К тому же, нужно время, чтобы следить за своим здоровьем, дабы не умереть в 30 лет от инфаркта.
  • Девушки идут в компьютерщики… Снова!
    +3
    Не поняла, что является известным фактом. То, что вы не знаете женщин-разработчиков?
    Я вот сумчатых вомбатов ни разу не встречала. Наверное, мне теперь нужно кричать на каждом углу, что их не существует и это «известный факт»тм.
  • От любви до ненависти один push
    +3
    >>юзеры, которые пытаются из телефона сделать компьютер и ставят туда всякий хлам из немодерируемых каталогов, не имеют морального права жаловаться

    Классика! Почему каждый первый в норовит обвинить жертву? Тебя обманули? Лох, сам виноват. Изнасиловали? А нечего было вообще из дома выходить.
    Разумеется, ребята, которые обманули и изнасиловали, заслуживают только всяческих поощрений за находчивость, а их жертвы — насмешек и порицания.
    Нечего жаловаться потом, что в России процветают коррупция, нечестная конкуренция и мошенничество. Люди сами подсознательно поощряют такое поведение.
  • Это знает любой студент-программист
    0
    Для преподавания IT-дисциплин. Он и смотрит на оформление отчета, потому что в код залезать боится (я серьезно), так как это сразу обнаружит его некомпетентность.

    Из-за этого студенты просто рисовали формы в билдере или акцессе, делали скрины для отчета и сдавали, не написав ни строчки кода. Если у преподавателя прокатывает такое, он не слабоват? В итоге после выпуска у нас код умеют писать ровно 3 человека. Как мне кажется, такой результат — это уже вина кафедры, а не студентов.

    PS На всякий случай скажу, что кафедра не чисто программерская, специальность «прикладная информатика в экономике».
  • Это знает любой студент-программист
    0
    Тут дело не в цикле, а в повторном использовании уже рассчитанных значений. Посмотрите инфу по динамическому программированию.
  • Это знает любой студент-программист
    0
    Если человек применяет рекурсию для расчета чисел Фибоначчи, он просто слабо представляет, сколько лишних вычислений производит его программа.
    А если знает, то зачем писать плохо, если можно хорошо? Тем более если это нетрудно в данном случае.
  • В Швейцарии создана партия ненавистников PowerPoint
    0
    Эта невинная программа тут вообще ни при чем. Просто большинство ее пользователей вообще не понимают, что такое презентация.
    Довелось мне как-то выступать на университетской конференции. Почти все участники запихнули в презентацию целиком свой доклад. В итоге каждый слайд представлял из себя тонну текста на дебильном фоне с какими-нибудь пузырьками или уродливую приплюснутую диаграмму.

    Хоть ПП и хороший, я была бы только за, если бы таких людей лишили привычных инструментов и заставили делать все по-человечески, например, в ТеХе, где не забалуешь.

    Кстати, такое наблюдается не только с презентациями, но и текстовыми документами. Никто не оформляет их как надо, выделяют участки текста курсивом или, еще хуже, комик сансом, содержание делают вручную, без ссылок, все едет куда-то, заголовков нет (вместо этого просто выделяют жирным), списки не оформлены. Так что я запретила бы еще Ворд и любые WYSIWYG-редакторы. Шутка, конечно. Но, может, тогда мир с эстетической точки зрения стал бы лучше))
  • Это знает любой студент-программист
    +2
    До 4-го курса я и мои одногруппники, не являющиеся имбецилами в программировании, старались следовать описанной вами инструкции. Но в конце-концов все поняли, что делать это на нашей кафедре — дурной тон, по-другому это называется «метание бисера перед свиньями». Делать что-то крутое, вкладывать в это душу, чтобы потом очередной «преподаватель», не отличающий мышку от клавиатуры, придрался к шрифту в твоем отчете? Увольте. Я лучше сделаю что-нибудь на работе или буду писать свои проекты, не связанные с университетом.

    PS Да, разумеется, студенты всегда считают себя умнее преподавателей, зачастую необоснованно. Но, я думаю, большинство здесь со мной согласятся, что преподавательский состав на IT-специальностях нынче объективно слабоват.
  • Чехия! Кто виноват и что делать айтишнику за рубежом!?
    0
    Возможно, сейчас так и есть. Я интересовалась работой в Чехии 2 года назад.
    А 50 тыс. крон разве что на семью из двух человек хватит, и то с натяжкой. Хотя может это у меня аппетиты нездоровые))

    Что касается супермаркетов, то я просто написала о том, что видела, преувеличивать мне смысла нет. Не успела поделить супермаркеты на дорогие и дешевые, потому что мне попадались только дорогие. С ценами московскими знакома, если что))
  • Чехия! Кто виноват и что делать айтишнику за рубежом!?
    +2
    >>Те же продукты по моим наблюдениям дешевле на треть, а то и в два раза, чем в России.

    Я походу неудачник. Жила в Чехии месяц. До этого постоянно слышала о супердешевых пабах и супермаркетах. Я там их не увидела. Цены как в Москве, или еще выше. В большинстве супермаркетов, где я была, цифры в кронах такие же как в России — в рублях, то бишь, грубо говоря, все дороже в полтора раза. В общем, я была очень удивлена. Учитывая их зарплаты и то, сколько они платят за электричество, на покушать вообще не остается. Когда я смотрела вакансии разработчиков в Праге 2 года назад, самая высокая ЗП была 30 000 крон, а так от 12 до 20-ти. Я сразу передумала иммигрировать в Чехию.

    Про девушек — неправда. Судить о красоте по каблукам и прочим побрякушкам — как-то по-пещерному: есть серьга в носу и бусы, значит красивая, а все остальные второй сорт, ага. Соотношение красивых и некрасивых людей во всех странах примерно одинаково, и в Чехии достаточно симпатичных парней и девушек.
  • Дневник репатриантов: как мы подняли 1 млн. $ инвестиций за шесть недель (и отдали менее 15%)
    0
    Речь шла о финансовых результатах.
  • Дневник репатриантов: как мы подняли 1 млн. $ инвестиций за шесть недель (и отдали менее 15%)
    –2
    Не знала, что финансовые результаты являются секретом. Это необходимая информация для кредиторов и остальных контрагентов, и она должна быть публичной.

    В налоговой тоже можете сказать, что у вас частная компания, и вы не собираетесь им ничего раскрывать. Я думаю, они оценят ваше чувство юмора.
  • Proдвинутый папа — территория для IT пап
    0
    Арендовали бы сервер с масштабируемыми ресурсами и никаких проблем. Стоит копейки, зато никто бы не был лишен возможности созерцать ваше творение.
  • Каждую строчку кода Linux и каждую правку в Википедии надо будет регистрировать в Роспатенте?
    0
    Классика: царь хороший, бояре плохие. Избавляйтесь от этих иллюзий.
  • HTML в PDF
    0
    А Вы не пробовали использовать pdflatex для этих целей? По-моему самое то, когда речь идет о документах с жесткими требованиями к оформлению. Я с помощью php обычно только шаблон для LateX генерирую, а потом скармливаю его pdflatex. На выходе — красивая pdf-ка с соблюдением всех требований к документации. Единственный минус — нужно разобраться в LaTeX'e, чтобы сделать каркас шаблона.
  • FizzBuzz, или почему программисты не умеют программировать
    0
    Бывает полезно писать вообще с чистого листа и без подключения к Интернету :) Нужно уметь преодолевать этот психологический барьер. Я начинаю с развернутого комментария о том, что будет делать этот код, когда ничего в голову не идет.
  • FizzBuzz, или почему программисты не умеют программировать
    +2
    Мне кажется, у некоторых еще проявляется т.н. боязнь чистого листа. Люди привыкли копипастить куски кода из интернета/чужих проектов/своих предыдущих проектов. Причем даже если этот код вообще не имеет ничего общего с тем, что требуется написать. Наблюдала как-то за одним товарищем: он копипастил код предыдущей лабораторки в новый файл, стирал все, кроме int main() {} и начинал писать новую. И еще обязательно оставлял закомментированными какие-то куски типа готовых printf, while, for, чтобы потом использовать и их. Так что вполне может быть, что большая часть времени тратится кандидатом на мучительные попытки вспомнить синтаксис нужных конструкций, которые он, по идее, должен писать на автомате.
  • Концепция web-проекта или почему мы убиваем свои идеи?
    0
    Писать концепцию 2 месяца? Такая долговременная беременность идеей в итоге закончится выкидышем. И все эти девизы, цели и кривые таблички с концепт-артом, аккуратно сложенные в папочку, отправятся в помойку. Просто потому что энтузиазм улетучивается уже через неделю, если нет подвижек в реализации.

    Лучше начинать сразу делать что-то реальное, а потом выбросить на помойку код, который написали, чем изливать свои мечты (а по-другому это не назовешь) на бумагу. На самом деле это один из видов прокрастинации. Я ж не могу начать, пока все не спланировал, не записал. Составил концепт-арт, теперь можно и чайку попить, ага.
  • Comment from a drafted post.
  • Эмулятор машины Тьюринга на MySQL
    0
    Фактически это не модификация входной строки, а костыль для имитации МТ. Это здесь входная строка изначально состоит только из входной строки, а в МТ за ней следует бесконечное количество пробелов.
    Если входные данные закончились, и за ними больше ничего нет, то МТ считывает пробел.
  • Эмулятор машины Тьюринга на MySQL
    +1
    Я ждала этого вопроса :) Просто тут переменных многовато, и блок объявлений локальных переменных занял бы много места. Фактически это целый блок кода, который ничего не делает.
    Я решила сосредоточиться на алгоритме, поэтому использовала глобальные переменные.