Как стать автором
Обновить
20
0
Сергей @serge4u

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

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

Алиса, открой ворота — или MVP умного дома за пару вечеров

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

TLDR: Схожих постов на Хабре десятки, но мне хотелось показать, что внезапно можно
очень быстро сделать классные штуки, которые не ради вау эффекта, а реально помогают жить.


Будет про:


  • Home Asistant
  • Алису и её станции
  • Ардуины и MQTT
  • управление воротами Came
  • локальное управление яндекс розетками
  • датчики движения
  • Влажность, температуру и CO2
  • Автоматический полив цветочков
  • Как при помощи всего этого развлечь детей и как они находят свои способы с этим играть.
Читать дальше →
Всего голосов 14: ↑12 и ↓2+10
Комментарии51

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

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

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

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

Читать далее
Всего голосов 29: ↑27 и ↓2+25
Комментарии31

20 самых популярных выступлений всех времен на конференции TED

Время на прочтение3 мин
Количество просмотров353K
Привет, Хабр. Я знаю, что здесь уважают и любят выступления TED. Поэтому я не мог пройти мимо новости о том, что сайт ted.com после редизайна обновил плейлист «20 самых популярных выступлений на TED всех времен». Это яркий пример того, как путем послабления копирайта (все лекции TED находятся в открытом доступе, распространяются по лицензии CC, согласно которой разрешено все, кроме коммерческого использования) и организации краудсорсинга (все переводы выполняют волонтеры) можно добиться впечатляющих результатов…



Ранее на Хабре уже публиковался этот плейлист, но с тех пор он заметно обновился. Не изменился разве что лидер рейтинга — Кен Робинсон с выступлением «Как школы подавляют творчество».

Рейтинг составлен по количеству просмотров (в статистике учитывались данные с TED.com, Youtube, iTunes, Hulu, встроенных фреймов, количества скачиваний и т.д.)

Большинство лекций переведены на русский язык, с субтитрами или в озвучке. Не буду много писать, это нужно смотреть. Остальное под катом.
Читать дальше →
Всего голосов 117: ↑109 и ↓8+101
Комментарии22

Агрегатор социальных сетей Meople.net объединил в одном месте 10 основных «социалок»

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

Социальные сети глазами среднестатистического юзера




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

Для поддержания себя в курсе событий в социалках надо открыть для каждой из них отдельное окошко в браузере (это если вы за стационарным ПК или ноутбуком) или парочку приложений (если вы на мобильном устройстве). И потом к этим окошкам/приложениям периодически возвращаться, чтобы не выпадать из течения новостей и событий в сетях.

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

И если для новостей уже давно существуют RSS-агрегаторы, то для социалок такого продукта, чтобы был удобный, пока не было. Пока…
Читать дальше →
Всего голосов 82: ↑57 и ↓25+32
Комментарии74

Концепт UI для Windows 8

Время на прочтение1 мин
Количество просмотров26K
Дизайнер Sputnik8 (Phyek) на форумах The Verge вынес на суд публики концепт дизайна для десктопной версии Windows 8 (все скриншоты кликабельны).



На скриншотах изображены разные версии Explorer, браузера IE (с переделанными сайтами Windows.com и Bing), Media Center/Player и Skype. Автор подчёркивает, что он не стремился строго соблюдать новый стиль Metro, в общем, его работа — это скорее фантазия на тему, как может выглядеть Windows 8.
Читать дальше →
Всего голосов 210: ↑182 и ↓28+154
Комментарии208

Установка Windows 8 Developer Preview для ленивых

Время на прочтение3 мин
Количество просмотров51K
Задача: поставить Windows 8 Developer Preview поиграться.

Условия: старая винда должна выжить, привода DVD нет, большой флешки на десять гигов тоже.

Классические решения:

  1. Поставить в виртуалку. Это медленно, нужен дополнительный софт и без хардварной виртуализации ничего не заработает.
  2. Поставить на другой жёсткий диск. Увы, в ноутбук второй винт не вставишь, да и нету его у меня.
  3. Выделить отдельный раздел на винте. А это ставить лишний софт, танцевать с бубнами вокруг разделов… Лениво!

К тому же последние два варианта обычно требуют физический DVD, которого нет. Выход? VHD!

Кроме ISO образа Windows 8 нам также понадобится установленная Windows 7 — более ранние версии не умеют работать с VHD. А из под Linux мы не сможем так просто запустить инсталлятор.

Читать дальше →
Всего голосов 216: ↑181 и ↓35+146
Комментарии139

Делаем виртуализацию данных в LongListSelector

Время на прочтение8 мин
Количество просмотров10K
Приветствую.

Этот пост меня побудило практически полное отсутствие описание того, как же на платформе WP8 делать виртуализацию длинных списков. Методы, использующиеся в дектопной Windows 8 тут не работают. Например, тот же ISupportIncrementalLoading попросту отсутствует на WP8.

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

PS Сейчас я перешел на iOS под Monotouch и подобных проблем нет совсем, поэтому решил достать статью из черновиков. Мало ли кому окажется полезным.

Изложение будет в виде туториала, чтобы его могли воспроизвести даже те, кто еще мало знаком с платформой и .net приложениями.

О чем я говорю


  • У нас есть список.
  • В списке есть over 100500 пунктов. Для полноты задачи — каждый из пунктов отображает картинку.
  • Мы хотим их отображать так, чтобы телефон не умер от нехватки памяти. И не просто отображать, а полноценно с ними работать


Что же нужно для этого сделать

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

Я хочу работать в Google! Телефонное интервью (часть 2)

Время на прочтение14 мин
Количество просмотров17K
Сегодня мы будет обсуждать технические аспекты и реализацию задач на Python и C/C++, которыми нас будет закидывать инженер из Google. Начнём с самых тривиальных проблем с последующим нарастанием сложности. Параллельно обратим внимание о чём стоит упомянуть во время интервью и где не попасть в ловушку.
Читать дальше →
Всего голосов 102: ↑86 и ↓16+70
Комментарии134

Я хочу работать в Google! Телефонное интервью (часть 1)

Время на прочтение4 мин
Количество просмотров31K
Привет Хабр! Давно не писал. Да это и понятно. Защита диссертации, получение PhD, а сейчас ещё и активный поиск работы — всё это занимает очень много драгоценного времени. Но разговор сегодня пойдёт не о том. Хотелось бы поделиться с Вами, уважаемые хабралюди, ресурсами и описанием процесса подготовки к телефонному техническому интервью с Гуглом, первый технический этап которого я уже прошёл, и теперь готовлюсь ко второму, который будет в пятницу.
Читать дальше →
Всего голосов 207: ↑182 и ↓25+157
Комментарии99

Развиваем кругозор и погружаемся в робототехнику вместе

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

Электроника — это очень интересно. Крайне приятное ощущение, когда ты вскрываешь какой-то электронный прибор, видишь что-то знакомое: «Вот диод, а вот транзистор!», когда вместо того, чтобы нести материнскую плату в ремонт, ты можешь сам поменять на ней конденсатор за пару минут. Однако, многие боятся ее, представляя огромные монтажные схемы со странными закорючками и непонятный ассемблерный код. Я же хочу показать всем, что начать заниматься электроникой, а в частности робототехникой, это несложно! Простого робота можно изготовить всего за пару часов.
Читать дальше →
Всего голосов 151: ↑141 и ↓10+131
Комментарии99

Как я проходил собеседование в компанию Zynga

Время на прочтение11 мин
Количество просмотров27K
На Хабре опять стали появляться статьи о том, как проходить собеседования на должность программиста. Материал из них полезен соискателям так же, как учебники полезны студентам во время сессии. Вызубрите том по Мат. Анализу и, если попадете на тот экзамен, получите пятерку.

Гораздо интереснее читать реальные истории людей, которые описывают свой опыт собеседований в ту или иную известную компанию. Что спрашивали, что не спрашивали, какая была атмосфера, сколько проходило интервью? Такие данные много полезнее, чем «а зазубри еще это, авось спросят».

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

Ну, и картиночка на затравку.


Читать дальше →
Всего голосов 256: ↑249 и ↓7+242
Комментарии100

Преждевременная оптимизация — зло!

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

Предлагаю вашему вниманию первую часть перевода книги «Mature optimization» Карлоса Буэно о принципах оптимизации высоконагруженных проектов.

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

Книгу стоит прочесть, если вы:

1. Хотите повысить производительность своего проекта, но не знаете с чего начать.
2. Хотите повысить производительность своего проекта, но боитесь все сломать.
3. Не знаете о подводных камнях оптимизации производительности.
4. Давно хотели настроить мониторинг проекта, но не уверены что именно стоит мониторить.
5. У вас есть система мониторинга, но она не сообщает о проблемах заранее.

Читать дальше →
Всего голосов 58: ↑43 и ↓15+28
Комментарии21

Моя библиотека для IT-менеджера

Время на прочтение7 мин
Количество просмотров74K
С тех пор, как в институте появился предмет маркетинг, я прочёл несколько десятков книг, полезных для проект-менеджеров, стартаперов и руководителей компаний. Лучшие я собрал в небольшую библиотеку и хочу рассказать о них вам. Все эти книги заслуживают внимания и будут вам полезны. О многих вы уже слышали, часть упоминалась на Хабре, но, надеюсь, вы откроете для себя нечто новое из тех 22-х книг, о которых хочу рассказать.

Рассказывать буду кратко: о чём книга, кому полезна, насколько важна. Поэтому обложки на каждую ставить не буду, думаю, каждый без труда найдёт ту, что заинтересовала.

image
Читать дальше →
Всего голосов 36: ↑27 и ↓9+18
Комментарии26

Учетные записи разработчиков магазина приложений Windows Phone и Windows стали бессрочными, всего за $19!

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


В этом месяце, Microsoft анонсировал несколько полезных возможностей и бонусов для Windows Phone и Windows разработчиков. Все они, уже доступны на территории России.
Читать дальше →
Всего голосов 45: ↑37 и ↓8+29
Комментарии25

Задачник.NET

Время на прочтение3 мин
Количество просмотров117K
Этот пост предназначается всем любителям платформы .NET и языка C#. Думаю, многие встречали на просторах сети разнообразные задачки на понимание тех или иных особенностей платформы или языка. Я большой любитель подобных задачек и головоломок. Они помогают глубже понять определённые области и повысить собственные программистские навыки. Однажды я решил сделать подборку подобных задачек, чтобы можно было показывать другим людям и обсуждать нюансы работы с .NET/C#. Когда задачек накопилось достаточное количество, появилась новая мысль — оформить мою подборку в виде книжки. Вашему вниманию предоставляется текущий вариант этого сочинения под названием «Задачник.NET».

Cover
Читать online
Скачать PDF-версию
Исходные коды на GitHub
Читать дальше →
Всего голосов 55: ↑51 и ↓4+47
Комментарии23

Как сделать хорошее видео для страницы приложения в App Store

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

Меня зовут Алёна, я работаю в студии motion-графики. Недавно приложение с нашим роликом успешно прошло модерацию, так что хочу поделиться опытом, как сделать видео для страницы в App Store и не облажаться: что и как может сделать сам разработчик, что лучше отдать на аутсорс, а от каких фишек лучше вообще отказаться.


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

Пишем простой интерпретатор на C++ с помощью TDD, часть 1

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

Введение



Многие C++ программисты слышали про разработку через тестирование. Но почти все материалы по данной теме касаются более высокоуровневых языков и сосредоточены больше на общей теории, чем на практике. Итак, в данной статье я попробую привести пример пошаговой разработки через тестирование небольшого проекта на C++. А именно, как можно предположить из названия, простого интерпретатора математических выражений. Такой проект также является неплохой code kata, так как на его выполнение затрачивается не более часа (если не писать параллельно статью об этом).

Архитектура


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

Существует множество библиотек и инструментов, которые могут облегчить разработку интерпретаторов и компиляторов. Начиная от Boost.Spirit и заканчивая ANTLR и Bison. Можно даже запустить канал интерпретатора командной строки через popen и вычислить выражение через него. Целью данной статье является пошаговая разработка достаточно сложной системы с помощью TDD, поэтому будет использоваться только стандартная библиотека C++ и встроенный в IDE тестовый фреймворк.
Читать дальше →
Всего голосов 26: ↑25 и ↓1+24
Комментарии9

Arduino и аквариум

Время на прочтение12 мин
Количество просмотров102K
Чего общего у севера Италии и тропических рыбок? Да мало ли чего?! – скажет читатель. И будет прав. Поэтому уточню: речь пойдет об Arduino, точнее про автоматизацию обслуживания аквариума.
Все началось с того, что неумолимо приближался отпуск. В отпуске хочется, как правило, сменить обстановку. Но аквариумные рыбки могут этого не понять. Мало того – могут не простить. И я заказал новый фильтр, автокормушку и таймер для бытовых приборов. Но таймера не оказалось в наличии. Поэтому решил побродить по сайту чуть ли не единственного магазина (и это в городе, считающимся миллионником!) радиокомпонентов и устройств и натолкнулся на Arduino Uno за 154 грн. (~20$). Уже не раз читал про устройство, но в руках, как говорится, не держал. Купил. И с этого момента начинается история проб, ошибок и побед.
Читать дальше →
Всего голосов 32: ↑28 и ↓4+24
Комментарии31

Под капотом у Dictionary и ConcurrentDictionary

Время на прочтение5 мин
Количество просмотров169K
Некоторое время назад, я решил, что хочу знать больше подробностей о работе многопоточности в .NET и что я уделял этому незаслуженно мало внимания в прошлом. Информации на эту тему великое множество (отправной точкой я для себя выбрал этот раздел книги «C# in a nutshell»), но, как оказалось, только малая часть ресурсов пытаются объяснить что-то в деталях.

Каждый мастер должен знать свои инструменты, а что может использоваться чаще коллекций? Поэтому я решил сделать небольшой обзор многопоточных коллекций и начать с ConcurrentDictionary (беглый обзор уже встречался здесь, но его там совсем мало). Вообще, я несколько удивился, что такой статьи для .NET еще нет (зато хватает по Java).

Итак, поехали.
Читать дальше →
Всего голосов 58: ↑57 и ↓1+56
Комментарии31

Добавляем эффект Motion Blur в WPF-приложения

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

Привет, Хабр!
Все мы много раз слышали фразу о том, что 24 кадра в секунду — это максимально возможное значение, которое способно воспринимать человеческое зрение. Поэтому, если ускорить видеоряд всего на один лишний кадр, можно внедрить в подсознание зрителя любую информацию. И все мы, конечно, знаем, что это неправда. Так же, как и фотодиоды матрицы цифровых фотоаппаратов, нейроны сетчатки фиксируют не мгновенную освещённость в данной точке, а суммарный световой поток за некоторый короткий интервал времени, в результате чего быстродвижущиеся объекты кажутся нам «смазанными». Более того, наш мозг привык к такой особенности зрения, поэтому видео, скомпонованное из отдельных фотографий объекта, нам кажется неестественным. То же самое касается и компьютерной анимации. Художники-мультипликаторы уже давно научились дорисовывать размытые шлейфы за своими персонажами — такой приём называется «Motion blur» и доступен во всех современных пакетах 2d- и 3d-анимации. Но как быть обычным desktop-программистам? В этой статье я попытаюсь рассказать о том, как я прикручивал Motion Blur к WPF-приложению для придания эффекта отзывчивости при появлении всплывающих окон.
Читать дальше →
Всего голосов 40: ↑38 и ↓2+36
Комментарии16

Информация

В рейтинге
Не участвует
Откуда
Sydney, New South Wales, Австралия
Дата рождения
Зарегистрирован
Активность