Как стать автором
Поиск
Написать публикацию
Обновить
58
0

Embedded SW Designer

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

Логирование в программе ROS

Время на прочтение5 мин
Количество просмотров5.4K
Добрый день, уважаемые читатели! Продолжаю рассказывать о различных интересных и полезных возможностях робототехнической платформы Robot Operation System (ROS). В этом небольшом руководстве я расскажу о возможностях логирования средствами ROS при программировании на языке C++. Думаю, многие согласятся с тем, что вывод сообщений при выполнении программы имеет большое значение при разработке программ, особенно при отладке. ROS предоставляет удобное API для вывода различных типов сообщений в терминал с возможностью визуализации и фильтрации сообщений в специальных инструментах ROS. Давайте начнем!
Читать дальше →

Внутренние механизмы ТСР, влияющие на скорость загрузки: часть 1

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

Ускорение каких-либо процессов невозможно без детального представления их внутреннего устройства. Ускорение интернета невозможно без понимания (и соответствующей настройки) основополагающих протоколов — IP и TCP. Давайте разбираться с особенностями протоколов, влияющих на скорость интернета.

IP (Internet Protocol) обеспечивает маршрутизацию между хостами и адресацию. TCP (Transmission Control Protocol) обеспечивает абстракцию, в которой сеть надежно работает по ненадежному по своей сути каналу.

Протоколы TCP/IP были предложены Винтом Серфом и Бобом Каном в статье «Протокол связи для сети на основе пакетов», опубликованной в 1974 году. Исходное предложение, зарегистрированное как RFC 675, было несколько раз отредактировано и в 1981 году 4-я версия спецификации TCP/IP была опубликована как два разных RFC:

  • RFC 791 – Internet Protocol
  • RFC 793 – Transmission Control Protocol
Читать дальше →

Как это работает в мире java. Пул потоков

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

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


Представим, что у вас которая вызывает большую загрузку процессора:


public class Counter {

    public Double count(double a) {
        for (int i = 0; i < 1000000; i++) {
            a = a + Math.tan(a);
        }

        return a;
    }
}
Читать дальше →

Где искать работу: чаты в Telegram, группы в FB и другие ресурсы

Время на прочтение3 мин
Количество просмотров148K
Схема с созданием резюме на одном сайте и ожиданием приглашений на собеседование уже не работает. Найти отличную вакансию помогут социальные сети, где роль резюме играет ваш профиль, а рекрутерами могут стать друзья. Например, в Facebook друзья могут отмечать вас под вакансиями, а в LinkedIn подтверждать ваши навыки.
Читать дальше →

Пиши на C как джентльмен

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

«Code Monkey like Fritos
Code Monkey like Tab and Mountain Dew
Code Monkey very simple man
With big warm fuzzy secret heart:
Code Monkey like you
Code Monkey like you»

— Jonathan Coulton — Code Monkey


Я думаю, многим знакома эта шикарная песня Jonathan Coulton'а, и эта жизненная ситуация, когда «Rob say Code Monkey very diligent», но «his output stink» и «his code not 'functional' or 'elegant'».

Язык Си, подаривший нам столько полезного софта, потихоньку был вытеснен из десктопа и энтерпрайза такими высокоуровневыми гигантами как Java и C# и занял нишу системного программирования. И все бы хорошо, но системщики — очень отбитые своеобразные ребята. Задачи, которые порой возникают перед ними даже своей формулировкой способны вогнать в ужас простых смертных. Собственно говоря, так же, как и некоторые решения.

Сегодня мы поговорим о некоторых полезных практиках, которые я вынес из глубин системного программирования на Си. Поехали.
Читать дальше →

Управление рисками. Часть 1

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

«Вся жизнь — управление рисками, а не исключение рисков» Уолтер Ристон

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

Управление рисками – это не просто теоретическая и отвлеченная тема корпоративных митингов, не просто условная абстракция из мира менеджмента. При правильном применении управление рисками – это инструмент принятия решений. Этим инструментом часто и незаслуженно пренебрегают, принимая решения на основе интуиции или других факторов. Оценка рисков зачастую сводится к тому, что «да что там обсуждать, риски минимальны» или наоборот: хорошие идеи отвергаются из-за больших рисков. Но что это значит на практике? Какой риск считать большим или маленьким? Что вообще делать с этими самыми рисками?
Читать дальше →

Рекурсивный фильтр скользящего среднего

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


Да, дорогой читатель, такое тоже бывает, и может быть вкусно и полезно!

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

Как собрать статистику с веб-сайта и не набить себе шишек

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

enter image description here


