Рубрика «ошибки» - 11

Cornell University

Здравствуйте! Ввиду выросшего в последнее время интереса к образованию за рубежом, а конкретно к высшему образованию в США, хотелось бы поделиться своим опытом поступления на бакалавра в несколько американских вузов. Так как поставленной себе цели я не достиг, то рассказывать буду с тёмной стороны вопроса — анализ ошибок, которые может допустить абитуриент и способы их избежать. Я не буду углубляться в детали самого поступления, так как этого материала с лихвой хватает на том же хабре. Всех заинтересовавшихся прошу под кат.
Читать полностью »

Приветствую тебя, %USERNAME%!

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

И, что вполне естественно, найм различного рода разработчиков, тестировщиков, аналитиков является неотъемлемой составляющей моей деятельности – тут и компенсация текучки, и формирование новых команд, и реструктуризация уже имеющихся команд под новые проекты и т.д и т.п.

При этом я постоянно сталкиваюсь с тем, что кандидаты допускают одни и те же базовые, концептуальные ошибки – как до собеседования, так и во время него – и существенно снижают свои шансы на успешное прохождение интервью. Некоторые из этих ошибок — просто следствие незнания или непонимания некоторых принципов, которыми руководствуется работодатель при найме, некоторые — неумелое следование советам из интернета, которые, к сожалению, зачастую написаны либо чересчур популярно, либо чересчур обще.

Желающие узнать поближе, как потенциальный руководитель от разработки видит себе процесс найма и что нужно делать, если вы НЕ хотите получить работу – добро пожаловать под кат.

Читать полностью »

Итак, подошел к концу наш хабра-конкурс «Истории, которые меня многому научили»:

Глядя на конкурс историй, мой коллега SlavaPankratov вспомнил две истории из своего прошлого, которые его многому научили:

Из этого видео вы узнаете:

  • Две реальные истории серьезных управленческих ошибок, которые можно было предотвратить
  • Как опытные люди неожиданно проедают себе дырку в голове
  • Почему из лучших побуждений можно нечаянно демотивировать толковых людей
  • Когда излишнее внимание к людям вредит
  • Почему в теории мы все сильны, но на практике получается так, как получается

P.S. В свое время мы все свои ошибки и инструменты, к которым пришли, свели в подробную интеллект карту «Формула работы с людьми», про которую SlavaPankratov как раз упоминает в видео. Скачать ее можно ниже – под катом.

Читать полностью »

imageЕсли вы собираетесь написать n-ную платежную систему, рекомендую ознакомиться с типичными ошибками в реализации API, которые я собрал в процессе написания модулей для своего проекта.

Читать полностью »

Вчера организация The Linux Foundation объявила о запуске проекта Core Infrastructure Initiative (CII) для финансовой поддержки бедствующих Open Source проектов вроде OpenSSL, который в последние годы жил на пожертвования $2000 в год.

В официальном пресс-релизе The Linux Foundation подчёркивает, что необходимость финансовой поддержке совершенно не связана с низким качеством кода OSS, совсем наоборот. Свободное ПО превосходит проприетарный софт по качеству кода и по безопасности. В подтверждение этого The Linux Foundation сослалась на последнее исследование Coverity Open Scan, результаты которого опубликованы 15 апреля, через неделю после публикации информации о баге Heartbleed.

Понятно, что момент для публикации выбран исключительно неудачный. Все только и обсуждали, как такой баг попал в открытый код и как предотвратить такое в будущем. Ответа до сих пор нет. Возможно, миллионы долларов от CII помогут решить проблему.

В этой ситуации важно понимать, что качество кода СПО действительно объективно превосходит качество кода проприетарного софта. Условно говоря, если бы код OpenSSL не был открыт, мы могли вообще никогда не узнать об этой уязвимости.
Читать полностью »

Компания Apple недавно допустила крупную ошибку, забыв удалить лишнюю строчку с оператором безусловного перехода goto посередине функции SSLVerifySignedServerKeyExchange для проверки серверной подписи при установке SSL-соединения. В результате, функция успешно завершала работу, независимо от результата проверки подписи.

Однако, это не первый случай в истории, когда критическая ошибка объясняется единственной строчкой кода. Вот ещё несколько таких примеров.

X Server

В 2006 году было обнаружено, что X Server проверяет рутовые права у пользователя, но при этом разработчики в реальности забыли вызвать соответствующую функцию.

--- hw/xfree86/common/xf86Init.c
+++ hw/xfree86/common/xf86Init.c
@@ -1677,7 +1677,7 @@
   }
   if (!strcmp(argv[i], "-configure"))
   {
-    if (getuid() != 0 && geteuid == 0) {
+    if (getuid() != 0 && geteuid() == 0) {
        ErrorF("The '-configure' option can only be used by root.n");
        exit(1);
     }

Читать полностью »

Оригинал статьи носит название «10 SQL ошибок, которые делают Java разработчики», но, по большому счёту, приведённые в ней принципы можно отнести к любому языку.

10 потенциальных SQL ошибок, которые делают программисты

Java программисты мешают объектно-ориентированное и императивное мышление в зависимости от их уровня:
— мастерства (каждый может программировать императивно)
— догмы (шаблон для применения шаблонов где-либо и их именование)
— настроения (применять истинный объектный подход немного сложнее чем императивный)

Но всё меняется, когда Java разработчики пишут SQL код.
Читать полностью »

PVS-Studio, CERN

Сейчас я буду рассказывать и показывать на примерах, почему физики тоже должны использовать инструменты статического анализа кода. Мне бы хотелось, чтобы этим инструментом был PVS-Studio. Но, конечно, любой другой инструмент тоже будет полезен. Анализатор кода сократит время на отладку приложений и уменьшит головные боли от тупых ошибок. Лучше побольше думать о физике и поменьше об ошибках в программах на языке Си++.

Читать полностью »

Сегодня вечером друг показал на картах Google нечто странное image
На картах дублируется Рыбинское водохранилище.
Читать полностью »

Сегодня я расскажу о трекере на кухне Додо Пиццы. На нашей кухне висят планшеты с интерфейсами трекера. Трекер — спинной мозг процесса изготовления пиццы. Он вступает в действие с момента принятия заказа и до передачи термосумки с пиццей курьеру.

Трекер состоит из интерфейсов, каждый из которых выполняет свою важную функцию. Каждый интерфейс показывает пользователю (сотруднику кухни) какие-то конкретные параметры продукта.

image

Логика трекера в одном предложении: получить информацию о заказе от клиента, распределить продукты по типам и провести продукты через кухню до выдачи конкретному курьеру. Интерфейсы находятся перед сотрудниками на экранах планшетов, сотрудник нажимает на кнопки, продукт перемещается с экрана на экран.

Типы продуктов:

  • Выпекаемые: пиццы (экраны: Тесто, Начинка, Упаковка)
  • Полуфабрикаты: салаты, картошка, кукуруза (экраны: Закуски, Упаковка)
  • Простые: напитки, маффины (добавляются в завершении, на схеме не показаны)

Все продукты в завершении распределяются по экранам выдачи (экраны: Курьеры и Выдача в зал).

Каждый экран выводит определенное количество типов продуктов. Для каждого продукта выводятся определенные параметры (названия, размеры, толщина теста и т.д.). Цель — сделать так, чтобы работа с интерфейсами вызывала минимум ошибок у сотрудников. Я покажу, как шла работа над интерфейсами и какими были попытки сделать так, чтобы сотрудники не путали пиццы.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js