Метка «качество»

Мы постоянно обсуждаем бесплатные IT-курсы типа coursera, радуемся когда выходит новый интересный материал, стараемся направлять в эту струю коллег, студентов. Ведь знания — вот они, лежат просто у ног, возьми да и пользуйся. Мои друзья решили сделать вклад в это направление и организовать тренинг QA-автоматизаторов по серьезному, с отбором и курсом на качество. Что вышло в итоге можно прочитать под катом от первого лица.

Как мы на энтузиазме автоматизаторов обучали
Читать полностью »

Мне приходится очень много читать код. Это и open source, и всяческие фреймворки, и код enterprise приложений. Именно о последних я хотел бы сегодня поговорить.

Большая часть кода enterprise приложений — отстой. Приложения глючат и тормозят, их сложно тестировать, постоянно проблемы с развертыванием и обновлением. Это как бы никого не удивляет.

Но удивляют люди, написавшие отстойный код. Эти люди, с немалым опытом, знают несколько языков, прочитали много книг, знают ООП, SOLID, рефакторинг, паттерны и другие малопонятные слова. То есть примерно такие, как многие из вас, читающих этот пост.
Читать полностью »

Nextivity Cel-Fi RS2 black (single band)

Наверняка каждый из нас не раз сталкивался с плохим качеством связи — низким уровнем 3G-сигнала. Для кого-то эта проблема некритична, но бывают случаи, когда стабильная связь жизненно важна. Если это ваш случай, рекомендую прочитать данную статью.

Покрытие в России все еще оставляет желать лучшего. Особенно это касается 3G-сетей. Даже на улицах города телефон цепляет 3G далеко не всегда, не говоря уже об офисах в многоэтажных бизнес-центрах, всевозможных подвальных и гаражных помещениях и других железобетонных конструкциях. Центральная часть России в основном равнинная, и за городом сигнал оператора распространяется без существенных помех, вопрос лишь в расстоянии до базовой станции. Однако, в местах с холмистым или горным рельефом либо при плотной городской застройке даже близость БС не дает гарантии уверенного приема.

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

В этой статье я хочу познакомить вас с абонентским терминалом Nextivity Cel-Fi RS2 black. Это сравнительно новое решение, используемое крупными международными операторами: Vodafone, AT&T, T-Mobile, Orange group и др., а так же одобренное и сертифицированное в России. Оно служит для увеличения зоны уверенного приёма-передачи голоса и данных по технологии 3G.

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

Чеклист вопросов к проекту: старт, реализация, финал — и 10 советов «в полёт»
Проверьте свой проект: вы летите или думаете, что летите?

Контрольные вопросы на старте проекта:

  1. Что конкретно нужно сделать на текущем этапе? В целом? Есть ли чётко определённые цели каждого этапа? Как вы определите, что цели достигнуты? Соответствует ли текущий статус заявленным планам и целям или их необходимо корректировать?
  2. Реалистичны ли эти цели?
  3. Что случится, если цели не будут достигнуты в срок? Каков план действий?
  4. Насколько этот проект значим? Например, зависит ли от него место вашей компании на рынке?
  5. Какую выгоду вам, обществу и инвесторам принесёт проект?
  6. Достаточно ли хорошо спланирован проект? Все ли в вашей команде понимают пункты плана одинаково?
  7. Нужны ли внешние эксперты, например, юристы?
  8. Есть ли у команды опыт работы вместе? Кто будет координировать команду? Важно ли для проекта работать именно вместе — или возможен труд одиночек? Отвечает ли каждый член команды за работу всех остальных?
  9. Можно ли сократить размер команды? Если нет, то почему? Если да, то почему это не сделано?
  10. Как вы будете компенсировать форс-мажоры с персоналом, например, что случится, если ваш ведущий разработчик сломает руку?Читать полностью »

Думайте при разработкеНедавно наткнулся на ошибку в Android приложении Яндекс.Метро. Если бы был чемпионкой мира по синхронному плаванию, то обязательно спросил бы: «Кто создавал программу „для галочки“? Кто работал „на отшибись“? Кто слабое звено?». Недоумение вызывала не сама ошибка, а то, что она попала в приложение и всё ещё не исправлена.

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

Начать хотелось бы с главы «Изучение знаменитых (и не очень знаменитых) ошибок» из книги «Наука отладки». Если ещё не читали, то рекомендую прочитать. В этой главе описаны «глупые» ошибки и стечения обстоятельств, которые стоили жизней и миллионы долларов. Все эти ошибки объединяло то, что выявляющий их тестовый сценарий было чрезвычайно сложно воспроизвести, в результате многие проверки были просто пропущены.

В статье же мы будем рассматривать распространённые приложения, которые протестировать может любой участник команды. Давайте проведём небольшой эксперимент. Если у вас нет Android устройства, то попросите минут на десять у коллег или друзей. Скачайте приложение Яндекс.Метро и попробуйте его протестировать. Интересует актуальная на текущий момент версия 1.63 от 02.11.2012 сборка 159 (на Google Play стоит дата 21.01.2013). Для корректности проверки предлагаю снять галочку «Автообновление» в настройках Google Play.

