Pull to refresh
20
0
Сергей @serge4u

User

Send message

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

Reading time7 min
Views37K

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


Будет про:


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

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

Reading time12 min
Views66K

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

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

Читать далее
Total votes 29: ↑27 and ↓2+25
Comments31

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

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



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

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

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

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

Reading time3 min
Views96K

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




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

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

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

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

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

Reading time1 min
Views26K
Дизайнер Sputnik8 (Phyek) на форумах The Verge вынес на суд публики концепт дизайна для десктопной версии Windows 8 (все скриншоты кликабельны).



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

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

Reading time3 min
Views51K
Задача: поставить Windows 8 Developer Preview поиграться.

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

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

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

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

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

Читать дальше →
Total votes 216: ↑181 and ↓35+146
Comments139

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

Reading time8 min
Views10K
Приветствую.

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

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

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

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

О чем я говорю


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


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

Читать дальше →
Total votes 6: ↑4 and ↓2+2
Comments3

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

Reading time14 min
Views17K
Сегодня мы будет обсуждать технические аспекты и реализацию задач на Python и C/C++, которыми нас будет закидывать инженер из Google. Начнём с самых тривиальных проблем с последующим нарастанием сложности. Параллельно обратим внимание о чём стоит упомянуть во время интервью и где не попасть в ловушку.
Читать дальше →
Total votes 102: ↑86 and ↓16+70
Comments134

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

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

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

Reading time6 min
Views17K
image

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

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

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

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

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

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


Читать дальше →
Total votes 256: ↑249 and ↓7+242
Comments100

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

Reading time1 min
Views26K
image

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

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

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

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

Читать дальше →
Total votes 58: ↑43 and ↓15+28
Comments21

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

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

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

image
Читать дальше →
Total votes 36: ↑27 and ↓9+18
Comments26

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

Reading time2 min
Views20K


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

Задачник.NET

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

Cover
Читать online
Скачать PDF-версию
Исходные коды на GitHub
Читать дальше →
Total votes 55: ↑51 and ↓4+47
Comments23

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

Reading time7 min
Views27K
Привет, Хабр!

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


Читать дальше →
Total votes 17: ↑15 and ↓2+13
Comments25

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

Reading time17 min
Views47K

Введение



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

Архитектура


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

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

Arduino и аквариум

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

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

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

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

Итак, поехали.
Читать дальше →
Total votes 58: ↑57 and ↓1+56
Comments31

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

Reading time6 min
Views19K

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

Information

Rating
Does not participate
Location
Sydney, New South Wales, Австралия
Date of birth
Registered
Activity