Задать вопрос
  • Как помочь человеку сформировать в себе мышление программиста?

    Bandicoot
    @Bandicoot
    Вась-программист
    Такое мышление формируется в реальной работе. Нужно вначале пробовать, пытаться. Если уж совсем не получается, то оставить это дело и переключиться на что-то другое
    Ответ написан
    1 комментарий
  • Какими профессиональными навыками должен обладать Linux-сисадмин-фрилансер?

    @koders
    инженер
    Немного скажу про сисадмина-инфраструктурщика (есть еще администраторы, которые занимаются прикладным ПО).
    Про дистрибутивы - самые распространенные: RHEL/Centos, Debian/Ubuntu, SLES.
    ПО: как минимум apache/nginx, mysql/MariaDB, PostgreSQL, Oracle,( глубокий знаний не требуется, но на уровне установить ( включая кластерный режим), настроить бекап, восстановить базу и тд.) в идеале что-нибудь из NoSQL( напримерCassandra), как миниму один ftp/dhcp сервер, bind(dns).
    Неплохо знать как минимум одну из платформ виртуализации (например KVM).
    Знать средства резервного копирования (например bacula).
    По прикладному ПО - базовые знания CMS для сайтов (Joomla, Wordpress, Opencart etc). (на уровне поставить/настроить).
    Умение писать скрипты :)
    Google mastery >5 по 10-бальной шкале :)
    Если есть цель брать крупные заказы у средних-больших компаний, то здесь поможет умение грамотно писать/читать документацию ( как ориентир ГОСТ34).
    Ответ написан
    4 комментария
  • Задачник с решениями по Python -?

    dizballanze
    @dizballanze
    Software developer at Yandex
    Подборка реализаций разных алгоритмов на python https://github.com/nryoung/algorithms
    Ответ написан
    Комментировать
  • Задачник с решениями по Python -?

    @Themezv
    Js developer (React.js)
    Ответ написан
    Комментировать
  • Задачник с решениями по Python -?

    Может быть не совсем то, что вы искали, но рекомендую посмотреть вот сюда: informatics.mccme.ru/course/view.php?id=156
    Ответ написан
    Комментировать
  • Какую литературу почитать для саморазвития?

    Keroro
    @Keroro
    Embedded engineer
    Из недавно прочитанного и понравившегося:
    Голдрат Элияху - "Цель: Процесс непрерывного совершенствования". После нее захочется поуправлять каким-нибудь заводом.

    Максим Котин - "И ботаники делают бизнес". Про нашего соотечествинника и хабропользователя, открывшего книжный в Сывтывкаре, а сейчас занявшегося доставкой пиццы квадрокоптерами.

    А вообще, можете открыть сайт Манна и Фербера, и читать все подряд, они только на лит-ре по саморазвитию и специализируются:
    www.mann-ivanov-ferber.ru/books/bestsellers
    (я никак не связан с данным издательством).
    Но если честно, прочитав довольно много книг на эту тематику, я пока не ощутил в себе и своей жизни каких-либо позитивных изменений (ну, может, похудел на 20 кило, после одной книги о здоровом образе жизни). Я бы даже сказал, что стал немного менее счастливым, т.к. теперь я стал замечать, что прокрастинирую вместо полезных занятий, не меняю часто работу, не хожу на собеседования, и не делаю многие другие, полезные, с т.з. авторов книжек, вещи, и укоряю себя за это... =)
    Ответ написан
    2 комментария
  • Какие знания нужны для Python Junior-а?

    alxpy
    @alxpy
    Мне когда-то на подобный вопрос дали развернутый ответ (еще раз спасибо этому человеку). Я не смог найти ссылку на тот форум, но сам ответ у меня был сохранен:
    Вот список знаний, которыми должен обладать потенциальный Junior Python developer:

    Уметь самообучаться, находить нужную информацию.

    Иметь общие представления о том, что такое ОС и зачем она появилась.
    Понимать что такое процесс и как он “живёт” в ОС.
    Понимать что такое поток.
    Понимать что такое сокеты и зачем они нужны.
    Иметь представление о том, как устроен стек протоколов TCP/IP.

    Понимать что такое Linux.
    Уметь работать в sh.
    Понимать что такое виртуализация и знать какие бывают типы.
    Уметь настраивать виртуальные машины через vagrant или подобные инструменты.
    Уметь работать с GIT(создавать ветки, разрешать конфликты, etc)

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

    Уметь работать с БД(хотя бы CRUD, join)
    Уметь работать с nginx(хотя бы проксирование настроить)

    (можно просто написать - “прочитать Лутца”, но выделю пару вопросов)
    Знать чем отличаются new style классы от old style.
    Знать чем отличаются Python2 от Python3
    Знать чем отличается str от unicode и почему в программе нужно работать с unicode.
    Понимать алгоритм импорта модулей в Python.
    Понимать что такое генераторы и итераторы.
    Понимать что такое дескрипторы.
    Понимать что такое GIL и зачем он нужен.
    Понимать что такое WSGI и зачем он появился.

    + Уметь писать тесты, понимать зачем это нужно.
    + Практические и теоритические основы по framework.

    + выполнить норматив по ГТО
    + не пить и не курить.

    Так же можешь потренироваться по заданиям Юры Юревича.

    Заданиям Юры Юревича - тыц.
    Ответ написан
    4 комментария
  • Какой дистрибутив linux лучше для сервера?

    Alex9
    @Alex9
    scp wisdom root@brain \n in progress...
    У нас организация использует только CentOS. Проблем не наблюдается, железки чаще летят, чем что-нибудь в системе. Но в CentOS софт обычно отстает с версиями, так как обновления выходят только после проверки временем.
    Ответ написан
    Комментировать
  • Волнения новичка Системного Администратора или Жизнь научит?

    @petukhov
    IT specialist
    Организация действительно везде разная, и как заведено, так и придется работать. Если что-то не будет устраивать, то можно потихоньку менять устои, заручившись поддержкой, если совсем в тягость - уходить. Когда нужны деньги на что-то, то надо обосновать. При хорошем обосновании начальство выделит деньги. Например нужно купить новый ИБП для серверов, т.к. постоянные скачки электричества, старый не спасает (не успевает переключаться, а новый работает напрямую от батарей), потеря сервера может обернуться большими тратами (указать цену сервера), приобретение нового ИБП решает все проблемы. С таким обоснованием начальство будет понимать необходимость выделения денег, и в очередной раз сможет убедится в грамотности админа.
    Пользователи разные, но если иметь терпение и не нервничать лишний раз, то работается гораздо легче. Что-то срочное сломалось, при попытке починить стоят над душой и орут - так и объясняешь: "делаю все возможное, чем меньше меня будете отвлекать своим недовольством, тем быстрее решится проблема". Нелегальный софт ставить нельзя, даже если очень хочется. Можно предложить написать служебную записку на имя директора, мол, прошу поставить такой то софт. И к такой служебке прикладывать свою резолюцию: софт стоит столько-то, можно купить и поставить, если не покупать, то будет вот такой вот штраф, с возможным таким сроком. Главное понимать, что все вот такие служебки, это не отмазки в "случае чего", это для запугивания желающих ставить левый софт. В случае нелегального софта, в любом случае, виноват админ. Поэтому лучше сразу провести ревизию железа и софта, можно это сделать в выходные, чтобы не отвлекать людей от работы. Что лишнее - вычистить. При необходимости поискать бесплатные аналоги. В случае непоняток с лицензией, можно обращаться к штатному юристу (если есть и не занят).
    Контроль нужен. Начать можно с инвентарной базы в экселе, затем искать более подходящий для себя инструмент, например тот же GLPI. Вобщем-то все инструменты надо искать под себя, что удобней будет.
    А так надо быть вежливым, честным, и относиться с уважением к своей работе, и тогда все будет хорошо.
    Ответ написан
    Комментировать
  • ЯП для WEB разработки?

    sayber
    @sayber
    Да, я программирую на PHP и еще асинхронно!
    PHP изучал, уже надоел.

    Видимо не изучали, а поверхностно прочитали.
    Судя по вопросу и контексту, вы мало себе представляете чем отличаются те или иные языки программирования, какие представления могут иметь и т.д.
    Почему в списке нет Ruby, JS - это ведь тоже языки программирования для веб-разработки.

    Вы видимо "Дуров", раз написали кучу соц. сетей, банковских CRM, и др. крупной продукции на PHP.
    Иначе я не знаю, как может язык надоесть.
    Ответ написан
    Комментировать
  • Как настроить web-сервер с нуля?

    1nn0
    @1nn0
    Системный администратор\Фрилансер
    Я думаю, такой гайд просто не существует. В Вашей ситуации я бы порекомендовал "плясать" от задачи.
    1) Определяем под какие задачи\приложение(я) мы готовим сервер.
    2) Определяем системные требования данных приложений.
    3) На основе системных требований выбираем оптимальный набор ПО.
    4) Разбиваем настройку ПО по категориям-функциям (fail2ban, MTA, web, firewall)
    5) Идем на Хабр или же не на хабр и ищем гайды и мануалы по вашему ПО.
    6) ...
    7) PROFIT!

    P.S.: Если Вы привыкли к ISP-manager, то я порекомендовал бы Вам сначала потренироваться с настройкой связок на виртуалке, хотя бы базовые "грабли" преодолеете и поймете, нужно оно вообще Вам.
    Ответ написан
    Комментировать
  • Какую литературу почитать для саморазвития?

    Myshov
    @Myshov
    Full-stack developer
    7 навыков высокоэффективных людей С. Кови
    Легкий способ перестать откладывать дела на потом Н. Фьоре
    Ответ написан
    Комментировать
  • DevOps основные требования к знаниям. С чего начать?

    @osminog
    К сожалению, название вакансии DevOps инженер - это просто некорректная формулировка вакансии. DevOps инженеров не существует, а если вас взяли на эту вакансию, то это значит, что вы попали либо на позицию классического сисадмина, либо на позицию "И швец и жнец и на дуде дудец", в лучшем случае это будет инженер по автоматизации. DevOps - это современная методика работы ИТ-компаний, ориентированная на быстрое приспособление к меняющемуся рынку и частый выпуск обновления программного обеспечения. Эта методика требует как организационных, так и процессных изменений в компании. К сожалению, многие думают, что достаточно нанять DevOps инженера, чтобы совершить трансформацию в организации.

    Если же вы устраиваетесь на позицию релиз-инженера или инженера по автоматизации, то рекомендую вам прочитать книгу "Непрерывное развертывание ПО. Автоматизация процессов сборки, тестирования и внедрения новых версий программ" www.ozon.ru/context/detail/id/7243884 В этой книге подробно описано, что должен знать и иметь такой человек.
    Ответ написан
    Комментировать
  • Как начать програмировать для дилитанта?

    lexxpavlov
    @lexxpavlov
    Программист, преподаватель
    Начинать никогда не поздно, 35 лет - жизнь только началась, можно сказать. А ваше несчастье не помешает вам развиваться в выбранном вами направлении (программирование). Наоборот, большое количество программистов так и работают - удалённо, из дома. Поэтому, я думаю, что программирование сможет стать вам реальной профессией, а не только хобби (как вы написали в вопросе - "Цель научится писать небольшие прикладные программы так сказать для домашнего пользования").
    А для того, чтобы стать хорошим специалистом, у вас всё есть: самое главное - желание, а также свободное время. При должном усердии уже через полгода-год вы будете уметь "небольшие прикладные программы", а через два года сможете стать конкурентноспособным программистом. Хотя, помните, что хороший программист учится всегда.
    Вам только стоит выбрать, к чему вас больше тянет, потому что в программировании очень много направлений. Посмотрите мой ответ на один вопрос, там я привёл список направлений и технологий, которые нужны для этих направлений. Также указал, что отличает хорошего специалиста от не очень хорошего.
    Я бы посоветовал начать программирование с языка c#, но у вас Линукс, а там нет нормального си-шарпа.
    Хорошим решением был бы выбор Python - это очень простой, но мощный язык; но у него достаточно необычный синтаксис.
    Можно начать и с PHP, но с ним нужно быть аккуратнее, он тоже очень простой, и поэтому легко позволяет писать плохо. Хотя как язык он очень даже неплох.
    Я хочу помочь вам изучать программирование. Напишите мне (лучше на скайп), и я смогу помочь вам выбрать, с чего начать, и далее буду отвечать на ваши вопросы.
    Ответ написан
    1 комментарий
  • Как организовать резервное копирование виртуальных машин с общими дисками?

    t_q_l
    @t_q_l Автор вопроса
    Интересная личность
    По просьбам трудящихся уточняю схему виртуализации и резервного копирования.

    Диски виртуальных машин (от 2 и более) расположены на разных LUN'ах разной производительности и размера:

    1b3b6c1c6a2045848fa5970a1637df6f.png

    Резервное копирование с помощью Acronis Backup & Recovery v.11.5 подразумевает создание снимков всех дисков и копирование их на отдельных NAS.

    Проблема: pезервное копирование более двух VM одновременно с общими дисками чревато провалом производительности обеих машин и сервисов, на них находящихся.

    Бэкапить машины по одной - не укладываемся в допустимое "окно". Если запускаем резервное копирование нескольких VM одновременно, то сложно угадать, чтобы не было затыка. Пример на картинке - VM1 VM2 вместе нельзя бэкапить, но на картинке всего 4 машины, а на деле 100 VM и 15 LUN'ов.

    1. Как правильно построить схему резервного копирования?
    2. Как / в чём вести документирование, чтобы правильно распределить время старта, окончания и свободные окна для других машин?
    Ответ написан
    8 комментариев
  • Зачем вы пошли в разработчики?

    azrail_dev
    @azrail_dev
    1. Надоело работать сисадмином.
    2. Вполне.
    3. Вполне.
    4. Либо это какой-то бизнес, либо работа, которые не будут требовать полной занятости, уделять больше времени себе, семье и разработке open source проектов.
    5. Поменял, пока всё устраивает.
    Ответ написан
    Комментировать
  • Какими профессиональными навыками должен обладать Linux-сисадмин-фрилансер?

    vvpoloskin
    @vvpoloskin Куратор тега Сетевое администрирование
    Инженер связи
    Смотря какую стратегию выбрать)

    1) Узконаправленный профессионал. работы мало, зато один заказ окупает себя на пол года вперед. Любой узконаправленный навык - хайлоад, базы данных, сетевые технологии, виртуализация... Но нужно быть реально профессионалом и выходить на забугорный фриланс. Будете делать то, с чем не может справиться регулярный админ в организациях.

    2) Линуховод-эникейщик - уметь поднять LAMP, простенький мониторинг, посмотреть какие-нибудь мелочи с DNS, FTP etc... Да, вы не крутой спец, но возьмете количеством заказов. Основные задачи - настроить окружение под очередной мега-крутой стартап, поднять очередной вордпресс на хостинге. Кроме того, таких линуховодов можно найти много, можно организовать круглосуточную поддержку, поток заказов. Вы будете больше предпринимателем нежели админом.

    Выбор за вами, что больше хочется) Какая роль больше подходит - менеджера или очень умного инженера.
    Ответ написан
    1 комментарий
  • Какими профессиональными навыками должен обладать Linux-сисадмин-фрилансер?

    steep-user
    @steep-user
    вам что, мозг полностью вынесли психологи с менеджерами? вместо того, чтобы ответить нужно знать такое-то по и такие-то дистрибутивы, вы всякую демагогию развели.
    Ответ написан
    3 комментария
  • Какими профессиональными навыками должен обладать Linux-сисадмин-фрилансер?

    opium
    @opium
    Просто люблю качественно работать
    Можно послушать мое интервью
    pumainthailand.com/diskussiya-o-frilanse-i-odeske-...
    Работаю линукс сисадмином на фрилансе
    Ответ написан
    2 комментария
  • Какими профессиональными навыками должен обладать Linux-сисадмин-фрилансер?

    Jump
    @Jump Куратор тега Системное администрирование
    Системный администратор со стажем.
    1)Чисто профессиональные навыки.
    Какие именно - вопрос интересный, в принципе можно зарабатывать с любыми.
    Неплохо бы иметь те навыки которые будут нужны вашим потенциальным клиентам.
    Но тут вопрос - а кто собственно будут ваши потенциальные клиенты? Сервера под хайлоад админить будете, маршрутизацию и шейпинг в мелких конторах настраивать, сервера какого нибудь хитрого стартапа настраивать по хитрому будете?
    Т.е надо либо выяснить свои навыки и искать клиентов под них, либо найти клиентов с которыми вы хотели бы работать, узнать какие навыки им нужны, и прокачать их.
    2)Умение продавать.
    Фриланс это самостоятельная работа, нужно самому искать заказчиков, убеждать их что вы лучший исполнитель, минимизировать риски, назначать адекватную цену.
    На этом спотыкается куча хороших профессионалов, которые приходят во фриланс, и недоумевают - почему какие то ушлые ребятки, которых даже с натяжкой профессионалами не назвать, забирают кучу заказов, и имеют кучу денег, а они крутые профессионалы вынуждены перебиваться мелкими, и незначительными заказами.
    Ответ написан
    Комментировать