Привет, Хабр! Меня зовут Слава Волков, и я фронтенд-разработчик в Badoo. Сегодня я хотел бы немного рассказать про сбор статистики с фронтенда.


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


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

Поиск по регулярным выражениям с помощью суффиксного массива

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

Еще в январе 2012 Расс Кокс опубликовал замечательный блог-пост, объясняющий работу Google Code Search с помощью триграммного индекса.

К этому времени уже вышли первые версии моей собственной системы поиска по исходному коду под названием livegrep, с другим метод индексации; я писал эту систему независимо от Google, с помощью нескольких друзей. В этой статье я хотел бы представить немного запоздалое объяснение механизма ее работы.
Читать дальше →

История одного анализатора спектра

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


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

Так было и в этот раз, работая некоторое время назад автоэлектриком, меня интересовал вопрос — «как узнать работает ли пульт сигнализации и чем они отличаются?».

Чем закончилась эта история читайте под катом.

Жесткая расстановка приоритетов

Время на прочтение11 мин
Количество просмотров17K
Расстановка приоритетов означает выполнение задач, которые наиболее важны, в первую очередь. Если вы производите продукты, это означает, что прежде всего должно делаться то, что представляет наибольшую ценность для клиента.

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

Эта статья посвящена основам расстановки приоритетов.

Читать дальше →

Самые полезные приёмы работы в командной строке Linux

Время на прочтение5 мин
Количество просмотров158K
Каждый, кто пользуется командной строкой Linux, встречался со списками полезных советов. Каждый знает, что повседневные дела вполне можно выполнять эффективнее, да только вот одно лишь это знание, не подкреплённое практикой, никому не приносит пользы.

Как выглядят типичные трудовые будни системного администратора, который сидит на Linux? Если абстрагироваться от всего, кроме набираемых на клавиатуре команд, то окажется, что команды эти постоянно повторяются. Всё выходит на уровень автоматизма. И, если даже в работе есть что улучшать, привычка противится новому. Как результат, немало времени уходит на то, чтобы делать так, как привычнее, а не так, как быстрее, и, после небольшого периода привыкания – удобнее. Помнить об этом, сознательно вводить в собственную практику новые полезные мелочи – значит профессионально расти и развиваться, значит – экономить время, которое можно много на что потратить.

image

Перед вами – небольшой список полезных приёмов работы с командной строкой Linux. С некоторыми из них вы, возможно, уже знакомы, но успели их позабыть. А кое-что вполне может оказаться приятной находкой даже для знатоков. Хочется надеяться, что некоторые из них будут вам полезны и превратятся из «списка» в живые команды, которыми вы будете пользоваться каждый день.
Читать дальше →

«Летающие мошки» и «стеклистые червяки» в глазах, или откуда берутся «битые пиксели» в стекловидном теле

Время на прочтение10 мин
Количество просмотров590K
Поднимите голову и посмотрите на что-нибудь равномерно окрашенное, на какой-то светлый фон (на снег, на небо без солнца). Если перед глазами вдруг начали медленно проплывать вот такие примерно штуки:

image

… То знакомьтесь, это «битые пиксели» у вас в глазу, образованные стекловидным телом (на рисунке ниже оно во всей красе). Такие «глюки» у многих появляются ещё в детском возрасте и с годами множатся или постепенно видоизменяются. Для большинства людей их наличие — не повод для беспокойства, но внезапное их появление или резкое увеличение — повод для срочного визита к офтальмологу. Особенно если к этому прибавляются молнии перед глазами, тёмная пелена или мелкая «табачная пыль».

Но давайте для понимания полной ситуации поговорим о том, что это за явление вообще и откуда оно берётся.
Читать дальше →

С нуля до Upper Intermediate

Время на прочтение4 мин
Количество просмотров227K
image
В этом посте вы узнаете, как я сама, без репетиторов и курсов, не потратив ни копейки, выучила аглийский за год почти с полного 0 до Upper Intermediate.

Итак, все довольно просто: Мотивация! Именно она дала толчок к саморазвитию и жажде познания английских правил, слов и букв. Согласитесь, вас мало что остановит, если у вас есть мотивация…

У каждого мотивация может быть своя: у одних это уехать заграницу в поисках лучшей жизни/работы/учебы, у других смотреть фильмы в оригинале и получать удовольствие от голосов актеров, а не слушать наши крутые, ущербные переводы, у третьих, понимать англоязычные лекции, тем самым убивая двух зайцев: изучая английский, пополняя свой словарный запас, и, развиваясь в той области, которая вам интересна. (Чисто для справки, почти в каждой области, будь то анатомия, программирование, рисование или еще чего, полно разных курсов и материалов, и их еще больше на английском, они круче и качественнее. Т. е. у вас есть больше вариантов что посмотреть и почитать.
Читать дальше →

Экосистема разработчиков в Telegram

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

Многим уже известно, что в мессенджере Telegram помимо прямого общения между двумя людьми также реализованы другие полезные инструменты:

  • Каналы — некий симбиоз сообщений и списков рассылки, где автор или коллектив авторов обращаются к своей аудитории, но аудитория не может влиять на содержимое канала.
  • Группы — своеобразные чаты между большим количеством пользователей, где каждый участник является полноправным представителем сообщества и может влиять на повестку дня.
  • Боты — специальные аккаунты в Telegram, созданные для того, чтобы автоматически обрабатывать и отправлять сообщения, часто используются для интеграции c сервисами.

На днях на просторах Github, наткнулся на список каналов, групп, ботов в Telegram, который пополняется непосредственно разработчиками, использующими этот проект совместной разработки. Под катом можно увидеть саму IT-подборку, из которой каждый сможет выбрать что-то интересное для себя.
Читать дальше →

В защиту посредственности

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


Вот есть такой парень. Всемирно известный миллиардер. Технический гений, изобретатель и предприниматель. Физически развитый, талантливый и симпатичный, с такой точёной челюстью, будто сам Зевс спустился с Олимпа и самостоятельно высек из камня эту скотину.

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

Его улыбка способна растопить комнату. В его обаянии можно купаться. Половина его друзей появлялась на обложке журнала Time под заголовком «Человек года». Другой половине на это наплевать, они могли бы купить этот журнал, если бы захотели. И если этот парень не путешествует по миру в своём реактивном самолёте и не создаёт новейшую технологическую инновацию для спасения планеты, он проводит время, помогая слабым, беспомощным и угнетённым.

Этот человек, как вы уже догадались, Брюс Уэйн. Также известный, как Бэтмен. И (спойлер) его не существует. Он выдуман.

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

«Худой мир». Глава 5

Время на прочтение12 мин
Количество просмотров18K
Продолжение фантастической повести. Для тех, кто забыл (или не знал), что там было раньше — ссылки на предыдущие части ниже.
Предыдущие части


Немного фантастики под катом

Разработка многоканального SDR

Время на прочтение7 мин
Количество просмотров17K
Расскажу о своем опыте разработки цифрового многоканального широкополосного приемника.

Много лет работаю в области создания средств захвата и обработки сигналов от бортовых и береговых навигационных РЛС. Примерно года два назад выпустил последнюю, на сегодняшний день, версию нашей платы RVAQ (Radar Video AcQuisition) и задумался, чем в жизни заняться дальше. Хотелось чего-то нового и неизведанного. Выбор пал на неохваченную мной до сих пор область — цифровой радиоприем с легким заходом в СВЧ-область.

Это первая глава, посвященная начальной постановке задачи.
Читать дальше →

Разработка маломощного резервного источника питания с синусом на выходе. Часть 1. Постановка задачи

Время на прочтение7 мин
Количество просмотров24K
Источники бесперебойного питания (ИБП) нашли широкое применение, как в быту, так и в промышленности. Они призваны обеспечить необходимым питанием оборудование из резервных источников в случае «пропажи» основного питания. Резервными источниками в таких ИБП в основном служат аккумуляторы. Поэтому эти ИБП обеспечивают питанием оборудование ограниченное время, от нескольких минут до пары тройки часов. В продаже имеется огромное количество подобного оборудования, как говорится, на любой вкус и цвет «карман», с различными характеристиками и разнообразными функциями.

Рассмотрим сферу применения в быту.

В каждом доме имеется холодильник. Основные модели используют компрессор, приводимый в действие двухполюсным однофазным асинхронным электродвигателем. Мощность бытовых холодильников 100-200 Вт. Пропадание основного питания (а-ля 220 вольт) на несколько часов может привести к размораживанию холодильника. Это не критично, но неудобно. Но обычный компьютерный ИБП здесь не поможет: двигатель компрессора не обрадуется форме напряжения, предоставляемого таким ИБП. Для такого рода потребителям необходим синус на выходе ИБП.



Пример, скажем честно, самый реальный, но не самый необходимый для применения ИБП.
Давайте ближе к телу

Первый интерактивный учебник по линейной алгебре

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


«Изображение говорит больше, чем тысяча слов», — такой принцип взяли на вооружение авторы учебника «Захватывающая линейная алгебра» ("Immersive Linear Algebra") с полностью интерактивными иллюстрациями. Авторы говорят, что это первый мире учебник такого рода.
Читать дальше →

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность