Pull to refresh
0
0
Сергей Чудаков @CSRedRat

DevOps

Send message

Хабракамп

Reading time2 min
Views14K
Хабракамп — это пост на Хабре, где в комментариях первого уровня IT-специалисты пишут темы, в которых они хорошо разбираются. Темы должны быть специфичные — nginx на 100 000 юзеров в день и настройка bind неинтересны и описаны везде, а nginx на 100 000 000 пользователей в день или настройка гео-DNS для распределенного сервиса интересно. Пользователи в ответ к комментариям пишут своим вопросы специалистам.
Обсуждение Хабракампа в Q&A: habrahabr.ru/qa/19034/
Просьба на первом уровне не задавать вопросы, а писать только специалистам об их сфере деятельности.
Для специалистов это шанс получить некоторое количество кармы, если им лень писать статьи, а для остальных — возможность задать вопросы, ответы на которые сложно найти в Google.
Не ленимся плюсовать тему, чтобы она вышла в топ.
Не забываем плюсовать карму тем кто ответил на ваши вопросы.

Читать дальше →

Как украсть миллион?

Reading time5 min
Views32K
0x00 Предисловие

В детстве мы смотрели фильмы Хакеры, Взлом, Пароль Рыба-меч, и прочие творения голливуда. Не смотря на юный возраст, вдохновившись мы искали информацию о хакинге, фрикинге везде где только было возможно. Помню тогда еще компакт-диски ходили с наборами выжимок с разных эхо-конференций. Осваивали программирование, постигали устройство IP-сетей, операционок и всяких железяк. Игры в промышленный шпионаж и прочие прелести детства. Мечта украсть миллион и желательно баксов с помощью компютеров прочно сидела в наших головах. Но… детство проходит, школа заканчивается, попытки собственного бизнеса, работа в различных телекоммуникационных компаниях, и вот уже желание своровать сформировалось в желание построить честный высокотехнологичный бизнес, что оказалось сложнее, и следовательно интересней. Однако, не зря говорят, возможность украсть создает преступника.
Читать дальше →

Об исследовательском тестировании в Microsoft Test Manager 2012

Reading time6 min
Views15K
Пару дней назад была статья об исследовательском тестировании, и я хотел бы продолжить тему описанием одного из инструментов, поддерживающих процесс такого тестирования.
Что, собственно, мы ожидаем от такого инструмента, если в исследовательском тестировании у нас нет ни сценария, ни плана, ни четких критериев оценки правильности поведения системы?

Требования к инструменту


На мой взгляд, такой инструмент должен:
  1. Быть интегрирован с системой баг-трекинга, чтобы можно было заводить дефекты по мере их обнаружения
  2. Автоматически документировать обнаруженный дефект. Это важно, когда тест идёт не по сценарию, а в произвольной последовательности, которую невозможно держать в голове
  3. Обеспечивать возможность повторения последовательности исследовательского теста
  4. Быть интегрирован с системой управления требованиями — чтобы по возможности привязывать обнаруженные дефекты к требованиям
  5. Быть интегрирован с системой управления тестами, чтобы:
  • проводить все виды тестирования в единой среде
  • создавать новые сценарии тестирования на основе исследовательских тестов

Собственно, оптимальным вариантом в этом смысле будет наличие поддержки исследовательского тестирования в интегрированном инструменте управления требованиями, тестами и дефектами. Об одном из таких инструментов — Microsoft Test Manager 2012 — я и хочу рассказать.
В 2012-й версии MTM появилась поддержка исследовательского тестирования. Способы применения этого функционала мне видятся следующие:
  1. Проведение исследовательского тестирования в дополнение к тестам по сценариям
  2. Проведение тестирования в условиях отсутствия сценариев тестирования
  3. Быстрое создание новых сценариев тестирования через сеансы исследовательского тестирования
смотреть картинки и объяснения, как оно работает

IT-профессионалы, к барьеру!

Reading time1 min
Views4.9K


Считаете, что ваши профессиональные возможности и навыки не до конца востребованы на работе? Обижены несправедливыми бюджетами и распоряжениями руководства? А может, просто желаете показать себя и свои способности? Постройте свою IT-вселенную с нуля, да так, чтобы другим было завидно! Intel представляет новую версию IT-стратегии IT Manager: Дуэли. Теперь она стала многопользовательской! Воплотите в жизнь свое видение идеальной IT-инфраструктуры, развивайте ее так, как считаете оптимальным, развертывайте новые сервисы, защищайте от атак изнутри и снаружи. Сражайтесь за рейтинг, признание и ценные призы с IT-профессионалами со всего мира!

