Я впервые пишу в поток об управлении и найме персонала. Речь пойдет об одном из способов классифицировать ваших будущих или действующих программистов. Мой основной тезис: все разработчики, грубо говоря, делятся на 4 больших типажа и каждому из этих типажей есть своя область применения. Попытка направить неправильный типаж на решение неподходящих для него задач ведет к провалу (неэффективная работа, или сотрудник покидает команду). Хотите знать почему так — добро пожаловать под кат. Приготовьтесь, текста много.
В этом посте пойдет речь о том, как студент консерватории попал в data science, стал призером двух подряд kaggle-соревнований, и каким образом методы математической статистики помогают не переобучиться на публичный лидерборд
Начну я с того, что немного расскажу о задаче и о том, почему я взялся ее решать. Должен сказать, что в data science я человек новый. Лет 7 назад я закончил Физический Факультет СПбГУ и с тех пор занимался тем, что получал музыкальное образование. Идея немного размять мозг и вернуться к техническим задачам впервые посетила меня примерно два года назад, на тот момент я уже работал в оркестре Московской Филармонии и учился на 3 курсе в Консерватории. Начал я с того, что вооружившись книгой Страуструпа стал осваивать C++. Далее были конечно же разные онлайн курсы и примерно год назад я стал склоняться к мысли о том, что Data Science — это пожалуй именно то, чем я хотел бы заниматься в IT. Мое “образование” в Data Science — это курс от Яндекса и Вышки на курсере, несколько курсов из специализации МФТИ на курсере и конечно же постоянное саморазвитие в соревнованиях. Читать дальше ->
Автомобили получили широкое распространение в начале XX века, но за это короткое время они успели кардинально измениться. Мы ждем беспилотные и летающие автомобили, а подключенные автомобили, оборудованные интернетом, ездят по дорогам уже сегодня. Эта статья представляет небольшую серию переводов материалов из свободных источников об истории появления такого явления как «подключенные автомобили», плюс некоторые наши данные о работе на этом рынке в течение 5 лет — какие решения доступны на новых моделях авто уже сегодня и чего ждать от машин с умной «начинкой» завтра.
Технология блокчейна завладела умами. Покупаются фермы, ICO собирают миллионы долларов. Наша компания тоже захотела приобщиться. Решили начать с малого. В серии статей будет описан наш путь от новичков в сфере блокчейна до общепризнанных гуру. На момент написания этих слов мы все еще на этапе новичков, предлагаем следить за нашим развитием и развиваться с нами.
Как разместить свое приложение в App Store, если ты юридическое лицо из России? Инструкций для ИП в Интернетах можно найти уйму. А вот если ты смелый, ловкий, умелый, услышал, как тебя джунгли зовут (каламбур из детства 90-х, если кто не понял) и с дуру оформил ООО, то трудностей на пути к покорению iTunes Connect тебе предстоит немало. Посему, решив прервать этот порочный круг поисков ответов на вопросы, как заполнить злосчастную налоговую информацию для ООО, спешу поделиться своим опытом.
В статье будет рассмотрены практики защиты уязвимого веб-приложения — от сигнатурного метода до искусственного интеллекта с использованием Web Application Firewall (коммерческая и Opensource версии). В качестве коммерческого решения мы будем использовать Nemesida WAF, в качестве некоммерческого — NAXSI. Статья содержит общую и техническую информацию по работе WAF, а также сравнение методов обнаружения атак, разбор их особенностей и недостатков.
Детектирование атак
Первая и основная задача любого WAF — максимально точно определить атаку с минимальным количеством ложных срабатываний (false positive). В NAXSI заложен только сигнатурный механизм определения атак, в Nemesida WAF — три: сигнатурный, поведенческий анализ и машинное обучение. Говоря о комплексном методе определения атак мы подразумеваем симбиоз этих трех методов. Почему три? Давайте разберемся.
Сигнатурный метод определения атак
Несмотря на стремительное развитие технологий, большая часть атак выявляется сигнатурным методом, и от того, насколько качественно пишутся сигнатуры, зависит точность работы всех методов, построенных на базе сигнатурного анализа (в том числе машинное обучение). Рассмотрим пример определения атаки на веб-приложение сигнатурным методом: index.php?id=-1'+union+select+1,2,3,4,5+--+1
В данном случае сигнатурой атаки будет вхождение цепочки «union+select».
Пример атаки, которую пропустит NAXSI: index.php?id=-1'+Union+Select+1,2,3,4,5+--+1 Читать дальше ->
Осенью 2017 года Veeam Software запускает свой первый образовательный проект: курс для разработчиков C#.
Не будем скрывать, что, как и многие компании, которые проводят собственные обучающие программы, мы делаем это с целью привлечения в свою команду талантливых девелоперов, которые находятся еще в начале своей карьеры. Ориентируясь на динамику, с которой развивается карьера у разработчиков Veeam, мы выбираем специалистов с большим потенциалом к профессиональному росту.
Мы предлагаем не просто возможность бесплатно пройти обучение — после окончания курса у успешных участников будет реальный шанс устроиться в компанию и стать частью команды Veeam Research & Development.
А теперь ответим на главный вопрос: чем обучение в Академии Veeam может заинтересовать начинающих разработчиков? Читать дальше ->
Бесконтактная оплата банковскими картами на транспорте в России развивается с 2015 года, когда Mastercard запустил пилотный проект по внедрению технологии в московском метро — тогда билетные автоматы оснастили бесконтактными ридерами для покупки в одно касание. Сейчас бесконтактные банковские технологии на общественном транспорте внедрены или внедряются в Москве, Московской области, Санкт-Петербурге, Новосибирске, Улан-Удэ, Твери, Белгороде, Нижнем Новгороде и еще целом ряде городов.
Одно касание обеспечивает комфортное перемещение
В этой статье я расскажу о том, как компания ЛАНТЕР (входит в группу ЛАНИТ) оснастила Московский метрополитен ридерами и разработала программное обеспечение, позволяющее оплачивать проезд с помощью банковской карты или мобильного устройства с банковской картой «внутри». Читать дальше ->
В этой статье мы разберемся с принципами применения MVP+TDD в разработке iOS приложений. Разбираться будем на примере создания небольшой обучалки для пользователя, которая показывается при первом запуске.
Требования от бизнеса.
Итак, ваш заказчик хочет, чтоб в его приложение добавили обучалку, которая покажется пользователю один раз при первом запуске. Обучалка состоит из нескольких изображений, которые должны быть показаны в определенной последовательности. Переключаться изображения должны по нажатию на кнопку "Продолжить". Также при показе последнего изображения — на кнопке нужно написать "Старт" (как бы намекая пользователю, что приложение будет сейчас запущено).
До сих пор мы использовали только простые item-концепты. Каждый из nr_employees-концептов мог быть интерпретирован независимо от остальных.
У такого подхода есть недостаток: если количество полов обычно ограничивается двумя, то для возраста мы могли бы иметь большее количество групп, чем три в нашем примере. Что, если бы нам понадобилось разделить возраста на 10-летние интервалы? Пришлось бы добавить новые концепты для групп 11–20, 21–30, 31–40, 41–50, 51–60 и 61–70. А при делении на 5-летние, 2-летние или даже годовые интервалы это очень быстро станет утомлять. Базы ссылок стали бы очень большими, поскольку надо было бы определять ссылки для каждого из этого множества концептов. Хотелось бы иметь более эффективный подход для подобных ситуаций.
И сегодня мы расскажем, как нам в этом могут помочь кортежи.
Всем привет! Сегодня хотим поговорить об облачных базах данных, а точнее о тех проактивных и разовых мероприятиях, которые непосредственно обеспечивают их производительность.
Облачные базы данных давно решили вопрос быстрого прироста мощностей и запуска новых баз данных, и сегодня стали практически насущной потребностью компаний любого размера, благодаря переносу задач по администрированию и мониторингу на сторону провайдера.
Мы проделали большую работу, запуская и оптимизируя свою новую услугу облачной базы данных на собственной платформе Техносерв Cloud и, конечно же, столкнулись с рядом проблем и выработали свои подходы к их решению. Сейчас, когда сервис протестирован и работает, мы хотим поделиться с вами своим опытом – уверены, что прочитав этот материал, вы сможете избежать повторения чужих ошибок или откроете для себя что-то новое.
При текущих ценах на рекламу хочется быть уверенным в эффективности, не правда ли? Запуская кампанию, предполагается, что ни зной, ни холод не станет на ее пути. Но даже надежные сайты иногда сбоят. Как сделать так, чтобы деньги в это время не улетели в трубу? Рассмотрим нюансы и решение от сервиса мониторинга доступности сайтов ХостТрекер.
Эта статья — ознакомительное руководство по сборке Docker-образов приложений с помощью нашей Open Source-утилиты dapp(подробнее о ней читайте в анонсе). На примере двух простых приложений (с одним образом) рассмотрим, как могут быть задействованы некоторые из основных возможностей dapp и какой результат они дают.
В этом посте я хочу рассказать о системе IEEE Software Taggant, которую разработала рабочая группа IEEE по вредоносным программам в сотрудничестве с ведущими компаниями по информационной безопасности.
В планы команды разработчиков Guardant давно входило добавить поддержку IEEE Software Taggant в протектор Guardant Armor, и вот наконец мы это сделали. Краткий обзор системы и практические выводы перед вами. Читать дальше ->
Привет! Меня зовут Артём, и большую часть своего рабочего времени я пишу сложные автотесты на Selenium и Cucumber/Calabash. Честно говоря, довольно часто я оказываюсь перед непростым выбором: написать тест, который проверяет конкретную реализацию функциональности (потому что это проще) или тест, который проверяет функциональность (потому что это правильнее, но намного сложнее)? Недавно мне попалась неплохая статья о том, что тесты реализации – это «тавтологические» тесты. И, прочитав её, я уже почти неделю переписываю некоторые тесты в другом ключе. Надеюсь, вас она тоже подтолкнёт к размышлениям.
Эксперты Positive Technologies отмечают, что во II квартале 2017 года продолжают набирать популярность сервисы «вымогатели как услуга» по сдаче троянов в аренду. США и Россия по-прежнему наиболее частые жертвы кибератак, однако во II квартале 2017 года больше четверти атак (28%) были масштабными и затронули одновременно десятки стран и сотни (в отдельных случаях тысячи) компаний. Читать дальше ->
Стать обычным Android-разработчиком легко, а вот чтобы стать успешным и выдающимся Android-разработчиком, требуется много тяжелого труда, энтузиазма, самоотдачи и настойчивости.
Я не могу показать вам короткий путь к успеху, но если вы готовы приложить усилия – он ждёт вас.
Чтобы помочь вам на пути становления, я собрал несколько небольших советов, исходя из своего опыта. Если вы решили стать Android-разработчиком или уже работаете в этой области какое-то время, мои советы вам пригодятся.
Есть коммерческая задача: необходимо быстро подключать сайты к обычной WAN-сети, но делать это там, где в наличии только сотовое покрытие и нет возможности провести кабель или организовать радиорелейный переход до волокна или меди.
Решение — модемные кластеры. Очевидная проблема решения в том, что каждый из модемов — это отдельный физический канал. Нужно с помощью зубила и какой-то матери объединить их в одно инкапсулированное устройство, которое просто будет отдавать канал. Кроме того, необходимо, чтобы при появлении кабеля не требовалось менять коробку и что-то перенастраивать. Читать дальше ->
В интернете довольно много разрозненного материала по DDD. Если не считать синей книги, то в основном это короткие статьи с теорией, надёрганной из этой же книги, и которая мало пересекается с практикой. Возможно, конечно, что я просто плохо искал, но мне давно хотелось найти какой-нибудь цельный пример, что называется, «от и до». И я решил такой пример создать на Symfony 3 и VueJS. Сразу хочу сказать, что я изучаю DDD недавно, поэтому взял довольно простую предметную область — список желаний (wish list).
Второй Uptime day (первый прошёл в апреле) мы решили посвятить фатальным происшествиям в IT-инфраструктуре — такие рано или поздно случаются в жизни у каждого. Выбрать дату было несложно — встречайте «Uptime day: Пятница, 13-е» (кстати, в этом году осталась только одна такая пятница).
Про аварии не принято говорить публично. Есть IT-конференции про разработку, высокие нагрузки, но тем не менее, аварии — это часть жизни любого бизнеса и как их устранять, как сделать так, чтобы их не повторять, как научиться понимать, как их быстрее решать — это важнейшие вопросы в жизни любого проекта. Читать дальше ->