Search
Write a publication
Pull to refresh
2
0
Send message

Самые смешные комментарии в исходном коде

Reading time1 min
Views160K
На StackOverflow был отличный пост точно на эту тему, но какой-то сверхусердный модератор, который должен остаться неназванным, удалил его (судя по всему, сейчас восстановлено — прим. пер.).

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

// 
// Дорогой мейнтейнер:
// 
// Когда ты закончишь «оптимизировать» эту подпрограмму
// и поймешь, насколько большой ошибкой было делать это,
// пожалуйста, увеличь счетчик внизу как предупреждение
// для следующего парня:
// 
// total_hours_wasted_here = 42
//

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

Заовнил, вонзился, запилил: словарь IT-шника

Reading time5 min
Views100K
Как часто друзья и родственники, не связанные с IT, просили вас рассказать, что нового на работе, а вы, увлекаясь, начинали говорить вроде на русском, но совершенно непонятном для них языке? Мы создали наш словарь терминов, в который вошли как внутренний сленг отдельных проектов, так и достояние широкой общественности. Надеемся, эта компиляция поможет айтишникам при необходимости выразить свои мысли на языке маглов, а неайтишникам – понять, что айтишники несут. Ну и просто повеселит всех. Ведь пятница!

Про код и изменения





Код добра – программный код, очевидно содержащий непоправимые улучшения.
Котятоемкий код — очень некрасивое техническое решение. Выражение обязано своим происхождением предположению, что каждый раз, когда программист пишет строчку некрасивого кода, бог убивает котенка.
Непоправимо улучшить – запилить годное, но не до конца проверенное изменение функционала. Синоним — необратимо улучшить.
Мясной коммит (ковровый коммит) – правка, судя по количеству и характеру изменений, наверняка содержащая непоправимые улучшения.
Тупач – очень срочная задача, результаты работ по которой должны попасть в бранч для выкатываемой версии. Образовано от to patch.
Минорный тупач – задача горит – сильнее некуда, но уж очень мелкая.
Глубокий ToDo Later — (отправить задачу в глубокий тудулейтер) статус задачи в таск-трекере отложена на неопределенный срок.
Подпереть костылями – реализовать функциональность за счет непредусмотренного временного решения.
Шрапнельные правки – огромное количество мелких правок по всему проекту, которые очень сложно оттестировать.
Скриптюня — очень классный скрипт, экономит кучу времени, практически лучший друг оператора.
Читать дальше →

Изучаем Node.js

Reading time1 min
Views11K
Привет, хаброжители!

Мы продолжаем цикл книг о животных. Сегодня у нас новый зверёк — «Изучаем Node.js» .
Книга, которую мы сейчас представляем, предназначена для тех, кто еще не использовал данную технологию, но хотел бы быстро начать работу с ней. Итак:

Изучаем Node.js

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

PPTP vs L2TP vs OpenVPN vs SSTP

Reading time6 min
Views462K
Недавно я искал информацию об отличиях существующих VPN-технологий и наткнулся на эту статью. Здесь вкратце описаны преимущества и недостатки основных VPN, очень легко и доступно. Предлагаю сообществу перевод статьи.

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

Заметка про длину ключа шифрования


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

Сейчас почти невозможно найти VPN-шифрование с использованием ключа длиной менее 128 бит и все сложнее найти 256-битное шифрование в предлагаемых OpenVPN-решениях, ключи которых бывают даже 2048 бит. Но что означают эти цифры на практике, 256-битное шифрование действительно более безопасное, чем 128-битное?
Читать дальше →

Sysadmin to 1C developer

Reading time5 min
Views48K

Предисловие


Данная статья посвящена ИТ-специалистам нулевого уровня владения, как платформой 1С, так и конкретными стандартными конфигурациями. Данная статья должна ответить на вопрос: «С чего начать?»

Мой личный путь к 1С был своеобразным. Будучи программистом аналитического модуля товароучетной системы (писал на vb6), я время от времени брал работу системного администратора, а если точнее, то выполнял функции эникейщика. На четвертом году работы я остался один из старого состава ИТ-отдела, и отвечал за сеть из 60 ПК и 5 серверов. Сеть построил максимально отказоустойчивой (ввиду своей лени, даже все ПО устанавливалось как управляемое, при добавлении ПК в группу безопасности), делать стало нечего. Куда дальше? Навыки первичных обязанностей в организации не были забыты, по этому были внедрены два проекта на VB.NET и C# используя платформу .NET. Примерно в это время начал писать небольшие отчеты для конфигурации «управление торговлей» на платформе 8.1
Я не буду указывать где читать, я буд говорить, что искать для прочтения.

Кто такие 1С программисты?


Наверное часто можно услышать, что 1Эсники не программисты. Забавно конечно, но был такого же мнения, когда мне – системному администратору 1С-программист приносил флэшку с вирусами. В моей голове не укладывалось, что ИТ-специалист может себе позволить такую роскошь, как вирусы на flash накопителе. Позже мне стало понятно, что оббежав 2-3 организации и скопировав им новые отчеты, то flash накопитель нужно обязательно чистить. А вообще, бывает, что и программистов других платформ назвать программистами сложно. Разные платформы? Язык программирования на русском языке? Это же всего лишь синтаксис и возможности платформы, о которых, ты, либо знаешь, либо нет, а если и знаешь, то, либо умеешь с ними работать, либо не умеешь. А теперь я осмелюсь классифицировать 1С программистов и разделить их на три категории:
  • Бухгалтера
  • 1С программисты определенной предметной области
  • «Программисты»
Первая категория хоть и относится к конкретной предметной области, но я все же выделил их в отдельную категорию. Что самое интересное, то эта категория часто даже ничего не пишет. Да, они могут написать, но зачем? Их нанимают организации в бухгалтерию перед закрытием месяца тогда, когда бухгалтерия имеет общий низкий уровень компетенции своей предметной области. Да, эти программисты знают бухгалтерский учет. Не думаю, что читатель данной статьи, задавшийся вопросом: «С чего начать?», попадет в первую категорию, хотя всякое бывает, может лет через 10, то вполне возможно.
Я не могу описать первую категорию программистов, не процитировав Андрея Орлова и его «записки автоматизатора». Он пишет:
Я, например, вполне прилично разбираюсь в технологиях склада, магазина и оптовых продаж, то есть свободно владею менеджерским, складским, программистским и русским языками. На этих языках я понимаю их носителей, могу сформулировать свои мысли и, самое главное, думать сам. А вот бухгалтерский язык для меня – иностранный. Я понимаю написанное на нем другими, если напрягусь, и сам могу написать шаблоны проводок для хозяйственной операции, но у меня не могут появиться идеи на этом языке.
И он приводит пример такой идеи:
Нам не нужна отдельная система контроля исполнения поручений, все можно сделать в модуле „Бухгалтерия“ нашей системы: когда поручение дается, датой отчета по поручению делается проводка на штраф ответственному, а если он поручение случайно выполнит, то проводка сторнируется.
Для того, что бы стать программистом из первой категории нужно знать бухгалтерский учет и точка, остальное синтаксис, гугл и креативность.
Вторая категория – это программисты знающие конкретные конфигурации, а точнее конкретный вид учета: складской, общепит, производство. Думаю тот, кто прочитав статью, будет работать в этом направлении должен стремиться именно в эту категорию (не забыв конечно, пройти третью категорию). Собственно тут решает опыт, опыт работы с конкретной конфигурацией и работы в определенной предметной области. Если вы системный администратор и в вашей организации есть такие конфигурации, то вам пора начинать.
Третья категория. Как говориться: «Добро пожаловать». Тут мы будем клепать формочки, строить отчеты, которые работают несколько часов, будем делать умное лицо и напрягать сервера гугла.
Читать дальше →

Импорт KeePass БД паролей в KWallet

Reading time3 min
Views13K
Всем привет.

На предприятии где а работаю очень любат всякие штучки для «безопасности» и к сожалению все по винду. Но вот незадача, у меня стоит линукс а мне прислали пароли в БД для KeePass (заметка: не хочу ставить mono приложение KeePass под линукс). Windows виртуальная машина стоит, но держать ее открытой всегда не охота, всетаки память отъедает которой и так не хватает. Вот тогда-то у меня и родилась идея перенести все пароли из этой базы данных для KeePass в мой KWallet.
Читать дальше →

«Антизловредный шустряк»

Reading time5 min
Views71K

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

Безусловно, при выборе антивируса нас интересуют множество параметров. Вот некоторые из них:

  • Универсальность:
Должен справляться со всем и сразу (трояны, малвари, спайботы и т.д.)

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

  • Централизованное управление:
Для компании с большим парком машин, безусловно, необходим инструмент централизованного управления антивирусным продуктом на рабочих станциях.

  • Нагрузка системы:
Может, конечно, кого-то не волнует этот вопрос при выборе антивируса. Честно говоря, меня тоже раньше не беспокоил, пока я работал в крупных компаниях. Компьютер тормозит? Может проверим хард, проверим на вирусы, переставим систему? Нее, зачем… Это долго, лучше купим новый! Сейчас такой роскоши нет. Приходится работать с оборудованием моих школьных лет. Поэтому для меня этот параметр антивирусного продукта как никогда актуален. Думаю таких компаний еще немало.

Поэтому в этой статье речь пойдет именно о производительности на маломощном железе.
В тестировании примут участие яркие представители семейства антивирусных:

• Kaspersky Internet Security 2013
• Dr.Web 7.0
• NOD32 Smart Security 5
• Microsoft Security Essential
Читать дальше →

Шахматы на чистом sed

Reading time3 min
Views48K
В Линуксе и многих других системах существует утилита командной строки sed («сед») — это несложный редактор, которые преобразует текст, попадающий ему на вход при помощи несложных команд.

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

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

Задачки по сетям. Проблемы в сети MPLS TE

Reading time1 min
Views20K
Как инженера тех.поддержки вендора и автора цикла «Сети для самых маленьких» и подкаста для связистов, меня часто спрашивают, чем мне приходится заниматься на работе и как накапливается опыт.
Итак, я занимаюсь решением проблем.
Хотел бы предложить хабрасообществу сетевиков новый формат статей — задачки. Я описываю симптомы, предоставляю данные, которые вы попросите, вы ищите решение.

Итак, начнём с простого: имеем вот такую MEN-сеть:



На ней запущен MPLS TE. R1 является центральным устройством, обеспечивающий подключение к Интернету и контроллерам базовых станций. Всё организовано через L2VPN. До 2G БС, конечно, проведён TDM.
Время от времени на сети происходит странное: базовые станции теряют синхронизацию с контроллерами. На фиксированной сети начинаются потери, и скорость падает значительно.
Всё это относится к сегменту доступа, подключенному к R4.

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

Жизнь за пределами Зиона

Reading time13 min
Views63K
С некоторым удивлением обнаружил, что для большинства хабражителей само собой разумеется, что внутри сервера стоят самые обычные Xeon’ы. Все остальные процессоры — это что-то далёкое и почти несуществующее, поэтому статья «Процессоры для корпораций» вызвала весьма живой интерес. Раз уж тема настолько интересная, попробуем заполнить информационный вакуум. Итак,

Кто и зачем их покупает?
Читать дальше →

Много бесплатных книг по программированию

Reading time7 min
Views347K
Читать дальше →

Animate.css — набор кроссбраузерных CSS3 анимаций

Reading time1 min
Views94K

Animate.css




На днях наткнулся на эту замечательную вещь и решил поделиться с Хабрахабром.
Animate.css — сборка отличных кроссбраузерных CSS3 анимаций в одном файле.
Читать дальше →

Администрирование Microsoft Windows Server 2012

Reading time1 min
Views7.9K
Привет, хаброжители!

Мы не выпускали книг по Windows Server уже более двух лет. И вот, наконец, хотим представить вашему вниманию:

Администрирование Microsoft Windows Server 2012

Прототип: Windows Server 2012: Up and Running
Publisher: O'Reilly Media; 1 edition (December 14, 2012)
Читать дальше →

Распределенная брутфорс-атака на CMS с точки зрения хостера

Reading time5 min
Views28K
Не секрет, что попытки подбора пароля методом перебора (брутфорс) — постоянное явление. Подбирают пароли к серверам и виртуальным машинам, к админкам сайтов и FTP-аккаунтам, к почтовым ящикам и социальным сетям.

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

1 августа началась, пожалуй, самая мощная в рунете брутфорс-атака на сайты, созданные с помощью самых распространенных бесплатных CMS: Wordpress, Joomla! и др.

Графики из мониторинга нагрузки

И вот как это было:
Читать дальше →

Ад с учётными записями — почему в одной компании пользователей было в 3 раза больше, чем сотрудников

Reading time9 min
Views51K
Прыдстория. В одной производственной компании было около двух десятков(!) кадровых баз. Это базы обособленных подразделений, и в каждой по несколько сотен человек. Всего около 10 тысяч сотрудников. Системный администратор работает грамотный, есть рабочая MS Active Directory.

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

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

В этот момент мы начали работать над внедрением общего решения по управлению учетными записями и правами доступа, IdM. Для начала пришлось избавиться от раздробленности и свести все кадровые базы в одну промежуточную кадровую систему. Её связали с Active Directory через новый центр-репозиторий. Потом подключили к репозиторию остальные бизнес-системы вот так:



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

Perl6 — Комментарии, пробельные символы, скобки

Reading time4 min
Views6.3K
Давным давно, в далекой далекой галактике на хабре появился набор статей о шестом перле
1. Особенности работы с переменными и литералами в Perl6
2. Perl6 — Операции над переменными, анонимные блоки
3. Perl6 — Условные операторы, циклы
4. Perl6 — Работа с функциями
5. Perl6 — Классы
6. Perl6 — Ввод-вывод, модули
в котором рассказывалось о некоторых сторонах Perl6. После выхода последней статьи, я начал писать следующую, в которой планировалось создать два класса, расположив их в разных модулях, и подключать их один на этапе компиляции, другой на этапе выполнения — иначе говоря закрепить уже пройденный материал. Но представте мое удивление, когда я начал получать разные ошибки компиляции в зависимости от количества пустых строк между определениями двух функций или от количества пробелов внутри условия… Причем исправляя одну ошибку, я получал вторую, которую уже исправлял до первой =) В итоге написание следующей статьи сорвалось, и я благополучно оставил её на потом, а потом естественно и времени не оказалось свободного.
Но вот сейчас я всетаки решил продолжить изучение, и раз уж у нас зашла речь о пробельных символах, то с них и начнем новую статью.

Добро пожаловать под кат

πfs — революционная файловая система без хранения данных­

Reading time2 min
Views178K

Что это?


πfs это революционная файловая система, которая вместо того, чтобы тратить место на вашем жестком диске, хранит все данные в π. Вам никогда больше не придется заботится о свободном месте! Вам говорили, что 100% сжатие невозможно? Да вот же оно!

Как собрать?


πfs собирается элементарно:
./configure
make


Да и использовать его не сложнее:
πfs -o mdd=<metadata directory> <mountpoint>

Где metadata directory — каталог с метаданными (названия файлов, смещение в π), а mountpoint ­— каталог монтирования.

Что же π делает с моими данными?


π — одна из самых важных констант математики, и у нее есть куча интересных свойств (о которых можно прочесть в статье на википедии)
Одним из таких свойств числа π предположительно является нормальность, что означает, что все его числа распределяются равномерно, при условии, что это дизъюнктивная последовательность, т.е. все конечные числовые последовательности находятся внутри него. Если мы рассмотрим число π по основанию 16 (HEX), то это предположение верно. Первая запись об этом была в 2001 году.
Ну а если так, то зачем нам хранить все эти эксабайты данных на винчестерах, если мы можем найти их в π?
Читать дальше →

Maha MH-C9000 — анализатор, заряжатор и восстановлятор для Ni-MH/Ni-Cd аккумуляторов

Reading time8 min
Views145K
Продолжаем освещать тему зарядных устройств. Сегодня на нашем столе настоящий монстр по работе с никелем, основными отличительными характеристиками которого являются большие токи заряда (вплоть до 2А на канал) и разряда (до 1А), информативный дисплей с подсветкой, пять режимов работы, среди которых заряд, восстановление и анализ, тренировка, разряд и цикл. К слову, это не все «плюшки», более подробно об этом устройстве я расскажу под катом.
image
Читать дальше →

Реализация VoIP карточной платформы на FreeSWITCH с использованием RADIUS

Reading time15 min
Views13K
Встала задача избавиться от старого хлама в стойке и реализовать программную версию, слегка забытой, но до сих пор существующей технологии для оказания, как правило, междугородней/международной связи для абонентов других операторов посредством звонка на специальный номер доступа и вводом ПИН кода. Авторизация абонентов проходит через биллинг посредством RADIUS, записи о звонках складываются туда же.

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

Information

Rating
Does not participate
Registered
Activity