Как стать автором
Обновить
-1
0
Иван @Fanatos

Пользователь

Отправить сообщение

Scheduling: мифы и реальность. Опыт Яндекса

Время на прочтение10 мин
Количество просмотров49K
В последние пару лет я занимаюсь построением различных планировщиков, и мне пришло в голову поделиться своим нелёгким опытом с коллегами. Речь идёт о двух категориях коллег. Первые — это желающие узнать, как разработать свой scheduler за 21 день. Вторые — те, кому нужен новый scheduler совсем без смс и регистрации, просто чтобы работал. Особенно хотелось бы помочь второй категории людей.

Сундуков А.А. Очередь. 1986. Холст, масло

Сначала, как водится, стоит сказать несколько общих слов. Что такое scheduler (планировщик, или, для простоты, «шедулер»)? Это такая компонента системы, которая занимается распределением ресурса или ресурсов системы по потребителям. Разделение ресурса может происходить в двух измерениях: в пространстве и времени. Планировщики чаще всего фокусируются на втором измерении. Обычно под ресурсом подразумевают процессор, диск, память и сеть. Но, что греха таить, шедулить можно и любую виртуальную ерунду. Конец общих слов.
Читать дальше →
Всего голосов 86: ↑82 и ↓4+78
Комментарии8

Как я перешёл из системного администрирования в Android-разработку

Время на прочтение8 мин
Количество просмотров73K


Несколько лет назад, я, как и другие начинающие Android-разработчики, решил найти работу в этой области. Если вы начинающий специалист, и не знаете, с чего начать изучение Android, или если вы уже обладаете определёнными знаниями в этой теме и планируете в скором времени устраиваться на работу, то этот материал для вас. По задумке, к данной статье вы будете возвращаться по мере накопления опыта: смотреть на каком этапе в данный момент находитесь и что изучать дальше.
Читать дальше →
Всего голосов 44: ↑39 и ↓5+34
Комментарии42

Стандарты и шаблоны для ТЗ на разработку ПО

Время на прочтение7 мин
Количество просмотров793K

Введение


Недавно ко мне обратились, чтобы я посоветовал стандарты для написания технического задания (ТЗ) на разработку автоматизированных систем (АС) и программного обеспечения (ПО). Вот думаю, сейчас зайду в Яндекс, найду подходящую статейку и отправлю её. Но не тут-то было! Одной статьи, где перечисляются стандарты для ТЗ, включая шаблоны и примеры готовых документов, я не нашел. Придется сделать такую статейку самому…

И так, основные стандарты, методологии и своды знаний, где упоминается ТЗ или SRS (Software (or System) Requirements Specification):

• ГОСТ 34
• ГОСТ 19
• IEEE STD 830-1998
• ISO/IEC/ IEEE 29148-2011
• RUP
• SWEBOK, BABOK и пр.
Читать дальше →
Всего голосов 36: ↑34 и ↓2+32
Комментарии22

Книга «Философия DevOps. Искусство управления IT»

Время на прочтение6 мин
Количество просмотров24K
image Привет, Хаброжители! Наконец-то у нас вышла книга Дженнифер Дэвис и Кэтрин Дэниелс — Философия DevOps.

IT-принцип «agile» стал мантрой цифровой эпохи. С ростом проектов, переходом от монолитных приложений к системе микросервисов, увеличением и накоплением продуктов возникают вопросы, которые требуют совершенно иного подхода. Теперь наибольший интерес вызывает находящаяся на стыке разработки и операционного управления методология DevOps.

DevOps — это не просто набор техник, это философия. Разработчики, зацикленные на пользователях, должны уделять внимание поддержке и ее запросам. Сисадмины должны сообщать о проблемах продукта и вносить свой вклад в улучшение процесса работы. Но налаживание связей внутри компании — это лишь первый шаг. Чтобы продукт стал простым и удобным, придется вложить время и ресурсы в его доработку. Конфигурация через центральную службу, внедрение простым копированием, отсутствие внешних зависимостей, обдуманные метрики вместо мусора в логах — вот лишь часть задач, которые придется решать на этом пути.
Читать дальше →
Всего голосов 22: ↑20 и ↓2+18
Комментарии15

Кадровый голод тоже не тетка, или как вырастить ИТ-специалиста из студента

Время на прочтение7 мин
Количество просмотров13K


По оценкам Минкомсвязи России, дефицит кадров в ИТ-отрасли оценивается в 350–400 тысяч специалистов — почти столько же, сколько работает в этой сфере сегодня. Анализ рынка труда (по данным hh.ru) в разрезе ИТ-профессий позволяет сделать вывод, что ежегодно потребность в ИТ-специалистах возрастает примерно на 25%. Так, в отношении значений 2016 года к 2015 году, прирост ИТ вакансий составил 28%. Об одном из способов решения вопроса нехватки кадров далее в нашей статье.
Читать дальше →
Всего голосов 21: ↑17 и ↓4+13
Комментарии42

Многорукий бандит в задаче поиска объектов в видеопотоке

Время на прочтение7 мин
Количество просмотров6.7K
Drawing На Хабре уже неоднократно затрагивалась тема применения так называемых “бандитов” для интеллектуального анализа данных. В отличии от уже привычного обучения машин по прецедентам, которое сплошь и рядом применяется в задачах распознавания, многорукий бандит применяется для построения в некотором смысле “рекомендательных” систем. На Хабре уже очень подробно и доступно рассказано о идее многорукого бандита и применимости ее к задаче рекомендации интернет-контента. Мы же в своем очередном посте хотели рассказать вам о симбиозе обучения по прецедентам и обучения с подкреплением в задачах распознавания видеопотока.
Читать дальше →
Всего голосов 16: ↑16 и ↓0+16
Комментарии1

Игры, в которых нужно писать код: Grid Garden, Elevator Saga и другие

Время на прочтение3 мин
Количество просмотров140K

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

Всего голосов 72: ↑72 и ↓0+72
Комментарии46

Разбираем уязвимость CVE-2017-0263 для повышения привилегий в Windows

Время на прочтение9 мин
Количество просмотров22K


Май оказался богат на интересные уязвимости в популярной операционной системе. На днях злоумышленники массово заражали компьютеры вирусом-вымогателем WannaCry, эксплуатируя недостаток безопасности в протоколе SMB и инструмент, известный как Eternalblue. Чуть ранее, 9 мая, компания Microsoft устранила CVE-2017-0263, позволяющую получить максимальные привилегии на машинах под управлением Windows 10, Windows 8.1, Windows 7, Windows Server 2008, Windows Server 2012 и Windows Server 2016.

Уязвимость CVE-2017-0263 уже использовалась в фишинговой рассылке. Письмо содержало вложенный эксплойт, который задействовал сначала некорректную обработку EPS-файлов в Microsoft Office (CVE-2017-0262) для попадания в систему, а оказавшись внутри, получал с помощью CVE-2017-0263 полные права администратора. Два года назад мы уже препарировали похожую уязвимость в Windows, а в этом материале расскажем о том, как свежая CVE-2017-0263 позволяет стать хозяином чужой рабочей станции или сервера.
Читать дальше →
Всего голосов 26: ↑25 и ↓1+24
Комментарии4

Как защищаться от атаки вируса-шифровальщика «WannaCry»

Время на прочтение3 мин
Количество просмотров83K

Данная статья подготовлена в связи в хакерской атакой массового характера в мировом масштабе, которая может коснуться и вас. Последствия становятся действительно серьезными. Ниже вы найдете краткое описание проблемы и описание основных мер, которые необходимо предпринять для защиты от вируса-шифровальщика семейства WannaCry.

Вирус-шифровальщик WannaCry использует уязвимость Microsoft Windows MS17-010, чтобы выполнить вредоносный код и запустить программу-шифровальщик на уязвимых ПК, затем вирус предлагает заплатить злоумышленникам порядка 300$, чтобы осуществить расшифровку данных. Вирус широко распространился в мировых масштабах, получив активное освещение в СМИ – Фонтанка.ру, Газета.ру, РБК.
Читать дальше →
Всего голосов 28: ↑18 и ↓10+8
Комментарии51

Пять книг по программированию, которые стоит прочесть

Время на прочтение3 мин
Количество просмотров62K
Выбрать всего пять книг оказалось непростой задачей. Каждый раз, добавляя книгу в список, я задавал вопрос: почему именно эта? Я решил выделить пять ключевых направлений, в которых должен развиваться разработчик, и привести по одному примеру книги в каждом из них.

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


Читать дальше →
Всего голосов 32: ↑17 и ↓15+2
Комментарии29

Интернет магазин — 15000 евро за первый месяц

Время на прочтение6 мин
Количество просмотров91K
В народе есть известная поговорка „Первый Блин Комом“, чего не могу сказать о своём свежем опыте интернет торговли. Скорее всего, это просто исключение подтверждающее правило, но, тем не менее, хочется рассказать о тех небольших выводах, что я сделал за последний месяц.

Итак, небольшая история о том, как можно довольно легко заработать за один месяц минимум 15 000 евро.

Мой профессиональный род деятельности — веб-разработка. Занимаюсь R&D в одной небольшой IT компании, пишу «навороченные» приложения для корпоративных интранетов и, в принципе, на жизнь не жалуюсь. Конечно, при таком раскладе хочется параллельно вести какой-нибудь интересный проект, чем неоднократно занимался в мире Open Source. Со временем, правда, захотелось на побочных проектах так же как-то зарабатывать, что с Open Source оказалось не так просто, как может показаться из статей на Хабре :) Потому и решил попробовать для себя что-то принципиально новое — открыть интернет магазин.

Читать дальше →
Всего голосов 517: ↑493 и ↓24+469
Комментарии389

Модель ПИД регулятора на Python

Время на прочтение5 мин
Количество просмотров23K

В поисках простой модели ПИД регулятора с объектом


Моделированию работы ПИД регулятора посвящено большое количество публикаций в сети. Лидирует проектирование моделей ПИД регулятора с применением Matlab Simulink [1,2] (134 миллиона ссылок в yandex). Сам процесс создания модели какой-то однообразный. В модель переносят всё новые и новые блоки. Одно движение ручного манипулятора и нате вам ПИД контролер, ещё одно и вот передаточная функция объекта. Соединяешь блоки, настраиваешь параметры, готовишь вычислитель. Да, возможностей много, но как-то слишком всё искусственно. И уже становится совсем непонятным к чему тут дифференциальные уравнения, методы их решения и то операционное исчисление, которым долго морочили голову. Ищу реализацию ПИД в Mathcad, тут ссылок в том же yandex, поменьше, всего то 81 миллион, а математики и формул побольше. Рассматриваю пример ПИД, поставляемый вместе с пакетом Mathcad 14.


В качестве объекта колебательное звено. Много умных объяснений, но в итоге два оператора laplace и invlaplace. Общая передаточная функция имеет в числителе вторую степень оператора, а в знаменателе четвёртую. Чтобы операторы laplace и invlaplace сработали, когда подключены все три составляющих ПИД, находят ещё и корни знаменателя передаточной функции, эти корни комплексно сопряжённые.



Теперь ищу реализацию ПИД на Python. Тихо радовался 97 миллионам результатов, но не долго. О Python 2.7 только применительно к прошивке Arduino на примере ESP32. Но и это переполняет сердце гордостью за Python.

Разочаровавшись в поиске, решил написать модель сам, в меру своих более чем скромных возможностей.
Читать дальше →
Всего голосов 15: ↑14 и ↓1+13
Комментарии3

Страсть к программированию. Глава 13. Найди ментора

Время на прочтение6 мин
Количество просмотров23K
image

О переводе


