Pull to refresh
23
0
Send message

Закроем тему прокрастинации

Reading time4 min
Views78K

Лет 20 назад люди тоже ленились. Но термин «прокрастинация» хоть уже существовал (с 1970-х), но не был знаком абсолютно всем, как сейчас. Мне кажется, у нас эпидемия. И, кажется, я знаю почему и что с ней можно сделать. Во всяком случае, у меня работает. И откладывать чтение на потом не придётся – всего 3 правила, уложусь в 5-7 минут Вашего времени

Читать далее
Total votes 134: ↑121 and ↓13+108
Comments184

Что такое быть тимлидом

Reading time14 min
Views31K

Интро


К сожалению, большая часть работы тимлида скрыта от команды. И в зависимости от многочисленных факторов, таких как размер команды, выстроенные процессы, наличие других ролей, занимающихся работой с командой — она еще и невероятно размыта. Список твоих обязанностей в разных компаниях будет отличаться. Где-то это просто формальная должность человека, который просто перетаскивает задачи из одного статуса в другой в свободное время от написания кода, в другой — это полноценная роль, где придется отложить в сторону свою любимую IDE и заняться кучей других обязанностей. Кстати, очень часто эту роль совмещают с еще одной ролью, техлида, и далеко не всегда это плохо.


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


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

Читать дальше →
Total votes 74: ↑71 and ↓3+68
Comments48

Завещание Баффета или о чём молчат финконсультанты

Reading time4 min
Views64K
У. Баффет завещал жене после своей смерти вложить все средства  в биржевой фонд ETF на S&P 500 (VOO) и жить в своё удовольствие. Однако книги, интернет и финконсультанты призывают нас составлять диверсифицированные портфели с обязательным включением в них облигаций. К слову, о диверсификации Баффет тоже отзывается не лестно и призывает все яйца хранить в одной корзине, просто внимательно за ней присматривать.

В данной статье мы попробуем разобраться, стоит ли верить оракулу из Омахи или прислушаться к финансовым консультантам. А поможет нам в этом Python и Quantopian.
Читать дальше →
Total votes 44: ↑41 and ↓3+38
Comments136

Разработка через приемочные тесты (ATDD). Что это такое, и с чем его едят

Reading time9 min
Views35K

Разработка через тестирование (TDD) – отличный способ повысить качество и надежность кода. Этот же подход может быть распространен и на разработку требований. Он называется "Разработка через приемочные тесты" – acceptance test driven development (ATDD). Сначала я присматривался к этому подходу, потом пробовал применить, потом долго тюнинговал, чтобы приспособить его под мои нужды, и теперь хочу поделиться мыслями. И для себя еще раз разложить все по полочкам.


В этой статье я расскажу небольшое введение в тему. Пример будет совсем простой и скорее для иллюстрации. А в следующей статье постараюсь поделиться историей, как я применял ATDD на практике при разработке настоящей фичи в реальном продукте.

Читать дальше →
Total votes 23: ↑22 and ↓1+21
Comments5

Бесплатная GPU Tesla K80 для ваших экспериментов с нейросетями

Reading time6 min
Views72K


Около месяца назад Google сервис Colaboratory, предоставляющий доступ к Jupyter ноутбукам, включил возможность бесплатно использовать GPU Tesla K80 с 13 Гб видеопамяти на борту. Если до сих пор единственным препятствием для погружения в мир нейросетей могло быть отсутствие доступа к GPU, теперь Вы можете смело сказать, “Держись Deep Learning, я иду!”.


Я попробовал использовать Colaboratory для работы над kaggle задачами. Мне больше всего не хватало возможности удобно сохранять натренированные tensorflow модели и использовать tensorboard. В данном посте, я хочу поделиться опытом и рассказать, как эти возможности добавить в colab. А напоследок покажу, как можно получить доступ к контейнеру по ssh и пользоваться привычными удобными инструментами bash, screen, rsync.

Читать дальше →
Total votes 44: ↑42 and ↓2+40
Comments29

Яндекс открывает технологию машинного обучения CatBoost

Reading time6 min
Views102K
Сегодня Яндекс выложил в open source собственную библиотеку CatBoost, разработанную с учетом многолетнего опыта компании в области машинного обучения. С ее помощью можно эффективно обучать модели на разнородных данных, в том числе таких, которые трудно представить в виде чисел (например, виды облаков или категории товаров). Исходный код, документация, бенчмарки и необходимые инструменты уже опубликованы на GitHub под лицензией Apache 2.0.



CatBoost – это новый метод машинного обучения, основанный на градиентном бустинге. Он внедряется в Яндексе для решения задач ранжирования, предсказания и построения рекомендаций. Более того, он уже применяется в рамках сотрудничества с Европейской организацией по ядерным исследованиям (CERN) и промышленными клиентами Yandex Data Factory. Так чем же CatBoost отличается от других открытых аналогов? Почему бустинг, а не метод нейронных сетей? Как эта технология связана с уже известным Матрикснетом? И причем здесь котики? Сегодня мы ответим на все эти вопросы.

Total votes 216: ↑215 and ↓1+214
Comments128

На страх параноикам: куда нас привела разработка системы аналитики для борьбы с промшпионажем

Reading time6 min
Views38K


У одного из наших заказчиков появился довольно интересный запрос, связанный с работой контрразведки на предприятии. Цель — чтобы более чем дорогую (в том числе для государства) информацию не выносили наружу. Идея реализации — сбор всех возможных открытых данных о сотрудниках и выявление среди них «казачков» по шаблонам поведения. Собственно, это и раньше делали безопасники вручную, но теперь предлагалось применить хороший дата-майнинг.

А дальше стало жутковато: мы поняли, как много можем узнать друг о друге, используя всего лишь открытые данные. Начиная с промышленного шпионажа и заканчивая личными отношениями на работе. Полезло столько всего, что нам чуть было не порезали публикацию этого поста. Да и порезали бы, если бы полезных «гражданских» применений не оказалось бы в разы больше.
Читать дальше →
Total votes 60: ↑58 and ↓2+56
Comments55

Генетический советник для торговли опционами

Reading time11 min
Views16K


При торговле опционами одна из главных задач состоит в определении справедливой цены опциона. На основании нее можно понять какие опционы недооценены рынком, а какие переоценены в данный момент. Исходя из этого и принимаются решения о покупке или продаже конкретного опциона. В данной статье рассматривается опыт создания советника в основе которого лежит Генетический Алгоритм (ГА), позволяющего как раз автоматизировать процесс выбора опционов для продажи и покупки соответственно Советник, в отличие от торговых роботов (или Механических Торговых Систем — МТС), не производит сделок, он лишь дает рекомендации трейдеру, который уже самостоятельно принимает решение совершать сделку или нет.

Для начала — пару слов о генетическом алгоритме:

Подробно описывать генетический алгоритм не имеет смысла, поскольку эта тема хорошо представлена и на данном ресурсе и вообще на просторах Интернета. Остановлюсь только на основных моментах, которые необходимы для понимания концепции генетического советника в целом.
Читать дальше →
Total votes 27: ↑22 and ↓5+17
Comments24

Как программист машину покупал. Часть II

Reading time11 min
Views39K
В предыдущей статье на примере покупки Mercedes-Benz E-klasse не старше 2010 года выпуска стоимостью до 1.5 млн рублей в Москве была рассмотрена задача поиска выгодных автомобилей. Под выгодными следует понимать предложения, цена которых ниже рыночной в текущий момент среди объявлений, собранных со всех наиболее авторитетных сайтов по продаже б/у автомобилей в РФ.

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


Читать дальше →
Total votes 67: ↑54 and ↓13+41
Comments48

