Задать вопрос
  • Как установить обновление Jetbrains?

    @i4its
    Привет! Поделюсь своим опытом. Сделать, как рекомендовал Владислав Писарев у меня не вышло - все равно вылезала ошибка про санкции и туда сюда.
    У каждого плагина есть домашняя страничка. Перейти на неё можно прямо из IDE.
    66e0015240e0d020446000.png
    И вот с нее я скачал "свежий" файл для ручной установки(при скачивании появляется инструкция по установке).
    Удобно ли это - не очень. Работает ли - да!
    Ответ написан
    1 комментарий
  • Nuxt.js в PHPStorm, как настроить?

    @its2easyy
    Нашёл как заставить учитывать алиасы ~/@, нужно создать js файл с содержимым
    const path = require('path')
    module.exports = {
      resolve: {
        extensions: ['.js', '.json', '.vue', '.ts'],
        root: path.resolve(__dirname),
        alias: {
          '@': path.resolve(__dirname),
          '~': path.resolve(__dirname),
        },
      },
    }

    и сохранить в корень с названием webpack.config.js, или с любым другим названием и тогда в phpstorm в settings - languages & framework - javascript - webpack выбрать этот созданный файл. Файл потом можно в gitignore добавить.
    https://github.com/nuxt/nuxt.js/issues/1881#issuec...
    Ответ написан
    1 комментарий
  • Сколько стоит час веб-разработчика-фрилансера?

    @deliro
    Ты веcь такой кругом молодец, то знаешь, это знаешь. А теперь представь себе среднестатистический проект, который должен приносить бизнесу деньги. За две недели работы ты едва напишешь хлипкий CRUD для данных, неправильно смаппив бизнес-сущности в объекты ORM, ещё через месяц натянешь какой-то слайдер на jQ, попутно захватив 2мб JS кривых библиотек, а через два заказчик поставит тебе плохую оценку, потому что твой ценник он оплатил не за то, что ему нужно, а потому что ты знаешь монады, которые ему даром не сдались.

    А теперь давай представим простого программиста. Из алгоритмов он с трудом вспоминает сортировку пузырьком, а двусвязный список — предел его знаний о структурах данных, и даже этим списком он пользовался два раза в жизни. Хаскель он никогда не видел в глаза, C++ учил только в школе, вместо этого пишет неэффективный код на PHP. И у него есть опыт. За день он распишет сущности, за второй сделает универсальный CRUD, на третий день поднимет фронт на React'е с SSR. Да, внутренности проекта будут "медленными". Вместо O(logN) что-то будет выполняться за O(N) или даже O(N^2), но всем похер. Пока всё работает на приемлемом уровне — бизнес радуется.

    Кстати, к чему эта поучительная лапша? Я хотел сказать, что всеми этими модными словами можно пугать друзей и преподавателей, но в реальной жизни все алгоритмы уже реализованы, все типы данных уже подобраны оптимально. Знать их полезно для себя (чтобы мозг не атрофировался), но не для работы. Для работы тебе нужны такие навыки как:

    * Оптимальный баланс между говнокодом и идеальным кодом
    * Оптимальный баланс между скоростью разработки и оптимизацией кода
    * Оптимальный баланс между поддерживаемым кодом и костылями
    * Умение использовать те инструменты, с которыми ты работаешь. Опять же, для того, чтобы писать быстро, при этом имея минимальное количество говнокода и обеспечивая максимальную поддерживаемость (в пределах сроков). Например, можешь выкинуть в помойку свой Vim, как бы круто ты себя не чувствовал, разрабатывая в консольном редакторе, если продукты от JetBrains позволят за это же время сделать что-то лучше или чего-то больше
    * Чувство "знаю больше менеджеров". Это то чувство, когда тебе кажется, что "вот эта фича скоро изменится" и надо сделать архитектуру заранее более гибкой. Или "вот эту фичу мы через месяц выпилим" и не надо тратить на неё силы — напиши костыль и через месяц с чистой совестью удали его
    * Знания, как сделать ту или иную фичу. Потому что фичи повторяются (немного видоизменяясь) от проекта к проекту. И если ты сделал что-то за два дня, в следующий раз ты похожее сделаешь за три часа

    Что касается инструментов, выбери любой полноценный фреймворк, который умеет решать 90%+ потребностей "из коробки": Symfony, Django, Laravel

    Всякие "минималистичные" поделия вроде Falcon, Flask (в PHP не знаю, я на питоне пишу) оставь хипстерам. Пусть они говорят: "Мой фалкон такой быстрый, он написан на Cython". Тебя это не должно волновать, потому что бизнес с твоей скоростью разработки уже заработал достаточно денег, чтобы купить ещё десять серверов, пока фалконисты неделю гуглили, как прикрутить миграциии и запустить юнит-тесты на VPSке за пять баксов.
    Ответ написан
    5 комментариев
  • Разработка на Freelance?

    @Kostik_1993
    Web Developer
    PHP не предлагать

    Простите конечно, но и дурак. Весь мир Российского фриланса крутится вокруг него. Если вы серьёзный разработчик вам не составило бы труда его выучить и попробовать на нем поработать.
    Если вы такой брезгливый то попробуйте не знаю на Django, возможно вы увидите себя в дальнейшем Python разработчиком
    Пока это два основных серверных языка во фрилансе. Другие я встречаю крайне редко или никогда.
    В JS сейчас можно на Angular что-то найти, но шансов найти что-то на Vue или React в разы больше
    Ответ написан
    3 комментария
  • Какие темы изучить для прохождения отбора на Python?

    irestone
    @irestone
    Junior Web Developer
    Во-первых: "На все это у меня есть пару недель.(Поверьте я псих, и не такое могу)" - нет, не можешь. За пару недель можно изучить некоторые технологии, но научиться правильно думать нельзя.
    Во-вторых: "На Видеокурсы времени нет! Нужна текстовая информация!" - видео усваивается лучше. Но, в целом, нужно комбинировать все возможные ресурсы.
    В-третьих: "JavaScript (НЕНАВИЖУ)" - нет смысла ненавидеть молоток. Это очень наивная позиция. Выбери задачу и используй то, что нужно.
    В-четвертых: Объем математики определяется целью: занимаешься машинным обучением, искусственным интеллектом и прочим дата сайенс или пишешь физический движок, например, - понадобится серьезная математика. В остальных случая хватит школьного курса, и то средней школы.

    Непосредственно подготовка:
    Cracking the Coding Interview
    Elements of Programming Interviews in Python
    Из этих книг тебе станет ясно, что нужно знать, чтобы пройти собеседование на работу.

    Тренируй problem solving скилл на специальных сервисах. Популярные: https://leetcode.com, https://www.hackerrank.com, https://practice.geeksforgeeks.org
    Нужно не просто решать задачи, а учиться это делать правильно, походу изучая алгоритмы, структуры данных и анализ сложности. Грокаем алгоритмы - хороший выбор. Будет отлично, если найдешь друга, с которым можно будет тренировать witeboard'ы, когда один берет на себя роль интервьюера и задает другому задачу. Это важно. Так вы сможете разобраться, где и почему вы застреваете и научитесь правильно выстраивать мыслительный процесс при решении задач. По большому счету, это твой основной навык как программиста, именно его и будут проверять в первую очередь при собеседовании на работу. По крайней мере, должны. Если спрашивают только конкретные технологии, то тебе стоит задуматься, стоит ли у них работать. (Подсказка: нет)

    Изучай ООП и Паттерны проектирования.
    Все доступно и с примерами.
    Видео по одной популярной книге, которую тоже можешь начать читать.

    Изучай инструменты (языки, фреймворки и пр) под конкретную сферу. Не надо изучать все подряд, учи то, что нужно для того, чем ты хочешь заниматься, конкретный стек технологий. Помни про принцип Парето.
    Например, вот хорошие ресурсы по питону:
    https://www.amazon.com/dp/1593279280/
    https://www.amazon.com/dp/1593275994/
    https://www.youtube.com/watch?v=8DvywoWv6fI

    Наконец, ты должен понимать, что нетехнические, т.н. софт-скиллы не менее (а в случае с джуном часто более) важны. Я не зря предлагал ресурсы на английском - этот язык разработчику знать важнее, чем любой язык программирования. Не знаешь, с чего начать? Посмотри "Полиглот. Выучим английский за 16 часов!", начни пользоваться https://lingualeo.com (там есть и тренировки и курсы)

    Окружи себя инфосферой: ютуб, твиттер, телеграм и пр.
    Мне, например, нравятся эти ребята:
    https://www.youtube.com/channel/UCVbz7l0COUdLupcY4...
    https://www.youtube.com/user/HexletUniversity
    https://www.youtube.com/channel/UC4xKdmAXFh4ACyhpi...
    Они помогут тебе начать думать в правильном направлении.

    Удачи!
    Ответ написан
    3 комментария
  • Как выбрать элемент если у него нет class, name, id?

    RAX7
    @RAX7
    document.querySelector('[for="base"]').textContent = 'some1:';
    Ответ написан
    Комментировать
  • Где найти тимлида-консультанта laravel/vue.js?

    RaSeR
    @RaSeR
    php.guru
    Можете мне написать
    Ответ написан
    Комментировать
  • Как отследить нажатие Enter на форме?

    crashxd
    @crashxd
    Backend разработчик
    В PHP никак. Используйте JavaScript.
    Ответ написан
    Комментировать
  • Не могу сортиронуть в PHP?

    0xD34F
    @0xD34F
    На основе этого значения надо менять результат внутри callback-функции передаваемой вторым параметром usort()

    Умножайте результат на +/- 1, в зависимости от переданного значения:

    function array_sort(array &$arr, $key, $sort = 'asc') {
      $sort = $sort === 'asc' ? 1 : -1;
      usort($arr, function($a, $b) use($sort, $key) {
        $a = $a[$key];
        $b = $b[$key];
        return $sort * ($a === $b ? 0 : $a > $b ? 1 : -1);
      });
    }
    Ответ написан
    7 комментариев
  • Как вставить 1M+ строк в MySQL?

    Stalker_RED
    @Stalker_RED
    LOAD DATA INFILE '/tmp/test.txt' INTO TABLE test
    https://dev.mysql.com/doc/refman/8.0/en/load-data.html

    Или если из дампа
    mysql -u dbLogin -p dbName < somefile.sql
    Ответ написан
    3 комментария