• Что делать если команда говнокодит?

    Мы стараемся не запускать эту проблему посредством code review, пытаясь распределить нагрузку по ревью между наиболее опытными участниками. Если в коде есть проблемы - тикет возвращается на доработку с замечаниями. Даже если банально не мержится с главной веткой. Попробуйте наладить этот процесс.

    Также мы всё собираемся настроить Continuous Integration. Jenkins может прогонять по коду проверку на соблюдение стандартов и покрытие тестами, а затем показывать результаты в красивом виде. Если чей-то коммит показывает более чем N ошибок в расчёте на единицу объёма кода - можно возвращать на исправление.

    Прямо уж откровенной копипасты и лапши у нас вроде бы нет почти. Мы стараемся избегать её, придумывать декларативные абстракции во всех случаях, где много тупого императивного кода, писать в функциональном стиле. Я думаю, что необходимы постоянные целенаправленные усилия в этом направлении, чтоб не допускать засилья энтропии.

    Ещё пара идей.
    • можно отправить разработчиков на какой-нибудь онлайн-курс по чистому коду, хотя я таких даже не знаю, но наверняка должны быть
    • или устраивать "хакатоны чистого кода", на коих команда разбивается на пары-тройки, каждая из коих пишет какую-нибудь маленькую, но полезную, а главное чистую и оттестированную штуковину, причём тема - по собственному выбору. Потраченное время - оплачиваемое, разумеется. Это уже зависит от руководства фирмы, согласится ли оно на такие развлечения.


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

    Ну и важно, чтобы у самих разработчиков была установка на хороший код, профессиональная гордость. У фрилансеров её, бывает, нет, а есть отношение "тяп-ляп, лишь бы работало и лишь бы часы оплатили, а там хоть потоп". Учитывая, что их заказчики занимаются code review нечасто, развитие такого отношения закономерно. Но всё-таки хочется писать красивые программы. Такое желание обязано быть.

    Я, конечно, сам не волшебник, я только учусь, и работа с командой - такая штука, которой надо постоянно учиться. Видимо, вы тоже учитесь; успехов в этом.
    Ответ написан
    2 комментария
  • Как лучше нумеровать релизы?

    @solascriptura Автор вопроса
    semver.org/lang/ru
    Оказывается есть русская версия официального сайта ))))
    Ответ написан
    Комментировать
  • Сервер на Си, как и зачем?

    TrueBers
    @TrueBers
    Гуглю за еду
    libuv
    libevent

    Самые шустрые и распространённые библиотеки.
    Первая используется в ядре Node.js.
    Вторая — в куче проектов типа хрома, тора, файрфокса, мускуля. Умеет http-роутер из коробки.

    На Си дурной тон писать сервер, когда не знаешь Си. Бред наркомана.
    90% всех существующих серверов написано на Си. Другое дело, что надо знать одновременно и язык, и тонкости ОС, и тонкости сетей, уметь пользоваться профилировщиками памяти. Ну, и времени нужно очень приличное количество.
    Ответ написан
    Комментировать
  • Как защитить скрипт python?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    Питоновский никак

    только заклмпилив сишную либу, к которой обращаться
    Ответ написан
    Комментировать
  • Хранение всех venv в одной папке на диске?

    sim3x
    @sim3x
    https://virtualenvwrapper.readthedocs.io/en/latest/

    sudo apt install virtualenvwrapper

    Дело привычки
    Ответ написан
    Комментировать
  • Какие вопросы задаёте при знакомстве с новым отделом?

    saboteur_kiev
    @saboteur_kiev Куратор тега Организация работы
    software engineer
    Никаких волшебных вопросов не существует.
    Чем занимаешься и какие трудности - известны всем и именно они и полезны.
    Вопрос в том, достаточно ли руководитель умен и опытен, чтобы правильно оценить то, что ему отвечают.
    Ответ написан
    Комментировать
  • Какие есть видео о юнит-тестировании кода?

    sim3x
    @sim3x
    Не нужно никакого видео

    Сьиграйте с ним в Дженга

    Только он пусть играет с завязанными глазами

    Примерно так пишется софт без юнит-тестов
    Ответ написан
    Комментировать
  • Как правильно работать с потоками в python?

    @maxfox
    Я не знаю, что у вас за задача, но лучше используйте Celery или другие подобные инструменты.
    Ответ написан
    6 комментариев
  • Как найти книги по математике \ сис.администрированию?

    saboteur_kiev
    @saboteur_kiev Куратор тега IT-образование
    software engineer
    "Девять окончил еле-еле,особенно плохо с математикой\физикой\химией etc.
    В будущем хочу связать себя с IT. Выбор стоит между сисадмином и,скорее всего,кодером."

    Зачем вам связывать себя с IT, если так плохо с учебой? Неужели вы считаете, что в IT нужно просто почитать пару книжек и все пойдет путем?

    IT ВСЕ время развивается. Учебные программы и учебники для современного IT устаревают слишком быстро, поэтому никто не будет тебя учить, нужно все самостоятельно. А ты даже базовые книги сам найти не можешь.

    Даже на новичка, которого можно взять на работу, вам придется изучить больше, чем за всю школу. Вы точно понимаете, что такое современное IT?
    Ответ написан
    5 комментариев
  • Можете те ли подсказать пару идей для разработки и в будущем для диплома?

    Какую тему диплома на ... выбрать?
    Идешь к бизнесу -- говоришь, что хочешь работать бесплатно и делать все что ему нужно
    Если не нашел бизнеса -- идешь к преподу, он находит тебе задачу или бизнес у которого есть задачи
    Если нет -- идешь в гугл и берешь любую задачу

    https://www.reddit.com/r/AppIdeas/

    sim3x (c)
    Ответ написан
    Комментировать
  • Можете те ли подсказать пару идей для разработки и в будущем для диплома?

    @Animkim
    Питон вокруг меня
    Сложного не хочется, легкое скучно, хм... может это не ваше?
    Само продвижение дальше подразумевает что нужно преодолевать трудности. Берешь задачу которую не представляешь как делать, та которая вызывает сложности, та которая заставит написать сотню запросов в гугл и прочитать кучу статей или даже целые книги и вот тут идет развитие.
    Ответ написан
    Комментировать
  • Можно ли использовать PHP и Python в одном веб-приложении?

    @LiguidCool
    257803_original.jpg
    Ответ написан
    Комментировать
  • Как вы организуете свою работу?

    paulradzkov
    @paulradzkov
    Дизайнер, верстальщик, начальник отдела UI
    Про GitHub.

    1) Любой проект, даже самый маленький начинаю в новом репозитории. Потому что:
    - мало ли что из него вырастет,
    - код в Гитхабе это бэкап, не засерается место в Дропбоксе или других облаках,
    - мгновенный поиск по коду в репозитории, актуально когда проект уже достаточно большой,
    - легче спросить совета у коллег или показать проблему, когда исходники можно посмотреть онлайн,
    - проект удобно хоронить, если он заглох, или закинуть в портфолио, если он клевый.

    2) Создал себе на Гитхабе две дополнительные организации внутри своего аккаунта.
    - «paulradzkov-forks» — для форков чужих проектов.
    - «paulradzkov-heaven» — кладбище для старых проектов, куда перемещаются все неактуальные проекты.
    Эти две дополнительные организации позволяют очистить основной аккаунт от мусора. В нем теперь только несколько актуальных проектов, в которых легко ориентироваться.

    3) Перемещаю все старые проекты из Дропбокса на Гитхаб в «paulradzkov-heaven». Проектов много, это долго, но освободилось уже несколько гигов (т.к. там кроме кода psd-исходники, архивы с инсталляторами и прочее). Место в облаках заканчивается, а на Гитхабе — резиновое.
    Это кладбище уже пригодилось, когда у меня попросили поискать исходники проекта, над которым я работал 3 или 4 года назад, а я через минуту ответил им ссылкой на нужный репозиторий. Не пришлось никуда лезть, распаковывать, искать, запаковывать, отправлять почтой или закачивать в облако.
    Повторюсь, что на Гитхабе классный поиск по исходникам: если нужно посмотреть, как что-то сделал в старом проекте, но не помнишь в каком — можно довольно быстро найти искомое без возни с архивами.

    Итого.
    Код должен лежать на Гитхабе.
    В том числе старые проекты.
    Используйте организации, чтобы рассортировать проекты, если их много.
    Порядок там, где у каждой вещи есть своё место. Придумайте себе правила порядка заранее и соблюдайте их, чтобы не тратить время на ликвидацию беспорядка.
    Ответ написан
    10 комментариев
  • Какие знания нужны программисту на первом курсе вуза?

    sim3x
    @sim3x
    Что должно быть у меня в голове к началу сентября?
    - английский и желание его улучшать
    - понимание, что знания не получаются, а выдираются из преподавателей
    - гипертрофированное желание писать программы за деньги в коллективе здесь и сейчас
    - понимание, что знания не нужны сами по себе - они нужны или для решения проблем (инжиниринг), или для развития науки (научная деятельность); только в случае выбора научного профиля стоит учить все подряд
    Ответ написан
    3 комментария
  • В какой среде можно экспериментировать и обучаться работе в docker?

    @Mnab
    Поднимите виртуалку с убунтой и эксперементируйте
    Ответ написан
    Комментировать
  • Почему Postgresql такой медленный?

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

    Вы случайно не используете настройки по умолчанию (а они там такие чтоб работало даже на калькуляторе)?
    есди да то советую postgresql.leopard.in.ua там какраз новая версия недавно вышла.
    Ответ написан
    1 комментарий
  • Не знаю математики и английского, с чего начать обучение программированию?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    "Интересует за что конкретно нужно взяться в практическом плане, ничего лишнего, чтобы успешно приступить к будущей работе хотя бы на C, С++ или C#, а может на чём-то ещё."

    Возьмитесь хотя бы за С, С++ или С#, а может еще за что-то.

    P.S. Математику нужно изучать хотя бы за то, что она приводит мозг в порядок (С) Ломоносов.
    Ответ написан
    Комментировать
  • Тяжела ли жизнь программиста без HTML и CSS?

    @D3lphi
    Если вы пойдете работать в более - менее серьезную контору именно на позицию back-end developer'а, то да, возможно. Ответственность на вас будет лежать только за серверную часть. Опять же, очень часто и на бэк энд разработчика в требованиях есть, как минимум, базовые знания html, css, js. Так что в идеале, конечно, знать их нужно. Если же вы пойдете работать в фирму, которая пилит "говносайтики" на вордпрессе для дяди Васи из второго подъезда, то тут для вас плохие новости. Там, как правило, нет четкого разделения на back и front end developer'ов. Всю работу там делают "веб-мастеры", которых назвать full stack девелопероми язык не поворачивается (В силу их, как показывает практика, низкой квалификации).
    Ответ написан
    Комментировать
  • Flask, почему при отправке запроса получаю ошибку 404?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Я в вашей форме вообще не вижу отправки id.... Может быть это через javascript делается, тогда и смотрите, что вам браузер отправляет, и по какому url. В браузере включите режим для разработчиков, там все запросы видны.
    Ну и должно быть что-то типа этого в шаблоне
    <form ... action="{{url_for('.comment_entry',id=entry.id)}}" ... > ...
    Ответ написан
    Комментировать