Pull to refresh
0
0
Сергей @kez

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

Send message

Обнаружены элементарные дизайн-частицы

Reading time3 min
Views6.5K
image
Честно говоря, мне уже неловко в очередной раз говорить об Атомарном дизайне. Про концепции дизайн-систем сказано практически все и, казалось бы, добавить уже нечего. Но постойте! Ведь атомы в реальном мире из чего-то состоят: протоны, нейтроны, электроны… Можно ли сопоставить со структурой атома дизайн-функционал, с котором мы работаем? Я уверен, что ответ положительный и вот почему…
Читать дальше →
Total votes 27: ↑1 and ↓26-25
Comments8

Newtoo — разработка полноценного браузерного движка с нуля в 2018?

Reading time4 min
Views51K
image

Привет! Меня зовут Дмитрий Козичев.

Сегодня я вам расскажу о моей попытке создать собственный современный веб-браузерный движок с нуля.

Мой движок называется Newtoo.

Что за Newtoo


Итак, Newtoo. Зачем я его создал?

Так уж получилось, что в мире есть всего 4 популярных браузерных движка, которые настолько сложны, что сами разработчики не знают и половины их кодовой базы, и настолько продвинутые по технологиям, что начать их догонять — пустая трата времени.

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

Идеология Newtoo — показать страницу быстрее, чем остальные.

Как Newtoo работает быстрее


Как я говорил ранее, основные браузерные движки развиваются не первый год. Те ошибки, которые были допущены на начальных стадиях разработки остаются в проекте до конца. Самый яркий пример этому — умные указатели в C++ — это еще более сложный синтаксис, большой оверхед при работе, создании и удалении умных указателей. Кроме того, есть очень много типов умных указателей и нужно знать, какой когда использовать, ведь у каждого есть свои сюрпризы ньюансы. Посмотрите на этот файл из WebKit. Когда видишь такой код, синтаксис умных указателей, пытаешься успокоится и дышать ровно, но такого рода код — это весь вебкит с ног до головы. В моем движке нет таких недостатков.
Читать дальше →
Total votes 153: ↑133 and ↓20+113
Comments473

Зачем изучать непопулярные языки. Пример сообщества F#

Reading time8 min
Views30K


Бывают культовые фильмы, игры, книги или музыка — их страшно любит сплоченное сообщество, профессионалы и критики. Но коммерческого успеха и широкой популярности нет. Мне в таких ситуациях обычно до боли обидно.

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

Я попытался узнать, в чем причина. И вообще — кто те люди, которые на нем пишут, и зачем они это делают, если язык не нужен бизнесу? Для этого я постучался поговорить в русскоязычное сообщество F# в «Телеграме». Здесь — наш круглый стол.
Читать дальше →
Total votes 40: ↑37 and ↓3+34
Comments164

Хватит подозревать разрабов в самозванстве. Научитесь лучше собеседовать

Reading time3 min
Views124K


Ну привет. Я только что с собеса, и у меня бомбит. Сколько не пишут на Хабре, как правильно собеседовать — лучше не становится.


Мне кинули предложение — Senior full-stack .NET Developer, удаленно, крутой проект, куча денег. В списке требований хренова гора не связанных между собой вещей из мира .net и js/ts. Выглядит так, будто просто свалили в кучу все, что нагуглили за 10 минут — причем мало понимая, что именно.


Тревожно, но ничего. Собеседовать, думаю, будет разработчик — человек, с которым я говорю на одном языке. Расскажу про то, что делал, обсудим подходы к решению задач, проблемы в .NET, перспективы C#. Поговорим про структуры данных. Расскажу, почему структурная типизация мне нравится больше, чем мнемоническая. Если пойдет хорошо, поделюсь даже своей идеей фикс — всегда использовать структуры вместо классов в качестве моделей. Посравниваю FLUX с MVVM, расскажу, как нереально красив симбиоз ФП и ООП в TypeScript.


В общем, предвкушаю хороший разговор.

Читать дальше →
Total votes 309: ↑275 and ↓34+241
Comments1581

Как нарисовать чёрную дыру. Геодезическая трассировка лучей в искривлённом пространстве-времени

Reading time14 min
Views49K
«Это легко. Берём метрику Шварцшильда, ищем символы Кристоффеля, вычисляем их производную, записываем геодезическое уравнение, меняем некоторые декартовы координаты (чтобы не страдать), получаем большое многострочное ОДУ — и решаем его. Примерно так».



Теперь ясно, что чёрные дыры меня засосали. Они бесконечно увлекательны. В прошлый раз я разбирался с визуализацией геометрии Шварцшильда. Меня поглотила проблема точного представления, как кривизна такого пространства-времени влияет на внешний вид неба (поскольку фотоны из удалённых источников движутся вдоль геодезических линий, изогнутых чёрной дырой) для создания интерактивного моделирования. Вот результат (работает в браузере). Хитрость в максимально возможном предрасчёте отклонения световых лучей. Всё работает более-менее нормально, но конечно, такая симуляция далека от идеала, потому что в реальности там не производится никакой трассировки (для неспециалистов: восстановление назад во времени местонахождения световых лучей, падающих в камеру).

Мой новый проект исправляет этот недостаток, отказавшись от эффективности/интерактивности самым простым образом: это рейтрейсер чисто на CPU. Трассировка выполняется максимально точно и максимально долго. Рендеринг изображения вверху занял 15 5 минут (спасибо, RK4) на моём ноутбуке.
Читать дальше →
Total votes 97: ↑97 and ↓0+97
Comments68

Мой опыт переезда, жизни и учебы в Германии

Reading time10 min
Views51K
Привет, Хабр! Тематика IT-эмиграции и получения образования в Европе в последнее время сильно популярна на страницах сообщества.



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

В этой статье расскажу вам свою историю поступления и учебы в Германии в Техническом Университете Wildau, много внимания уделив особенностям специальности Business Computing. Поделюсь информацией о простой жизни в Германии, о повседневном быте, о своих текущих и дальнейших планах. Надеюсь, мой рассказ окажется полезным всем, кто присматривается к Германии как стране для учебы и жизни.

Запасайтесь чашечкой кофе, рассказ получился очень длинный!
Читать дальше →
Total votes 76: ↑63 and ↓13+50
Comments426

О правильной осанке, укреплении мышц и растяжке

Reading time5 min
Views57K
Этот пост можно рассматривать как комментарий к двум статьям о правильной осанке и здоровом позвоночнике: раз и два.

И даже как комментарий к комментариям, в которых обсуждалось, как же быть с задней поверхностью бедра, которая не позволяет ровно сидеть и правильно сгибаться.
Читать дальше →
Total votes 44: ↑41 and ↓3+38
Comments90

Яндекс блокирует аккаунты, к которым не привязан номер телефона

Reading time5 min
Views176K
Я наверное как те самые мыши, которые «плакали, кололись, но продолжали жрать кактус». Который раз пытаюсь патриотично пользоваться сервисами Яндекса — и который раз это выходит мне боком.

В этот раз заблокировали доступ к почте под предлогом «подозрения на взлом». А в реальности — потому что при регистрации не указал номер телефона, что вообще-то не возбраняется, но как всегда есть НО…

Небольшой разбор ситуации под катом.
Читать дальше →
Total votes 246: ↑234 and ↓12+222
Comments733

Жизнь в Германии глазами моей жены

Reading time12 min
Views98K


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

Вот я и решил спустя два с половиной года после переезда в Германию написать что-то демотивирующее про этот период моей жизни.

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

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

Поэтому этот пост я хотел бы адресовать тем специалистам, которые собираются переезжать в Германию со своей семьёй. Я расспросил свою жену о том, как она пережила эти 2,5 года моего профессионального счастья, искала смысл жизни и дошла до того, что открыла в Германии ИП по 3Д-визуализации.
Читать дальше →
Total votes 69: ↑53 and ↓16+37
Comments232

Рыцари плаща и руткитов: что посмотреть про хакеров. Сериалы

Reading time8 min
Views71K
Лето — пора путешествий и заслуженного отдыха.  Каким бы ни было путешествие и куда бы вы ни направлялись, наверняка, это будет длинная дорога (авиаперелет или поезд), или же среднего качества связь, если мы говорим об удаленных от благ цивилизации местах.

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

Мы приготовили для вас небольшую подборку сериалов, так или иначе связанных с ИT. А натолкнула нас на идею этого поста многолетняя дружба ЛАНИТ с Международным фестивалем документального кино "ДОКЕР", где, кстати, в том числе с нашей помощью традиционной стала номинация для фильмов о возможностях информационных технологий «Let IT Doк!».

Кадр из сериала «Mr. Robot» (eps3.1_undo.gz)
Читать дальше →
Total votes 93: ↑89 and ↓4+85
Comments88

Методы удержания игроков: примеры из игр различных жанров

Reading time7 min
Views32K
Меня зовут Оксана Фомина, я анализирую поведение пользователей и увеличиваю доходы игры, в том числе за счет повышения удержания игроков.

В первой части статьи «МЕТОДЫ УДЕРЖАНИЯ ИГРОКОВ В СЛОТ-ИГРАХ: Часть 1» я рассмотрела применение методов удержания игроков на примере слот-игр. Статья вызвала неоднозначную реакцию из-за того, что для примера были выбраны игры жанра Казино. Мне поставили минусы в Карму. Я хотела бы объяснить причину такого выбора.

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

image
Читать дальше →
Total votes 30: ↑21 and ↓9+12
Comments74

Вы и Брэд Питт похожи на 99%

Reading time14 min
Views24K

Завтра в отпуск


Мы в отделе аналитики онлайн-кинотеатра Okko любим как можно сильнее автоматизировать подсчёты сборов фильмов Александра Невского, а в освободившееся время учиться новому и реализовывать классные штуки, которые почему-то обычно выливаются в ботов для Телеграма. К примеру, перед началом чемпионата мира по футболу 2018 мы выкатили в рабочий чат бота, который собирал ставки на распределение итоговых мест, а после финала подсчитал результаты по заранее придуманной метрике и определил победителей. Хорватию в четвёрку не поставил никто.


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

Уронить запад
Total votes 62: ↑57 and ↓5+52
Comments10

Словесная ролевая игра — самый старый формат полностью свободного мира в играх

Reading time12 min
Views67K


Я опять хочу погрузить вас в мир странного опыта, который дают люди из игровой сферы. Прошлый раз был командир крупного альянса из Eve, а сегодня — Хаст и Тео, которые ведут коммерческие настольные словесные ролевые игры.

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

Это увлечение носит массовый характер в Америке и Европе, потому что куда интереснее сериалов и сетевых игр в правильных руках. В России это больше 25 лет был любительский «кухонный» формат, но вот уже пару лет как появились профессиональные Мастера. То есть ведущие, которые зарабатывают только этим себе на жизнь. Ранее такого извращения не наблюдалось.

Из опыта этих людей можно много почерпнуть для гейм-дизайна и вообще полезного. Но куда интереснее просто залезть и посмотреть, как устроен этот мир гиков.
Читать дальше →
Total votes 95: ↑94 and ↓1+93
Comments282

Пишем стэковую виртуальную машину на Rust'e

Reading time3 min
Views8.6K

Здравствуй, Хабр! Уже несколько недель я занят разработкой своего языка программирования на Rust. Мне бы хотелось расказать о том с чем может столкнуться новичок в этом деле и о чем ему следует знать.

Читать дальше →
Total votes 22: ↑20 and ↓2+18
Comments22

Локальная авторизация без пароля в Ubuntu

Reading time5 min
Views29K
image

Сегодня поговорим о том, как мы нашли локальную авторизацию без пароля в Ubuntu, которая, похоже, никогда не будет закрыта. Как всё происходило, читайте под катом.
Читать дальше →
Total votes 66: ↑60 and ↓6+54
Comments89

Как ИИ учится генерировать изображения кошек

Reading time11 min
Views16K


Перевод How AI can learn to generate pictures of cats.

Опубликованная в 2014-м исследовательская работа Generative Adversarial Nets (GAN) стала прорывом в сфере генеративных моделей. Ведущий исследователь Янн Лекун назвал состязательные сети (adversarial nets) «лучшей идеей в машинном обучении за последние двадцать лет». Сегодня благодаря этой архитектуре мы можем создать ИИ, который генерирует реалистичные изображения кошек. Круто же!


DCGAN в ходе обучения
Читать дальше →
Total votes 36: ↑33 and ↓3+30
Comments1

GUI-приложение размером менее 1 Кб

Reading time4 min
Views20K
На досуге задался вопросом возможности создания приложения, со следующими требованиями:

  • хоть сколько-нибудь полезная прикладная функция (то есть не пустышка)
  • наличие оконного интерфейса
  • размер менее 1 Кб
Читать дальше →
Total votes 62: ↑60 and ↓2+58
Comments25

Так-так-так, я всё вижу

Reading time12 min
Views64K
8 лет назад я написал на Хабре публикацию «Мой опыт восстановления зрения», в которой рассказал про свой опыт безоперационного восстановления зрения — путём закапывания капелек и различных упражнений. Тогда на Хабре ещё не было счётчика просмотров постов, поэтому те 75 тысяч просмотров — это многолетний поисковый трафик, лишний раз доказывающий очевидное — вопрос зрения беспокоит не только меня.



Сегодня я расскажу про второй опыт восстановления зрения, но на этот раз более радикальный и с каким-то вообще невероятным результатом. А именно — о лазерной коррекции по технологии ReLEx SMILE.
Total votes 114: ↑108 and ↓6+102
Comments143

Формула Таппера и реализация алгоритма на Python

Reading time6 min
Views46K

Вместо предисловия


Не так давно на просторах интернета узнал о такой замечательной и удивительной копии Вавилонской библиотеки как о формуле Таппера. Вернее, это больше неравенство Таппера, чем формула. Особенность данного неравенства — оно создает собственное же изображение на графике. Просто посмотрите на это чудо!


image


То, что Вы видите на изображении, и является формулой того самого Джеффа Таппера. Наверное, половина читателей уже понеслась в вольфраме рисовать результат выполнения данного неравенства… Но тут не все так просто. Как вы можете заметить в данном изображении, формула на графике может быть замечена на отрезке по оси OY [k; k+15]. Что же это за загадочное число k? Где же его взять? Все дело в том, что данное неравенство, по концепции Вавилонской библиотеки, способно вывести абсолютно любое изображение с разрешением 106х17! Каждое изображение, имеет собственную позицию на графике, тем самым, имеет уникальное число k. Таким образом, для каждого числа k существует единственное изображение на всем графике!


Для данного же изображения число k выглядит следующим образом:


4858450636189713423582095962494202044581400587983244549483093085061934704708809928450644769865524364849997247024915119110411605739177407856919754326571855442057210445735883681829823754139634338225199452191651284348332905131193199953502413758765239264874613394906870130562295813219481113685339535565290850023875092856892694555974281546386510730049106723058933586052544096664351265349363643957125565695936815184334857605266940161251266951421550539554519153785457525756590740540157929001765967965480064427829131488548259914721248506352686630476300

Интересно посмотреть на людей, которые будут прокручивать до такой координаты, чтобы увидеть формулу

Читать дальше →
Total votes 66: ↑65 and ↓1+64
Comments32

10 причин [не] использовать k8s

Reading time18 min
Views50K
Сегодня мы поговорим про Kubernetes, про грабли, которые можно собрать при его практическом использовании, и про наработки, которые помогли автору и которые должны помочь и вам. Постараемся доказать, что без k8s в современном мире никуда. Противникам k8s также предоставим отличные причины, почему не стоит на него переходить. То есть в рассказе мы будем не только защищать Kubernetes, но и ругать его. Отсюда в названии появилось это [не].

Эта статья основана на докладе Ивана Глушкова (gli) на конференции DevOops 2017. Последние два места работы Ивана так или иначе были связаны с Kubernetes: и в Postmates, и в Machine Zone он работал в инфракомандах, и Kubernetes они затрагивают очень плотно. Плюс, Иван ведет подкаст DevZen. Дальнейшее изложение будет вестись от лица Ивана.


Читать дальше →
Total votes 46: ↑43 and ↓3+40
Comments55

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Registered
Activity