Как стать автором
Обновить
75
0
Дмитрий @darkdimius

Компиляторщик

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

Git Workflow

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

1 Вступление



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


Читать дальше →
Всего голосов 120: ↑116 и ↓4+112
Комментарии147

Обеспечение и сбор доказательств с помощью Интернета

Время на прочтение12 мин
Количество просмотров6.8K
Вестник ВАСа № 3 2003 г

ОБЕСПЕЧЕНИЕ И СБОР ДОКАЗАТЕЛЬСТВ С ПОМОЩЬЮ ИНТЕРНЕТА. ПРОЦЕССУАЛЬНЫЙ СТАТУС ДОКАЗАТЕЛЬСТВ, ПОЛУЧЕННЫХ С ПОМОЩЬЮ ИНТЕРНЕТА
image
Cамой сложной проблемой в спорах о правонарушениях, совершенных с помощью сети Интернет, является проблема доказывания состава правонарушения, которая, в свою очередь, распадается на две составляющие:
1) правовые основания и порядок сбора и обеспечения доказательств и
2) допустимость таких доказательств с точки зрения процессуального права.
Интернет является средством делового общения, получения актуальной информации, ведения предпринимательской деятельности, поэтому все большее число пользователей могут стать и становятся жертвами правонарушений' в Сети. Борьба с ними в последние годы перестала быть праздной теоретической задачей. Более того, правонарушения в Интернете могут затрагивать права и интересы лиц, не являющихся пользователями Сети и даже не знающих о ее существовании.
Читать дальше →
Всего голосов 32: ↑21 и ↓11+10
Комментарии18

Причесываем трафик — динамический шейпер на Linux

Время на прочтение4 мин
Количество просмотров58K
причесываем трафик
Предположим у вас есть домашняя сеть (или не домашняя, а сеть небольшого офиса) с выходом в интернет через не очень скоростной канал. А пользователей — много, и каждый хочет что-то скачивать, да с максимальной скоростью. Вот тут перед нами встатет задача, как максимально эффективно распределить наш интернет-канал между пользователями так, чтобы они не мешали друг другу. В этой статье я опишу, как можно решить такую задачу с помощью Linux-сервера.

Сформулируем, что же мы хотим получить в результате:
1. Чтобы канал поровну делился между пользователями.
2. Чтобы канал зря не простаивал.
3. Чтобы онлайн-игры, ssh и telnet не «лагали» даже при полной загрузке канала, например торрентами.
Читать дальше →
Всего голосов 100: ↑98 и ↓2+96
Комментарии98

Персональный зоопарк или немного о Pygame — Часть 1

Время на прочтение7 мин
Количество просмотров40K
image
Для тех, кто не в курсе: Pygame — это очень и очень неплохой фреймворк для разработки игр на языке Python. Причем поддерживается не только работа с 2D и 3D, но и при желании можно установить биндинги ко многим популярным графическим и физическим движкам. Кстати, Pygame вовсе необязательно использовать именно для игр, можно также создавать и программы с необычным интерфейсом, например, какой-нибудь трехмерный фронтенд к базе данных.
Вот мне, собственно, и захотелось рассказать об основных принципах работы с этим фреймворком, мало ли, может, пригодится кому :)
Ну что, погнали?
Всего голосов 70: ↑69 и ↓1+68
Комментарии37

Python для системных администраторов

Время на прочтение8 мин
Количество просмотров91K
Автор перевода messerr, просто с кармой ему не повезло.

Введение

 
Как системный администратор, вы сталкиваетесь с многочисленными проблемами. Управление пользователями, дисковым пространством, процессами, устройствами и бэкапами могут стать причиной потери волос, юмора или вменяемости у многих администраторов. Shell скрипты могут выручить, но они зачастую имеют множество ограничений. В этом случае полнофункциональный скриптовый язык, такой как Python, способен превратить утомительную задачу в легкую и, смею сказать, веселую.
Примеры в этой статье демонстрируют различные возможности Python, которые вы можете использовать на практике. Если Вы работаете с помощью них — вы на правильном пути к пониманию силы Python.
 
Читать дальше →
Всего голосов 66: ↑57 и ↓9+48
Комментарии63

Курс молодого бойца: тонкости настроек маршрутизаторов и коммутаторов

Время на прочтение3 мин
Количество просмотров25K
Будем считать, что вы уже активно осваиваете хитрости настройки через консоль. Пришло время рассказать ещё несколько тонкостей. О чём имеет смысл подумать при настройке маршрутизаторов и коммутаторов cisco.

Тонкость 1. Аккуратность.
Часто возникает задача что-нибудь добавить в текущую конфигурацию. Наверняка вы знаете, что многие элементы пишутся отдельно, а отдельно применяются (на интерфейс, ко всей железке и т.д.). Будьте крайне осторожны, изменяя настройки таких технологий, как PBR (route-map), QoS (policy-map), IPSec (crypto map), NAT. Лучше всего сначала снять их с использования, потом изменить, потом повесить снова. Связано это с тем, что все изменения вы вносите сразу же в состояние железки. Иногда то, что уже работает (например, подгружено в оперативку) конфликтует с новым конфигом. Не редки ситуации, когда железка уходит в перезагрузку после попытки изменения конфига.

Пример: пусть у нас есть route-map, примененный на интерфейс. Пусть нам надо его изменить. Наиболее «чистый» способ такой:

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

Основатель Pirate Bay призывает наказать юристов IFPI денежной DDo$-атакой

Время на прочтение1 мин
Количество просмотров3.5K
image
Один из владельцев торрент-трекера The Pirate Bay, Готфрид Свартхолм (Gottfrid Svartholm) придумал интересный — и исключительно законный — способ насолить адвокатской фирме, защищающей интересы Международной федерации звукозаписывающих компаний IFPI. Всем сочувствующим интернетчикам предлагается завалить контору Danowsky & Partners микроплатежами на сумму примерно в 1 шведскую крону.

Читать дальше →
Всего голосов 292: ↑281 и ↓11+270
Комментарии319

Многоликий const

Время на прочтение2 мин
Количество просмотров138K
Ключевое слово const — одно из самых многозначных в C++. Правильно использование const позволяет организовать множество проверок ещё на этапе компиляции и избежать многих ошибок из числа тех, которые бывает трудно найти при помощи отладчиков и/или анализа кода.

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

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

10 приемов, разрушающих хрупкую красоту кода

Время на прочтение19 мин
Количество просмотров102K
Статья приводится в сокращении из-за ограничения на объем материала.

Для меня программирование — это не только технология, но и, во многом — искусство. И, поэтому, большое значение имеет красота кода.

Последние несколько лет я собирал приемы программирования, разрушающие в программном коде его утонченную красоту:
  1. Объявление всех переменных в начале программы;
  2. Возврат результата функции через ее параметр;
  3. Отсутствие локальных функций;
  4. Отсутствие else if;
  5. Использование параллельных массивов;
  6. Хранение размера массива в отдельной переменной;
  7. Доступ к свойствам объекта через obj.getProperty() и obj.setProperty(value);
  8. Использование рекурсии для вычисления факториалов и Чисел Фибоначчи;
  9. Отсутствие именованных параметров функции;
  10. Невозможность объявления объектов «на лету».
Наверняка, в некоторых местах вы будете со мной несогласны — ведь чувство красоты у всех разное.


Объявление всех переменных в начале программы


В двух словах:

Переменные должны объявляться в начале логического блока, в котором они используются, а НЕ в начале функции или программы.


Читать дальше →
Всего голосов 402: ↑324 и ↓78+246
Комментарии411

Порядок инициализации в конструкторах

Время на прочтение2 мин
Количество просмотров53K
Итак, вот небольшая программа на C++:

#include <iostream>

class A {
private:
  int a;
  int b;
public:
  A(int x) : b(x), a(b) {}
  void dump() {
    std::cout << "a=" << a << " b=" << b << std::endl;
  }
};

int main() {
  A a(42);
  a.dump();
  return 0;
}

Если вы считаете, что она выдаст

a=42 b=42

То вас ждёт сюрприз
Всего голосов 79: ↑70 и ↓9+61
Комментарии74

Объединение сетевых интерфейсов в linux

Время на прочтение2 мин
Количество просмотров113K
Так уже получилось что писал статью для howtoforge. И естественно тут же все это оказалось в русском варианте на других сайтах. Только вот незадача: в статье были допущены неточности, и публицисты с других «сайтов» вставили as-is.
Хочу попробовать исправить это оплошность.
Для чего это надо?
Объясню на примере: был у меня фтп с 2мя сетевыми картами, но использовалась одна. Со временем весь 1Гб/с начал забиваться по вечерам — и людям плохо, и у меня iowait растет. Но есть вторая сетевая карта. Так вот такое объединение позволит использовать 2 (3, 4, 5...) как одну с 2Гб/с.
Читать дальше →
Всего голосов 62: ↑60 и ↓2+58
Комментарии42

Итоги конкурса околонаучных экспериментов

Время на прочтение1 мин
Количество просмотров626
Завершился конкурс околонаучных опытов в домашних условиях роликов, анонсировавшийся ранее на хабре.

Краткий обзор самых интересных опытов:



Читать дальше →
Всего голосов 67: ↑57 и ↓10+47
Комментарии55

Стилевой пакет DMVN

Время на прочтение3 мин
Количество просмотров3.4K
Когда я увидел на главной странице топик про LaTeX в одноимённом блоге, я порадовался, что на Хабре освещается близкая мне тема (и немного опечалился, что не написал подобную статью сам ;)). За плечами имею некоторый опыт работы с TeX'ом в виде 300 свёрстанных страниц лекций по матану (три семестра), пары курсовых работ и кое-чего по мелочи. Накопленным опытом грех не поделиться — поэтому я и пишу этот материал.

Сегодня речь пойдёт о стилевом пакете, который здорово упрощает жизнь ТеХ-никам.

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

Локализация и числительные

Время на прочтение2 мин
Количество просмотров3.2K
На Хабре полно статей, с примерами на разных языках, о том, как правильно обрабатывать числительные и склонять при этом существительные, к ним относящиеся. Посмотрим, как эта задача
решается в Qt
Всего голосов 29: ↑25 и ↓4+21
Комментарии22

Работа с базами данных в Qt

Время на прочтение6 мин
Количество просмотров207K
Qt дает возможность создания платформо-независимых приложений для работы с базами данных, используя стандартные СУБД. Qt включает «родные» драйвера для Oracle, Microsoft SQL Server, Sybase Adaptive Server, IBM DB2, PostgreSQL, MySQL и ODBC-совместимых баз данных. Qt включает специфичные для баз данных виджеты, а также поддерживает расширение для работы с базами данных любых встроенных или отдельно написанных виджетов.
Читать дальше →
Всего голосов 34: ↑32 и ↓2+30
Комментарии89

6 приложений для анализа жесткого диска в Linux

Время на прочтение2 мин
Количество просмотров102K
imageВы недавно купили винт на терабайт, но при попытке установить новую программу появляется сообщение «Your disk is full». Знакомая ситуация?
При покупке жесткого диска, я обычно стараюсь взять самый большой, чтобы было где разместить всю коллекцию видео и музыки, а также была возможность устанавливать и тестировать любое ПО. Однако, я заметил, что независимо от того, насколько велик жесткий диск, свободное место на нем быстро заканчивается.Если у вас та же проблема, значит пришло время проанализировать загрузку жесткого диска, и удалить все лишнее.
Далее по тексту, несколько способов сделать это в Linux.
Читать дальше →
Всего голосов 68: ↑59 и ↓9+50
Комментарии58

Домашний медиацентр на Intel Atom

Время на прочтение3 мин
Количество просмотров17K
В след заинтересовавшей меня статьи на хабре о компактном домашнем сервере на основе платформы Mini-ITX от VIA решил описать свой опыт по сборке компактного домашнего мультимедиа-центра.
За основу я решил взять платформу Intel Atom, так как требования производительности для медиацентра несколько выше, чем для роутера — мы ведь хотим красивые визуальные эффекты и фильмы в HD смотреть!
Забегая наперед, скажу, что весь медиацентр обошелся мне чуть более чем в $250, включая доставку материнской платы из солнечной Калифорнии.

Читать дальше →
Всего голосов 64: ↑61 и ↓3+58
Комментарии114

Сигналы и слоты в Qt

Время на прочтение10 мин
Количество просмотров274K
Сигналы и слоты используются для коммуникации между объектами. Механизм сигналов и слотов главная особенность Qt и вероятно та часть, которая отличаетcя от особенностей, предоставляемых другими фреймворками.
Читать дальше →
Всего голосов 46: ↑42 и ↓4+38
Комментарии24

Qt — трудности перевода

Время на прочтение6 мин
Количество просмотров62K
Вы написали программу на Qt и хотите перевести ее на другие языки, что бы сделать ее полезной для людей в других странах. Сделать это не просто, а очень просто. Для этого нам потребуется сделать всего три простых шага.
Читать дальше →
Всего голосов 43: ↑39 и ↓4+35
Комментарии6
12 ...
9

Информация

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