Search
Write a publication
Pull to refresh
0
0
Nerten @Nerten

User

Send message

Современный бэк-офис IT-компании

Reading time11 min
Views55K
В одной из дискуссий недавно, я перечислил основные системы, делающие работу ИТ-компании цивилизованной. Список получился весьма обширный, и я решил оформить его как самостоятельную статью.

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

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

Краткий спойлер содержимого: VCS, репозиторий исходного кода, code-review, build-сервера, CI, таск-трекер, вики, корпоративный блог, функциональное тестирование, репозиторий для пакетов, система управления конфигурацией, бэкапы, почта/jabber.

Картинка с фрагментом обсуждаемой инфраструктуры:


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

Написание своих автодополнений для Shell. Часть 1: zsh

Reading time4 min
Views46K

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


Преамбула

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

Введение

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

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

Написание своих автодополнений для Shell. Часть 2: bash

Reading time3 min
Views15K

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


Преамбула

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

Введение

Bash, в отличие от zsh, требует к себе некоторого велосипедостроения в отношении автодополнений. Бегло погуглив, я не нашел более-менее нормальных туториалов, потому за основу были взяты имеющиеся в системе файлы автодополнений для pacman (искренне надеюсь, что отцы-основатели Arch'а не придумывали много велосипедов).

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

ANC9 — эволюция наушников с активным шумоподавлением

Reading time17 min
Views81K
В этот понедельник мы в блоге BoxOverview мы поговорим о наушниках с активной системой шумоподавления — Audio-Technica ATH-ANC9
Мой коллега frag1k уже писал про младшие наушники этой серии — ANC7, а я расскажу о старшей версии — ANC9.

image

Содержание


  1. Внешность
  2. Внутренность
  3. Характеристики
  4. Что такое децибелы
  5. Максимальная громкость
  6. Как устроено ухо
  7. Личные впечатления
  8. Плюсы и минусы
  9. Время работы

Под катом традиционный ликбез по физике, медицине, биологии, geek-porn, ну и обзор наушников, не без этого.
Читать дальше →

Go + Heroku: развертывание web-приложения

Reading time3 min
Views19K
Для размещения своего web-приложения в облаке уже существует не мало различных сервисов и хостингов, однако лишь немногие поддерживают работу с Go. Среди них можно обратить внимание на следующие:
— Google App Engine
— Heroku
Некоторые другие сервисы также предлагают поддержку Go, однако на платной основе, что не всегда выгодно для разработчика, например, если он проводит различные эксперименты, изучая особенности языка. Выбрав такие критерии выбора, как простоту развертывания, скорость и удобство, я остановился на Heroku.
Читать дальше →

О плюсах и минусах Go

Reading time16 min
Views52K
В данной статье я хочу поделиться опытом, полученным в ходе переписывания одного проекта с Perl на Go. В ней будет больше о минусах, чем о плюсах, ибо о достоинствах Go и так поведано немало, а вот о подводных камнях, ожидающих новых разработчиков, узнать зачастую, кроме как от собственных шишек — неоткуда. Пост никоим образом не преследует цели охаять язык Go, хотя, признаться, некоторые вещи я был бы рад не писать. Также в нем охвачено сравнительно небольшой срез всей платформы, в частности, не будет ничего о шаблонах, регекспах, распаковке/запаковке данных и подобного, часто используемого в веб-программировании, функционала.
Читать дальше →

Попытка создания полезного приложения для Pebble

Reading time4 min
Views11K
Приветствую, хабражители!

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

Android last.fm скробблер WAIL Beta теперь Open Source

Reading time4 min
Views12K
Привет. Примерно полгода назад я запилил Android приложение для скробблинга проигрываемой в разных плеерах музыки в last.fm.

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

Я пишу этот пост на Хабр с небольшой надеждой на то, что здесь есть люди, которым было бы интересно развивать WAIL дальше, добавлять новые фичи, фиксить баги и просто участвовать в оупен-сорс проекте Android приложения :)

Кратко о last.fm: это сервис для любителей послушать музыку, главная фича которого заключается в том, что вы можете передавать инфомацию о треках, которые вы слушаете, а last.fm на основе этого будет предлагать вам других исполнителей, друзей, концерты исполнителей, которых вы слушаете (кстати офигенно, первый раз сходил на концерт именно по рекомендации last.fm).