Закатайте рукава и приступайте к развертыванию оборудования.
Призы игры

The Modal — правильные модальные окна

Reading time2 min
Views180K
Очень часто модальные окна и диалоги делаются при помощи плагинов jQuery. Например, SimpleModal или jqModal. К сожалению, все они, в варианте по умолчанию, работают неправильно.

Что же такое «правильно»?

Модальное окно по определению блокирует работу пользователя с родительским окном до тех пор, пока пользователь его не закроет. То есть:

  1. Пользователю нельзя позволять прокручивать страницу под ним.
  2. При этом, если содержимого в модальном окне очень много, нужно позволить прокручивать содержимое.


По этому принципу работает просмотр фото в Facebook и Вконтакте и, я считаю, что для модальных окон это правильный вариант.

Чтобы не мучать вас заранее деталями реализации, покажу сначала демо плагина jQuery: http://rmcreative.ru/playground/modals_plugin/demo.html.

Ну а теперь немного про реализацию.
Читать дальше →

Что делать, если у вас много сторонних репозиториев

Reading time2 min
Views3.7K
Прежде чем читать этот пост откройте консоль и выполните следующие команды
ls /etc/apt/sources.list.d | wc -l

Если у вас вдруг появилась надпись
"ls" не является внутренней или внешней командой, исполняемой программой или пакетным файлом.

то значит эта статья точно не для вас.

Если у вас не Debian, Ubuntu или их потомки, а что-то на основе RPM или Gentoo, то это тоже не для вас, по крайне мере пока.
Если у вас получилось число меньше 5, то вам наверное не пригодится то, что написано дальше.

Ну а если вы получили число больше 10 (а то и 24 как получилось у меня) то читайте дальше и вы сможете сэкономить много времени.
Читать дальше →

Особенности поиска и устройства на работу программистом. И что плохого в современных хедхантерах

Reading time5 min
Views31K
Ни для кого не секрет, что программисты сейчас востребованы, и найти работу программисту с опытом не составляет труда. Спрос нынче больше предложения.
В этом посте я хочу описать свой опыт и наблюдения, которые я сделал после прохождения нескольких собеседований. Буду рад, если его прочитают не только соискатели, но и работодатели.

Небольшой дискламмер. Я программист и пишу с точки зрения программиста. Я сейчас не ищу работу. Я не представляю и не рекламирую ни одну из компаний, упомянутых в этом посте. Я получил оффер примерно от 6 из 9 компаний, где проходил собеседование. Я не вижу ничего плохого в том, чтобы открыто писать названия некоторых компаний, потому что они сами не делают тайны из своей деятельности и открыто публикуют свои вакансии. От моих рук ни один хедхантер не пострадал.
Читать дальше →

Карта Интернета

Reading time3 min
Views20K
Привет всем!

Хочу представить вам Карту Интернета или результат кластеризации более чем 350 тысяч сайтов в соответствии с переходами пользователей между ними. Размер круга определяется посещаемостью сайта, цвет – национальной принадлежностью, а положение на карте – его связями с другими сайтами. Если два сайта имеют стабильный поток пользователей между ними, то они будут «стараться» расположиться ближе друг к другу. После завершения работы алгоритма, на карте можно наблюдать скопления сайтов (кластеры) объединенные общими пользователями.

image

Например, если ввести в поиск habrahabr.ru, то можно увидеть, что dirty.ru и leprosorium.ru в том же «созвездии», а еще подальше livejournal.ru. Это говорит о том, что тот, кто сейчас читает этот текст, также с высокой вероятностью посещает эти сайты (относительно усредненного пользователя Рунета конечно).

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

Тем, кого интересует краткое техническое описание – добро пожаловать под кат
Читать дальше →

Будущее началось. 2050 год

Reading time1 min
Views12K
10 августа на youtube появился ролик под названием «Будущее началось», никакого масштабного пиара, судя по количеству просмотров (80+) на момент публикации топика, он не получил, а ролик-то весьма достойный по нескольким техническим параметрам:

— очень гиковая/scifi анимация
— отличный утопический текст, который заставляет все 15 минут смотреть ролик, не отвлекаясь.
— безупречная дикция

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


P.S. Я не имею никакого отношения к ролику. Просто считаю, что он интересен хабралюдям с технической и болтологической точек зрения.

P.S.2 В комментариях все, ожидаемо, пустились в дискус на тему утопий. Но давайте прагматики добавим, какова цель этого ролика? Что предположительно будет на том ресурсе?

Разработана система хранения паролей в подсознании

Reading time2 min
Views3.4K
Междисциплинарная команда учёных из Стэнфорда и Северо-Западного университета, состоящая из специалистов по криптографии и нейропсихологии, разработала принципиально новый способ аутентификации, который объединяет сильные стороны биометрии и паролей. Он позволяет сохранять длинные последовательности случайных символов в подсознании так, что их невозможно извлечь ни с помощью пыток, ни под гипнозом.

Метод не предназначен для массового повседневного использования — на подсознательное запоминание пароля требуется около 45 минут тренировки, кроме того, он не даёт особых преимуществ в случае удалённого доступа — злоумышленники всегда могут силой или угрозами заставить пользователя войти в систему. Основное его назначение — физический контроль доступа в закрытые зоны и помещения, например секретные лаборатории или банковские хранилища.
Читать дальше →

Публичные выступления. Что? Как? Зачем?

Reading time5 min
Views60K
Доброго времени суток, хабролюди!

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

«Игрушечная» картография или 3D карты своими руками

