Search
Write a publication
Pull to refresh
-1
0
Юрий Лунев @bitterman

Embedded Linux

Send message

Чему сфера технологий научилась у Линуса Торвальдса

Reading time1 min
Views30K


Джим Землин внес лепту в развитие трех крупнейших технологических трендов последнего десятилетия: мобильных вычислений, вычислений в облаке и открытого ПО. Будучи исполнительным директором Фонда Линукс, он применяет свой опыт для ускорения внедрения систем Линукс и поддержки будущего вычислительных систем. Землин сотрудничает с крупнейшими технологическими компаниями в мире, и они вместе формируют будущее вычислений на серверах, в облаке и новых мобильных устройствах.

Землин — признанный в блогосфере автор статей о Линукс и открытом ПО. Его комментарии об изменениях в технологической экономике регулярно цитируют СМИ. Землин также консультирует разнообразные стартапы и входит в руководящие советы таких организаций, как Глобальный Экономический Симпозиум, Открытое ПО для Америки и Китайский Союз в Поддержку Открытого ПО.
Читать дальше →

Тестирование встроенных систем

Reading time9 min
Views29K
image Я являюсь участником проекта по разработке ОСРВ Embox для встроенных систем. Чаще всего ОС для встроенных систем поддерживает множество аппаратных платформ, и мы не исключение. Также в проекте имеется множество сервисов и библиотек: ssh, telnet, Qt и т.д. Все эти сервисы и библиотеки хотелось бы иметь в рабочем состоянии на различных платформах.

Я хорошо помню то время, когда именно мне приходилось поддерживать в рабочем состоянии Qt. Это был ужас! Вот я пришел днем на работу, что-то опять сломано. Начинаю разбираться. Оказывается, что кто-то пофиксил багу в сетевом стеке и теперь Qt не может создать сокет. Короче говоря, Qt ломалось практически ежедневно и по самым неожиданным причинам.

Естественно, напрашивалось решение внедрить в проект некоторое автоматизированное тестирование различных сервисов. В чем же проблема сделать сервер, который будет все это тестировать?

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

Работа без офиса: как наладить и сохранить сплоченность в распределенной команде

Reading time7 min
Views16K
После выхода статьи «Как мы в Alconost организовали работу без офиса» меня часто спрашивают, как сделать так, чтобы удаленные сотрудники работали как единый слаженный механизм. Напомню, в команде Alconost около 20 “непроизводственных” сотрудников (менеджеры проектов, маркетологи, программисты) и более 300 сотрудников-исполнителей (переводчики, редакторы, дикторы, видеодизайнеры). Все работают удаленно, по свободному графику, без контроля отработанного времени.

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

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


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

Аппаратное ускорение в жизни верстальщика. Семинар в Яндексе

Reading time6 min
Views71K

Привет! Меня зовут Александр Завьялов. В Яндексе я занимаюсь разработкой интерфейсов. Недавно я выступил перед коллегами с докладом об аппаратном ускорении в жизни верстальщика, где также коснулся смежных тем. Рассказал о производительности веб-страниц, о том, как она измеряется и к чему она может стремиться.



Ссылка, если видео не отображается

На основе доклада я подготовил этот пост. Я расскажу о том, как браузеры оптимизировали процесс отрисовки: с чего начинали и до чего докатились. Что сейчас можно сделать, чтобы жизнь верстальщиков и пользователей стала немного лучше. Я надеюсь, что кого-нибудь натолкну на какие-нибудь улучшения. Мне бы это было приятно.


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

Рассказ о том, как я упростил себе службу в армии при помощи Excel и VBA

Reading time5 min
Views119K
Навеяно постом «Чем заняться айтишнику в армии или как я на VBA игры писал»

imageВ 2004-2006 годах служил я в армии, а конкретнее — в ВВС. После прохождения курса молодого бойца и освоения в новой для меня обстановке мне доверили рабочее место с компьютером. (Надо сказать компьютер по тем временам был не плохой, чему я был рад.)

Определили меня на должность планшетиста командного пункта (КП, наш центральный КП на сколько я знаю, находился под землёй), на деле же я был непойми кем… но занимался обязанностями хронометражиста на Стартовом Командном Пункте (СКП).

Далее кратко, что из себя представляли «Полёты» (так назывался период проведения тренировок, перелетов или стрельб на полигонах) для меня, и как при помощи программирования я немного упростил себе службу в армии.
Читать дальше →

Qt 5.3: низкий старт в мобильной кроссплатформе

Reading time37 min
Views39K
Приветствую всех, кому интересна кроссплатформенная разработка для мобильных устройств! До недавнего времени относился с огромным скепсисом к инструментариям, позволяющим создавать ненативные приложения, которые работали бы сразу на ряде платформ. Однако в один момент любопытство и желание попробовать что-то новое всё же перевесили сдерживающий рассудок. Выбор пал на Qt 5.3. Почему? Потому что Qt открыт и бесплатен для некоммерческого и коммерческого (под лицензией LGPL) использования, имеет продолжительную историю (вышел в свет в 1996 году) и достаточное количество качественных проектов (навскидку — Skype, приложения 2ГИС), реализованных с использованием данных библиотек.

Цель публикации — познакомить читателей с мобильной разработкой на последней версии Qt: показать реализацию основных элементов клиент-серверных приложений и осветить возможные «подводные камни» при работе с библиотеками Qt.
Требуемый уровень подготовки и опыта — минимальный (знание основ C++, элементарное умение конфигурации локального сервера).
Материал для удобства восприятия разбит на 4 части: «Подводные камни», История одного проекта и работа над ошибками, Основы клиент-серверной разработки, Резюме.

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

Valgrind — это хорошо, но недостаточно

Reading time7 min
Views21K
Не так давно мы пытались продемонстрировать пользу от использования статического анализатора PVS-Studio одной из компаний. Ничего дельного из этого не вышло. Но в процессе переписки я подготовил развёрнутый ответ, касающийся методологий статического и динамического анализа. Сейчас я решил оформить этот ответ в виде небольшой статьи. Думаю, текст может показаться интересным читателям, да и просто можно будет использовать эту статью при общении с новыми потенциальными клиентами.
Читать дальше →

«Порт Сингапур»

Reading time5 min
Views31K


Удивительный по своей красоте и неповторимости город-государство Сингапур, вальяжно разместившийся на 58 островах в самом сердце Юго-Восточной Азии, сейчас занимает в мире лидирующие место по многим показателям: ВВП на душу населения, легкости ведения бизнеса, низкому уровню коррупции, персональной безопасности граждан, транзиту товаро- и пассажиропотоков, экономической активности, производству высокотехнологичной продукции. Своего экономического благосостояния государство достигло во многом благодаря своей развитой транзитной инфраструктуре. Сингапур сейчас известен прежде всего как порт — перевалочная база для грузов и пассажиров со всего мира. В свою очередь, неудержимый рост ИТ сектора, который последние десятилетия так будоражит привычный уклад жизни человечества, также не обошел стороной этот воистину сказочный остров о котором далее пойдет речь. Что из себя представляет Сингапур сейчас для мировой телекоммуникационной инфраструктуры и к чему в дальнейшем стремится этот высокотехнологичный регион? Сможет ли в будущем он стать одним из крупнейших «портов» по обработке и дальнейшему транзиту самого ценного груза нового столетия — информации?
Читать дальше →

Input — новый шрифт для программирования

Reading time1 min
Views100K
Компания Font Bureau разработала новое семейство шрифтов Input, важнейшим из которых в данном случае для нас является шрифт Input Mono. Кириллица присутствует. Для персонального использования шрифты бесплатны.

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

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

Reading time9 min
Views23K


“… british scientists proved…”


Привет, Хабр. Меня зовут Сергей Сапегин, я работаю PHP-разработчиком в DataArt. Но сегодня я хочу поговорить не о PHP.

Работники IТ, вне зависимости от области специализации, в последнее время все чаще сталкиваются с интересным феноменом мира ПО — ITIL. Поскольку общемировая тенденция не миновала и DataArt, мы предприняли небольшое исследование, дабы понять, что и как следует знать нашим разработчикам, чтобы некоторые процессы заказчиков не ставили в тупик всю команду. Представляем вам, что из этого получилось…

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

Обнуление экспертизы программиста при повышении в менеджеры

Reading time8 min
Views48K
Мы решили продолжить рассуждения на тему как растут и не растут люди, которую подняли в предыдущем видео, и поговорить о продвижении в менеджеры как одной из веток карьерного развития.

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

А что делать, если что-то пойдет не так

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

Что делать в случае, если программист хочет стать менеджером и боится потерять/обнулить свою технологическую экспертизу мы и будем разбираться. С примерами, алгоритами и выводами.
История как мы делали менеджера из Димы: плюсы-минусы и выгоды

Continuous Delivery в Яндексе. Как разогнать свой цикл разработки, используя только Open Source решения

Reading time8 min
Views58K
Перед тестированием всегда стояли и стоят две задачи – помочь команде поддерживать высокий уровень качества разработки и делать это, не задерживая весь процесс. И это справедливо не только для наших проектов в Яндексе, где мы работаем над очень большим количеством сервисов. Часто основная задача и вовсе формулируется как увеличение скорости тестирования при сохранении должного уровня качества. Скорость процесса разработки, приверженность ценностям частых и быстрых релизов – это основополагающие факторы для успеха любого продукта. У команды больше возможностей маневра, команда быстрее находит и исправляет ошибки, быстрее получает фидбек. Как же ускоряться, не теряя качества, как достичь дзена непрерывной доставки изменений?



Сегодня мы покажем, что Continuous Delivery — это просто и весело! А пользу от него можно получить, встроив его даже частично. Мы в тестировании Яндекса уже несколько лет используем подобный подход для наших библиотек с открытым исходным кодом — Allure Framework или Yandex QATools. Процесс прост, значительно масштабируем и может применяться как для огромных команд из одного человека, так и для маленьких командочек из десятков человек. А самое главное — весь инструментарий доступен в Open Source!

Кстати, до 30 сентября можно подать заявку и поступить в нашу Школу автоматизации процессов разработки в Питере. Обучение в ней бесплатное и будет состоять не только из курса лекций — обязательным этапом станет командная работа над учебным проектом.

А теперь вернёмся к теме. Представьте картину: уютное рабочее место, вы пишете код, добавляете юнит-тесты и отправляете изменения в систему контроля версий, а через пару часов они «выезжают» на боевые сервера. И все при этом работает.
Читать дальше →

Превращаем статический сайт в мобильное приложение с помощью jQuery Mobile и PhoneGap

Reading time5 min
Views114K

После приобретения телефона на базе Android, возникла задача сделать из сайта brainexer мобильное приложение. Выбор пал на jQuery Mobile и PhoneGap. До этого никаких познаний в обрасти мобильной разработки не было, поэтому пришлось осознать некий пласт новой информации, выжимкой из которого я бы и хотел поделиться. В итоге статья представляет из себя небольшой quick start — как из пачки html файлов получить приложение опубликованное в Google Play.
Читать дальше →

Упрощение жизни программиста с vim + vim-slime + tmux

Reading time5 min
Views25K
Эта публикация рассказывает о том, как экономить время при разработке для Clojure и NodeJS, а также Bash скриптов, посылая текст из vim в REPL, c использованием tmux + vim + vim-slime. Также приводятся рецепты с nodemon.

Скорее всего, vim-slime сработает и для других интерпретируемых языков (Ruby / Python / PHP / Perl ...). vim-slime также работает со screen.
На хабре достаточно освещались и vim, и tmux. Я только хотел показать, что можно получить от их комбинации.
Добавление от Fikys: с Ruby работает.

Если вы знаете vim и tmux, и вам интересен только vim-slime — прыгайте сразу ко второй секции.

Вступление


Мы все стремимся быть производительными. После того, как код написан, мы хотим узнать, работает ли он и получить обратную связь. Мы придумали много способов ускорения обратной связи: статическое выведение типов при компиляции и в IDE, юнит-тесты, интеграционные тесты, REPL, LiveReload и т.д.

Для моих небольших проектов я использую связку REPL и юнит-тестов, что позволяет получать обратную связь мгновенно.

Я веб-разработчик. По работе и в своем проекте обычно я делаю фронтэнд и стыкующуюся с ним часть бэкэнда. В течении рабочей сессии я пишу PHP, phtml, Stylus, css, Coffeescript, Javascript, + sql запросики и пуши в гит; что обеспечивается связкой tmux и vim. Также есть пара маленьких проектов на CoffeeScript, для которых используется комбо tmux + vim + vim-slime + Coffeescript REPL. В проектной сессии увязываются Сlojure, CoffeeScript, Stylus; tmux + vim + vim-slime + Clojure REPL. Под катом я расскажу об трех сетапах для трех окружений.
Читать дальше →

