Как стать автором
Обновить
2
0.1

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

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

Azure понятным языком [Шпаргалка]

Время на прочтение10 мин
Количество просмотров73K
Скажите, приходилось ли вам слышать о новых службах Azure: Elasticville, StorageWart и API Gatesian? Разумеется, нет, ведь эти названия были придуманы только что. В этой статье мы делимся с вами шпаргалкой, в которой понятным языком описана экосистема Microsoft Azure.


Читать дальше →
Всего голосов 49: ↑45 и ↓4+41
Комментарии12

Серия видеоуроков по Git для новичков

Время на прочтение1 мин
Количество просмотров114K
Скорее всего, если вас привлекло название статьи, то вы начинаете свой путь знакомства с системой контроля версий Git. В данной статье я приведу 10+ видео о пошаговом вхождении в контроль версии используя Git. Данного курса будет вполне чем достаточно для работы с такими популярными сервисами как GitHub и Bitbucket.

Однажды мой знакомый, который только начинал свой путь в ИТ кинул мне данный мемчик что слева, с вопросом "А чем плохо то?", поэтому чтобы понимать данную шутку и уметь работать с самым популярным на сегодня VCS (Version Control System) рекомендую к ознакомлению серии видеоуроков, которую я привел ниже.
Читать дальше →
Всего голосов 58: ↑49 и ↓9+40
Комментарии43

Скромный NAS для дома

Время на прочтение9 мин
Количество просмотров167K
Это очередная статья о сборке очередного NAS для домашнего использования. Что побудило меня написать её? Начиная собирать себе NAS, я перечитал все нагугленные статьи, в которых люди рассказывали, как выбирали и собирали хранилища для себя. Благодаря этим статьям, я избежал некоторых ошибок при выборе железа и ПО. Собрал с первого раза конфигурацию, которая полностью меня устраивает по сей день. Поэтому уверен, кому-то моя статья может пригодиться.

Правда, надо сказать, что по профессии я системный администратор и это наложило на конфигурацию определённые требования, а на статью — подробность в описаниях с иллюстрациями на ~2 Мб. Так что да, NAS собирал сам. Но без фанатизма. В статье я не ограничился описанием железа, а рассказал ещё как использую получившуюся машину. Всем интересующимся добро пожаловать под кат!


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

Программное обеспечение для тестирования и наладки устройств и сетей на базе MODBUS

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

image


Протокол Modbus довольно распространен как в промышленных системах автоматизации, так и сетях систем типа "Умный дом", автоматизации малых объектов (теплицы и т.п.) и стыковки различного оборудования с домашним компьютером. Появление таких проектов как Arduino и Raspberry Pi значительно повысило интерес к задачам, связанным с робототехникой, автоматикой и автоматизацией. Все это обеспечивает рост популярности Modbus среди любителей и профессионалов. В статье рассмотрен вопрос тестирования и наладки, как отдельных устройств, так и сетей на базе протокола Modbus с позиции требований к программному обеспечению для решения таких задач и обзора существующих инструментов.

Читать дальше →
Всего голосов 16: ↑14 и ↓2+12
Комментарии63

27+ ресурсов для онлайн-обучения

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

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

Статья содержит перечень ресурсов для онлайн-обучения, представляющих интерес преимущественно для программистов.

Читать дальше →
Всего голосов 174: ↑163 и ↓11+152
Комментарии68

Фильтр Калмана

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


В интернете, в том числе и на хабре, можно найти много информации про фильтр Калмана. Но тяжело найти легкоперевариваемый вывод самих формул. Без вывода вся эта наука воспринимается как некое шаманство, формулы выглядят как безликий набор символов, а главное, многие простые утверждения, лежащие на поверхности теории, оказываются за пределами понимания. Целью этой статьи будет рассказать об этом фильтре на как можно более доступном языке.
Фильтр Калмана — это мощнейший инструмент фильтрации данных. Основной его принцип состоит в том, что при фильтрации используется информация о физике самого явления. Скажем, если вы фильтруете данные со спидометра машины, то инерционность машины дает вам право воспринимать слишком быстрые скачки скорости как ошибку измерения. Фильтр Калмана интересен тем, что в каком-то смысле, это самый лучший фильтр. Подробнее обсудим ниже, что конкретно означают слова «самый лучший». В конце статьи я покажу, что во многих случаях формулы можно до такой степени упростить, что от них почти ничего и не останется.
Читать дальше →
Всего голосов 178: ↑173 и ↓5+168
Комментарии84

Фильтр Калмана — Введение

Время на прочтение5 мин
Количество просмотров262K
Фильтр Калмана — это, наверное, самый популярный алгоритм фильтрации, используемый во многих областях науки и техники. Благодаря своей простоте и эффективности его можно встретить в GPS-приемниках, обработчиках показаний датчиков, при реализации систем управления и т.д.

Про фильтр Калмана в интернете есть очень много статей и книг (в основном на английском), но у этих статей довольно большой порог вхождения, остается много туманных мест, хотя на самом деле это очень ясный и прозрачный алгоритм. Я попробую рассказать о нем простым языком, с постепенным нарастанием сложности.
Читать дальше →
Всего голосов 157: ↑151 и ↓6+145
Комментарии50

Фильтр Калмана — !cложно?

Время на прочтение7 мин
Количество просмотров84K
Недавно прочитал пост из «Дополненной реальности», в котором упоминается Фильтр Калмана в сравнении с более простым «альфа-бета» фильтром. Давно собирался сочинить нечто вроде сниппета по составлению ФК, и вот думаю самое время. В статье я вам расскажу как на практике можно составить расширенный ФК не особо утруждая себя высоконаучными размышлениями и глубокими теоретическими изысканиями.
Под катом попытка рассказать по-простому о сложном
Всего голосов 73: ↑69 и ↓4+65
Комментарии14

Reach: GPS с точностью до сантиметра

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

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

Для уточнения спутниковых данных используются дифференциальные системы и RTK (real-time kinematics) технологии, но до последнего времени подобного рода устройства были дорогими и громоздкими. Последние достижения цифровой техники в лице микрокомпьютера Intel Edison помогли решить эту проблему. Итак, встречайте: Reach – первый компактный высокоточный приемник GPS, очень доступный по цене, и, к тому же, разработанный в России.
Читать дальше →
Всего голосов 37: ↑34 и ↓3+31
Комментарии103

RTKLib – Сантиметровая точность GPS/ГЛОНАСС в пост-обработке

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


Здравствуйте!

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

Сам я только недавно начал работать с этой библиотекой и был поражен её возможностями для простых смертных. В интернете достаточно много информации о практических примерах, но хотелось попробовать самому — и вот результат.
Читать дальше →
Всего голосов 65: ↑65 и ↓0+65
Комментарии114

Ричард Хэмминг: Глава 8. Искусственный интеллект-III

Время на прочтение5 мин
Количество просмотров5.9K
«Цель этого курса — подготовить вас к вашему техническому будущему.»

imageПривет, Хабр. Помните офигенную статью «Вы и ваша работа» (+219, 2365 в закладки, 360k прочтений)?

Так вот у Хэмминга (да, да, самоконтролирующиеся и самокорректирующиеся коды Хэмминга) есть целая книга, написанная по мотивам его лекций. Давайте ее переведем, ведь мужик дело говорит.

Это книга не просто про ИТ, это книга про стиль мышления невероятно крутых людей. «Это не просто заряд положительного мышления; в ней описаны условия, которые увеличивают шансы сделать великую работу.»

Мы уже перевели 11 (из 30) глав.
За перевод спасибо urticazoku, который откликнулся на мой призыв в «предыдущей главе». Кто хочет помочь с переводом — пишите в личку или на почту magisterludi2016@yandex.ru (Кстати, мы еще запустили перевод еще одной крутейшей книги — «The Dream Machine: История компьютерной революции»)

Искусственный интеллект — III


Я предлагаю сделать паузу и обсудить следующий вопрос:

Могут ли машины думать?

а также почему важно прийти к собственным выводам о том, что смогут и не смогут делать машины в будущем. Рассмотрим следующий список утверждений:
Читать дальше →
Всего голосов 15: ↑15 и ↓0+15
Комментарии9

DDD, Hexagonal, Onion, Clean, CQRS… как я собрал всё это вместе

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


Эта статья — часть «Хроники архитектуры программного обеспечения», серии статей об архитектуре ПО. В них я пишу о том, что узнал об архитектуре программного обеспечения, что я думаю об этом и как использую знания. Содержание этой статьи может иметь больше смысла, если вы прочитаете предыдущие статьи в серии.

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

С тех пор я всегда чувствовал, что мне нужно восстановить «потерянное» время и узнать как можно больше, как можно быстрее. Поэтому я стал немного увлекаться экспериментами, много читать и писать, уделяя особое внимание дизайну и архитектуре программного обеспечения. Вот почему я пишу эти статьи, чтобы помочь себе в обучении.
Читать дальше →
Всего голосов 27: ↑27 и ↓0+27
Комментарии14

Наследование, композиция, агрегация

Время на прочтение12 мин
Количество просмотров353K
Нередко случается, что решив разобраться с какой-то новой темой, понятием, инструментом программирования, я читаю одну за другой статьи на различных сайтах в интернете. И, если тема сложная, то эти статьи могут не на шаг не приблизить меня к понимаю. И вдруг встречается статья, которая моментально дает озарение и все паззлы складываются воедино. Трудно определить, что отличает такую статью от других. Правильно подобранные слова, оптимальная логика изложения или же просто более релевантный пример. Я не претендую на то, что моя статься окажется новым словом в C# или же лучшей обучающей статьей. Но, возможно для кого-то она станет именно той, которая позволит разобраться, запомнить и начать правильно применять те понятия, о которых пойдет речь.
Читать дальше →
Всего голосов 19: ↑13 и ↓6+7
Комментарии97

Категория: суть композиции

Время на прочтение7 мин
Количество просмотров62K
Это вторая статья в цикле «Теория категорий для программистов».

Категория — очень простая концепция.

Категория состоит из объектов и стрелок, которые направлены между ними. Поэтому, категории так легко представить графически. Объект можно нарисовать в виде круга или точки, а стрелки — просто стрелки между ними. (Просто для разнообразия, я буду время от времени рисовать объекты, как поросят а стрелки, как фейерверки.) Но суть категории — композиция. Или, если вам больше нравится, суть композиции — категория. Стрелки компонуются так, что если у вас есть стрелка от объекта А к объекту B, и еще одна стрелка из объекта B в C, то должна быть стрелка, — их композиция, — от А до С.

image
Читать дальше →
Всего голосов 37: ↑36 и ↓1+35
Комментарии128

Как думать на SQL?

Время на прочтение8 мин
Количество просмотров613K
Надо “SELECT * WHERE a=b FROM c” или “SELECT WHERE a=b FROM c ON *” ?

Если вы похожи на меня, то согласитесь: SQL — это одна из тех штук, которые на первый взгляд кажутся легкими (читается как будто по-английски!), но почему-то приходится гуглить каждый простой запрос, чтобы найти правильный синтаксис.


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


SELECT members.firstname || ' ' || members.lastname
AS "Full Name"
FROM borrowings
INNER JOIN members
ON members.memberid=borrowings.memberid
INNER JOIN books
ON books.bookid=borrowings.bookid
WHERE borrowings.bookid IN (SELECT bookid
  FROM books
  WHERE stock>(SELECT avg(stock)
    FROM books))
GROUP BY members.firstname, members.lastname;

Буэ! Такое спугнет любого новичка, или даже разработчика среднего уровня, если он видит SQL впервые. Но не все так плохо.


Легко запомнить то, что интуитивно понятно, и с помощью этого руководства я надеюсь снизить порог входа в SQL для новичков, а уже опытным предложить по-новому взглянуть на SQL.

