• Использование нелицензированного ПО в организации, кто несёт ответственность?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    А теперь от теории к практике, я сам несколько раз попадал под проверки, а также несколько лет "работал" независимым специалистом по киберпреступлениям, в том числе на проверках лицензионной чистоты. Руководство всегда показывает пальцем на админа и говорит "Мы не знали, вот ответственный специалист!" Заканчивается это тем, что компанию штрафуют, а админу прилетает срок. Наличие бумажки о том, что директор знал об установке пиратского софта трактуется судом как преступный сговор. Позиция админа "я не обязан разбираться в тонкостях лицензирования" - это как позиция бухгалтера "я не обязан разбираться в тонкостях налогообложения". Правильных решений может быть только два - либо заставить компанию перейти на лицензионное ПО, либо уволиться.
    Ответ написан
    39 комментариев
  • Использование нелицензированного ПО в организации, кто несёт ответственность?

    @pfg21
    ex-турист
    Пишешь документ на имя директора, где подробно перечисляешь что на таких-то компутерах имеется такое-то нелицензионное ПО. регистрируешь его у секретарши. делаешь копию с регистрационными надписями.
    твоя работа сделана, теперь начинается работа начальства по выделению денег на исправление незаконного использования.
    твоя * прикрыта.
    Ответ написан
    9 комментариев
  • Использование нелицензированного ПО в организации, кто несёт ответственность?

    @other_letter
    1. Ни в коем случае не писать никаких бумажек, как советует pfg21 .
    2. Ни в коем случае не говорить открыто, что это-пиратка.
    3. Ни в коем случае не вести "журналов установки пиратского софта".

    Зачем: В случае чего все дружно-дружно покажут на Вас. Ответственность несёт Директор. Скорее всего - даст взятку. Но если и он решит Вас слить - самый плохой вариант (остальные-то работники наверняка подтвердят). И эти бумажки будут показывать процесс подготовки к преступлению, факт его завершённости. А умысел как-нибудь найдётся. Плюс эта бумажка - подтверждение сговора (т.е. уже ч.2)

    Как делать: Вы не обязаны разбираться в тонкостях лицензирования. Кто угодно пусть пишет что угодно в стиле тыжпрограммист, но если такого навыка/обязанности нет в должностной инструкции (наверняка нет, и надо, чтобы не было), если не было такого курса в ВУЗе или Федерального Закона (тут условно) - не обязаны. Вы просто ставите то, что просят. Так, как просят. С дисков, которые Вам предоставил согласно ТК Работодатель (в качестве инструмента).
    Ответ написан
    42 комментария
  • Как построить конвейер сайтов на Ruby On Rails? Подходит ли RoR вообще?

    Matvey-Kuk
    @Matvey-Kuk
    Разработчик в Cisco, CA.
    Настраивал конвейер для полностью аналогичной компании пару лет назад. Единственное отличие - почти не было PHP наследия.

    За основу взял Django стек, т.к. он отлично подходил по количеству свободных профессионалов на рынке и тем, что в Django "всегда есть единственный очевидный путь как сделать что-либо правильно", тогда как в Node этих путей очень много и каждый новый нанятый программист должен чуть-чуть, да изменять свои подходы к разработке.

    Поначалу основной упор пришлось таки сделать на DevOps, все работало на GitLab, GitLab CI, Docker и хостинге Flops.ru. Это очень муторная, долгая работа по первичной настройке всего и вся. Не уверен, что её получится избежать.

    Разработка проекта велась следующим образом:
    1) Есть репозиторий с "заготовкой", копируется в новый репозиторий.
    2) Подключается GitLab CI, в переменных среды задается вся-вся конфигурация. Например, на каких серверах запускать, на каких доменах и так далее.
    3) Программисты выпинываются на прогулку по другим репозиториям в поисках удачных технических решений в похожих проектах.
    4) Пушат код, он заливается на сервачки. Каждая ветка - на свой поддомен, фичи тестятся отдельно. Кодревью, Юниттесты, Мерж реквесты - это все реально помогает.

    В итоге когда все завелось и начало помогать, а не делать больно (примерно через пол года), появилась другая проблема - как нам то же самое соорудить на фронтенде? А это уже совсем другая история...
    Ответ написан
    2 комментария
  • С чего можно начать изучение Symfony и стоит ли начинать знакомство с фреймворками именно с него?

    @ArtemioVegas
    php developer
    Привет!
    Сам не так давно изучаю Симфони, не всё сразу заходит , но изучать интересно, т.к. возможности у фреймворка достаточно большие. Исходный код компонентов достаточно логичен и чист(имхо).
    На русском языке лично я почти не встречал актуальных материалов, зато на английском море, офф документация просто шикарная, да и не настолько там сложный английский чтобы не понять (гугл транслейт помогает).
    По поводу материалов для изучения - есть такой интересный сайт, на котором много актуальных обучающих материалов по симфони (и не только) - https://knpuniversity.com/ курсы ведет Ryan Weaver https://github.com/weaverryan Symfony docs lead, часть контента платная, но текст и листинг кода можно смотреть в любом случае.
    Плюс рекомендую глянуть Демо проект симфони https://github.com/symfony/symfony-demo в котором показывают как надо делать приложения (от разработчиков симфони)
    Ответ написан
    1 комментарий
  • С чего можно начать изучение Symfony и стоит ли начинать знакомство с фреймворками именно с него?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Да, изучение фреймворков обязательно надо начинать с Симфони.
    Ларавель - попсовый фрейворк, который тоже может быть использован правильно, но рекламируется он как инструмент для "фигак-фигак - и в продакшен". Все туториалы по нему показывают, как сделать побыстрее, но этот подход выйдет боком в будущем. Ларавель для изучения - это зло.

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

    При наличии готового проекта лучше всего изучать именно на этом готовом проекте. Практика в 100 раз лучше любой теории.
    Ответ написан
    2 комментария
  • 404 при попытке сделать REST?

    DarkRaven
    @DarkRaven
    разработка программного обеспечения
    1. Проверьте роутинг, особенно аннотации.
    2. Прекратите использовать продакшен-точку входа и обращайтесь на app_dev.php. У вас могут быть проблемы с роутингом - кэш не перестроен.
    Обращайтесь на localhost/web/app_dev.php/newUser, если вы в dev-окружении
    Ответ написан
    Комментировать
  • Какой opensource проект в качестве примера при изучении symfony 3?

    GTRxShock
    @GTRxShock
    SA
    посмотрите [Knp University] Learn Symfony 3 и будет вам счастье.
    Бест практики описаны, как ориентир можно рефакторинг Фаулера держать под рукой и как ни странно практика, много практики, придерживаясь основных идей: логика в сервисах, работа с базой в репозиториях, сущности простые и прозрачные, контроллеры держим тонкими. Внимательно изучите возможности аннотаций, di, security voter`s, расширения твига, ассеты и прочие ништяки симфони, чтобы возможности для реализации правильной архитектуры были максимальными. Если кажется, что с задачей уже не раз сталкивались коллеги ранее, посмотрите готовые бандлы, чтобы не тратить время на велосипеды (за исключением ситуаций прокачки скилла написания оных) Тут главное соблюдать границу между техническим перфекционизмом и реальностью :)
    Как уже упоминали демо приложение - вполне достойно изучения, а вот насчет Sylius'a неоднозначное впечатление, довольно давно его просматривал, symfony way как-то не проглядывается, хотя вполне занятно и интересно сделано.

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

    @RidgeA
    Он не падает - он работает как и должен: останавливается после выполнения команды.
    Если потом надо в нем запустить веб-сервер то сделать можно как-то так

    CMD ./vendor/bin/doctrine-module migrations:migrate && <some_command_to_start_server>
    Ответ написан
    Комментировать
  • Куда двигаться дальше senior разработчику? Новый язык, технологии, opensource, стартап?

    @devunion
    Начну с конца. Суммарный вектор равен нулю именно потому, что ваши временные цели не являются целями. Они есть способ решить проблему накопившейся неудовлетворенности. По этому и интерес пропадает спустя какое-то время. Сама по себе такая цель не зажигает.

    Я был на вашем месте лет 5-6 назад. Точно так же достиг в Java определенного уровня, после которого все стало как-то не интересно. Новые задачи перестали быть новыми. Творческий процесс программирования стал машинальным кодингом. Думаю, подобный процесс выгорания характерен для любой профессии, не только для программирования. Психолого говорят, что профессионализм достигается примерно за 5 лет. Дальше рекомендуется менять работу.

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

    Можно еще в погоне за новыми проектами поискать работу на Upwork/Freelancer. Но Java-разработчикам там тяжело. Либо будет мелочь на подобие студенческих курсовых, либо будет нужен удаленный разработчик на фуллтайм в большой проект. Именно то, что вы сейчас делаете.

    В конечном итоге, я полностью поменял специализацию с Java на неширокую нишу, которая раньше являлась хобби. В финансовом плане было более выгодно за счет узкой специализации.

    Сейчас и этот пятилетний цикл подходит к концу. Пилю стартап :-).

    Как правильно посоветовал Дмитрий, нужно найти то, что нравится и идти в эту сторону. Должно быть "движение к" вместо текущего "движения от". Критерий выбора: "настоящая работа такой и должна быть – чтобы вы готовы были за нее доплачивать, лишь бы вам разрешили ее делать." - НЛПшники.

    Удачи!
    Ответ написан
    2 комментария
  • Куда двигаться дальше senior разработчику? Новый язык, технологии, opensource, стартап?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Java
    Седой и строгий
    Как вы это делаете?! За 17 лет работы в ИТ у меня ни разу не возникало вопроса "Куда двигаться?", только "Где взять времени на освоение всего этого бесконечного изобилия технологий, углублённого изучения уже знакомого и реализацию множества идей?"
    Ответ написан
    4 комментария
  • Куда двигаться дальше senior разработчику? Новый язык, технологии, opensource, стартап?

    gobananas
    @gobananas
    finishhim.ru
    пришло понимание, что программирование это не знание языка и фреймворков

    Какой вы для себя ответ определили на вопрос что же такое программирование?

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

    Стартап? Определите какая потребность не закрыта у вас и друзей и пилите его каждый вечер по часу-два.

    Big Data это ведь не самоцель. Вот прошли вы курс допустим. Что вы будете бигдейтить, на каких данных?

    Самое главное ответьте себе на вопрос что вам по-настоящему нравится и двигайтесь в эту сторону.
    Ответ написан
    3 комментария
  • На какой платформе лучше всего развертывать проект на Django?

    @ralaton121
    Ну возьмите Heroku.
    Там все тоже - только завернуто гораздо удобнее. Минимум телодвижений по администрированию.
    А Docker, Ansible, Vagrant - это вы еще увязните в изучении...
    Ответ написан
    Комментировать
  • На какой платформе лучше всего развертывать проект на Django?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Django
    Седой и строгий
    Если у вас количество серверов за десяток не выйдет и нет надобности быстро разворачивать новые чуть ли не ежедневно, вам не нужны Doker, Vagrant, Ansible. Вы — не Google.
    Ответ написан
    4 комментария
  • Организация работы с базой данных в docker?

    skobkin
    @skobkin
    Гентушник, разработчик на PHP и Symfony.
    1. Шарите дамп базы в контейнер (копировать не стоит, т.к. из-за слоёности образов, контейнер может получиться слишком жирным).
    2. При сборке запускаете наполнение БД (pg_restore database.dump / mysql < database.sql)

    А ещё, если работаете с Doctrine, то можно создавать БД средствами ORM и наполнять фикстурами.
    Ответ написан
    2 комментария
  • Рисование графиков, есть ли интересная статья или пример?

    dummyman
    @dummyman
    диссидент-схизматик
    Из jquerийных простенький morris и посложнее flot.
    Для Анжелы n3. Для любителей Ember Charts.
    Простенькие ChartJS и uvCharts.
    Очень легкий и хорошо разжеванный ChartList.
    Не менее хорошо разжеванный, но платный, ZingChart.
    Поддержку legacy обеспечит FusionCharts - обещают работу на IE6.
    Профессионалам понравится список фичей plotly.
    Вы бы конкретнее указывали какие графики вам нужны. А то все не подходят, а что нужно - секрет. Хотите создавать свою систему - читайте исходники существующих. - Врятли любая статья будет лучше и более полной чем исходники рабочих библиотек.
    Ответ написан
    5 комментариев
  • Как обновить страницу через AJAX в DJANGO?

    tema_sun
    @tema_sun
    Во вьюшке:
    def post(self, request):
            create_form = BookForm(request.POST)
            if create_form.is_valid():
                create_form.save()
                
            response = {"data": "goes here"}
    
            return HttpResponse(json.dumps(response), content_type='application/json')


    В js'e:
    $.ajax({
        method: 'post',
        url: your-url,
        data:  serialized-data
    }).done(function(response){
        console.log(response.data)
    });

    Ну или что-то аналогичное, если jquery не используете.
    Ответ написан
    6 комментариев
  • Как получить индекс итерации?

    Из вопроса не очень понятно что нужно сделать.
    3.4.5 Рендеринг коллекций
    С индексом
    Надеюсь это поможет.
    Ответ написан
    1 комментарий
  • Что посоветуете еще подучить что бы тянуть на Junior PHP разработчика?

    Я бы не назвал ваш уровень Junior. Если вы в состоянии самостоятельно
    - развернуть девелоп-среду
    - вести гит
    - писать код и обкладывать его тестами
    - настроить деплой

    то значит, в состоянии самостоятельно ставить себе задачи. А это уже на Миддла тянет )
    А у Миддла способ развиваться только один - практика. Самообучаемость, как видно, присутствует. Не зацикливайтесь на парадигмах, фреймворках и ЯП - берите проекты и выполняйте их
    Ответ написан
    1 комментарий
  • Как вывести статью только один раз?

    @rorc
    Удалить через шаблонизатор дубли здесь будет затруднительно, если это действительно нужно то лучше использовать обработку на этапе views, удалив дубли или выводя статьи через шаблонный тег, в коде которого проверять на совпадения.

    Архитектурная ошибка уже допущена на этапе проектирования url. {% url 'articles' article.slug article_page.slug %}. В любом случае будут дубли, т.к. адрес url будет /cat1/article /cat2/article/

    Способов избавиться от них два:
    1) Статьи отдельно, категории отдельно. /url/catalog/name /url/article/name
    В этом случае даже если выводится одна статья несколько раз, url уникален
    2) Одна главная категория, url на основании этой категории. Остальные категории второстепенные, отдельным списком.

    Для чего два вложенных цикла сделали тоже не очень понятно, обычно один цикл и url на основе запроса данных из таблицы по ключу.
    Ответ написан
    1 комментарий