Учимся на ошибках в организации контроля качества

Reading time13 min
Views35K
Привет, Хабр! Меня зовут Илья Кудинов, и я работаю QA-инженером в компании Badoo. Три года назад я начал посещать различные IT-конференции и рассказывать о процессах и технологиях, применяемых нами при контроле качества. И конечно же, после каждого доклада я общался со слушателями, интересовался, как работают они. В этом деле меня всегда мотивировали отзывы вида «Раньше мы работали вот так, но, послушав твой доклад, мы увидели, как можно сделать лучше», а еще лучше — когда люди не копируют наши приемы, а придумывают что-то сами, иногда даже более интересные варианты. Таких историй у меня накопилось много, и я хочу поделиться с вами некоторыми из них (все имена и названия вымышлены, любые совпадения с реальными лицами являются случайностью). Может быть, что-то из этого поможет вам увидеть направление развития вашего собственного проекта — и это будет самой большой наградой для меня! Разумеется, буду рад после этого выслушать и ваши истории — в комментариях или личных сообщениях.
Читать дальше →
Total votes 28: ↑27 and ↓1+26
Comments9

Wiren Board 4 — контроллер для автоматизации

Reading time4 min
Views60K
image

Год назад мы выпустили контроллер Wiren Board Smart Home. Благодаря невысокой цене и широким возможностям он имел успех среди энтузиастов.

Поэтому мы решили не останавливаться и выпустили новую версию — контроллер для автоматизации Wiren Board 4, к которому написали и новый софт.

Несмотря на название, покупатели часто использовали Wiren Board Smart Home и для совсем не “домашних” задач: сбора климатических параметров, опроса счётчиков и датчиков, удалённого контроля оборудования — то есть в качестве универсального логического контроллера.

Wiren Board 4 (как в железе, так и в ПО) лучше приспособлен для таких задач. Домашних пользователей это тоже коснулось — контроллер стал надёжнее.
Читать дальше →
Total votes 50: ↑47 and ↓3+44
Comments83

Как «русские хакеры» пытались узнать о новых санкциях против России: изучаем CVE-2015-1701

Reading time6 min
Views43K
Об этой уязвимости нулевого дня в Windows стало известно еще 20 апреля, когда компания FireEye и агентство Bloomberg сообщили о неудачной кибератаке на правительственное ведомство зарубежного государства, обсуждавшее с США политику санкций против России. В причастности к содеянному, а также в попытках взлома спецслужб НАТО, госорганов Грузии, Польши, Венгрии в FireEye обвинили «русских хакеров» из группировки APT28.

Атака была реализована с помощью ранее неизвестных уязвимостей CVE-2015-3043 в Adobe Flash и CVE-2015-1701 в Windows. Пользователя отправляли по ссылке на зараженный сайт, где скрипт JavaScript с помощью Flash-уязвимости подгружал в компьютер исполняемый файл, который посредством дыры CVE-2015-1701 в Windows повышал привилегии и похищал ключи шифрования.

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

Ценная gSharedInfo


Сначала следует описать некоторые структуры и механизмы, используемые для эксплуатации CVE-2015-1701 уязвимости. Без печально известной win32k.sys не обошлось и на этот раз, поэтому первым делом остановимся на структуре win32k!tagSHAREDINFO, которой отвечает символ win32k!gSharedInfo, а также на типе данных HWND, который с ней очень тесно связан.



Наша gSharedInfo хранит указатели на различные связанные с окнами структуры и, что самое замечательное, многие из этих структур отображены в пользовательское пространство (смаплены в юзер-мод, по-нашему), причём соответствующий символ user32!gSharedInfo с некоторых пор (либо с висты, либо с семёрки) стал экспортируемым.
Читать дальше →
Total votes 51: ↑46 and ↓5+41
Comments35

Как быстро проверить Linux сервер на предмет взлома

Reading time4 min
Views127K
Примерно два года назад я арендовал у одного немецкого хостера не очень мощный сервер на базе Centos 5.2. На нём живут несколько вебпроектов, приносящих некоторую прибыль, и поэтому, я стараюсь присматривать за ним по мере возможности.
На Centos есть стандартный анализатор логов Logwatch, который запускается ежедневно по крону, анализирует содержимое /var/log, делает сводный отчет и присылает его по электропочте. В один прекрасный день я обнаружил в этом отчете запись:

--------------------- yum Begin ------------------------ 
 
 Packages Installed:
    lzo2 - 2.02-3.el5.rf.i386
    dnstracer - 1.8-1.2.el5.rf.i386
    openvpn - 2.0.9-1.el5.rf.i386

---------------------- yum End -------------------------


В тот момент меня она очень смутила, так как в предыдущий день на сервер я не логинился и тем более ничего не устанавливал. Первое, что пришло в голову — сервер был скомпроментирован. Себя я считал уверенным пользователем Linux, однако я растерялся. Благо в тот момент в icq был мой бывший коллега, лучший системный администратор, которого я знаю, и просто очень хороший человек.
Он помог быстро проверить систему. В результате у меня сформировалось краткое HowTo о том, как быстро проверить свой сервер на предмет взлома. Уверен, что многим Храброчитателям оно будет полезно. Предполагается, что пользователь знаком с консолью Linux/Unix.

Читать дальше →
Total votes 212: ↑183 and ↓29+154
Comments105

Курсы этичного хакинга и тестирования на проникновение: обновленная программа

Reading time4 min
Views24K
Если вы увлекаетесь информационной безопасностью и хотите усовершенствовать свои навыки в короткое время, то содержание статьи, скорее всего, покажется вам достаточно интересным. Статья носит обзорный характер обновленных программ обучения в области практической ИБ от PENTESTIT.

Разрабатывая уникальные по своему формату и методике обучения курсы: «Zero Security: A» и «Корпоративные лаборатории», мы стараемся сделать курсы не только эффективными, но и удобными. Основное отличие программ обучения заключается в том, что первая рассчитана на базовую подготовку в области этичного хакинга, а вторая — на профессиональную подготовку не только этичного хакинга, но и построения эффективных систем ИБ. В любом случае, даже опытные специалисты, посетившие первую программу, открывают для себя что-то новое, не говоря уже о «Корпоративных лабораториях», включающих материал, по уровню сравнимый с докладами на профессиональных хакерских конференциях. Кроме этого, каждый набор пополняется новым материалом, что позволяет передать специалистам, проходящим обучения, наиболее актуальную на момент обучения информацию.

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


Читать дальше →
Total votes 31: ↑26 and ↓5+21
Comments6

Дистанционное управление освещением на штатной проводке

Reading time3 min
Views57K
Как-то мне пришлось решать задачу дистанционного управления освещением. Идея была в том, чтобы управлять светом можно было не только с помощью выключателя, но и по беспроводному пульту. Сложность состояла в том, чтобы все это подключить к штатной проводке и сохранить удобство управления от штатного выключателя.

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


Читать дальше →
Total votes 27: ↑20 and ↓7+13
Comments38

Программист-фанатик

Reading time3 min
Views44K
Доброго времени!
У нас вышло 2 издание книги Чеда Фаулера «Программист-фанатик»

image

Книга посвящена тому, как реализовать себя и сделать карьеру. Самореализация и удача редко приходят случайно. Они требуют вдумчивости, целеустремленности, действия и готовности резко сменить курс, если потребуется. В этой книге описывается стратегия, позволяющая спланиро-вать и реализовать совершенную с точки зрения успеха карьеру (и как следствие — жизнь) разработчика программного обеспечения.В этой книге вы не найдете описания конкретных технологий, алгоритмов и языков программирования – ценность ее не в этом. Она представляет собой сборник практических советов и рекомендаций, касающихся ситуаций, с которыми порой сталкивается любой разработчик: отсутствие мотивации, выбор приоритетов, психология программирования, отношения с руководством и коллегами и многих других. Подобные знания обычно приходят лишь в результате многолетнего опыта реальной работы. По большому счёту перед вами – ярко и увлекательно написанное руководство, которое поможет быстро сделать карьеру в индустрии разработки ПО любому, кто поставил себе такую цель.
Читать дальше →
Total votes 28: ↑25 and ↓3+22
Comments20