Скриншоты для поддержания интереса


Читать далее... И... делать пулл-реквесты!

Pebble My Data. «Хочешь сделать хорошо — сделай это сам!»

Reading time4 min
Views6.5K
Одна из основных функций умных часов — отображение важной информации на экране, важной именно владельцу часов, а не разработчику приложения. Очень долго я искал приложение для часов Pebble, которому можно указать, какую именно информацию показывать на часах. Хотелось видеть на часах состояние моих серверов, данные с погодной станции, пробки в городе. После долгих поисков я осознал, то чего я ищу не существует и это придётся делать самому. Так появилось приложение для умных часов Pebble My Data, которое ходит по ссылке за JSON'ом и показывает данные на экране часов. Возможно, оно может пригодиться не только мне. О том, что такое часы Pebble можно узнать в этом обзоре или в этой статье.
Читать дальше →

Выпущена система Mathematica 10, содержащая 700+ новых функций и невероятное количество R&D

Reading time13 min
Views17K

Перевод статьи Стивена Вольфрама, о системе Wolfram Mathematica 10, которая вышла 9 июля 2014 г.
Оригинальный текст вы можете найти здесь.
Выражаю огромную благодарность тем, кто помог мне перевести эту статью: Владиславe Глаголеву (Himura), Сильвии Торосян и Рукк Наталии Самуиловне.


Этим летом мы выпускаем поистине огромный спектр новых технологий. Две недели назад мы запустили Wolfram Programming Cloud. А сегодня, я рад представить вам в значительной степени обновленную версию Mathematica: Mathematica 10.

Wolfram Mathematica 10

Мы выпустили Mathematica 1 чуть более 26 лет лет назад, 23 июня 1988 г. С тех пор мы постоянно и систематично делали Mathematica еще больше, мощнее, шире, и глубже. Но Mathematica 10, выпущенная сегодня, представляет собой пожалуй самый большой скачок в функциональности за всю историю Mathematica.
Читать дальше →

Amazon добавили новые типы инстансов — t2.micro, t2.small, t2.medium

Reading time3 min
Views19K
Новые инстансы дешевле старых и вводят понятие CPU Credit-ов.

CPU Credit — это внутренняя накапливающаяся монета, которая равна 1 минуте при 100% нагрузке.
Кредит накапливается со скоростью зависимой от типа сервера. Так же, от типа сервера зависит до куда просядет его максимальная CPU нагрузка при отсутствии кредитов — baseline. Минимальный максимум. Минимальный, так как при отсутствии кредитов максимальная нагрузка проседает не мгновенно, а постепенно в течении 15 минут, чтобы была возможность компенсировать нехватку ресурсов в случае необходимости.
Хранится кредит до 24 часов.

Тип инстанса Кредитов в час Baseline Цена за час Цена за месяц
t2.micro 6 10% $0.013 $9.50
t2.small 12 20% $0.026 $19
t2.medium 24 40% $0.052 $38


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

Как работает международный роуминг

Reading time4 min
Views38K
В этой статье я расскажу о том, как работает услуга международный роуминг и как проходит звонок и SMS при нахождении в роуминге. Расшифровки аббревиатур можно прочитать в этой статье.

Об услуге


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

Авторизация

Первое действие, которое происходит при попытки зарегистрироваться в сети зарубежного партнера, – это проверка абонента на «валидность». Этим занимается VLR/MSC, в зоне действия которого находится MS. После того как гостевой VLR/MSC получит команду «Location Update» от MS, зная IMSI абонента, по MAP отправляет сообщение «Send Authentication Info» на HLR; он же в свою очередь проверяет, что MS и полученный IMSI действительны. Если проверка прошла успешно и абонент является «валидным», HLR отправляет IMSI в AUC. AUС генерирует триплет (SRES, RAND, Kc) и отправляет его в HLR, затем HLR отправляет эти данные на VLR/MSC, который обслуживает MS. После того как VLR/MSC получил эти данные, VLR/MSC посылает RAND на MS. Получив запрос RAND, MS подставляет полученный RAND и Ki(записан на SIM карте) и вычисляет SRES, который отправляет в VLR/MSC. Если SRES, полученный от MS, совпадает со SRES, полученным от AUC, тогда MS считается авторизованный.
Читать дальше →