Загружаемся в Vim или Vim c PID 1

Reading time3 min
Views13K
Boot to Vim (окно загрузки)

Это ответ на отличную статью от Pascal Bourguignon, в которой он рассказывает о том, как запустить Emacs с PID 1.

Как мы все знаем, никто не использует Emacs.

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

На самом деле, шутки в сторону. Я считаю, что это отличная статья, и после прочтения мне захотелось посмотреть, смогу ли я сделать что-то похожее с Vim. Не в пользовательском режиме Linux, но в действительности создав ISO для загрузки. Можно сказать, «загрузиться в Vim», если вам так хочется.
Читать дальше →

Почему трава зеленая, а программисты крутые

Reading time6 min
Views156K


Я люблю находить на новостных ресурсах статьи о том, что программисты получают очень много денег. Я сразу пролистываю их до комментариев и с теплом в душе читаю гневные отзывы о том, что программисты ничего не делают и не заслуживают таких денег. Но после прочтения возникает мысль: знают ли они, кто такие программисты? Или они исходят в своих суждениях из неверного знания, даже не подозревая об этом. Например, мало кто знает, почему трава зеленая. Подумайте об этом. Следует ли из ваших объяснений зелености травы именно зеленый цвет?
Читать дальше →

Отладка C++ программ в ОС GNU/Linux

Reading time2 min
Views29K
Так уж случилось, что по долгу работы очень много времени провожу с операционными системами семейства GNU/Linux. Основным видом моей деятельности является разработка программного обеспечения на С++.

Так вот, основной проблемой при использовании отладчика – это отображение сложных контейнеров, например, stl-контейнеров.

Решение, которое я предлагаю, актуально для gdb. Этот отладчик поддерживает скрипты, написанные на языке python, а механизмы отображения сложных объектов, называются pretty printers. Т.е. чтобы отладчик отображал нам все правильно, необходимо указать ему где находятся скрипты с этими самыми pretty printers. Для указания отладчику дополнительных команд необходим файл .gdbinit.

Итак, попробую оформить все, как инструкцию, так и читать удобней, и сам не забуду.
Читать дальше →

Отладка и оптимизация скриптов gstreamer на примере онлайн трансляции (live streaming)

Reading time4 min
Views17K
Gstreamer — самая популярная *nix библиотека для работы с видео, которая является основой для большинства популярных приложений (основной список можно найти здесь).

image

Однако, столь гибкий инструмент требует тонкого подхода для стабильной и эффективной работы.
Все действия будут рассмотрены на примере онлайн HD трансляции с HDMI входа по RTMP с помощью blackmagic intensity pro, Debian Linux, gstreamer и Nginx.
Читать дальше →

Автоматизированное тестирование — это просто! Как я тестировал Печкина

Reading time6 min
Views97K
Не так давно стал посматривать в сторону Selenium WebDriver, который в связке с PageObject становится прекрасным инструментом для автоматизированного тестирования. Те, кто не знаком с Selenuim, могут ознакомиться в этой статье, а здесь можно прочесть конкретно про Selenium WebDriver.

При написании этой статьи были использованы:
  1. Maven
  2. TestNG
  3. Selenium WebDriver
  4. PageObject
  5. Подопытный кролик: pechkin-mail.ru

Подробнее

Как мы 4 года работали без офиса и жестоко обломались

Reading time6 min
Views82K

Ветеран Вьетнама пристаёт к нам с тупыми вопросами. Ему, наверное, нужен ментор.

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

Бухгалтерия велась на аутсорсе, юристы – тоже. Под конкретные задачи брались фрилансеры. Мы зарабатывали.

4 года мы экономили на офисе. Потом сели, посчитали и поняли, что экономили мы не на офисе, а на своей продуктивности. И разница была очень серьёзная. Так жёстко мы ещё никогда не обламывались.
Читать дальше →

Information

Rating
Does not participate
Location
Таганрог, Ростовская обл., Россия
Registered
Activity