Что такое хорошо: как мы разрабатывали критерии для оценки качества вёрстки веб-проектов

Reading time9 min
Views94K


На Хабре уже было немало материалов о том, как проводить качество вёрстки веб-проектов (вот отличная статья на эту тему) — как правило, речь в таких топиках идёт о коммерческих сайтах. В ходе развития образовательного проекта HTML Academy мы также столкнулись с необходимостью выработки критериев для оценки работ учеников.

Очевидно, что учить нужно так, чтобы потом люди (не все из которых «технари») могли приходить в компании и работать «правильно» — то есть создавая вёрстку, которая красиво выглядит и не требует больших усилий по поддержке. Процесс создания списка универсальных критериев для оценки занял довольно длительное время и был сопряжён с рядом трудностей. Сегодня мы расскажем о том, что же у нас в итоге получилось.
Читать дальше →
Total votes 41: ↑39 and ↓2+37
Comments47

Путь к финансовой независимости от Бодо Шеффера (Часть 1)

Reading time8 min
Views43K
Продолжаю писать конспекты с известных книг вот из этого списка от Milfgard. Сегодня это очень известная книга Бодо Шеффера «Путь к финансовой независимости».

Автор рассказывает, как работает личный успех и деньги вообще.


Читать дальше →
Total votes 22: ↑22 and ↓0+22
Comments10

Cоветы начинающему фрилансеру: как продавать услуги на развитые рынки через открытые площадки

Reading time16 min
Views63K
Я занимаюсь разработкой программного обеспечения в роли ведущего программиста-проектировщика с конца 90х годов. Фриланс никогда не был основным источником моего дохода. Но в 2010 году я начал всерьез заниматься фрилансом как побочным видом деятельности, приносящим существенный доход (за несколько месяцев я вышел на уровень продаж порядка $5k в месяц с фрилансерских контрактов с практически нулевыми расходами на исполнение контрактов, за исключением моего времени). Позднее я переехал в Северную Америку, но фриланс продолжает оставаться для меня важным побочным бизнесом. Кроме того, в своей работе я постоянно общаюсь с фрилансерами, в т.ч. профессиональными full-time фрилансерами из Северной Америки.

В этой статье я хотел бы поделиться своим опытом работы на площадках вроде elance.com с коллегами из экс-СССР и дать конкретные рекомендации по входу на рынок, позиционированию услуг, конкуренции с демпингом из Южной Азии, а также дать ликбез по общей профессиональной подготовке.
Много текста с конкретными примерами
Total votes 32: ↑31 and ↓1+30
Comments24

Поиск работы в международном масштабе: советы практика

Reading time7 min
Views38K


Данный пост переродился из ответа на вопрос «Как искать работу за границей?», заданный на Тостере. Когда ответ, подогреваемый интересом читателей, достиг размеров полноценной публикации, я решил отредактировать формат ответа и перенести её сюда.

Дисклеймер

— Нижеприведённое мои личные наработки без претензии на истину в последней инстанции.
— Важно понимать, что всегда присутствует коэффициент удачи, который может многократно увеличить отдачу от ваших усилий, равно как и помножить их на ноль.
— В любом случае это лучше, чем сидеть на попе ровно и ничего не предпринимать.
Читать дальше →
Total votes 35: ↑35 and ↓0+35
Comments9
1
23 ...

Information

Rating
Does not participate
Date of birth
Registered
Activity