• На чём лучше писать большого демона?

    Zerstoren
    @Zerstoren
    Автор, понимаю вас. Когда-то я имел неосторожность написать демона на PHP, о чем жалею. Хоть работал стабильно, но меня он харил.

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

    Если вы решите написать на пайтоне, то пара рекомендаций:
    — Под каждую итерацию обработки данных, создавайте экземпляр класса, в который войдут другие под классы, которые будут проводить обработки данных. Не складируйте ссылки на объекты в модулях или не уничтожаемых классах. Классы после каждой итерации должны уничтожаться.
    — Идите ближе к функциональному стилю. Вы дали какой-то функции данные, она вернула результат.

    Ничего не оставляйте без присмотра.
    Ответ написан
    2 комментария
  • Перенос репозитория с Bitbucket на Github

    dizballanze
    @dizballanze
    Software developer at Yandex
    Существует. Это очень просто.
    — Клонируете репозиторий с bitbucket.
    — Создаете новый репозиторий на github
    — Добавляете адрес нового репозитория: git remote add github <адрес_нового_репозитория>
    — Пушите в новый репозиторий: git push github master
    Ответ написан
    1 комментарий
  • Как воспроизвести алгоритм эффекта в демке «Youscope» на осциллографе?

    @Efsi
    Я не программист, но:
    1. Есть массив точек (x,y) картинки.
    2. Случайно выбираем точку.
    3. Двигаем ее вниз с определенным ускорением (это просто).
    4. Гасим ее и удаляем из массива.
    5. Повторять несколько раз до получения нужного эффекта.
    Ответ написан
    1 комментарий
  • Черным по белому или белым по черному?

    EugeneOZ
    @EugeneOZ
    Терпеть не могу тёмные темы. Либо слишком мало контрастности, когда они серые, либо слишком «выжигающие» буквы, когда фон тёмный.
    Тут на хабре было исследование опубликовано, и в ЖЖ где-то его видел, медики говорят, что лучшая тема это тёмно-синее на бежево-жёлтом и какие-то ещё там сочетания цветов.
    Ответ написан
    Комментировать
  • Генерация уникального ID

    @MikhailEdoshin
    Один из приемов генерации непоследовательных уникальных номеров — взять последовательный номер и применить к нему маскирующую операцию, например, инвертировать заданные биты, а затем переставить по фиксированной схеме. Пусть у нас будут трехбитные номера от 0 до 7: 000, 001, 010, 011, 100, 101, 110, 111. Сначала инвертируем второй бит: 010, 011, 000, 001, 110, 111, 100, 101. Получаются все те же номера, но уже в другом порядке — 2, 3, 0, 1, 6, 7, 4, 5. Затем, считая что биты нумеруются 321, переставим их в 132: 001, 101, 000, 100, 011, 111, 010, 110 — 1, 5, 0, 4, 3, 7, 2, 6.

    Может быть, имеет смысл также добавить контрольную сумму, пусть хоть бит четности — 0010, 1010, 0001, 1001, 0110, 1110, 0101, 1101 или 2, 10, 1, 9, 6, 14, 5, 13. Числа остаются уникальными, и полностью обратимыми, но расползаются по большему диапазону.
    Ответ написан
    2 комментария
  • Генерация уникального ID

    BoShurik
    @BoShurik
    Symfony developer
    Я использую это:
    base_convert(sha1(uniqid(mt_rand(), true)), 16, 36);
    
    Ответ написан
    4 комментария
  • Как эффективно переучиться на веб-разработчика?

    @alz
    В веб-разработке клиентской и серверной частью как правило занимаются разные люди с разным набором скиллов. Стать профи в обоих направлениях сразу — задача непростая. Вам наверное проще будет начать с серверной части. Начинайте сразу работать с каким-нибудь фреймворком, не теряйте время на ерунду. Мой субъективный совет — джанго или рельсы. А для клиентской части думаю для начала хватит Bootstrap, jQuery и jQueryUI.
    Ответ написан
    7 комментариев
  • Готовы ли вы участвовать в проектах бесплатно?

    2ball
    @2ball
    Хардкор кодер
    А какая цель? Убить свободное время и деньги?

    Помогать то, конечно, можно. Но только если понимаешь ради чего ты этим занимаешься. Разные бывают ситуации.
    Поэтому тут 2 ответа:
    1) «Готовы ли вы участвовать в проектах бесплатно» — вообще бесплатно нет. За плюшки в перспективе — да.
    2) «Тратить свое свободное время на решение интересной задачи» — да. Жизнь разработчика на 30% состоит из таких решений. Это саморазвитие, без которого в этой сфере делать нечего.
    Ответ написан
    Комментировать
  • Ubuntu 10 vs 12

    risik
    @risik
    Программист
    Поддержка 10.04 десктоп закончится в апреле. Поддержка 10.04 серверной версии будет еще два года. Поэтому, если Вам по какой-то причине надо именно 10.04 (ну например, потому, что сервер, на который Вы собираетесь деплоить Ваши веб приложения работают на 10.04 и администратор этого сервера, по каким-то причинам, не хочет ставить софт из исходников или бэкпорты из более новых дистров, а использует софт только из репозитария 10.04, а Вы хотите повторить у себя в точности то же самое окружение, что на боевом сервере), то лучше поставьте 10.04 в виртуалку. А пользоваться на десктопе лучше 12.04. Ну а если Вам противен Unity, то есть xubuntu, kubuntu, lubuntu или mint c MATE или Cinnamon.
    Ответ написан
    Комментировать
  • Ubuntu 10 vs 12

    @oleksandr_veles
    IMHO, новая установка десктопной 10.04 неоправдана, поддержка закончится через пару недель-месяц.
    Ну и по собственному опыту, в силу разных причин нужно будет доустанавливать новые версии ПО, в результате ОС превратится в зоопарк репозиториев и самоустановленных компонентов. Ядро для поддержки trim и нового железа, актуальные версии библиотек для сборки чего-либо,
    потом пляски с LD_PRELOAD чтобы брало нужную версию, а не системную и т.п.
    Так что 12.04 актуальней.
    Ответ написан
    Комментировать
  • Фреймворк??????????

    sHinE
    @sHinE
    веб-разработчик, php/js/mysql и сопутствующее
    Есть Silex — silex.sensiolabs.org/ микрофреймворк на компонентах от symfony2. Как мне кажется он для начала намного проще и понятнее. Doctrine туда прикручивается, насколько я знаю.
    Ответ написан
    2 комментария
  • Почему у всех операционных систем Майкрософта со временем падает производительность?

    holyorb2
    @holyorb2
    комп забивается разной инфой весь :(
    Даже установить и удалить софт, что-то да и осталось на диске, в реестре

    регистр, файлы, драйвера, обновления,… этого становится очень много и обработывать его становится сложнее.

    Вроде как у микрософта сейчас дела получше, это раньше на Вин98 нужно было переустанавливать/оптимизировать каждые полгода. ХР уже выдерживала до 1 года. Виндовс 7 получше в этом плане, 1-3 года в зависимости от оборота софта и его качества.
    Ответ написан
    Комментировать
  • Iptables и подмена ip?

    Ingtar
    @Ingtar
    Возможно так:
    -A POSTROUTING -d IP_роутера/32 -j SNAT --to-source НУЖНЫЙ_IP
    Ответ написан
    Комментировать
  • Параметры X и Y при отправке форм

    Zazza
    @Zazza
    Отправить форму можно и с помощью изображения, а не только input type=«submit». В таком случаем для изображения будут отправлены координаты клика. Самое простое применение — географические карты.
    Ответ написан
    1 комментарий
  • Книги по концепциям пользования и администрирования *nix машин?

    про пользователя и установку — достаточно выдать права на исполнения пакетного менеджера от рута. более того — достаточно выдать права на исполнения пакетного менеджера с параметром install и только с ним.

    про автоматизацию — не углубляясь в подробности — вы не правы. всё можно описать. а файлы править такими утилитами как sed, awk, vi… это лишь самый малый список.

    про «тонким слоем» — man 7 hier — выдаст текст про то как в _данной_ системе это «правильно».

    в общем вам не книжку надо, а знакомого гуру. который ответит на ваши вопросы. собтвенно приглашаю в Санкт-Петербургскую группу пользователей Linux. Подписывайтесь на рассылку, задавайте вопросы. Если хотите вживую пообщаться — приходите на собрания (они проходят каждую последнюю среду месяца на ф-те географии университета, 10я линия, 35, белая дверь на первом этаже сразу напротив входной двери).

    напрямую отвечая на ваш вопрос я рекомендую такой список литературы:

    1. FreeBSD Handbook www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/ (рус перевод: www.freebsd.org/doc/ru_RU.KOI8-R/books/handbook/ )
    2. Эви Немет «Unix и Linux. Руководство системного администратора». www.ozon.ru/context/detail/id/7607778/ Если нет денег легко находится по названию
    Ответ написан
    1 комментарий
  • Простейшая очередь задач на PHP?

    @Ualde
    Очередь задач решается с помощью Gearman, тут вы совершенно правы.

    Если требуется же запустить просто параллельный процесс — вы можете его форкнуть или создать новый.
    Ответ написан
    Комментировать
  • Сдвиг в какой либо оттенок

    fr33z3
    @fr33z3
    У меня тоже с цветами все плохо, но почему бы не перевести допустим в HSL и поиграться со значениями, поняв что вам надо?
    Ответ написан
    2 комментария
  • Какую бы ОС вы выбрали для мобильной разработки сейчас?

    Terranz
    @Terranz
    андроид, конечно же!
    для разработки под яббл — нужен мак
    винфонов — полтора смарта за безумные деньги
    всякие маргиналы с тизенами\бадами\убунтами\бб всё равно чуть больше чем никакую позицию занимают
    Ответ написан
    3 комментария
  • Любопытный вопрос из тестового задания?

    @robofox
    $x = print("ok");
    if ($x == 1 && $x==2 && $x==3){
      echo("ok");
    }
    

    Они же не уточнили, что должна отработать инструкция с условием ;)
    Ответ написан
    1 комментарий