Reading time4 min
Views11K
Около полутора лет назад на Хабре был размещен пост про уникальные карты китайского поисковика Baidu (для тех, кто не видел, вот он: http://habrahabr.ru/post/115107/). Я был поражен тем, насколько кропотливо, детально и красиво эти карты сделаны, поэтому однажды мы, вместе с группой товарищей, решили разобраться в процессе создания Baidu-карт и сделать собственные карты всего мира, которые выглядели бы так же круто. Под катом много картинок, раскрытие секрета Baidu-подобных карт и то, что получилось у нас.



Читать дальше →

20 сервисов и советов для веб разработчиков

Reading time6 min
Views5.7K
Ниже представлены полезные ссылки и советы исходя из моего личного опыта. Старался указать только то что может быть новым для разработчиков, поэтому ресурсов типа FireBug и других общеизвестных в списке нет.

NounProject — лучшая и наибольшая коллекция SVG картинок

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

Codebeautifier — кроссбраузерная подготовка CSS файлов c уменьшением веса самого CSS файла.

Так как разные браузеры, в частности IE воспринимают некоторые параметры CSS по разному, это доставляет проблем при кроссбраузерности. С помощью этого ресурса можно создать CSS файл который будет идентично работать во всех браузерах.

Iterm2 — лучшая консоль для mac OS и замена страндартному терминалу.

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

Spritebaker — кодирует изображения и шрифты в base64 для последующей возможной вставки в CSS, что увеличивает скорость загрузки

Web developer — плагин для Firefox дающее множество возможностей.

Например, смотреть/вносить/редактировать куки, просматривать топографию для симметрии, инфо по картинкам и прочее.

ColorZilla — плагин для firefox позволяющий кликнуть мышкой на любой точке экрана и получить код цвета.

Не нужно делать скриншот, потом закидывать в фотошоп и кликать на цвете. Просто устанавливаем плагин и все. Очень удобно.

DataUrl — генерирует код из изображения.

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

Pjax — плагин которой позволяет изменять содержимое страницы без ее перезагрузки.
Читать дальше →

Восстановление расфокусированных и смазанных изображений. Практика

Reading time10 min
Views358K
Не так давно я опубликовал на хабре первую часть статьи по восстановлению расфокусированных и смазанных изображений, где описывалась теоретическая часть. Эта тема, судя по комментариям, вызвала немало интереса и я решил продолжить это направление и показать вам какие же проблемы появляются при практической реализации казалось бы простых формул.

В дополнение к этому я написал демонстрационную программу, в которой реализованы основные алгоритмы по устранению расфокусировки и смаза. Программа выложена на GitHub вместе с исходниками и дистрибутивами.

Ниже показан результат обработки реального размытого изображения (не с синтетическим размытием). Исходное изображение было получено камерой Canon 500D с объективом EF 85mm/1.8. Фокусировка была выставлена вручную, чтобы получить размытие. Как видно, текст совершенно не читается, лишь угадывается диалоговое окно Windows 7.



И вот результат обработки:



Практически весь текст читается достаточно хорошо, хотя и появились некоторые характерные искажения.

Под катом подробное описание проблем деконволюции, способов их решения, а также множество примеров и сравнений. Осторожно, много картинок!
Читать дальше →

Как определить язык по виду иероглифов/закорючек?

Reading time1 min
Views194K
Вот, задался таким вопросом… С помощью гугл транслейта и такой-то матери, родилась такая блок-схемка:



картинка кликабельна

Кому нужен сорец (в .docx): тут

Сергей Белоусов знает как получить инвестиции

Reading time3 min
Views10K
Дмитрий Фалалеев решил открыть новый медийный проект Terafirrma о российской индустрии стартапов, где будут публиковаться материалы из первых рук, только от непосредственных участников и только по делу. Одним из первых участников стал наш Сергей Белоусов рассказавший о некоторых тонкостях своего подхода к отбору стартапов и ошибках стартаперов.



Итак, вот ключевые проблемы:

— Нет явного лидера. Или, как вариант, лидеров несколько и обязанности между ними не распределены. Первый раз я акцентировал свое внимание на этом года три назад и сейчас могу совершенно точно сказать, что эта ошибка почти на 100% фатальна для проекта. Мы видели самые разные ситуации: начиная командами, где лидеры боролись за власть в ущерб бизнесу, и заканчивая стартапами, которые каждый раз делегировали нам на встречу нового человека – этакий «колхоз». Так или иначе, мы хотим общаться с одним и тем же персонажем, который станет для нас интерфейсом к команде и сможет отвечать на возникающие у нас вопросы и решать проблемы своей компании. Если такого лидера нет, это повод задуматься – в первую очередь, кстати, самому стартапу. Для нас же как для инвесторов вероятность успеха таких вложений очень невысока. Так что делайте выводы.


В любом проекте должен быть свой Брюс Ли. by Aled Lewis

Читать дальше →

20 вещей, которые я должен был знать в 20 лет

Reading time3 min
Views718K
1. Мир пытается оставить тебя тупым. Начиная от банковских платежей и процентов и заканчивая чудо-диетами — из необразованных людей легче вытрясти деньги и ими проще управлять. Занимайтесь самообразованием столько, сколько можете — для того, чтобы быть богатым, независимым и счастливым.
Читать дальше →

TFS Aggregator

Reading time9 min
Views4.6K
… Или как автоматизировать некоторые действия в TFS 2010.

Сразу скажу, что для TFS 2012 автор обещает быстро выпустить обновленную версию, однако, на мой взгляд, с учетом того, что API не поменялось или мало поменялось, то данный небольшой проект вполне может завестись и на новом TFS 2012 RC.

Идея


Мои последние статьи (раз, два) повествуют о настройке шаблонов процессов для TFS, но данные шаблоны оторваны друг о друга, по сути, хотя и связываются в работе связями типа: Child, Parent, Related To и так далее. Было бы логично использовать эту связь, для добавления интерактивности во всю схему, чтобы элементы действительно были связанны, чтобы они действительно реагировали на состояния друг друга в зависимости от типа связи и состояния. Чтобы можно было делать некоторые аккумулирующие подсчеты в метриках, ведь все эти данные доступны и их можно использовать в автоматическом режиме, сокращая время рутинных действий.

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

Например, представим себе ситуацию, когда пользовательская история имеет полный набор артефактов и готова к работе, созданы конкретные задания для реализации этой истории. В данной ситуации история находится в состоянии Ready For Development, а все задачи в состоянии Proposed. Разработчик берет задачу в работу, меняет ее состояние на Active. Далее он должен поменять состояние истории на WIP (Work In Progress). Однако этот шаг ведь можно автоматизировать! А автоматизация в свою очередь ведет к большему порядку и красоте. Т.е. как только разработчик взял задачу в работу, состояние всей истории поменялось автоматически!

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

Читать дальше →

Information

Rating
Does not participate
Location
Пермь, Пермский край, Россия
Date of birth
Registered
Activity