Проверять будем основную функцию: нахождение маршрута между двумя станциями метрополитена Москвы. Посмотрите на карту метро. Подумайте, что следовало бы протестировать в приложении, что могло бы быть неправильно реализовано. Явной ошибкой будет сообщение «Маршруты не найдены», что некорректно, поскольку нет изолированных станций.

Эта же ошибка может проявить себя не так явно:

небольшая подсказка

Программа отображает маршруты между двумя станциям, но наиболее очевидный (и короткий) не находит.

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

Случай в океане

Личный многолетний опыт чтения различных блогов и форумов показывает, что, как правило, наибольшую популярность имеют статьи негативного плана — критика неудачных решений какой-нибудь известной компании, шокирующие истории обмана клиентов, просто обнародование чьих-то ошибок в работе… В принципе, оно и понятно: только в состоянии благородного гнева абсолютное большинство авторов и комментаторов могут блеснуть красноречием, метко заклеймить виновника события острым словцом или, на худой конец, запостить в комментариях миллиардный по счёту facepalm (за который я, если честно, уже давал бы пожизненный бан). Это проще, это привычнее, это вошло в норму. Как только человек видит некий положительный материал, всё красноречие и искромётный юмор улетучиваются мгновенно — нет стимула, хвалить не интересно.

В принципе, этот феномен можно попробовать объяснить тем, что блог или форум — это что-то типа поликлиники, куда идут только в случае возникновения проблем. Но в результате общая картинка вырисовывается весьма грустная: всё вокруг плохо, жизнь состоит только из негатива. Но на самом деле это не так, и Хабрахабр является одним из уникальных ресурсов, где положительный заряд читатель получает гораздо чаще, чем отрицательный. И вот таким вот образом, издалека, я подошёл к собственно теме своего поста, который просто не могу не опубликовать справедливости ради.
Читать полностью »

Маленькое предварительное замечание: Подробное объяснение потребовало бы объёмов средней книжки. Тут всё дано схематично, кратко и без подробностей. Текст, конечно, хулиганский, но прежде чем наезжать на автора, стоит учесть, что за ним стоит двадцать лет опыта и много-много литературы как классической, так и специалистам ИТ не ведомой.

Есть слово, приносящее индустрии каждый год огромные убытки. И слово это — bug.

Баги — это некие виртуальные вредоносные жучки, прячущиеся внутри программ. Они обладают собственной волей. Они проникают в самые важные участки. Они портят результаты, прерывают выполнение работы и делают другие гадости.

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

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

Почему так происходит? Потому что в индустрии совершенно превратно понимают, что такое исходный код и для чего он нужен.

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

Если сделать программиста не идеальным, получается одна интересная штука: код перестаёт быть готовым результатом. Он даже перестаёт быть результатом. И становится отражением текущего понимания программистом условий поставленной задачи и способов её решения.

Код именно отражает, а не описывает. Последнее возможно, но требует перестройки всего процесса, от форматов записи до мозгов.

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

Писать и говорить то, что думаешь, — это всегда отсутствие такта, презрение к окружающим и хамство. Если кто-то ставит в своём коде комментарий «Stupid idea. Does not work, if N < 0. Correct ASAP.», он рискует прослыть минимум странным. А вот если это попадёт в участок ответственности гениального программиста, тут уже мелкой истерикой не ограничится. Даже, если «stupid» будет подразумеваться только по контексту. Или напишите в комментарии что-нибудь типа «I do not know why this works, but otherwise the function generates an exception.» Потом покажите это начальнику и попросите повышения.

И, конечно, гораздо выгоднее говорить «Мы исправляем баги в коммуникационном модуле», а не «Читая документацию мы прошляпили несколько критических моментов и неделю будем всё с нуля переделывать.»

Ладно, оставим. Большинство такого не выдерживает. Страшно. И ронять чувство собственного достоинства тоже страшно. И лицо потерять… И начальство тоже… Короче, фиг с ним, перейдём к плюшкам.

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

Я окончил второй курс на основном IT-факультете ныне главного ВУЗа на Урале, доволен студенческой жизнью во всех её проявлениях, однако некоторыми аспектами учебы я жутко не доволен. В студенческой среде обсуждение процесса учебы занимает огромную часть времени, особенно на какой-нибудь лекции, так что по поводу процесса обучения у меня успело сформироваться множество мыслей.

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

ISO 9001 в ИТ компании
Сейчас редко найдешь среднюю или большую ИТ компанию, не имеющую ISO 9001 сертификата.
Тем не менее, я считаю, что в ближайшей перспективе ISO 9001 умрет для ИТ мира. Почему?
Попытаюсь обосновать.
Читать полностью »


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