Как стать автором
Обновить
43
0.1

Пользователь

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

О выборе структур данных для начинающих

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

Часть 1. Линейные структуры


Массив


Когда вам нужен один объект, вы создаёте один объект. Когда нужно несколько объектов, тогда есть несколько вариантов на выбор. Я видел, как многие новички в коде пишут что-то типа такого:

// Таблица рекордов
int score1 = 0;
int score2 = 0;
int score3 = 0;
int score4 = 0;
int score5 = 0;

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

// Таблица рекордов
const int NUM_HIGH_SCORES = 5;
int highScore[NUM_HIGH_SCORES] = {0};

Будет создан буфер из 5 элементов, вот такой:



Заметьте, что индекс массива начинается с нуля. Если в массиве пять элементов, то они будут иметь индексы от нуля до четырёх.
Читать дальше →
Всего голосов 42: ↑40 и ↓2+38
Комментарии32

Немного предпятничных задачек на Bash

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

Привет Хабр!



В bash частенько можно столкнуться с ситуацией, когда вроде как уже разобрался, и тут внезапно какая-то магия. Ковырнешь ее, а там еще целый пласт вещей, о которых раньше и не подозревал…
Под катом — несколько забавных задачек на bash, которые (надеюсь) могут оказаться интересными даже для середнячков. Удивить гуру я не надеюсь.., но все же перед тем как залезть под кат, сперва пообещайте ответить на задачки хотя бы для себя вслух — без man/info/google.
Читать дальше →
Всего голосов 13: ↑13 и ↓0+13
Комментарии25

Основы Docker за Х часов и Y дней

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

0. Вступление


Цель данной статьи собрать в небольшую кучку основную информацию, минимально достаточную для того, чтобы начать работать с докер на ежедневной основе и удалить с рабочей машины локально установленные apache, mysql, virtualenv, python3, mongodb, memchaced, redis, php5, php7 и весь остальной зоопарк, который мы используем при разработке, и который зачастую еще и конфликтует между собой от версии к версии.
Читать дальше →
Всего голосов 43: ↑41 и ↓2+39
Комментарии16

Низковольтный ламповый сверхрегенеративный FM-приемник без выходного трансформатора

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

Здравствуйте.

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

Могу предположить, что многих здешних обитателей привлекают электронные устройства, основанные на электронных лампах (лично меня радует теплота, приятный свет и монументальность ламповых конструкций), но при этом желание сконструировать что-то теплое и ламповое своими руками часто ломается о боязнь связываться с высокими напряжениями или проблемы с поиском специфических трансформаторов. И этой статьей я хочу попытаться помочь страждущим, т.е. описать ламповую конструкцию с низким анодным напряжением, очень простой схемой, распространенными элементами и отсутствуем потребности в выходном трансформаторе. При этом это не очередной усилитель для наушников или какой-нибудь овердрайв для гитары, а намного более интересное устройство.
Читать дальше →
Всего голосов 44: ↑44 и ↓0+44
Комментарии43

Взлом Wi-Fi

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

Взлом маршрутизаторов WPA/WPA2 Wi-Fi с помощью Airodump-ng и Aircrack-ng/Hashcat


Это краткое пошаговое руководство, которое демонстрирует способ взлома сетей Wi-Fi, защищённых слабыми паролями. Оно не исчерпывающее, но этой информации должно хватить, чтобы вы протестировали свою собственную сетевую безопасность или взломали кого-нибудь поблизости. Изложенная ниже атака полностью пассивна (только прослушивание, ничего не транслируется с вашего компьютера) и о ней невозможно узнать, если вы только реально не воспользуетесь паролем, который взломали. Необязательную активную атаку с деаутентификацией можно применить для ускорения разведывательного процесса. Она описана в конце статьи.
Читать дальше →
Всего голосов 77: ↑64 и ↓13+51
Комментарии51

Два в одном: как пользоваться Vim и Nano?

Время на прочтение16 мин
Количество просмотров87K
Upd. 9.7.2017: обновлён раздел про vim. Спасибо вимерам за ценные дополнения.

Вступительное слово


Зачем нужна ещё одна, 1001я публикация на эту тему? Статей про vim и nano написано огромное количество, но как правило они касаются только одного из редакторов, либо представляют из себя общий обзор. Чтобы в одной были сжато описаны оба редактора, но при этом без углубления в дебри приведены все основные клавиши управления для полноценной работы, я не не нашёл. Поэтому, почитав найденные материалы, я начал их конспектировать, так и родилась эта статья.


Любой текстовый редактор можно освоить «методом тыка». Но только не vim.
Чем nano лучше vim?
Из nano можно выйти без reset'а! (с) Интернет


Изначально я не планировал писать об обоих редакторах, а хотел сделать краткую справку только по nano, но в процессе сбора информации накопились данные и по vim тоже. Тут я обнаружил, что Vim не так уж и страшен, если знать команды и концепцию его использования.

Читать дальше →
Всего голосов 46: ↑41 и ↓5+36
Комментарии199

Rapid STP

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

Протоколы семейства STP обычно несильно будоражат умы инженеров. И в большинстве своём на просторах интернета чаще всего сталкиваешься с деталями работы максимум протокола STP. Но время не стоит на месте и классический STP всё реже встречается в работе и в различных материалах вендоров. Возникла идея сделать небольшой обзор ключевых моментов RSTP в виде FAQ. Всем, кому интересен данный вопрос, прошу под кат.
Читать дальше →
Всего голосов 19: ↑19 и ↓0+19
Комментарии9

Поиск Яндекса и почта Рамблера переходят с FreeBSD на Linux

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


Яндекс переводит свой поиск на Ubuntu, таким образом, полностью избавляясь от FreeBSD в компании. В свою очередь, Рамблер переводит свою почту с FreeBSD на Debian.

Один из главных разработчиков Яндекса Анатолий Орлов пояснил: «Мы приняли решение перейти, когда поняли, что в течение пары лет хотим виртуализовать каким-нибудь не очень дорогим способом несколько десятков тысяч машин, а FreeBSD совсем нечего тут предложить». По его словам, поиск будет медленно мигрировать на Ubuntu в течение года.

О переходе на Linux почты Рамблера сообщил главный разработчик сервиса Андрей Шетухин. В качестве вариантов рассматривались CentOS и openSuSe, но выбор сделан в пользу Debian. Главными причинами отказа от FreeBSD Андрей назвал «отсутствие нормальных средств разработки, отладки и деплоймента, а также — неадекватный современным реалиям менеджер пакетов».

На чём сейчас работает поиск Рамблера, неизвестно. Что касается почты Яндекса, то по словам представителя компании Антона Забанных, она традиционно работает на Linux — в разное время на Debian, Ubuntu и RHEL. Сейчас большинство серверов «Яндекс.Почты» работают на RHEL.

[via CNews]
Всего голосов 73: ↑58 и ↓15+43
Комментарии133

Принт-сервер на RaspberryPI 1

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

image


Долго меня мучала идея из старенького RPI сделать принт-сервер (удаленная печать и сканирование) и наконец я до этого добрался.


Исходим из того, что у нас есть набор из RPI, флешки с Raspbian, Wi-Fi адаптера, принтера HP LaserJet Pro 1102, МФУ HP Deskjet F2180 и usb-хаба. Основная машина (ББ), которая будет использовать принт-сервер живет на Linux (впрочем, отличия в использовании для Windows будут минимальны).

Читать дальше →
Всего голосов 20: ↑17 и ↓3+14
Комментарии17

Карикатурный взгляд на работу в IT

Время на прочтение4 мин
Количество просмотров45K
Люди из других сфер деятельности склонны думать, что карьера в IT связана с высокими зарплатами, премиями за подписание контрактов, гибкими графиками и современными офисами, в которых есть столы для пинг-понга, кофейные аппараты и нелимитированная еда для сотрудников.

Но трудолюбивые IT-специалисты знакомы и с обратной стороной медали. Изменения в IT-индустрии происходят «как в скороварке», зарплаты и возможности трудоустройства изменяются по прихоти рыночных циклов. Умения, востребованные сегодня, уже завтра становятся тяжким бременем, а угроза аутсорсинга предстает перед каждым, казалось бы, защищенным сотрудником.

Взлеты и падения на рынке труда в IT за первые 50 лет его существования предоставили карикатуристу Джону Клосснеру множество идей. Давайте взглянем в прошлое и посмотрим, что изменилось (и не изменилось) за эти годы.

Февраль 2013: Управление ожиданиями



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

Оптимизация передачи multicast-трафика в локальной сети с помощью IGMP snooping

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


Всем привет! Сегодня хотел бы затронуть тему передачи multicast-трафика в локальной корпоративной сети, а именно работу технологии IGMP snooping на коммутаторах. Так получилось, что за последнюю неделю ко мне обратилось несколько человек с вопросами по этой технологии. И я решил подготовить небольшую статью с описанием данной технологии. Но в процессе подготовки, выяснилось, что краткостью здесь не отделаешься, так как есть о чём написать. Кому интересен вопрос работы IGMP snooping, добро пожаловать под кат.
Читать дальше →
Всего голосов 18: ↑18 и ↓0+18
Комментарии10

Mikrotik 6to4 автоматизация при динамическом IPv4

Время на прочтение5 мин
Количество просмотров17K
Эта статья будет полезна тем, кто хочет испытать IPv6 по протоколу инкапсуляции 6to4, но имеющего динамический IPv4.
Читать дальше →
Всего голосов 17: ↑16 и ↓1+15
Комментарии10

Почтовый сервер на Linux

Время на прочтение11 мин
Количество просмотров303K
Как наладить работу почтового сервера, умеющего принимать и отправлять электронную корреспонденцию, бороться со спамом, взаимодействовать с клиентами? На самом деле, всё довольно просто.

Сегодня поговорим о почтовых серверах на Linux. Мы расскажем о том, как настроить сервер, о широко распространённом в интернете протоколе SMTP, а также о других протоколах, таких, как POP и IMAP. В итоге вы окажетесь обладателем полноценной системы для работы с электронной почтой.



Начнём с SMTP-сервера на Linux
Читать дальше →
Всего голосов 51: ↑39 и ↓12+27
Комментарии84

Подводные камни Bash

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


В этой статье мы поговорим об ошибках, совершаемых программистами на Bash. Во всех приведённых примерах есть какие-то изъяны. Вам удастся избежать многих из нижеописанных ошибок, если вы всегда будете использовать кавычки и никогда не будете использовать разбиение на слова (wordsplitting)! Разбиение на слова — это ущербная легаси-практика, унаследованная из оболочки Bourne. Она применяется по умолчанию, если вы не заключаете подстановки (expansions) в кавычки. В общем, подавляющее большинство подводных камней так или иначе связаны с подстановкой без кавычек, что приводит к разбиению на слова и глоббингу (globbing) получившегося результата.


Читать дальше →
Всего голосов 143: ↑141 и ↓2+139
Комментарии63

Настройка DKIM/SPF/DMARC записей или защищаемся от спуфинга

Время на прочтение5 мин
Количество просмотров245K
Приветствую, Хабр! В этой статье будет инструкция по настройке DKIM/SPF/DMARC записей. А побудило меня написать эту статью полное отсутствие документации на русском языке. Все статьи на эту тему, которые были мной найдены, были крайне не информативны.
Читать дальше →
Всего голосов 29: ↑26 и ↓3+23
Комментарии9

Сказ о том, как я сервер с WP лечил, или 700 юзеров онлайн на 2х ядрах

Время на прочтение7 мин
Количество просмотров22K
День добрый, пятница ясная, бравый молодец иль девица красная!

Можешь мне верить, можешь мне не верить, но начался сей сказ с пары весточек на мою почту электронную и вот такой вот картины, красоты неписанной:



Это 500 бравых молодцев онлайн (по депеше от гугла) на движке заморском, wordpress именуемом, на сервере Intel Xeon E3 1245v2 (soyoustart, E3-SSD-3). К полотну была приложена рукописъ, помочь в оптимизации сего хозяйства.
Читать дальше →
Всего голосов 41: ↑26 и ↓15+11
Комментарии24

UNIX-подобные системы содержат кучу костылей. Крах «философии UNIX»

Время на прочтение29 мин
Количество просмотров107K
UPD от 2017-03-04: кто-то выполнил английский перевод. Обсуждение на Hacker News.

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

Костыли в UNIX начали возникать ещё с момента появления UNIX, а это было ещё раньше появления не только Windows, но даже вроде бы Microsoft DOS (вроде бы, мне лень проверять, проверяйте сами). Если лень читать, хотя бы просмотрите все пункты, что-нибудь интересное найдёте. Это далеко не полный список, это просто те косяки, который я захотел упомянуть.
Читать дальше →
Всего голосов 455: ↑297 и ↓158+139
Комментарии700

Подслушиваем в AD

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

Введение
Я только недавно столкнулся с виндовыми доменами (Active Directory) и познаю много нового и удивительного. Так уж получилось, что значительное количество пользователей в домене организации имеют права локальных админов (технические специалисты, программисты и другие) (ведь не редко так бывает?). Но последствия от этого колоссальны. В данной статье мы рассмотрим как можно подслушивать звуки (разговоры, переговоры) на удаленных машинах.
Читать дальше →
Всего голосов 99: ↑80 и ↓19+61
Комментарии82

Разница между bin, sbin, usr/bin, usr/sbin

Время на прочтение3 мин
Количество просмотров57K
30 ноября 2010 года Дэвид Коллиер (David Collier) писал:
Я заметил, что в busybox ссылки разложены по этим четырём директориям.
Есть ли какое-то простое правило, чтобы определить, в какой директории какая из ссылок должна лежать…
К примеру, kill лежит в /bin, а killall — в /usr/bin… Я не вижу никакой логики в таком разделении.

Вы, наверное, знаете, что Кен Томпсон и Дэннис Ритчи создали Unix на PDP-7 в 1969-ом. Так вот, примерно в 1971 они проапгрейдились до PDP-11 с парой дисков RK05 (по 1,5 мегабайта каждый).

Когда операционная система разрослась и перестала помещаться на первом диске (на котором была расположена корневая ФС), они перенесли часть на второй, где располагались домашние директории (поэтому точка монтирования называлась /usr — от слова user). Они продублировали там все необходимые директории ОС (/bin, /sbin, /lib, /tmp ...) и складывали файлы на новый диск, потому что на старом кончилось место. Потом у них появился третий диск, они примонтировали его в директории /home и перенесли туда домашние директории пользователей, чтобы ОС могла занять всё оставшееся место на двух дисках, а это были целых три мегабайта (огого!).
Читать дальше →
Всего голосов 244: ↑234 и ↓10+224
Комментарии149

Тяжелое расставание с Net-Tools

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

Не секрет, что Net-Tools пора на почетную отставку. Да, многим админам и мне в том числе, до условного рефлекса Павлова знакомы команды ifconfig, route, netstat. На первый взгляд нет причин что-то менять, а лучшее как всегда враг хорошего.




Давайте узнаем почему Net-Tools уже не тот и как безболезненно с него перейти на iproute2 .

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

Информация

В рейтинге
2 529-й
Откуда
Москва и Московская обл., Россия
Зарегистрирован
Активность