7 вещей, которые необходимо знать о Tor

Reading time3 min
Views639K


1. Tor все еще работает


Судя по всему, сеть Tor остаётся невзломанной. По крайней мере, согласно внутреннему докладу NSA от 2012 года, хотя у этой организации и были возможности в определённых случаях раскрывать принадлежность определённых нод, в целом они не в состоянии раскрыть любую ноду по запросу. Да и раскрытия эти происходили по оказиям типа ошибки в браузере Firefox, который входил в tor bundle и прочим подобным. Если использовать Tor правильно, то вероятность раскрытия крайне мала.
Читать дальше →

Построение собственной коммуникационной сети поверх I2P

Reading time6 min
Views16K
При современных тенденциях, направленных на тотальное прослушивание и сбор всевозможной информации, использование защищённых средств коммуникации как никогда актуально. Шифрование самих передаваемых данных решает проблему лишь частично, поскольку сам факт обмена информацией между участниками важнее его содержания.

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

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

Моя реализация «умного дома»

Reading time7 min
Views277K
Полтора года назад я писал статью о разработке своей собственной шины «CLUNET» для соединения устройств в «умном доме». Многие просят рассказать о том, что же у меня получилось в итоге, что я сейчас и попытаюсь сделать.

Попытался начертить схему моей комнаты со всеми устройствами объединёнными в сеть, картинка кликабельна:



Вся идея держится на трёх китах:

  • Децентрализация — вся система функционирует без какого-либо главного модуля;
  • Простота — минимум компонентов и лёгкость подключения;
  • Дешевизна — себестоимость устройства легко уложить в 100 рублей.

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

Application Porno или как найти секреты в мобильных приложениях и вынести всё

Reading time5 min
Views54K
В новостной ленте я недавно обнаружил любопытное исследование, где ребята скачали и распарсили Android Playmarket, проанализировали сотни тысяч приложений на предмет наличия зашитых секретных токенов и паролей.

То что результат их работы касался только анализа декомпилированного кода под Android, cподвиг меня написать про исследование, которое я проводил еще год назад, причем не только для Android, но и для iOS приложений, и которое, в итоге, вылилось в целый online-инструмент, о котором я расскажу в самом конце, когда станет очевиден его смысл. Часть написанного ниже была представлена на конференции ZeroNights и на страницах журнала «Хакер». (Т.к. материал не был опубликован онлайн, редакция дала на «добро», на публикацию здесь). Итак, поехали.
Читать дальше →

Инфраструктура обработки очередей в социальной сети Мой Мир

Reading time9 min
Views12K


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

Сервер очередей

Reading time11 min
Views61K


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


Существует несколько подходов к организации очередей:
  • использовать реляционные базы данных;
  • применить существующие решения (RabbitMQ и т.п.);
  • написать свой велосипед.


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

Как сэкономить время, запоминая сочетания клавиш

Reading time3 min
Views21K
Brainscape Вы когда-нибудь задумывались над тем, сколько времени можно было бы сэкономить, если бы вы использовали сочетания клавиш каждый день? У парней из Brainscape есть ответ, и, между нами говоря, они насчитали что-то просто неимоверное!

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

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

Кластерный сервис на Эрланге: от идеи до deb-пакета

Reading time13 min
Views14K

Задача


Нужно написать настоящий сервис на эрланге, который будет работать в кластере. Кроме того, нужно максимально упростить жизнь тем, кто будет обслуживать сервис.
Требования:
  • У сервиса будет RESTful интерфейс (это модно и современно)
  • основные настройки сервиса должны быть вынесены в маленький файл с понятным синтаксисом
  • сервис должен писать опциональный access-лог
  • сервис должен запускаться через upstart

Для простоты сервис будет представлять собой счетчик, который каждому клиенту выдает увеличивающееся с каждым запросом на 1 целое число (уникальное до перезапуска счетчика).

Технологии


Выберем все самое модное и современное:

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

Information

Rating
Does not participate
Location
Киев, Киевская обл., Украина
Date of birth
Registered
Activity