Это перевод 13 главы книги The Passionate Programmer: Creating a Remarkable Career in Software Development. Её автор — Chad Fowler — талантливый Ruby-разработчик, известный докладчик на конференция, посвящённых Ruby и IT в целом. Бывший саксофонист, а сейчас — CTO 6Wunderkinder.

В книге говорится о разных аспектах карьеры программиста, даются интересные советы как начинающим разработчикам, как так устоявшимся профессионалам. Книга состоит из 53 глав (кроме того, после некоторых глав есть интересные рассказы, один из которых уже дважды переводили на Хабре). Главы достаточно независимы и можно знакомиться с ними в любом порядке. Книга понравится многим программистам, которым интересен взгляд заслуженного профессионала на современную карьеру в IT. И конечно, я рекомендую купить данную книгу в электронном или печатном виде в знак благодарности автору.
Читать дальше →
Всего голосов 21: ↑19 и ↓2+17
Комментарии23

Основатель Uber Трэвис Каланик — «мятежник в элите Кремниевой долины»

Время на прочтение9 мин
Количество просмотров33K
image

Основатель и генеральный директор такси-сервиса Uber Трэвис Каланик впервые посетит Россию.

Каланик приедет в Москву в воскресенье 5 июня и вечером того же дня выступит в Институте медиа и дизайна «Стрелка» с лекцией, посвященной вопросам развития транспорта в XXI веке. Каланик расскажет аудитории, «сможет ли каршеринг и усовершенствованный общественный транспорт вытеснить личные автомобили, и заменят ли гибридные и электрические машины привычные бензиновые и дизельные», говорится в сообщении на сайте «Стрелки».

Сервис для вызова частных водителей Uber — самая быстрорастущая компания в истории. Uber привлек от государственного фонда Саудовской Аравии $3,5 миллиарда. По подсчетам The Wall Street Journal, оценка самого дорогого стартапа в мире приблизилась к $68 миллиардам.

К своим 39 годам Каланик стал одним из самых богатых предпринимателей с состоянием в $6,2 миллиарда. Личность основателя Uber вызывает противоречивую реакцию как у общественности, так и у людей, знакомых с ним лично: некоторые его ненавидят, а некоторые им восхищаются.
Читать дальше →
Всего голосов 22: ↑17 и ↓5+12
Комментарии18

Как появляются стартапы на миллиард. Можно ли научиться делать такие проекты?

Время на прочтение10 мин
Количество просмотров20K
Начинающие стартаперы и бизнесмены из мира ИТ, дело которых идёт не особо феерично, часто задаются одним и тем же вопросом: «Можно ли научиться делать успешные интернет проекты и мобильные приложения?». Казалось бы, ответ очевиден – мы видим сотни крайне успешных стартапов-сверхновых, которые порой буквально за несколько месяцев выбрасывают своих фаундеров в стратосферу успеха и богатства. Психология обычного человека говорит о том, что просто надо узнать как и что делали суперзвёзды, затем применить полученные знания для своего бизнеса.



Недавно ко мне обратился за советом парень из команды основателей очередного тревел стартапа. Ребята сняли офис, запилили приложение, занимаются продвижением. Ну в общем всё как обычно. И я спрашиваю у него: «Скажи, какая у тебя самая ключевая задача или проблема?». Ну он отвечает, что вроде бы всё хорошо и проблем особых нет. Только вот единственная загвоздка – приходит он в офис, и до обеда хочется есть, а после обеда спать. Ну ещё по понедельникам вставать утром особенно тяжело. Перечисленные неудобства мешают ему осваивать буддисткий навык в контекстной рекламе, джедайскую технику продвижения через социалки и оттачивать лезвие навыка юзабилити. Ещё Grow Hacks изучает по какой то модной методике.

В таком коротком рассказе этого парня я увидел сразу две ключевые ошибки стартаперов. Два заблуждения настолько укоренились в сознании ребят, что формируют их мировоззрение. Вот эти навязчивые ошибки:
Читать дальше →
Всего голосов 28: ↑23 и ↓5+18
Комментарии29

