Search
Write a publication
Pull to refresh
12
0
Дмитрий Масленников @DAiMor

InterSystems Senior Developer

Send message

Airpal: веб-приложение для работы с SQL

Reading time3 min
Views11K


На днях мы выпустили в широкое обращение свой новый инструмент, Airpal. Это веб-приложение, предназначенное для работы с базами данных, которое призвано дополнить PrestoDB от Facebook при анализе информации. И в этом посте мы бы хотели рассказать о его возможностях и особенностях.
Читать дальше →

Самые нужные плагины для Gulp

Reading time6 min
Views162K


Это пост можно сказать является дубликатом моей предыдущей подборки “Самые нужные плагины для Grunt”. Дело в том, что спустя много часов поиска я не нашел крутых плагинов для Gulp, которых нет для Grunt за исключением пары весьма специфичных утилит. Всё как раз наоборот, но проигнорировать множество пользователей Gulp я не мог. Все недостающие плагины я выделил, потому что Gulp умеет использовать их из Grunt, как и Grunt из Gulp.

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

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

А еще я выложил подборку на GitHub, чтобы каждый мог пополнить коллекцию.
Читать дальше →

Памятка пользователям ssh

Reading time13 min
Views1.6M
abstract: В статье описаны продвинутые функций OpenSSH, которые позволяют сильно упростить жизнь системным администраторам и программистам, которые не боятся шелла. В отличие от большинства руководств, которые кроме ключей и -L/D/R опций ничего не описывают, я попытался собрать все интересные фичи и удобства, которые с собой несёт ssh.

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

Оглавление:
  • управление ключами
  • копирование файлов через ssh
  • Проброс потоков ввода/вывода
  • Монтирование удалённой FS через ssh
  • Удалённое исполнение кода
  • Алиасы и опции для подключений в .ssh/config
  • Опции по-умолчанию
  • Проброс X-сервера
  • ssh в качестве socks-proxy
  • Проброс портов — прямой и обратный
  • Реверс-сокс-прокси
  • туннелирование L2/L3 трафика
  • Проброс агента авторизации
  • Туннелирование ssh через ssh сквозь недоверенный сервер (с большой вероятностью вы этого не знаете)
Читать дальше →

Курс от Яндекса о том, что должен знать каждый разработчик, который хочет делать большие системы. Модное слово DevOps и другое

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

В Яндексе тестировщику невозможно без автоматизации. Мы даже развиваем экспериментального робота, который способен брать на себя функциональное тестирование. В какой-то момент мы поняли, что не так много людей осознают, сколько сейчас есть возможностей работать не 12 часов, а головой. Собрав весь свой опыт в тестировании и деплое, мы открыли в питерском офисе Яндекса Школу автоматизации процессов разработки. У нас получилась школа, где каждый, кто пишет код, может получить базовый набор знаний о том, как собрать, запустить и поддерживать сервис в продакшене так, чтобы это стоило недорого.



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

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

Как мы измеряем скорость загрузки Яндекс.Почты

Reading time7 min
Views26K
Если ваш сайт медленно грузится, вы рискуете тем, что люди не оценят ни то, какой он красивый, ни то, какой он удобный. Никому не понравится, когда все тормозит. Мы регулярно добавляем в Яндекс.Почту новую функциональность, иногда — исправляем ошибки, а это значит, у нас постоянно появляются новый код и новая логика. Все это напрямую влияет на скорость работы интерфейса.



Яндекс.Почту каждый день открывают миллионы человек из разных точек земного шара. И ни у кого она не должна тормозить, поэтому без различных измерений наша работа не обходится. В этом посте мы с alexeimoisseev и kurau решили рассказать о том, какие метрики у нас есть и какие задачи они решают. Возможно, это пригодится и вам.
Читать дальше →

Семафоры, или как разруливать доступ к ресурсам в DBMS Caché

Reading time14 min
Views9.2K
Часто при многопользовательском или параллельном доступе к данным возникает ситуация, когда необходимо заблокировать/дать доступ к переменной или участку памяти одновременно нескольким процессам. Решается данная задача с помощью мьютексов, семафоров, мониторов и т. д. В данном посте рассмотрим как же реализован один из методов предоставления совместного доступа к данным — семафор — в СУБД Intersystems Caché.

Что же такое семафор в Cache и с чем его едят?

Создание пользовательских OID для мониторинга систем на Caché с помощью SNMP

Reading time12 min
Views17K
Доброго дня (вечера, ночи, утра — нужное подчеркнуть) всем хаброжителям!
Этот пост посвящен мониторингу инстанса Caché с помощью SNMP. Наверняка, многие пользователи Caché этим в той или иной степени уже пользуются. Мониторинг через SNMP поддерживается в стандартной инсталляции Caché уже давно, однако далеко не все интересующие параметры доступны из «коробки». Например, хотелось бы видеть мониторинг количества CSP-сессий, более подробные сведения по использованию лицензии, частные KPI эксплуатируемой системы и т.п.
В этой статье вы узнаете, как добавить свои параметры для мониторинга Caché с помощью SNMP.
Читать дальше →

Превращаем Raspberry Pi в роутер (пока только для Корбины и Билайна)

Reading time2 min
Views51K
Привет. Вместо очередной инструкции на тему «как сделать роутер из Raspberry Pi» мы решили сделать специальную сборку Raspbian под задачи домашнего роутера. Эту сборку достаточно развернуть на SD карту, вставить ее в RPi — и роутер готов.

Основные возможности такого решения — как у любого домашнего роутера. Раздача адресов устройствам внутри сети, перенаправление портов, DDNS и другие привычные вещи. Есть и приятные отличия — поддержка Pandora и Netflix, возросшая производительность при работе через VPN и практически неограниченные возможности по кастомизации.

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

Механические клавиатуры

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

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

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

Механические клавиатуры. Путеводитель.

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

Показать товар лицом

Reading time14 min
Views5.9K
В этой статье я, на примере редизайна главной страницы cplaza.ru, расскажу об одном из принципов разработки сайтов: «показать товар лицом».

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

Под катом вы найдёте вредные советы про дизайн сайтов, разбор существующего дизайна главной страницы cplaza.ru, рассказ о том, какие блоки могут оказаться более полезными для этой страницы, а в конце я покажу пример переработанной главной.

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

Smart KM Link A820

Reading time2 min
Views9K
Часто приходится работать за ноутом и ПК одновременно — не весь софт есть и там и там, не весь софт на ноуте работает достаточно быстро, часто нужно прервать работу и ехать на встречу.

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

Создание мультизагрузочного USB HDD или флешки

Reading time5 min
Views740K


Загрузочный USB Flash или HDD накопитель удобен тем, что можно отказаться от использования CD/DVD для установки ОС и использования диагностических программ типа Memtest, MHDD, Acronis TI.

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

Существует множество решений для флешек (например, http://eee-pc.ru/wiki/софт:usb_multiboot), но, как правило, они не работают с USB HDD. На хабре я нашел только статью об установке Win7 с USB HDD, но год назад попытки воспроизвести это не увенчались успехом. Для установки Windows 7 с флешки существует MS Win7 DVD Tool, но он опять же не работает с HDD. Поэтому давайте создадим свой мультизагрузочный USB HDD с помощью GRUB4DOS.

Нам понадобится:
  • USB HDD (все описанное должно работать и для флешек).
  • ОС Windows (естественно можно аналогично сделать это и из ОС на базе Linux, но у меня сейчас нет возможности проверить работоспособность и наличие «подводных камней»).
  • Материнская плата (BIOS) с поддержкой загрузки с USB накопителей. Если загрузка с USB не поддерживается, можно использовать Plop, об этом ниже.


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

Клиенты оператора МТС попадают в общество тотальной слежки со вторника по десять рублей за абонента

Reading time3 min
Views7.5K
Обладателям SIM-карт МТС хорошо известен сайт WWW.MTS.Ru и его раздел «Услуги». Услуге «МТС-Поиск» посвящён отдельный сайт WWW.MPoisk.Ru, на который со страницы услуг поставлена гиперссылка.

На сайте «МТС-Поиска» можно прочесть, например, об услуге «Локатор», суть которой такова: вы можете прямо сейчас узнать, где находятся ваши друзья и близкие, а также увидеть их местоположение на карте города. Чтобы эта услуга не дозволяла следить за людьми без их согласия, она устроена вот как: сперва отслеживаемый абонент регистрируется (отослав специальное SMS-сообщение и получив в ответ уникальный код), а затем сообщает этот код отслеживающему абоненту, тем самым позволяя следить за собою. Отслеживающий абонент вводит код и начинает видеть человека на карте по этому коду.

Вернее сказать, эта услуга была так устроена.

К сожалению, в новостях на сайте услуги «М-Поиск» вы можете прочесть о том, что с 10 ноября (то есть во вторник на будущей неделе) вводится так называемый «упрощённый» порядок слежки, при котором достаточно указать только телефонный номер абонента МТС (а не секретный код, полученный от него самогó!) и уплатить 10 рублей, чтобы впредь видеть положение этого абонента и через wap.mpoisk.ru (c мобильного телефона), и на вебопортале МТС-Поиск (в разделе «Мои друзья»), и с помощью приложения «Яндекс.Карты» на мобильнике.

Блоггер izmalexey в LiveJournal подметил: такая перемена в порядке слежки может указывать на то, что компания МТС тем самым готовится открыть путь ко слежке за многими своими абонентами, продать их задёшево. Дорогие абоненты «МТС-Поиска», вы только вообразите: на будущей неделе за вами смогут проследить без вашего ведома и согласия вообще все — и супруги, и возлюбленные, и друзья, и недруги, и государственные службы, и частные, и журналисты, и психи, и так далее. А цена вам — 10 рублей максимум (а существуют и оптовые скидки, названные в той же новости).

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

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

Добро пожаловать в киберпанковскую антиутопию. The MaTrix haS you.

Постскриптум на следующий день.

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

При желании определяемый абонент может отменить выданные ранее разрешения.

Все регистрационные сообщения в услуге на номер 6630 бесплатны.
Некоторые комментаторы, конечно же, решили, что эти строки были там с самого начала, а я их специально не процитировал. На самом деле их там ещё вчера (и даже утром 8 ноября) не было.

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

Книгорекоммендатор

Reading time3 min
Views1.1K
Раз сегодня пятница (Кэп подсказывает, что уже суббота) я предлагаю немного отвлечься от IT-событий и поговорить об одной проблеме. К сожалению, последнее время я встречаю просто невероятное количество интересных книг. Конкуренция становится еще жестче, книги еще интересней, и вроде все идет хорошо. Но, сцуко, по-прежнему периодически попадается всякий остой. И, когда проводишь пару часов за чтением книги, а в итоге понимаешь, что это какая-то хреновая мудотень, хочется долго [нецензурная лексика], [нецензурная лексика], блевать, [нецензурная лексика].

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

Ладно, хватит теоретизировать, Адепт!

Алгоритм генерации QR-кода

Reading time18 min
Views210K


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

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

За основу этой статьи взят цикл статей «QR Code Demystified» Джейсона Брауна (Jason Brown). В этих статьях опущено много нюансов, что вызвало у меня некоторые проблемы. Все эти нюансы учтены и упомянуты здесь.

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

Emotiv Insight — нейроинтерфейс за 229$

Reading time2 min
Views177K
Emotiv Insight — это стильный мозговой интерфейс. По сути это беспроводная гарнитура, считывающая электроэнцефалограмму мозга и преобразующая эти данные в простые команды. Всего за 10 дней она собрала на Кикстартере 635 000$ вместо намеченных 100 000$.
image
Читать дальше →

Президент России подписал указ об утверждении Дня программиста

Reading time1 min
Views777
Указ, который, который уже неоднократно упоминался на Хабре, вступает в силу.
Отныне 13 сентября официальный День программиста! (12 сентября — в високосные годы)
С наступающим профессиональным праздником, коллеги!!!
Читать дальше →

Немцы изобрели способ печатать гибкие сенсорные дисплеи на обычном принтере

Reading time2 min
Views97K
Не спешите выбрасывать свои старые струйные принтеры: в 3D на них, конечно, не попечатаешь, но зато можно поэкспериментировать с технологией печати гибких сенсорных дисплеев, представленной на прошедшем в Гонолулу (Гавайи, США) технологическом симпозиуме.



Изобретатели из Саарского университета и Института информатики общества Макса Планка (Германия) показали, как можно печатать гибкие тонкие одно- или двухсторонние цветные сенсорные дисплеи практически на любом материале: дерево, мрамор, кожа, металл и, собственно, бумага. В отличие от обычного производства гибких/сенсорных дисплеев, не требуется сложное оборудование: их можно печатать практически в любых условиях, включая домашние, и с помощью самого простого оборудования вроде струйного принтера и стандартных визуальных редакторов.
Читать дальше →

Caché Native Access — работаем с нативными библиотеками в Caché

Reading time7 min
Views5.3K
image
Картинка для привлечения внимания

Как известно, Caché это не только СУБД, но и полноценный язык программирования (Caché ObjectScript). И со стороны СУБД, и со стороны Caché ObjectScript (COS) доступ за пределы Caché богат возможностями (в .Net/Java через .Net/Java Gateway, к реляционным СУБД через SQL Gateway, работа с веб-сервисами). Но если говорить о работе с нативными бинарными библиотеками, то такое взаимодействие реализуется через Caché Callout Gateway, который несколько специфичен. О том как радикально облегчить работу с нативными библиотеками непосредственно из COS можно узнать по катом.

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

Приводим в порядок css-код. Опыт Яндекса

Reading time6 min
Views90K
Всем привет!

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

Когда много людей, используя разные инструменты, пишут и редактируют css, со временем этот css может получиться очень запутанным, неконсистентым и в целом начинает выглядеть плохо. Например, кому-то удобнее писать вендорные префиксы в одном порядке, кому-то — в другом, кто-то ставит кавычки вокруг url, кто-то — нет, а кто-нибудь фикся срочную багу к релизу мог бы, к примеру, написать position: relative в начале блока свойств, незаметив что где-нибудь внизу между color и box-shadow, уже есть position: absolute, и долго гадать, почему у него ничего не работает.



Но несмотря на то, что все пишут код по-разному, у нас в репозитории идеальный порядок: css-код полностью консистентен, и прекрасно выглядит. Весь.

Как мы этого добились, можно прочитать под катом.
Читать дальше →

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity