
Всем привет! 23 сентября мы отлично провели время в московском офисе Mail.Ru Group на митапе сообщества Go в продакшене. Собрали для вас фото, видео и презентации.
Читать полностью »

Всем привет! 23 сентября мы отлично провели время в московском офисе Mail.Ru Group на митапе сообщества Go в продакшене. Собрали для вас фото, видео и презентации.
Читать полностью »

7 декабря приглашаем на Frontend DevDay. В этот раз мы смешаем формат всем привычного митапа с технической презентацией нового 2ГИС. Присоединяетесь, чтобы посмотреть на знакомую технологию под новым углом, утвердиться в значимости команды и разобраться в отношениях запроса и браузера.
Под катом детали, тезисы и всё про регистрации.
1 декабря в Санкт-Петербурге пройдёт конференция, посвящённая языку Dart, а также всей экосистеме и продуктам, которые его окружают: AngularDart и Flutter. О том, почему стоит на неё идти, что там можно узнать и кого встретить, вы сможете узнать из этой статьи. Кстати, каждый, кто прочитает до конца, получит гарантированный приз с бесплатной доставкой прямо на дом.

Смотрел я тут на днях выступление Kate Gregory на конференции Pacific++ 2018.
Кейт — хороший программист и отличный спикер. Сам доклад поднимает много интересного о программировании на С++ и программировании вообще (стоит посмотреть). Но больше всего меня зацепила одна высказанная ею (буквально вскользь) мысль. Кейт удалось очень кратко и по делу обозначить мотивацию программистов. Звучала она так: «Программист во время работы стремится максимизировать своё счастье». Это звучит банально, но ведь так оно и есть.
Мы можем говорить, что болеем за проект, заказчика, компанию, человечество и мир во всём мире (и это даже может быть правдой). Но давайте будем честны. Мы люди и, как все люди, в первую очередь стремимся максимизировать своё счастье — глобально во всей жизни, стратегически в карьере, тактически в текущем проекте и мелочно здесь и сейчас, при написании вот этой функции, вот этой строки кода. Да, мы это делаем и было бы хорошо разобраться, что делает нас более счастливыми, а что — менее. Это позволит нам лучше понимать коллег, подчинённых да и самих себя.
Сразу хочу вынести за скобки вопросы оплаты труда, условий работы, начальства, коллектива и прочего. Если вы работаете там, где работаете — то всё это вас примерно устраивает. Давайте сфокусируемся на том, что делает нас счастливыми и несчастными при непосредственной работе над кодом.
Читать полностью »

Скрипты — один из самых распространенных способов сделать приложение более гибким, с возможностью поправить что-то прямо на ходу. Конечно же, у этого подхода есть и недостатки, нужно всегда помнить про баланс между гибкостью и управляемостью. Но в этой статье мы не будем рассуждать “в общем” по поводу плюсов и минусов использования скриптов, мы рассмотрим практические способы реализации этого подхода, а также представим библиотеку, которая предоставляет удобную инфраструктуру для добавления скриптов в приложения, написанные на Spring Framework.
Читать полностью »
Конференция DEFCON 16. Как я могу завладеть вами? Позвольте мне перечислить способы. Часть 1
А сейчас я покажу вам видео, которое объяснит, почему я ненавижу Bluetooth-гарнитуры.
На видео девушка разговаривает с парнем.
Д: что ты делаешь сегодня вечером?
П: ничего!
Д: хочешь пойти со мной на вечеринку?
П: да, хочу!
Д: а до того мы можем зайти ко мне…
П: звучит потрясающе!
Д: подожди! (отвечает на телефонный звонок).

Сколько у вас в жизни было таких случаев, когда телефонный звонок раздаётся в самый неподходящий момент? Вот почему я не ненавижу эти вещи.
Итак, начнём новый раздел. Я стараюсь оставаться серьёзным, хотя назвал его «Завладение женой Боба». Хорошо порывшись в телефоне Боба, мы делаем открытие: в телефоне должно быть что-то недоступное через беспроводную связь, я думаю, вы с этим согласитесь. Это особые СМС с заголовком из 5 или 6 цифр, изучив которые, вы приходите к выводу, что они адресованы жене Боба. Читать полностью »
Я всегда поражаюсь количеству присутствующих здесь людей, особенно учитывая, кто я по сравнению с Филом Циммерманом, так что спасибо, что потешили моё эго. Я Рендермен, и если хотя бы трое из вас меня не знают, скажу, что выступаю здесь на DefCon уже 10 лет. Я люблю это место, этих ребят, это наша семья, и это единственное место, где я чувствую себя нормально.

Моя сегодняшняя презентация называется «Как я могу завладеть вами? Позвольте мне перечислить способы». Эта тема родилась на конференции SECTOR в Торонто. Вы знаете, что рабочее пространство становится всё более мобильным и беспроводным. Вы видите это везде – в аэропортах, в гостиницах, здесь в Вегасе. Люди постоянно набирают что то на экранах смартфонов, разговаривают и это обычная картина для нашего времени, в каждой компании есть что-то вроде этого.
Мобильные пользователи находятся вдали от зоркого ока BOFH, оператора компьютерных сетей (и от наказания), так что если они делают что-то глупое, что нарушает вашу безопасность, вы не можете добраться до них. Они могут находиться на другом конце земли, но при этом причинять вред вашим сетям, потому этому вопросу нужно уделить внимание, чтобы защитить свою компанию и самого себя. Читать полностью »
В одной из предыдущих статей я рассказывал о том, как можно построить исполнитель программ для виртуальной стековой машины, используя подходы функционального и языково-ориентированного программирования. Математическая структура языка подсказала базовую структуру для реализации его транслятора, основанную на концепции полугрупп и моноидов. Этот подход позволил построить красивую и расширяемую реализацию и сорвать аплодисмент, но первый же вопрос из зала заставил меня слезть с трибуны и снова залезть в Emacs.

Я провёл простое тестирование и убедился в том, что на простых задачах, использующих только стек, виртуальная машина работает шустро, а при использовании "памяти" — массива со случайным доступом — начинаются большие проблемы. О том, как удалось их решить, не меняя базовых принципов архитектуры программы и достичь тысячекратного ускорения работы программы, и пойдёт речь в предлагаемой вашему вниманию статье.

Продолжаем разбираться с языком программирования Julia. Поскольку для языка, ориентированного на анализ и обработку данных, просто необходимо иметь пакетный режим работы, рассмотрим особенности реализации скриптов на языке Julia и передачи им аргументов из командной строки. Кому-то, может быть, эта тема покажется банальностью, но, учитывая новизну языка, надеюсь, что небольшой обзор способов разбора аргументов командной строки и библиотек для этого, представленных в Julia, всё таки окажется полезным.
Конференция DEFCON 21. DNS может быть опасен для вашего здоровья. Часть 1
При этом предполагалось, что границы домена организации – это foo.com и вы никогда не захотите использовать www.com. Microsoft изменила это поведение DNS, потому что, очевидно, не все организации имеют два уровня для доменных имён.

Если ваш домен верхнего уровня – Великобритания, то при соединении с конкретным доменом ad.foo.co.uk поведение DNS по умолчанию будет выглядеть так:

То есть запрос будет отсылаться за границы вашего доменного имени на www.co.uk. Поэтому был создан случайный хотфикс, исправление безопасности, сужающее организационные границы домена до 3-х, и в этом случае деволюция DNS останавливалась после второго запроса www.foo.co.uk. Читать полностью »