• Аналог composer'а для python?

    kivsiak
    @kivsiak
    software engineer
    Ответ написан
    Комментировать
  • Аналог composer'а для python?

    @bromzh
    Drugs-driven development
    Самое простое - хранить список в файле requirements.txt (имя может быть любым, но так принято):
    Flask==0.10.1
    Flask-Admin>=1.0.0

    Версии можно указывать разнообразные, в том числе, определённые коммиты/ветки/теги из систем контроля версий.
    Установить зависимости:
    pip install -r requirements.txt --upgrade
    в папке с этим файлом

    Ещё вариант описать зависимости в setup.py, но это больше для библиотек нужно.
    Ответ написан
    Комментировать
  • Что делать веб разработчику, если уже всё придумано?

    AgentProvocateur
    @AgentProvocateur
    Правильно заметили, что есть люди-исполнители, а есть люди-генераторы идей. Нужно реально взглянуть на себя и...принять это. Быть профессиональным исполнителем гораздо кошернее, чем быть генератором провальных идей. По статистике, 9 из 10 стартапов провальны...зачем пополнять собой этот список? Если ты - рыба, то многого ли ты добьешься от фрустрации по поводу неумения залезать на дерево?

    Самый верный путь к рабочей идее:
    1. Проработать в какой-либо сфере достаточное количество времени;
    2. Познать её изнутри на собственной шкуре;
    3. Выявить в ней боли/проблемы/недостатки;
    4. Решить их с помощью прикладного навыка (программирования);
    5. Обкатать в собственной работе;
    6. Упаковать решение и реализовать коллегам по сфере;
    ...
    7. PROFIT!

    Далее...даже если завтра в голову залетит рабочая идея, готов ли ты её реализовать? У тебя есть команда, готовая работать минимум полгода-год бесплатно на время создания беты, тестов, обкатки, раскрутки? Она сможет действительно реализовать всё как надо? Если нет команды, имеются ли у тебя средства на зарплатный фонд хотя бы для 5 человек на эти полгода-год? А с учетом налогов и отчислений (+30% к зарплате на руки)? У тебя есть условия для работы этих 5 человек? Есть ли у тебя сумма на маркетинговое исследование твоей идеи (или лучше облажаться на авось)? Есть ли у тебя хотя бы миллион на первичный трафик из директа? Или надеешься донести свой стартап до пользователей путём емэйл-спама?)) Я не указал и доли того, что потребуется для реализации небольшого web-сервиса, даже при наличии действительно рабочей идеи. Может быть, идеи не прут именно потому, что ты просто не готов к их реализации, и неча порожняка гонять?)

    Как выглядит стартап глазами романтичного юноши, начитавшегося глянцевых историй успеха:
    1. Придумать гениальную идею;
    2. Закодить в гараже в одну харю или в паре с дружбаном;
    3. Разместить на сервере и получать от мира благодарности, признание и мешки денег.

    Как выглядит стартап на самом деле:
    1. Пахота минимум 10 лет в одном направлении/сфере;
    2. Наработка профессионализма, идей, контактов, связей, клиентской базы, понимания всех нюансов сферы;
    3. Угон базы, угон клиентов на себя, переманивание лучших коллег/сотрудников, оформление юрлица, открытие "своего дела" на рабочей идее)))

    К примеру, "икона стиля" стартаперов - Павел Дуров, он идеолог? Нет! Прикол в том, что он именно стырил рабочую идею (также, как тырят клиентскую базу у работодателя), собрал команду, создал для неё условия, привлек корешей-евреев с еврейскими ресурсами, бюджетами и влиятельной питерской крышей, и обеспечил этому всему грамотный проект-менеджмент и маркетинг. Дело в идее? Нет, дело в реализации:)

    А если серьезно, сайт - это просто промо-материал, как билборд, только интерактивный и в интернете. Языки веб-разработки - такие же инструменты, как молоток для изготовления билбордов. Веб-разработчик - нифига не носитель уникальных знаний (который просто обязан повторить успех Цукерберга, иначе не тру), и всего-лишь современный слесарь, изготавливающий технологичные интерактивные промо-материалы. А теперь представь слесаря, который завидует предпринимателям, которые заказывают у него билборды, и вскидывает руки к небу с криком "Доколе??")) Смешно? Смешнее только реплики других слесарей на тему "если нет идей, значит меняй профессию"))

    P.S. Понимаю, что вряд ли отметишь мой ответ решением, ведь тебе хочется подбадриваний вида "Не сдавайся! Ищи и обрящешь! Не опускай руки и всё получится! Вот тебе ссылочки, вот тебе инструкции!", а не режущей глаза суровой реальности. Но в некоторых случаях действительно полезно осознать своё место в пищевой цепочке - антилопа или гепард, слесарь или архитектор, промо-изготовитель или промо-заказчик и т.д. И исходя из этого уже взращивать свои амбиции, комплексы и фрустрации. Повторюсь - в стремлении стать самым крутым слесарем нет ничего постыдного, и даже в финансовом плане может оказаться куда выгоднее и стабильнее других амбициозных вариантов.
    Ответ написан
    4 комментария
  • Как не начать говн*кодить?

    banderos120
    @banderos120
    Играю на балалайке
    - Оу, смотрите, я сумел сделать форму и отправить ее POST запросом и вывести ответ и это все в одном файле !
    - Таак, шаблоны на Wordpress, отлично, только что за файл functions.php. О! Анонимные функции я видел такое в JQuery ! Оказывается все так просто.
    - Воот, раскидал функции (процедуры) по конкретным файлам. Думаю так будет удобнее и понятнее.
    - ООП, ооп. Везде требуют ООП. "Классы", "наследование", "инка..." чего ?! Понял ! Классы - это же такая неплохая обертка для моих любимых функций !
    - Ого ! Блин, опять приходится плодить одинаковый функционал. Наверное наследование поможет это исправить. СТАТИЧЕСКИЕ МЕТОДЫ !!!
    - Черт, везде необходимо знание фреймворка. Попробую-ка я Symfony. *!"#$^$&@мать !!! КТо придумал эту хрень ! Месяц прошел я так ничего и не запустил !!
    - Роутинг, хм, толково. Контроллеры. Сервисы. Ага, так вот что означает single responsibility.
    - Ребята ! Я предлагаю не пихать всё в один бандл, а разделить.
    - ORM, репозитории, сервисы, сущности ...
    - ТАК ВОТ ЗАЧЕМ НУЖНЫ ИНТЕРФЕЙСЫ !
    - Чё за "бизнес логика" такая ? DDD ? Чта, простите ?
    - Б*я, б*я, б*я... Так, если эту сущность вынести в этот модуль, то тогда у нас появляется зависимость в вот этом модуле, а это не хорошо. Блин, этот метод вообще не несет смысла. Тааак, а тут стандартный Chain Responsibility . Отлично, напишу-ка тест под это дело.
    - Да пофиг, что по CQRS команда не должна возвращать результат, мне так удобно.
    ...
    - Да Сережа, делать вот как ты делаешь - это и есть говнокод.
    Ответ написан
    Комментировать
  • Есть ли реальная замена Java в Энтерпрайзе?

    Сейчас есть фактически 4 энтепрайз платформы (связки систем):

    1. Java платформа (Java/Scala/Kotlin). Это не просто язык, это целая экосистема на которой строят проекты. Главным образом используется в финтехе, логистики и телекомуникациях (90% всех вакансий будет туда). Тут в любом случае начинаешь с Java, а остальное учишь по необходимости
    2. .Net платформа (.net/.net core). Платформа от майкрософт, где главный рабочий язык c# (но есть и visual basic). Сейчас активно развивается, но кто его знает, что с ней в итоге будет (т.е. стрельнет и отберет долю Java или останется так, как сейчас). Госкомпании, реальный сектор, автоматизация производства
    3. Php (Главным образом Symfony). Чаще всего это компании, которые начинали с каких-то небольших проектов, но потом выстрелили и стали зарабатывать хорошие деньги (JivoSite/Скайенг/PetShop итд, ну понимаешь впринципе размер компаний и их профиль). Так как изначально все было на PHP, то и стали переходить со всяких самописов систем (а некоторые так и не перешли типа Байду) и Zend Framework на Symfony. Это больше про Россию и Европу, в США это не признают.
    4. Ruby/Python системы, где ключевые элементы переписываются на c++/go. Чаще всего практикуется такое у буржуев. У нас такое разве, что у yandex/mail/rambler/wargaming. Если планируешь работать в РФ, то это наименее перспективный стек в плане карьеры. Стоящих предложений на этот стек реально мало
    Ответ написан
    4 комментария
  • Yii 2. Два listview на одной странице. Как сделать постраничный навигатор для каждого listview в отдельности?

    padavan
    @padavan
    Нужно изменить параметр pageParam в объекта yii\data\Pagination

    $provider_top = new ActiveDataProvider([
                'query' => Object::find()->where(['status' => 1])->orderBy(['visits'=>SORT_DESC]),
                'pagination' => [
                    'pageParam' => 'page-top', # <-------------
                    'pageSize' => 6,
                ],
            ]);
    $provider_new = new ActiveDataProvider([
                'query' => Object::find()->where(['status' => 1])->orderBy(['added_on'=>SORT_DESC]),
                'pagination' => [
                    'pageParam' => 'page-new', # <-------------
                    'pageSize' => 6,
                ],
            ]);

    www.yiiframework.com/doc-2.0/yii-data-pagination.html
    Ответ написан
    Комментировать
  • Yii2, activerecord минусы asArray()?

    webinar
    @webinar Куратор тега Yii
    Учим yii: https://youtu.be/-WRMlGHLgRg
    На мой взгляд не надо выбирать. Иногда надо использовать массив иногда объект. Все зависит от ситуации. Думаю что удобнее изначально работать с объектами, а потом при оптимизации добавлять asArray где это возможно.
    Ответ написан
    2 комментария