• Куда двигаться(Python)?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    Хватит "учить". Это не продуктивно. Просто делайте.
    Начните небольшой pet-project в той области, в какой лично вам интересно. Интерес нужен чисто для мотивации. Если вы супер-мотивированный человек, то и так можете делать всё что угодно.
    Вот какой-то тип рассуждает на ютубчике про то, чем заняться юным программистам. Специально не искал, просто промелькнуло на периферии и ваш вопрос напомнил. Он не про питон говорит, но это не важно.

    От себя могу порекомендовать следующее:
    1. Вести блокнотик для баззвордов. Всё, что слышите вокруг себя касательно предметной области, все непонятные слова и термины выписывайте в блокнотик и, на досуге, гуглите. Если тема и термин релевантны вашей области интересов и выбранному стеку технологий, то вникайте глубже, если не очень, то читайте поверхностно. Со временем новые слова в блокнотик станут попадать всё реже, а старые после нескольких попаданий запомнятся и тоже перестанут. Вы станете эрудированным в своей области.
    2. Читайте чужие исходники. Нет, не учите. Нет глубоко лезть не надо. Просто ищите на гитхабе для себя интересное и читайте как это сделали, думайте как сделали бы вы.
    3. освойте базовые вещи:
      • системы контроля версий в целом и git в частности;
      • концепцию TDD и какую-нибудь из стандартных библиотек для юнит-тестирования;
      • принципы unix-way; стандарты CLI; bash; концепцию пайпов (в linux и windiws);
      • освойте регулярные выражения, порешайте кроссворды.
      • соберите для себя шаблоны стандартных приложений для быстрого старта проектов: сайт с админкой и авторизацией; CLI-утилита; REST API сервис...
      • освойте концепцию docker контейнеризации;
      • освойте CI/CD...



    Где-то к середине этого списка ваш вопрос станет гарантировано не релевантен для вас.
    Ответ написан
  • Как заставить Asterisk звонить на аналоговую АТС с донабором внутреннего номера?

    aalexx
    @aalexx
    Инженер связи
    exten => _[7,8]9XXXXXXXXX,n,Dial(${Tch-Channel-1},35,mD(9w8${EXTEN:1:10})),
    где:
    ${Tch-Channel-1} = DAHDI/g0/77777
    77777 - номер для ответа в вашей терминологии
    35 - продолжительность вызова по каналу
    m - музыка в режиме ожидания (можете заменить на r и будете слышать что творится в канале вместо музыки)
    D(набор двухтональный, он же DTMF...)
    9 - префикс
    w - пауза 1 сек.
    Ответ написан
  • В чем организовать Базу знаний + общение?

    lukoie
    @lukoie
    Вы можете организовать у себя общение в чем угодно, в чем сами согласитесь, или что введет ваше руководство. Например, в одной компании где я пиэмлю и девелоплю, у нас...скайп! С группами под разное. Раньше было вообще 10 групп, счас свели до пары штук, отдельно на департменты, отдельно по городам, ну и общий трёп.
    Тут важно что для быстрой связи нужно чтобы человек мог быстро даже в трамвае увидеть сообщение и отреагировать. Потому ориентируйтесь просто на наиболее распространенные мессенджеры, которые точно есть у большинства. Так что ХипЧат или Лайн видимо будет не вариант. Зато Вайбер какой нить, или Телеграм, или даже Скайп - вполне может подойти. Они кроссплатформенные, привычные и не нужно этой хрени с инвайтами как в Слаке. К слову, в другой конторе у нас как раз Слак, но там сотни народу из разных стран, и тоже разбиты по странам, технологиям и т.п.
    В слаке удобно что есть группы, ты их мож видеть и подписываться. В Скайпе/Вайбере/Телеграме такой фокус не получится.
    Вообще, если спуститься на более низкий уровень, то общатся можно по протоколу ирки, или жаббера, и раз вы айтишники, это как раз не должно вызвать сложности. Да хоть аськой(представьте что у меня аська до сиз пор есть, пятизнак, и всё такое, и в онлайне постоянно.)
    А, тут приходим к еще одному нюансу - обратите внимание на мессенджер Franz, и какие он может мессенджеры.Удобная штука, я постоянно например пользую, у меня там 13 сервисов подвязаны, среди них два скайпа, телеграм и та самая аська.

    Вообще, если говорить про всякие хипстерские штуки, то топовыми счас есть тот самый Слак, Microsoft Teams, riot(matrix) и mattermost
    А дальше уже куча мелочи всякой. Например, есть у меня подписка на quip.com, даже футболка мне и жене есть от них, прислали. Но в постоянном пользовании им пользоваться как то не получилось, неудобно.
    То есть, смотрите на массовые
    • riot.im (другие клиенты для сети матрикса см тут matrix.org/docs/projects/try-matrix-now.html)
    • mattermost.org
      есть минус с правами пользователей, которых в бесплатной версии просто нету, только энтерпрайз. Так, например, любой пользователь может удалить канал.


    Из мелочи можно пробовать
    • rocket.chat
      фаворит на сегодня
    • gitter.im
      от гитхаба
    • tribescale.com
    • ora.pm
    • glip.com
      стоит попробовать, из за анлим условий в бесплатном тарифном плане.
    • flock.com
      довольно приятный и эргономичный внешне, но надо тестить на команде, и сравнивать тариф, все ли подходит в бесплатном
    • zulipchat.com
      немного неудобный UX и навигация


    Обратил бы еще активно внимание на вот этот проект:
    humhub.org

    А документы смотрите на
    • wikisuite.org/Software
    • bookstackapp.com/

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

    Если же говорить о комбайнах, где будет и проджект менеджмент, и общение, и вот это вот всё, то конечно продукты от Атлассиан это стандарт. Дальше еще больше укорененный Бейскемп(где для общения есть Кемпфайр), ну и конечно Битрикс24, куда без него. Ну и quip.com, с групоовым чатом тоже под это заточен.
    Ответ написан
  • Как обезопасить asterisk сервер? Как можно закрыть эту уязвимости не прибегая к vpn и fail2ban?

    @krll-k Автор вопроса
    На все подозрительные сообщения смотреть заголовки через tcpdump и добавлять новые правила Iptables:
    -A INPUT -p udp -m udp —dport 5060 -m string —string «sipcli» —algo bm —to 65535 -j DROP
    -A INPUT -p udp -m udp —dport 5060 -m string —string «sip-scan» —algo bm —to 65535 -j DROP
    -A INPUT -p udp -m udp —dport 5060 -m string —string «iWar» —algo bm —to 65535 -j DROP
    -A INPUT -p udp -m udp —dport 5060 -m string —string «sipvicious» —algo bm —to 65535 -j DROP
    -A INPUT -p udp -m udp —dport 5060 -m string —string «sipsak» —algo bm —to 65535 -j DROP
    -A INPUT -p udp -m udp —dport 5060 -m string —string «sundayddr» —algo bm —to 65535 -j DROP
    -A INPUT -p udp -m udp —dport 5060 -m string —string «VaxSIPUserAgent» —algo bm —to 65535 -j DROP
    -A INPUT -p udp -m udp —dport 5060 -m string —string «friendly-scanner» —algo bm —to 65535 -j DROP
    Ответ написан
  • Что учить frontend разработчику?

    1. Сначала учим фундаментальщину (как работают компьютеры, сети и браузер, http, основы программирования).
    2. Затем изучаем как работают конкретные веб-технологии (html, js, css, как всё это парсится браузером и рендерится в веб-страницу, учимся верстать и использовать js, книжек и курсов масса).
    3. Далее изучаем технологии, которые всё это автоматизируют, упрощают и абстрагируют (фреймворки, бутстрапы, реакты, сборщики, jquery, новые стандарты, гриды итд итп).
    4. Практика, применение изученного, выбор специализации (зависит от того, что хотите далее делать во фронте - это может быть просто вёрстка, создание интерфейсов или визиуализация данных, а может быть и работа с графикой\аудио\видео, тренды (сейчас это react, bootstrap, foundation, babel, es6, d3, RxJS, функциональное программирование)), далее развиваться на протяжении жизни можно до бесконечности. Но без первых пунктов это всё ничто.
    Ответ написан
  • Gentoo vs ArchLinux в замен Debian, что выбрать для домашнего сервера?

    skobkin
    @skobkin
    Гентушник, разработчик на PHP и Symfony.
    Как гентушник говорю: если есть вопросы такого рода (нет понимания зачем это нужно) - не надо ставить Gentoo. И Arch тоже может быть не лучшим вариантом. У него в контексте домашнего сервера не очень много профита по сравнению с Debian/Ubuntu.
    Тем более, у вас сервер с достаточно слабым железом. Софт будет собираться достаточно долго, а профита оптимизации сильно большого не увидите.
    Ответ написан
  • Как часто дохнут диски? RAID1 это выход спасение или иллюзия?

    Jump
    @Jump Куратор тега Резервное копирование
    Системный администратор со стажем.
    Винты дохнут всегда, иногда редко, иногда часто, как повезет.

    Но самое главное что надо понимать - RAID защищает от перерывов в работе, но не защищает от потерь информации.

    Т.е боитесь за информацию - делайте бэкап, рэйд вам не нужен.
    Боитесь что у сервера перерыв в работе будет в несколько десятков минут - ставьте рэйд.
    Ответ написан
  • Как настроить совместную работу sublime text 3, github и bitbucket?

    Базовые знания:
    1. Создаем новый репозиторий в GitHub/Bitbucket.
    2. Создаем папку проекта с файлом .gitignore (в нем пишем форматы файлов и пути, которые не должны отслеживаться системой контроля версий: всякие логи *.log, временные файлы *.tmp, пути /trash и т.п.)
    3. В терминале находясь в данной директории инициализируем git.
    git init
    4. В ST пишем код и сохраняем в этой директории.
    5. В терминале смотрим изменения, добавляем и ставим в очередь на коммит в git все созданные файлы/директории
    git status
    git add -A

    6. Делаем коммит-мерж
    git commit -m 'Initial commit'
    7. Добавляем связь с удаленным репозиторием
    git remote add origin <адрес репозитория из п.1 на GitHub/Bitbucket>
    git remote -v

    8. Пушим локальные изменения в удаленный репозиторий
    git push origin master

    Далее в процессе работы повторяем пункты 4-8.

    Если нужно затянуть новый удаленный репозиторий
    git clone https://github.com/repo

    Для ветвления сначала достаточно знать только checkout и merge.
    Ответ написан
  • Как отслеживать состояние внутри Docker контейнера?

    Вам следует создавать Docker-контейнер таким образом, чтобы в нём работал один ключевой процесс (у которого будет PID 0), завершение которого означает завершение работы контейнера. Код выхода этого процесса будет кодом выхода контейнера. Вы сможете увидеть его в выводе `docker ps --all`. Подробнее здесь: each-container-should-have-only-one-concern. Это не означает, что в контейнере должен быть всего один процесс, но должен быть один такой процесс, жизненный цикл которого неразрывно связан с жизненным циклом контейнера.

    Логи этот процесс должен писать в STDOUT и STDERR - тогда Вы их сможете увидеть с помощью `docker logs ` и перенаправить куда надо с помощью драйвера логирования, настроенного в Докер-демоне. Подробнее здесь: View a container's logs
    Ответ написан
  • Где сисадмину хранить документацию и конфиги серверов, а также собственные наблюдения и размышления?

    eduardtibet
    @eduardtibet
    Technical Writer / Documentation Engineer
    Отвечу по документации...

    1. Формат.
    Для вас лучше это делать в plain text, т.к. даже будучи в консоли, вы всегда сможете их прочитать.
    Форматы: любой из .md, .rst, asciidoc (т.к. есть возможость визуализировать из в pretty format) внутри различных систем.

    2. Хранение
    Способ хранения - только SCM (какой именно: git, svn, hg или более старое - не знаю, что вы используете). Поясню, почему не файловая система:
    - вам важно знать state вашего оборудования на определенный момент. Т.е. вы всегда можете посмотреть конфигурацию, актуальную месяц/два назад и выявить проблемы.
    - вы всегда можете сделать diff и посмотреть изменения. Часто, это должно быть сделано не просто сейчас, а "внезапно" :)

    Использовать atlassian confluence, как говорят выше, я для ваших задач НАСТОЯТЕЛЬНО НЕ рекомендую. Причина:
    - вы привязаны к вендору (даже за 10 баксов за мин. лицензию). Если вы откажетесь от вендора вы НЕ сможете выцепить ее - только copy/paste или покупкой плагинов за сотни баксов.
    - у атлассиана разметка жестко забита в софт. Там нельзя выгрузить wiki разметку (кроме как при покупке плагинов за сотни баксов, например, scroll)
    - и, самое главное, вам не просмотреть текст в консоли!

    3. Визуализация
    Здесь все зависит от количества времени, которое вы готовы потратить. Знаю, существуют решения для визуализации md для обычный wiki. Здесь вам лучше погуглить оптимальный вариант для предыдущих двух пунктов.
    Ответ написан
  • Как оптимально развернуть виртуалку с .ova конфигурацией на сервере с hyper-v?

    athacker
    @athacker
    OVA -- это формат VMware скорее. Там внутри обычно .vmdk (диск) и .ovf (описание конфигурации виртуального железа).

    Вам нужно содержимое диска, а виртуалку можно и руками создать. ВиртуалБокс позволяет сконвертировать vmdk диск в формат vhd, который вы можете затем подсунуть в Hyper-V. OVA -- это tar-архив. Распакуйте его tar-ом, вытащите vmdk и сконвертируйте его с помощью VBoxManage в .vhd:

    VBoxManage clonehd --format vhd disk1.vmdk disk1.vhd

    Затем руками создаёте на Hyper-V виртуалку и ей подсовываете этот vhd.
    Ответ написан
  • Если кто-то получит доступ к файлам Chrome на моем ПК, сможет ли этот человек получить пароли от сайтов?

    @Sing303
    Хром использует DPAPI шифрование на уровне учётной записи windows (для винды). Использование этих файлов на любом другом ПК или этом же, но с другой учёткой не даст увидеть пароли.
    Но если у злоумышленника будет доступ к вашему ПК на неопределённое время, то он сможет сбросить пароль на вашей учётке windows и зайти в браузер, собственно, получить доступ к паролям, кончено, если вы не используете мастер ключ.
    Ответ написан
  • Как правильно организовать хранение данных на серверах?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    1. Хранить надо так, что если пропадут данные с любых 3-х серверов, то на оставшемся - будут все данные и не держать все "яйца в одной корзинке".
    2. Конечно, нужно создать надёжное шифрование и распределение доступа к данным.
    3. Спроектировать систему отказоустойчивости и предусмотреть защиту от DDoS.
    4. Сконфигурировать политики сетевой безопасности и правила хождения пакетов.
    5. Raid10 на каждом сервере - минимум.
    Ответ написан
  • Что мне сделать для идеальной ip-телефонии?

    @silverjoe
    1. Вам нужно точно определить кол-во одновременных вызовов. По опыту могу сказать, что редко когда именно все внутренние номера вдруг одновременно разговаривают. У меня в одном офисе обзвонщиков (холодные звонки), примерно на 300 человек, зарегистрировано одновременных 80-90 одновременных вызовов. Одни разговаривают, а у других - писи-каки или ням-ням-ням :))) А в административных офисах телефония вообще практически не нагружена. Соответственно, если база на 6 трубок позволяет только 3 одновременных вызова - это не беда.

    2. Посчитать пропускную способность канала исходя из 100 Кбит/сек на 1 разговор ( при кодеках ulaw/alaw + служебной информации). Допустим у вас будет 10 одновременных звонков - значит для IP-телефонии необходимо выделить полосу 1 Мб/c.

    3. Далее, если необходим безшовный роуминг по зданию - вам уже предложили Kirk и подобные решения. Но они достаточно дороги для небольшой компании. Если же этого требования нет - то вы сами выбрали решение - отлично справятся Gigaset или Panasonic TGP 500/600.

    4. Действительно ли вам необходимы только трубки? Иногда разумнее выдать их только определенным сотрудникам, а остальных посадить на стационарные телефоны, Yealink или Grandstream или другие.

    Ну про АТС писать уже не буду, тут в любом случае со своей аналоговой переберетесь куда-нибудь на FreePBX и подобные, вам решать.
    Ответ написан
  • Что мне сделать для идеальной ip-телефонии?

    @antonsr98
    Системный Администратор
    у вас организации уже есть своя АТС?
    Ответ написан
  • Mikrotik, можно ли ограничивать трафик по имени пользователя, а не по ip/mac?

    LESHIY_ODESSA
    @LESHIY_ODESSA
    1. Выполнение скрипта при логине windows. Ну например в автозагрузке и шедулером.

    netsh interface ip set address name="Имя интерфейса" source=static addr=<Адрес> mask=<Маска> gateway=<Шлюз>

    netsh interface ip set address name="Подключение к локальной сети" source=static addr=10.0.5.99 mask=255.255.255.0 gateway=10.0.5.1


    Дети под простым пользователем, чтобы не могли сменить IP.
    Тут конечно нужно поломать голову как сделать загрузку bat-ника от админа.
    Вот например в "Планировщике задач" есть тригер "при входе в систему" пользователь — "дети".

    1.2 Аналогично, но задавать детский DNS. Но дети могут обойти.

    2. В браузере прокси сервер от микротика. В том числе по паролю или по времени.

    Блокирование сайтов с помощью Proxy сервера

    3. Для детей свой отдельный "детский" браузер.

    У меня еще миллион идей.

    Всё это может базироваться толкьо на том, что дети не смогут поставить никаких дополнительных программ или изменять настройки. ТО есть в системе у них должны быть самые низкие привилегии. А если залезть в политики безопасности, то можно еще порезать почти всё.
    Ответ написан
  • Какое оборудование выбрать для серверной в доме: D-Link, TP-Link Cisco, HP или др?

    anthtml
    @anthtml
    Системный администратор программист радиолюбитель
    Неплохая сеточка для дома. Вижу хозяин состоятельный, поэтому бюджет должен быть неплохой. Я бы поставил:
    1. Mikrotik Cloud Router Switch CRS125-24G-1S-RM - головной коммутатор-маршрутизатор, в него торкнул все компы, точки и тв. По гигабиту бы получилось и полностью управляемые порты.
    2. Видеонаблюдение - тут нужно смотреть какое и как планируете использовать, камеры poe или с отдельным питанием? Хардварный или программный видеосервер, у хардварных иногда бывают встроенные восьмипортовники для камер - в таком случае вам его достаточно.
    3. Умный дом мультирум - iot-устройства которым обычно нужен просто доступ к сети и инету, для них если не хватит дырок в микротике можно поставить простой 100mb/s свич от любого производителя, ну или L2 если клиенту нужна безопасность и полный контроль сети.
    4. Wi-fi, как уже сказали лучше всего делать на mikrotik, Ubiquiti, несколько точек с роумингом.
    5. В серветной ставим 19" шкафчик юнитов на 10, в него на две патчпанели расклочиваем все линки, ну а лальше патчкордами, в любое время, в любую железку, куда душа пожелает.
    Ответ написан