Как стать автором
Обновить
17
0
Алексей @norlin

software engineer | game developer

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

Команда Street View снимала горные панорамы, проезжая на поезде через Альпы

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


Вряд ли кто-то пожаловался бы на такую командировку: команда сотрудников Google недавно проехала через швейцарские Альпы, чтобы заснять линию Альбула—Бернина, считающуюся одним из самых живописных железнодорожных маршрутов в мире и входящую в список Всемирного наследия ЮНЕСКО.
Читать дальше →
Всего голосов 64: ↑59 и ↓5+54
Комментарии57

Пятая информационная революция

Время на прочтение6 мин
Количество просмотров15K
Сущностью социального явления служит факт взаимодействия индивидов и групп.
Питирим Сорокин


Disclaimer: все нижеизложенное является плодом больного воображения автора, а не переводом, творческим пересказом или иной формой плагиата. Честно.

Первая информационная революция началась примерно 40 тысяч лет назад. До этого момента предки человека эволюционировали довольно неспешным темпом как минимум несколько миллионов лет. Однако в период позднего палеолита (начался примерно 40 тысяч лет назад — закончился примерно 10 тысяч лет назад) происходит ряд важнейших процессов, укладывающихся в достаточно короткий по археологическим меркам период:

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

б) началась экспансия homo sapiens в Европу; сам по себе вид sapiens появился, предположительно, в Африке около 130-150 тысяч лет назад, и 50-55 тысяч лет назад уже предпринял экспансию в Азию. Однако именно в Европе sapiens встретился с серьезной конкуренцией с другими представителями семейства homo — неандертальцами. Сейчас нет единого мнения, было ли это прямое столкновение или два вида конкурировали за ресурсы, но, так или иначе, неандертальцы были побеждены. Европейскую ветвь homo sapiens принято называть кроманьонцами;

в) зародилось искусство; самые древние из известных сейчас наскальных рисунков были сделаны около 35-40 тысяч лет назад. Самые древние из европейских наскальных рисунков относятся к 30-32 тысячелению до н.э. и обнаружены в пещере Шове (один из них и приведен слева).

Причем же здесь информационная революция, спросите Вы? Дело в том, что в этот период возникает еще один специфически человеческий феномен:

Какой же?
Всего голосов 108: ↑94 и ↓14+80
Комментарии83

jQuery.viewport или как я искал элементы на экране

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

Равно как у каждой девушки должно быть «маленькое черное платьице», у каждого front-end разработчика должен быть «маленький черный плагинчик»… как-то не очень звучит, пусть будет «маленький функциональный плагинчик», так о чем это я, я это о том, что хочу одним таким поделиться.

Представленный плагин позволяет определять положение какого-либо элемента/набора элементов, относительно области просмотра. Функционально, он расширяет набор псевдо-селекторов, а так же добавляет трекер элементов.

Так же, под катом, я расскажу о процессе написания плагина, с какими трудностями столкнулся и т.д., если я Вас заинтересовал — милости прошу под кат.
Читать дальше →
Всего голосов 46: ↑46 и ↓0+46
Комментарии60

Orthogonal — модель мира с альтернативной теорией относительности

Время на прочтение6 мин
Количество просмотров26K
В 2011-2013 гг. австралийский писатель Грег Иган (Greg Egan) опубликовал трилогию Orthogonal (The Clockwork Rocket, The Ethernal Flame, The Arrows of Time). В книгах описан удивительный мир, в котором нет жидкостей и электрических зарядов, обитают четырёхглазые разумные существа, способные менять форму и размножающиеся делением, использующие воздух не для химических реакций, а для охлаждения своего тела, а свет — для передачи нервных импульсов. Скорость света в этом мире непостоянна: фиолетовые фотоны движутся заметно быстрее красных. Поэтому звёзды выглядят не как белые точки, а как радужные полоски
Читать дальше →
Всего голосов 118: ↑114 и ↓4+110
Комментарии55

Тестирование в Airbnb

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


В маленьком стартапе изменить поведение команды относительно легко. Вы можете сесть с командой за один стол, обсудить новую модель работы, а затем всё реализовать. А когда у вас десятки инженеров, разбросанных по разным проектам, трансформация потребует более тщательной стратегии. Один из подходов заключается в управлении процессом через прямые приказы «иди и сделай», однако в условиях относительной самостоятельности сотрудников, присущих многим стартапам, такой подход плохо работает. Другой способ заключается в том, чтобы лично подавать пример и указывать направление развития.

С первых дней в Airbnb происходило то, что случалось со многими стартапами: мы писали много сомнительного кода и мало времени уделяли тестированию. И чем больше мы росли, тем большей это становилось проблемой. На сегодняшний день мы ежедневно обрабатываем данные миллионов пользователей. Только представьте себе, с какими объёмами данных приходится иметь дело, учитывая одни только платежи, когда сделки ежеминутно происходят в десятках разных валют. Небольшая незначительная ошибка может иметь огромные последствия для наших пользователей. Теперь благодаря нашим тестам, мы можем быть уверены, что финальный продукт выйдет действительно качественным.

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

Команда разработчиков графического языка Processing представила официальную JavaScript-библиотеку p5.js

Время на прочтение3 мин
Количество просмотров24K
Язык Processing, основанный на Java, был написан в 2001 году для создания графики и анимаций. Для использования этого языка в интернете в 2008 году Джон Резиг написал библиотеку Processing.js. Библиотека быстро завоевала популярность и активно развивалась в течение нескольких лет после релиза. Часы на кривых Безье, о которых на Хабре писали несколько дней назад, были созданы именно с помощью Processing.js.

В прошлом году команда разработчиков Processing объявила о планах создать собственную JavaScript-библиотеку. В августе бета-версия p5.js была представлена широкой публике. Библиотека p5.js сильно отличается от Processing.js по архитектуре. Главные отличия — отсутствие необходимости изучать язык Processing и более тесная интеграция с HTML. Processing.js — это транслятор Processing в JavaScript. Основное назначение этой библиотеки — рендеринг файлов PDE с исходным кодом Processing. При использовании этой библиотеки программист может вообще не знать JavaScript. Возможно, в 2008 году это была весьма удачная идея, но сейчас, после нескольких лет бурного развития JavaScript и появления множества графических библиотек сформировалось поколение программистов и дизайнеров, для которых JavaScript намного «роднее» и понятнее Java-подобного Processing.


Пример анимации, созданной с помощью языка Processing
Читать дальше →
Всего голосов 46: ↑46 и ↓0+46
Комментарии3

Илья

Время на прочтение1 мин
Количество просмотров39K
Сегодня сооснователю Яндекса Илье Сегаловичу исполнилось бы 50 лет. Мы сняли небольшой фильм-воспоминание о нём и том, что значило работать рядом с ним. Это первая часть фильма.

Всего голосов 295: ↑260 и ↓35+225
Комментарии13

Я нашёл ошибку в браузере!

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


Наш коллега по браузерному фронту Пол Льюис aka @aerotwist из Google, видимо, порядком устал от неправильных багрепортов и опубликовал сегодня блок-схему, показывающую как это делать правильно. Я не удержался и решил перевести. С одной стороны, схема довольно очевидна для тех, кто хоть раз занимался тестированием, с другой — никогда не бывает лишним напомнить или показать схему тем, кто не в курсе.
Под катом полная картинка и ссылки на трекеры
Всего голосов 91: ↑71 и ↓20+51
Комментарии77

Несколько интересностей и полезностей для веб-разработчика #26

Время на прочтение5 мин
Количество просмотров30K
Доброго времени суток, уважаемые хабравчане. За последнее время я увидел несколько интересных и полезных инструментов/библиотек/событий, которыми хочу поделиться с Хабром.

Best of Awesomeness & Usefulness for Web Developers


Две недели назад я опубликовал «Лучшие интересности и полезности за год». Моим дайджестам тогда исполнился ровно один год и я хотел разместить пост точно в срок. Но не правильно рассчитал время и не упомянул много всего, что должно было быть в той подборке. И даже в опросах забыл указать в редакторах Vim, во фреймворках ExtJS и тд. За что мне очень стыдно. В целом подборка выросла как минимум в два раза и я создал репозиторий на GitHub. Моей целью не было сделать очередной awesome-* список, в которые попадает практически все подряд — лучшие и ненужные альтернативы. Я попытался выделить все самое лучшее.

DUO



Авторы проекта называют его сборщиком нового поколения для фронтенд разработчиков. DUO собрал в себе все самое лучшее от Component, Browserify и Go.

Читать дальше →
Всего голосов 52: ↑49 и ↓3+46
Комментарии7

Редактор ландшафта ZSlice

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


Давно хочется рассказать о проекте ZSlice.

Редактор разрабатывается уже около 5 лет, пережил два прототипа и полное переписывание…
И всё ещё находится в стадии активной разработки.

Вероятно, я бы не созрел написать эту статью ещё несколько лет, пока редактор не будет на 100% вылизан и функционален. Но как верно заметили мои коллеги — этого не будет никогда. Поэтому идеалист внутри был слегка придушен, результатом чего стало написание этой статьи.
Читать дальше →
Всего голосов 31: ↑30 и ↓1+29
Комментарии8

Открытая лекция по основам Swift от MasterUp

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


Рады объявить, что первого сентября мы стартуем наш Swift-курс!

Этим летом мы не сидели сложа руки, а тщательно анализировали опыт преподавания курса по objective C для платформы iOS. Мы смогли выделить 3 главных параметра, которые являются основой для нашего нового курса: детализация всех аспектов разработки используя swift, практичность лекционных материалов и курсового проекта, мега-импульс интереса к платформе и новому языку программирования.

Читать дальше →
Всего голосов 30: ↑20 и ↓10+10
Комментарии4

Учебник Swift — разработка приложения для iOS8 [Часть 1, Hello World!]

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

Предисловие


Недавно Apple представила общественности достаточно важное изменение в разработке iOS приложений, анонсировав новый язык программирования Swift. Я принял решение: изучая этот язык пошагово, я буду в своих статьях рассказывать обо всём, что мне удалось найти. Это лишь первый пост из многих на эту тему, но я надеюсь, что вы решите изучать язык вместе со мной!

Весьма вероятно, что многие примеры кода, представленные в постах, будут позже изменены. Это отчасти потому, что мой стиль программирования – написать сейчас, чтобы проверить идею, а потом заняться рефакторингом, а также отчасти это потому, что для меня (как и для многих других) Swift – абсолютно новый язык программирования. Так что, скорее всего, как только я узнаю что-нибудь новое, ход этих уроков будет меняться.

Итак, я собираюсь начать с довольно простого приложения. Также я буду объяснять, как работает код. Готовы? Поехали…
Погружаемся в Swift
Всего голосов 43: ↑33 и ↓10+23
Комментарии31

Молнии

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


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

По крайней мере, таков план.

Но как же именно вам, как разработчику игры, отрендерить такой эффект?
Читать дальше →
Всего голосов 99: ↑97 и ↓2+95
Комментарии22

Функциональный JavaScript, Часть 1: Введение

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

Введение


JavaScript мощный, но недопонятый язык программирования. Людям нравится говорить, что он является объектно-ориентированным языком программирования или является функциональным языком. Другим нравится говорить, что он не является объектно ориентированным или не является функциональным языком программирования. Некоторые скажут что он относится к обеим парадигмам или ни к одной из них — но, давайте отложим на пока этот спор в сторонку.
Читать дальше →
Всего голосов 48: ↑37 и ↓11+26
Комментарии15

Никогда не «не делай» того, о чем пожалеешь или умный дом с CCU.IO

Время на прочтение12 мин
Количество просмотров119K
На хабре последнее время появляется много статей об автоматизации дома. Какие-то статьи с пространными размышлениями на тему умного дома, не несущие полезной нагрузки. Какие-то с конкретной реализацией на конкретном проприетарном железе, но им не хватает чего то для того, что бы быть установленными или запущенными в другом доме.

Хочу представить программную платформу автоматизации для дома на базе Node.js, которую можно скачать со всеми исходниками и установить прямо сейчас практически одним кликом (Windows) или одной командой (Linux/Debian).


Подробности
Всего голосов 84: ↑81 и ↓3+78
Комментарии88

Сайт GameTutorials сделал все свои 350 уроков по программированию игр бесплатными

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

Сайт GameTutorials, известный своими уроками по C/C++/Win32/OpenGL/Direct3D/C#/Java, открыл все свои материалы для свободного изучения. Все уроки проверены на совместимость с Visual Studio 2013, в самом ближайшем будущем ожидаются уроки по Unreal Engine и Unity Engine, кроме того, будут обновлены устаревшие уроки по OpenGL и DirectX (сейчас на сайте описана версия DirectX 9).

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

Для просмотра и скачивания уроков потребуется зарегистрироваться.
Всего голосов 90: ↑85 и ↓5+80
Комментарии12

Приводим в порядок css-код. Опыт Яндекса

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

Я работаю над фронтендом огромного проекта — поисковой выдачи Яндекса. И у нас, как и у любого другого большого веб-проекта, есть огромное количество css-кода и немаленькая команда, которая с ним взаимодействует.

Когда много людей, используя разные инструменты, пишут и редактируют css, со временем этот css может получиться очень запутанным, неконсистентым и в целом начинает выглядеть плохо. Например, кому-то удобнее писать вендорные префиксы в одном порядке, кому-то — в другом, кто-то ставит кавычки вокруг url, кто-то — нет, а кто-нибудь фикся срочную багу к релизу мог бы, к примеру, написать position: relative в начале блока свойств, незаметив что где-нибудь внизу между color и box-shadow, уже есть position: absolute, и долго гадать, почему у него ничего не работает.



Но несмотря на то, что все пишут код по-разному, у нас в репозитории идеальный порядок: css-код полностью консистентен, и прекрасно выглядит. Весь.

Как мы этого добились, можно прочитать под катом.
Читать дальше →
Всего голосов 174: ↑169 и ↓5+164
Комментарии70

Из Москвы в Кремниевую Долину: как Александр Киров улучшает умные часы Pebble

Время на прочтение7 мин
Количество просмотров37K
А вы хотели бы получить работу в Кремниевой Долине и поучаствовать в разработке продукта, который гремит на весь мир? Это ли не мечта каждого второго гика? У Александра Кирова, бывшего продакт-дизанера из Mail.Ru, который называет себя очень неорганизованным человеком (он бросил учебу в двух институтах), свой рецепт достижения мечты: если тебя отшили, не бойся стучаться снова, пока не добьешься своего. Его, например, отшивали и Google, и Facebook, но в итоге Александр уехал в Калифорнию и присоединился к американской команде Pebble, которая прославилась по всему миру одноименными умными часами (и тоже его сначала отфутболила). Мы попросили Александра рассказать, как он сумел это провернуть и чем его новая жизнь отличается от старой в Москве.



ПЕРВЫЙ МОБИЛЬНЫЙ


— Попыток и поисков в моей жизни было довольно много. Но оказалось, что именно они сформировали мой характер. Так, с учебой у меня не складывалось довольно долго. После школы я год отучился на айтишника, потом еще год на менеджера, но в обоих случаях быстро становилось скучно, и учебу я бросал. Правда, параллельно всегда работал — сначала сисадмином, потом управлял разработкой сайтов в компании «Это Легко», был проджект-менеджером в цифровом подразделении крупного рекламного агентства Lowe Adventa. Тогда я завязал с учебой на некоторое время и понял, что мне интереснее заниматься не менеджментом или программированием, а более творческой работой. Решил попробовать себя в дизайне.
Читать дальше →
Всего голосов 102: ↑90 и ↓12+78
Комментарии16

Разработка кросс-браузерных расширений

Время на прочтение5 мин
Количество просмотров10K
В своей прошлой статье, я упомянул о выпуске браузерного расширения для Google Chrome, который способен повысить эффективность поиска, за счет предоставления релевантной информации из статей понравившихся вам в социальных сетях.

На сегодня мы поддерживаем 3 главных браузера Chrome, Firefox и Safari, причем, не смотря на разницу платформ, все собираются из одной кодовой базы. Я расскажу, как это было сделано и как упростить себе жизнь разрабатывая браузерные расширения.
Читать дальше →
Всего голосов 27: ↑24 и ↓3+21
Комментарии9

Информация

В рейтинге
Не участвует
Откуда
Россия
Дата рождения
Зарегистрирован
Активность