Читать дальше →
Всего голосов 54: ↑48 и ↓6+42
Комментарии166

Писать веб-сайты на ассемблере полезно и приятно

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

Конечно, многие скажут, что это ни-ни и писать для веба нужно только на PHP, ну или на один из модерных языках Питон, Руби, Node.js и т.д.


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


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


Раньше у меня уже было веб-приложение на ассемблере — CMS для малого сайта. Только оно работает в режиме "один пишет, многие читают". При том, использует CGI интерфейс и поэтому "многие" читать одновременно тоже не получается.

Читать дальше →
Всего голосов 156: ↑126 и ↓30+96
Комментарии429

Как писать на ассемблере в 2018 году

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


Статья посвящена языку ассемблер с учетом актуальных реалий. Представлены преимущества и отличия от ЯВУ, произведено небольшое сравнение компиляторов, скрупулёзно собрано значительное количество лучшей тематической литературы.
Читать дальше →
Всего голосов 117: ↑102 и ↓15+87
Комментарии167

Как работает JS: обзор движка, механизмов времени выполнения, стека вызовов

Время на прочтение6 мин
Количество просмотров208K
Популярность JavaScript растёт, его возможности используют на разных уровнях применяемых разработчиками стеков технологий и на множестве платформ. На JS делают фронтенд и бэкенд, пишут гибридные и встраиваемые приложения, а также многое другое.

Анализ статистики GitHub показывает, что по показателям активных репозиториев и push-запросов, JavaScript находится на первом месте, да и в других категориях он показывает довольно высокие позиции.


Статистические сведения по JavaScript с GitHub

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

Если множество проектов плотно завязаны на JavaScript, значит, разработчикам необходимо как можно более эффективно использовать всё, что даёт им язык и его экосистема, стремясь, на пути разработки замечательных программ, к глубокому пониманию внутренних механизмов языка.

Как ни странно, существует множество разработчиков, которые регулярно пишут на JavaScript, но не знают, что происходит в его недрах. Пришло время это исправить: этот материал посвящён обзору JS-движка на примере V8, механизмов времени выполнения, и стека вызовов.
Читать дальше →
Всего голосов 41: ↑33 и ↓8+25
Комментарии29

Такты для разработчиков

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


Если у вас есть опыт создания ПО и вы хотите познакомиться с проектированием цифровых логических схем (digital design), то одна из первых вещей, которые вам нужно понять, — это концепция тактов. Она раздражает многих программных инженеров, начинающих HDL-проектирование. Без использования тактов они могут превратить HDL в язык программирования с $display, if и циклами for, как в любом другом языке. Но при этом такты, которые новички игнорируют, — зачастую один из основополагающих элементов при проектировании любых цифровых логических схем.


Ярче всего эта проблема проявляется именно при рассмотрении первых схем, созданных начинающими HDL-разработчиками. Я недавно общался с некоторыми из них. Новички опубликовали свои вопросы на форумах, которые я читаю. Когда я проанализировал то, что они делают, от увиденного волосы встали дыбом.

Читать дальше →
Всего голосов 57: ↑56 и ↓1+55
Комментарии32

События C# по-человечески

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

Невозможно, просто взять и вникнуть в этот глубокий смысл, изучая События (event) в просторах базового и, на первый взгляд, бесконечного C#.

Когда я изучал События (не в рамках .NET!), потратил много сил, чтобы, наконец-то, разобраться, как они устроены и должны конструироваться. Поэтому, я решил опубликовать свою методику понимания структуры пользовательского события, коим представляется ключевое слово event в С#.
Не буду цитировать и без того замученную MSDN, а постараюсь объяснить понятно и доступно.
Читать дальше →
Всего голосов 63: ↑44 и ↓19+25
Комментарии60

Информация

В рейтинге
3 442-й
Откуда
Россия
Зарегистрирован
Активность

Специализация

Fullstack Developer, Web Developer
Middle