Время учиться: дайджест бесплатных образовательных материалов от Mail.Ru Group

Время на прочтение10 мин
Количество просмотров112K

Кадр из к/ф «Операция Ы и другие приключения Шурика»

Как говорят, «кризис — пора возможностей». И поэтому сейчас самое время начать вкладывать в саморазвитие, осваивать новую профессию или повышать свою квалификацию. Займитесь изучением языков программирования, обретением навыков разработки, тестирования и вообще всячески прокачивайте свой IT-скилл. Ведь чем больше вы знаете, тем прочнее будете стоять на ногах. А чтобы вам было легче сориентироваться и выбрать направление, мы сделали подборку наших бесплатных образовательных материалов, курсов и инициатив за 2015–2016 годы.
Читать дальше →
Всего голосов 48: ↑43 и ↓5+38
Комментарии29

Как я создал софтверную компанию стоимостью в 350 млн долларов, ничего не зная о софте (Часть 1)

Время на прочтение5 мин
Количество просмотров16K


Вторая часть здесь.

Я всегда мечтал заработать большое состояние и делать замечательные вещи, хотел, чтобы люди обращали на меня внимание. Я только не знал, как мне к этому прийти.
Читать дальше →
Всего голосов 25: ↑21 и ↓4+17
Комментарии8

Зарабатывая на жизнь созданием игр

Время на прочтение7 мин
Количество просмотров24K
larian_logo
Привет, Хабр!

Меня зовут Артём Титов, я lead gameplay programmer в Larian Studios.
Мы очень давно хотели поделиться с вами нашим опытом создания и разработки компьютерных игр, но долго не могли решить, с чего бы начать. Долго размышляя, мы пришли к выводу, что первая статья должна быть не технической, а скорее личной — и для этого я перевёл вам запись в блоге одного из наших сотрудников, сделанную около года назад. Его история даёт очень хорошее представление не только о нашей студии со стороны игр, что мы создаём, но и детально показывает личный аспект жизни рядового сотрудника студии, проходящей через падения и взлёты. Я постарался сделать наиболее точный перевод, но тем не менее полностью от англицизмов и слэнга избавиться не смог.

Итак под катом история моего коллеги длиной в 10 лет.
Читать дальше →
Всего голосов 42: ↑38 и ↓4+34
Комментарии22

Несколько вещей, о которых стоит помнить программисту в возрасте

Время на прочтение11 мин
Количество просмотров128K
Если вы из тех, кто «работал ещё Там-То!» и «делал ещё То-То!», а сейчас счастливо отдыхаете на пенсии — эта статья не для вас. Просто спасибо за труд и примите мои поздравления. Но если же вы, как и я, даже став немного старше всё ещё ощущаете страсть к программированию, радуетесь виду кода и не можете устоять перед желанием написать ещё что-нибудь, тогда продолжайте читать.

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

Я смирился с мыслью, что мой лучший код уже написан — в прошлом. Мне было уже 54 года (немало!) и я, вероятно, уже не мог писать код так же хорошо, как и раньше. Кто знает — может быть у меня уже начала отказывать память, ну или я просто выучил всё, что был способен в жизни выучить. Мой настрой подкреплялся наблюдениями окружающей меня реальности. Все новые технологии выглядели для меня чудаковато. Я ненавидел Node.js. Я считал все фреймворки для веб-разработки ужасными. И я сетовал на то, что классические способы разработки ПО разрушились и превратились в набор клише, которые нынче впариваются под умными названиями типа Agile или «экстремальное программирование». Я скучал за днями, когда люди писали спецификацию на будущее ПО, программировали, а затем тщательно тестировали его. И когда в каждой статье не было тысячи жаргонных словечек.
Читать дальше →
Всего голосов 121: ↑117 и ↓4+113
Комментарии134

Страсть к программированию. Глава 23. Будь на своем месте

Время на прочтение5 мин
Количество просмотров16K
image

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

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

Читать дальше →
Всего голосов 31: ↑23 и ↓8+15
Комментарии16

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность