Pull to refresh
karantir @karantirread⁠-⁠only

User

Send message

10 привычек довольного node.js разработчика

Reading time6 min
Views65K


К концу 2015 года в распоряжении JavaScript разработчиков образовалось огромное количество инструментов. В этой экосистеме легко потеряться, поэтому успешные команды следуют выработанным правилам, которые позволяют не терять время и сохранять здоровье проектов. Под катом перевод статьи 2016 года от команды Heroku, в которой они рассказывают о десяти привычках веб разработчиков, у которых все работает и ничего не болит. Скорее всего 80% написанного вы уже знаете – тем интереснее вам будет прочитать об оставшихся двух приемах!
Читать дальше →
Total votes 34: ↑32 and ↓2+30
Comments50

IoT cloud на Netty или 10к рек-сек на ядро

Reading time6 min
Views28K
Всем привет. Этот пост о серверном решении для интернета вещей, который я написал на асинхронных сокетах с использованием всем известной Netty. Я расскажу о задаче, которую мы ставили перед собой, о том почему я выбрал Netty, почему у нее нету альтернатив, какие у нетти недостатки и преимущества и как можно выжать максимум. Сейчас наш сервер в среднем обрабатывает 1.5 млрд сообщений в месяц и нагрузка с каждым месяцем растет на 20%. Для привлечения внимания — нагрузка на один продакшн сервер с 4-мя ядрами Xeon® CPU E5-2630L v2 @ 2.40GHz при лоаде в 500 рек-сек.

Blynk load - для привлечения внимания

Итак, поехали.

Все началось около 2-х лет назад, когда мне подарили arduino. Я всегда мечтал сделать какое-то интересное устройство своими руками. Но все эти паяльники, резисторы, вольты-амперы меня постоянно отпугивали. Так было, пока не появились arduino. С ардуиной я смог наконец-то управлять электроникой. Сказать, что это было очень круто — не сказать ничего. Я был счастлив. Но, как это часто бывает, после освоения базовых навыков в микроконтроллерах, захотелось большего — управлять устройствами через интернет с телефона. Быстрый гуглинг показал (дело было 2 года назад), что на текущий момент нет ни одного решения, которое бы решало эту задачу. Не считая IoT облака с HTTP API, которые было не очень удобно использовать.

К счастью, я не был один. Совершенно случайно, на своей работе, я познакомился с людьми, которых волновали те же проблемы. Так появился наш проект.
Читать дальше →
Total votes 22: ↑19 and ↓3+16
Comments36

Логика мышления. Часть 1. Нейрон

Reading time10 min
Views316K


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

В настоящем цикле статей планируется рассказать о той концепции интеллекта над которой мы сейчас работаем и продемонстрировать некоторые решения, являющиеся принципиально новыми в сфере моделирования работы мозга. Но чтобы повествование было понятным и последовательным оно будет содержать не только описание новых идей, но и рассказ о работе мозга вообще. Какие-то вещи, особенно в начале, возможно покажутся простыми и общеизвестными, но я бы советовал не пропускать их, так как они во многом определяют общую доказательность повествования.
Читать дальше →
Total votes 62: ↑53 and ↓9+44
Comments23

Руководство по HTML/CSS/JavaScript

Reading time13 min
Views212K

Frontend Guidelines

Правила и руководства оформления, форматирования HTML, СSS и JavaScript кода. Его цель — повысить качество кода и облегчить совместную работу и поддержку инфраструктуры.

От переводчика

Приветствую всех снова, меня зовут Максим Иванов, и сегодня я подготовил перевод, который, возможно, окажется для вас полезным. Бенджамин Де Кук (Benjamin De Cock), разработчик из Бельгии, собрал некоторые указания по оформлению кода, которые позиционируют себя как лучшие практики по написанию HTML, CSS, JS. Конечно, существует множество рекомендаций, например, есть хороший гайдлайн от Google, наверное, есть еще что-то, однако, если следовать хотя бы некоторым из них, то можно надеяться, что ваш код станет лучше. В отдельных случаях следование этим гайдлайнам не полезно, а совсем наоборот. В общем и целом, все зависит от вашего опыта и виденья дела, если вы новичок, то скорее вам будет полезно оценить то, что пишут другие и в обществе считается верным, если вы гуру, то наверное вам и не нужны гайдлайны, которые написаны непонятно кем на ваш взгляд. Итак, приступим.
Читать дальше →
Total votes 38: ↑29 and ↓9+20
Comments38

ESP8266: Революция в мире интернета вещей

Reading time4 min
Views341K


В не столь далекие времена поддержка устройством Wi-Fi-соединения была дорога, громоздка и не энергоэффективна. Разработчики вынуждены были использовать радиоинтерфейсы на базе различных конкурирующих решений. Выдумывали свои «велосипеды» на уровне протоколов. И попадали в заветный Wi-Fi только с использованием дополнительных устройств, реализующих функционал моста. Стоивших весьма заметные деньги.

Но жизнь идет. Технологии стремительно развиваются. Термин «Интернет вещей» все чаще на слуху. Многим производителям микросхем, большим и не очень, наконец-то стало актуальным решить извечную проблему интеграции Wi-Fi в небольшие и недорогие устройства. Чтобы иметь возможность подключить их напрямую в инфраструктуру, уже имеющуюся почти в каждом жилище. Чтобы отъесть как можно больший кусок грядущего нового рынка подключаемых к сети простых устройств.

В 2014 году сразу несколько производителей объявили о выпуске соответствующих наборов микросхем. Сегодня речь пойдет о чипе ESP8266 китайской компании Espressif. Модулями UART-WIFI на базе этого чипа уже наводнен весь Китай и стоят они всего от $4,5 (с бесплатной международной доставкой).
Читать дальше →
Total votes 78: ↑74 and ↓4+70
Comments83

Разработка цифровой аппаратуры на C++/SystemC глазами SystemVerilog программиста

Reading time19 min
Views35K


SystemC это библиотека для C++ позволяющая моделировать всевозможные аппаратные системы на различном уровне абстракции. Поддерживается как традиционное дискретно-событийное моделирование, привычное программистам на Verilog и VHDL, так и аналоговое моделирование в духе SPICE/Verilog AMS. В комплект также входит библиотека и методология для виртуального прототипирования, библиотеки для написания тестовых окружений и верификации с использованием рандомизированных тестов.

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

Подразумевается, что читатели знакомы с Verilog и C++.
Читать дальше →
Total votes 37: ↑37 and ↓0+37
Comments28

Алкомат

Reading time4 min
Views53K
Иван Арнольдович, покорнейше прошу, пива Шарикову не предлагать.
профессор Преображенский. «Собачье Сердце»

Как-то, путешествуя по просторам Интернет, увидел разработку Rumbot. Мне всегда нравилось чем-то управлять и в итоге пришла идея улучшить разработку и привнести в нее новые элементы. Получился проект, включающий в себя не только разработку железа и софта, но также и 3D-моделирование корпуса, экскурс в изготовление мебели, работа со звуком, некоторые хитрости работы барменов и многое другое, что сопутствовало разработке. Получился забавный аппарат для вечеринок с друзьями. Главное было пройти весь путь от идеи до разработки конечного продукта. Аппарат позволяет делать алкогольные коктейли для пяти человек. Назвал я его «Алкомат».



Подробности ниже. Много больших фото.
Читать дальше →
Total votes 96: ↑93 and ↓3+90
Comments112

Обзор облачного сервиса автоматизации стоматологии Dental Cloud

Reading time3 min
Views3.3K
Ранее мы публиковали screen обзоры сервиса — такие лайт версии того, что умеем. Настало время сделать большой полноценный обзор возможностей Dental Cloud (версия 01.11.15).


Читать дальше →
Total votes 7: ↑6 and ↓1+5
Comments1

Разработка браузерной онлайн игры на meteor

Reading time10 min
Views58K
Здравствуйте, меня зовут Александр Зеленин и я веб-разработчик. Последние полгода занимался разработкой многопользовательской космической браузерной стратегии. На текущий момент мы уже находимся на стадии закрытого бета тестирования (доступного для вложившихся) и запустили компанию на бумстартере.



В этом посте хочу рассказать про процесс разработки игры с нуля силами двух человек.
Читать дальше →
Total votes 36: ↑31 and ↓5+26
Comments84

Пусть роится Docker по всему кластеру на Raspberry Pi

Reading time5 min
Views46K


От переводчика: Ссылка на эту статью была опубликована в последней официальной рассылке Docker. Думаю, я не один интересуюсь одновременно и Raspberry Pi и Docker (Swarm), поэтому предлагаю вашему вниманию перевод,

В этом посте мы расскажем насколько легко можно установить Swarm на ваших Raspberry Pi и настроить на них Swarm кластер с помощью Docker Machine.
Читать дальше →
Total votes 19: ↑16 and ↓3+13
Comments8

Демонстрация работы Wiren Board Smart Home

Reading time3 min
Views64K
image

Привет!

Чуть больше недели назад мы открыли предзаказ на Wiren Board Smart Home — наш контроллер для домашней автоматизации. В предыдущей статье мы рассказали про железо, а в этой начнём показывать работу с разной периферией и уделим внимание софту. В этот раз показывать будем работу с реле, выходами открытый коллектор, термодатчиками 1-wire, а также работу по радио с беспроводными пультами и блоками управления освещением Noolite и датчиками Oregon.

Читать дальше →
Total votes 51: ↑48 and ↓3+45
Comments59

Лекция Дмитрия Ветрова о математике больших данных: тензоры, нейросети, байесовский вывод 

Reading time2 min
Views49K
Сегодня лекция одного из самых известных в России специалистов по машинному обучению Дмитрия Ветрова, который руководит департаментом больших данных и информационного поиска на факультете компьютерных наук, работающим во ВШЭ при поддержке Яндекса.

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



Люди и их устройства стали генерировать такое количество данных, что за их ростом не успевают даже вычислительные мощности крупных компаний. И хотя без таких ресурсов работа с данными невозможна, полезными их делают люди. Сейчас мы находимся на этапе, когда информации так много, что традиционные математические методы и модели становятся неприменимы. Из лекции Дмитрия Петровича вы узнаете, почему вам надо хорошо знать математику для работы с машинным обучением и обработкой данных. И какая «новая математика» понадобится вам для этого. Слайды презентации — под катом.
Читать дальше →
Total votes 58: ↑57 and ↓1+56
Comments16

Odin: лазерная мышь + тачпад

Reading time1 min
Views8.7K

Выглядит, как эмблема «Трансформеров»

Если вы работаете со стандартной клавиатурой для ПК, где нет тачпада, а он вам очень нужен, плюс стандартная мышь надоела, можно испробовать новинку — лазерный проектор Odin. Этот девайс способен заменить собой мышь и тачпад одновременно.

По словам разработчиков, Odin — первая проекционная лазерная мышь в мире. Возможно, это и правда. Устройство выглядит очень стильно, кроме того, его возможности действительно хороши.
Читать дальше →
Total votes 15: ↑13 and ↓2+11
Comments4

Вертикальная ферма Vertical Harvest размером 9*45м позволит выращивать тонны овощей

Reading time2 min
Views22K


Городок Джексон славится своими суровыми зимами. Соответственно, здесь довольно сложно выращивать овощи и фрукты, поэтому городу приходится заводить все это из других регионов. Тем не менее, вскоре в городе может появиться трехуровневая вертикальная гидропонная теплица Vertical Harvest, которая сможет покрыть потребность города в некоторых овощах.

Авторы проекта, Нона Яхья и Пенни МакБридж, собираются возвести дополнительное сооружение, примыкающее к парковке. По их словам, себестоимость выращивания продуктов в такой теплице будет ниже, чем цена закупки завозимых в город овощей. Все это становится возможным благодаря новой методике выращивания растений.
Читать дальше →
Total votes 27: ↑26 and ↓1+25
Comments9

Стартап предлагает собственные автоматические мини-фермы для выращивания зелени

Reading time2 min
Views31K
image

Эстонский стартап Click & Grow работает над технологией выращивания зелени прямо в городских условиях. Автоматическая вертикальная «умная ферма» размером с холодильник сама следит за необходимым количеством воды, питательных веществ и освещения, которое нужно растениям. Минимальный уход и кардинально уменьшенное количество требуемой для роста воды – интересные свойства фермы, которые смогут сделать её популярной.

