Как стать автором
Обновить
1
0

Системный администратор

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

PSR Стандарты

Время на прочтение 15 мин
Количество просмотров 130K
PHP-FIG

PSR — Чуть больше, чем стиль оформления кода.

Как показала практика, многие PHP-разработчики знакомы с аббревиатурой PSR. Однако большинство все еще ограничены знанием, что PSR это стандарт оформления кода.

Ребята из PHP-FIG (PHP Framework Interop Group), группа концепций совместимости PHP, которые занимаются развитием PSR (PHP Standards Recommendations) шагнули далеко вперед. Поэтому давайте разберемся, что из себя представляет PSR…

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

Генеалогические исследования — метрические книги, переписи, архивы, открытые базы

Время на прочтение 13 мин
Количество просмотров 143K
Не один год я увлекаюсь генеалогией. Практической пользы в этом хобби нет, но интересного очень много. Здесь я хотел поделиться накопленным опытом, частью интересных сведений, не сильно погружаясь в персональные истории. Чтобы текст сильно не распухал, расскажу всего 2 кейса: поиск в военных архивах на основе данных онлайн-баз и продолжительный просмотр и анализ метрических книг одного села периода конца XIX — начала XX вв. вплоть до конца революции и гражданской войны.

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

Осознаю, что некоторым тема публикации может показаться далекой от IT, но в процессе у меня было и программирование, VBA-скриптинг, SQL, и впереди, надеюсь, ML\DS\AI.


Страница метрической книги, рождения в 1898 г. Еще в книгах записывались браки и смерти — до появления ЗАГСов в начале 1920х
Читать дальше →
Всего голосов 47: ↑47 и ↓0 +47
Комментарии 119

Интерактивная карта развития Московского метрополитена

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

15 мая 1935 была открыта первая очередь Московского метрополитена. С этого момента началась новая эра в истории города, в котором подземка, безусловно, играет важную роль.

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

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

Давайте создадим интерактивную карту линий Московского метрополитена и посмотрим на его историю — как развивалась одна из самых больших сетей мира.

Читать далее
Всего голосов 63: ↑63 и ↓0 +63
Комментарии 35

Обнаружение DDoS-атак «на коленке»

Время на прочтение 7 мин
Количество просмотров 25K
Приветствую, Хабр! Я работаю в небольшом интернет провайдере масштаба области. У нас транзитная сеть (это значит, что мы покупаем интернет у богатых провайдеров и продаем его бедным). Несмотря на небольшое количество клиентов и такое же небольшое количество трафика протекающего по нашей сети, довольно часто приходится иметь дело с весьма внушительными DDoS-атаками по 10-20Гбит/с. (чаще всего конечно это атаки гораздо меньшего калибра). И хотя некоторые из наших клиентов обзавелись уже системами обнаружения таких атак и могут самостоятельно отправить жертву в блек-холл, гораздо чаще обнаружение атаки и бан конкретного IP жертвы ложится на наши плечи (тем более, если атака способна забить наши внешние каналы).



О решении, которое помогает обнаруживать эти самые атаки и которое принято у нас в сети, я и хотел бы рассказать. Оно бесплатно, основывается на анализе данных NetFlow, поэтому просто и весьма эффективно.
Читать дальше →
Всего голосов 22: ↑22 и ↓0 +22
Комментарии 9

Какие английские слова IT-лексикона мы неправильно произносим чаще всего

Время на прочтение 5 мин
Количество просмотров 170K
Пока пара новых статей на технические темы еще в процессе написания, я решил опубликовать небольшой лингвистический материал. Достаточно часто замечаю, что коллеги, у которых английский язык — не родной, неправильно произносят некоторые характерные для IT сферы слова. И дело здесь не в том, насколько аутентично произносятся отдельные звуки, а именно в транскрипции. Регулярно встречал ситуации при общении с носителями, когда неправильно произносимое слово приводило к недопониманиям.

Дальше я приведу несколько наборов слов, сгруппированных по типовым ошибкам. К каждому слову будет приложена транскрипция, приблизительная транскрипция на русском и ссылка на более детальную информацию в словаре. Так как большинство IT компаний все-таки работает с Северной Америкой, то транскрипции будут из US English.
Читать дальше →
Всего голосов 309: ↑308 и ↓1 +307
Комментарии 486

Бесплатное программное обеспечение для IP-камер

Время на прочтение 5 мин
Количество просмотров 691K
За 11 лет работы на рынке видеонаблюдения, нам пришлось столкнутся с множеством программ для управления системами видеонаблюдения, с какими-то мы работали, какие то тестировали, какие хотели потестировать, но так и не успели этого сделать, про какое-то просто читали в обзорах подобных тому, что читаете вы.

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

Все программное обеспечение разбито на три группы:

  • Программное с открытым исходным кодом
  • Бесплатное программное обеспечение с ограниченным функционалом
  • Программное обеспечение бесплатное в течении пробного периода

image
Читать дальше →
Всего голосов 40: ↑39 и ↓1 +38
Комментарии 30

Upgrade компа серверным SATA SSD на 1.92TB с ресурсом записи от 2PB и выше

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


Есть люди, которые любят использовать качественные комплектующие из корпоративного сегмента в быту. Они хотят быть уверенными в том, что их SSD не накроется внезапно из-за сбоя по питанию или write amplification при ежедневном скачивании огромных 4K-торрентов на фрагментированный NTFS-раздел с размером кластера 4K или при очередной компиляции Gentoo из исходников.

Конечно, такие опасения редко сбываются на практике, однако очень приятно пользоваться SSD с Power Loss Protection (1, 2, 3), который имеет практически безграничный ресурс записи. И даже когда ёмкость его станет малой для текущих задач, он всё равно может быть использован как флэшка или как дополнительный диск, подарен или продан.

В этой статье приведён список корпоративных SSD ёмкостью 1.92ТБ, которые сейчас подешевели до уровня потребительских SSD (< $300), но обладают ресурсом записи от 2 Петабайт и выше.
Читать дальше →
Всего голосов 40: ↑38 и ↓2 +36
Комментарии 96

ООП в картинках

Время на прочтение 20 мин
Количество просмотров 802K
ООП (Объектно-Ориентированное Программирование) стало неотъемлемой частью разработки многих современных проектов, но, не смотря на популярность, эта парадигма является далеко не единственной. Если вы уже умеете работать с другими парадигмами и хотели бы ознакомиться с оккультизмом ООП, то впереди вас ждет немного лонгрид и два мегабайта картинок и анимаций. В качестве примеров будут выступать трансформеры.


Читать дальше →
Всего голосов 38: ↑34 и ↓4 +30
Комментарии 104

Козел отпущения или MVC в iOS

Время на прочтение 7 мин
Количество просмотров 21K
В последние несколько лет я встретил множество проектов, разработчиков и статей, которые обвиняют Model-ViewController архитектуру во многих, если не во всех бедах, которые происходят в iOS-сообществе.

Сегодня вашему вниманию я предлагаю некоторые альтернативные взгляды и подходы, а также приемы, которые могут помочь переосмыслить MVC и ведение проектов в целом. Всем кому интересно — добро пожаловать под кат.
Читать дальше →
Всего голосов 22: ↑19 и ↓3 +16
Комментарии 21

Солнечная электростанция на дом 200 м2 своими руками

Время на прочтение 15 мин
Количество просмотров 164K
Частенько в сети проскакивают сообщения о борьбе за экологию, развитие альтернативных источников энергии. Иногда даже проводят репортажи о том, как в заброшенной деревне сделали солнечную электростанцию, чтобы местные жители могли пользоваться благами цивилизации не 2-3 часа в сутки, пока работает генератор, а постоянно. Но это всё как-то далеко от нашей жизни, поэтому я решил на своем примере показать и рассказать, как устроена и как работает солнечная электростанция для частного дома. Расскажу обо всех этапах: от идеи до включения всех приборов, а также поделюсь опытом эксплуатации. Статья получится немаленькая, поэтому кто не любит много букв могут посмотреть ролик. Там я постарался рассказать то же самое, но будет видно, как я все это сам собираю.


Всего голосов 90: ↑90 и ↓0 +90
Комментарии 525

HTTP-заголовки для ответственного разработчика

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

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

Разработчики соединяют людей.
Разработчики помогают людям.
Разработчики дают людям возможности.

Разработчики могут создать сеть для всех, но эту способность необходимо использовать ответственно. В конце концов, важно создавать вещи, которые помогают людям и расширяют их возможности. В этой статье я хочу рассказать о том, как HTTP-заголовки могут помочь вам создавать лучшие продукты для лучшей работы всех пользователей в интернете.
Читать дальше →
Всего голосов 92: ↑90 и ↓2 +88
Комментарии 64

Оптимизация работы виртуальной инфраструктуры на базе VMWare vSphere

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

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

В пределах данной статьи я хочу ознакомить вас с методиками сайзинга виртуальных машин, а так же о методах оптимизации их работы. Материал будет техническим и рекомендуется к ознакомлению всем специалистам по vSphere.
Читать дальше →
Всего голосов 39: ↑33 и ↓6 +27
Комментарии 19

Собираем InnoDB cluster из mysql 5.7 на centos 7

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

Как-то раз появилась по работе задача — есть вроде бы настроенный тестовый innoDB cluster на нескольких виртуалках с centos 7.5, надо его поизучать и добавить еще пару нод. Можно ломать и издеваться как угодно. Звучит заманчиво.
Читать дальше →
Всего голосов 8: ↑8 и ↓0 +8
Комментарии 13

InnoDB cluster — оно работает, и вроде бы именно так, как обещали

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

Я занимаюсь АТСками. И как-то так сложилась, что с самого первого заказа от меня хотели отказоустойчивости. Одним из ключевых компонентов современной АТС (как и любой информационной системы, наверное) является БД, где хранятся как данные о текущем состоянии системы, так и всякие конфигурационные параметры. Естественно, падение БД приводит к поломке всей системы. Начиналось все с MASTER-MASTER репликации в MySQL (исключительно для оперативности переключения), потом были эксперименты с MySQL over DRBD. Все это жило в pacemaker/corosync инфраструктуре. Там ездили IP-адреса, шлюзы и прочая лабудень. Со временем оно даже стало работать как-то более-менее устойчиво. Но тут мне попалась пара серверов, на которых DRBD сделать было нельзя, в MASTER-MASTER я разочаровался довольно давно (постоянно она у меня ломается, такая репликация), а без отказоустойчивой БД терялся весь смысл решения. На глаза мне попалось название InnoDB cluster и я решил: "была-не-была". Что из этого получилось — смотрите под катом.

Читать дальше →
Всего голосов 24: ↑24 и ↓0 +24
Комментарии 25

Нотной грамоте учат неправильно*

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

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


Предполагается, что студент должен страдать самостоятельно освоить ноты, путем многократного повторения. И вообще, если «ниасилил», значит у тебя нет Таланта — иди мести двор.


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


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


* Дисклеймер

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


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


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


Эффективность я оценивал исключительно на себе, поскольку сей субъект оказался самым доступным для исследования.

Читать дальше →
Всего голосов 124: ↑123 и ↓1 +122
Комментарии 212

Хочу красивую железку. PCB Art — печатная плата как искусство

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

Я с детства обожал смотреть на печатные платы. Они прекрасны! Легко мог разобрать отцовский магнитофон, чтобы просто посмотреть на его мозг. Собрать потом, правда, не мог. Мог очень долго изучать материнскую плату — это же целый город, со своими заводами, домами и автомагистралями. Но по-настоящему сильный восторг от печатной платы я испытал, когда навернулся голосовой чип у моего старичка Juno-106. Этому синтезатору больше 30 лет. Его голосовые чипы выходят из строя со временем, потому что компаунд, которым они покрыты, начинает пропускать влагу. Синтезатор давно не выпускается. Но многим нужны эти чипы. Один парень занялся их реверс-инженирингом, и собрал свой на современных компонентах. Ну и я купил 6 таких. Ребята, это чудо!


Красота
Источник


Платка толщиной в пол миллиметра. Полосы по краям — скрайбирование. Такая процарапанная борозда. Они сделаны специально для того, чтобы покупатель выломал голосовой чип из этой опалубки. Когда я выламывал свой… Ух! Это чистый восторг! Хрум, хрум.


К чему я это? А к тому, что можно сделать красивую железку вообще без корпуса!

Читать дальше →
Всего голосов 62: ↑61 и ↓1 +60
Комментарии 125

Чистый код на PHP

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


Это принципы разработки ПО, взятые из книги Clean Code Роберта Мартина и адаптированные для PHP. Это руководство не по стилям программирования, а по созданию читабельного, многократно используемого и пригодного для рефакторинга кода на PHP.


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


Статья вдохновлена clean-code-javascript.

Читать дальше →
Всего голосов 69: ↑61 и ↓8 +53
Комментарии 180

Favicon сегодня: форматы, поддержка, автоматизация

Время на прочтение 10 мин
Количество просмотров 129K
На сегодняшний день favicon — это не просто значок 16x16 во вкладке браузера. Он является важной составляющей интерфейса, а также играет немаловажную роль в прогрессивных веб-приложениях. Существует немало способов подключения и использования favicon, о которых я расскажу в данной статье.



Читать дальше →
Всего голосов 53: ↑50 и ↓3 +47
Комментарии 24

Многопоточный сервер на Perl? Легко!

Время на прочтение 3 мин
Количество просмотров 14K
Иногда возникает необходимость написать какой-то простенький TCP либо UDP сервер. Например, сейчас у меня вполне успешно в production трудится собственная реализация DHCP (существующие не подходят из-за специфики). Обычно это делается просто — один цикл, слушаем сокет — и вуаля! Но не всегда «тупой» подход оправдан (нужно что-то более сложное — работа в несколько потоков, например), а использование тяжелой артиллерии слишком затратно.

Интересно? Добро пожаловать под кат.
Осторожно! Внутри Perl-код.
Всего голосов 69: ↑56 и ↓13 +43
Комментарии 62

Ежедневная работа с Git

Время на прочтение 40 мин
Количество просмотров 873K
Я совсем не долго изучаю и использую git практически везде, где только можно. Однако, за это время я успел многому научиться и хочу поделиться своим опытом с сообществом.

Я постараюсь донести основные идеи, показать как эта VCS помогает разрабатывать проект. Надеюсь, что после прочтения вы сможете ответить на вопросы:
  • можно ли git «подстроить» под тот процесс разработки, который мне нужен?
  • будет ли менеджер и заказчик удовлетворён этим процессом?
  • будет ли легко работать разработчикам?
  • смогут ли новички быстро включиться в процесс?
  • можно ли процесс относительно легко и быстро изменить?


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

Далее очень много букв случайным образом превратились в пост.
Всего голосов 200: ↑194 и ↓6 +188
Комментарии 44

Информация

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