Click & Grow – не новички в деле выращивания растений в городах. Несколько лет назад они провели супер-успешную краудфандинговую кампанию на Kickstarter, и теперь предлагают всем желающим "умные горшочки" и «умные садики». Эти устройства также предназначены для выращивания растений дома. В горшочке растёт одно растение, в садике – три. Это немного, но и места они занимают, как обычный цветочный горшок. Но, в отличие от горшка, всё делают автоматически.

image
Умный садик от C&G
Читать дальше →
Total votes 21: ↑17 and ↓4+13
Comments21

Agile с фиксированной стоимостью — это реально

Reading time6 min
Views13K
image

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

Что происходит дальше? Если посмотреть со стороны на отношения заказчиков и аутсорсеров, то в 90% случаев они напоминают два враждующих лагеря. Одни обвиняют друг друга в вечном срыве сроков и завышении бюджетов, другие — в непрофессионализме и “саминезнаютчегохотят”.

Послушав очередные жалобы на эту тему, захотелось поделиться своим опытом заказной разработки в качестве менеджера проектов. Речь пойдет об истории 2009-2011 года. Заинтересованные в практических вопросах приглашаются в комментарии.
Читать дальше →
Total votes 16: ↑16 and ↓0+16
Comments9

Книги для работы в IT компаниях

Reading time5 min
Views30K
Доброго времени!
Представляем вам подборку книг для трудоустройства и работы в IT компаниях.

image

Мы считаем, что книги должны быть доступны, предлагаем воспользоваться скидкой 50% и прийти к нам в издательство забрать безвозмездно другие книги. Подробности внутри.
Читать дальше →
Total votes 15: ↑15 and ↓0+15
Comments12

«Free to PAY» — результаты эксперимента

Reading time4 min
Views16K
Для начала ссылка на первую часть статьи: "«Free to PAY» — эксперимент по честной монетизации игры". В ней есть подробное описание всей затеи, голосование за «сработает — не сработает» и куча комментариев.

Перескажу вкратце суть: небольшая мобильная игра с конечным геймплеем, продавать внутри особо нечего, баннерную рекламу встраивать не хочется, равно как и городить стандартный “фритуплей-обвес”. Но хоть как-то отбить затраты, понятное дело, хочется. Вопрос: как монетизировать? Предположительный ответ: сделать максимально хорошую, полностью бесплатную игру, и только уже после прохождения предлагать игроку заплатить за полученные эмоции и потреблённый контент. Сказано — сделано.

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


Читать дальше →
Total votes 17: ↑16 and ↓1+15
Comments13

Статический анализ кода

Reading time11 min
Views45K
John CarmackПримечание от переводчика. Изначально эта статья была опубликована на сайте AltDevBlogADay. Но сайт, к сожалению, прекратил своё существование. Более года эта статья оставалась недоступна читателям. Мы обратились к Джону Кармаку, и он сказал, что не против, чтобы мы разместили эту статью на нашем сайте. Что мы с удовольствием и сделали. С оригиналом статьи можно познакомится, воспользовавшись Wayback Machine — Internet Archive: Static Code Analysis.

Поскольку все статьи на нашем сайте представлены на русском и английском языке, то мы выполнили перевод статьи Static Code Analysis на русский язык. А заодно решили опубликовать её на Хабре. Здесь уже публиковался пересказ этой статьи. Но уверен, многим будет интересно прочитать именно перевод.


Самым главным своим достижением в качестве программиста за последние годы я считаю знакомство с методикой статического анализа кода и ее активное применение. Дело даже не столько в сотнях серьезных багов, не допущенных в код благодаря ей, сколько в перемене, вызванной этим опытом в моем программистском мировоззрении в отношении вопросов надежности и качества программного обеспечения.
Читать дальше →
Total votes 71: ↑65 and ↓6+59
Comments3

Самодельные датчики движения (температуры, влажности, освещения) для «Умного Дома» на основе системы MySensors

Reading time2 min
Views69K
Проходил мимо, смотрю, а здесь вещи интересные о самоделках разных пишут. Я тоже недавно кое-что мастерил, дай, думаю, напишу, может кому и пригодится, ну или просто интересно будет. Речь идет о железе бюджетного DIY-датчика для встраивания в панели выключателей и розеток.

Но давайте по порядку.
Читать дальше →
Total votes 24: ↑23 and ↓1+22
Comments26

Information

Rating
Does not participate
Registered
Activity