• Как перестать делать баги?

    saboteur_kiev
    @saboteur_kiev Куратор тега Организация работы
    software engineer
    Я делаю много, порой в 10 раз больше. Я не знаю как побороть это.

    Ну если не знаешь, то никак

    Я уже пишу тесты, знаю что и как, но даже это не успокаивает.

    Тесты не должны успокаивать, они должны выполнять свою задачу, а имено заниматься регрешеном и базовым юнит тестированием

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

    А как тесты тогда проходят? Можешь взять test-driven-development. Сперва пиши тест, закоммитить, убедись что он запустился и зафейлился, а потом пиши функционал. И тут уже пока тест не позеленеет, не пропустишь.

    Или я неправильно понял документацию или прочитал но не обратил на важные моменты.

    Читай внимательно, обращай внимание.

    Но как только возвращаюсь к известной таске то сразу появляется 100 багов. Из за того что я где то поменял. И вообще также заметил что даже в тексте тоже самое, порой раз несколько исправляю.

    Плохие названия функций/переменных? Недостаточно комментариев?

    И обычно я знаю правило чистого кода, пользуюсь eslint, изучал алгоритмы и решал задачки.

    Надо знать не обычно, а всегда, упрощает.

    Ну а так - самоорганизация это заставить себя делать аккуратно. Нет волшебного ингредиента.
    Ответ написан
    Комментировать
  • Как использовать один аккаунт для 2 бд?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега PostgreSQL
    Седой и строгий
    Пихать БД в контейнер - это в принципе плохая идея.
    Ответ написан
    4 комментария
  • Где можно использовать горутины в Go?

    EvgenyMamonov
    @EvgenyMamonov Куратор тега Go
    Senior software developer, system architect
    Самый простой пример - это HTTP сервер.
    Когда к вам приходит HTTP запрос - создаётся горутина и каждый запрос спокойно обрабатывается, никто никого не ждёт. Т.е. сервер может обрабатывать параллельно несколько запросов как раз за счёт горутин.

    Фактически, почти во всех сетевых сервисах есть смысл использовать горутины для распараллеливания обработки запросов (кроме epoll, kqueue и т.п.)

    Еще хороший пример.
    Вам нужно сделать парсер Авито :)) или индесатор сайтов.
    Т.е. задача сводится к тому, что нужно будет постоянно качать страницы с сайтов.
    Если вы будете качать одну страницу за другой - вы будете очень долго качать.
    А так вы можете сделать пул из нескольких горутин (как минимум по 1 на поток процессора) и получите параллельное скачивание страниц.

    Для ускорения работы вычислений (параллельные вычисления) есть смысл использовать горутины только по 1 на поток процессора). Т.е. в случаях, когда у вас огромный объём данных и нужно максимально ускорить его обработку. Например у вас файл 100Гб, и 8 ядер в процессоре - вы можете разбить файл на 8 частей и параллельно эти части обработать (в самом простом варианте, в реальной жизни нужно будет просто по частям считывать новые данные и скармливать свободной горутине)

    Еще когда нужно сделать чтобы какая нибудь задача выполнялась в "фоне".
    Например периодическая очистка кеша/устаревший записей в базе.

    Реальных примеров намного больше :)
    В целом их есть смысл использовать там, где нужно параллельное выполнение какой либо задачи или разных задач параллельно :)
    Ответ написан
    2 комментария
  • Где можно использовать горутины в Go?

    2ord
    @2ord
    Задачи у всех разные. Вы работали с потоками? Это похоже на них.

    Простой пример:
    Есть 2 запроса в БД. Один длится, скажем, 3 секунд, другой 10 секунд. И нет зависимости одного от другого.
    Если выполнять их последовательно, это займет 13 секунд. Многовато. Почесав лоб, вы приходите к другому решению:
    выполнять 2 запроса одновременно, каждый запрос в горутине! Дождавшись их окончания, пройдет 10 секунд. Экономия!

    Другой пример:
    Вы работаете с очередями. В одну очередь вы отправляете команды задач, а в другой вы получаете их результаты. Разумеется, и продюсер и консюмер должны работать независимо друг от друга. Как вы запускаете их в Го?
    Правильно, двумя горутинами!
    Ответ написан
    Комментировать
  • Есть какая-нибудь книга как продвигать it project или статья?

    @0nkery
    Есть очень известная книга Crossing the Chasm Джеффри Мура. Как раз про маркетинг хай-тек стартапов.
    Ответ написан
    Комментировать
  • Есть какая-нибудь книга как продвигать it project или статья?

    @Lobanov
    Самая первая книга, которую просто для ознакомления стоит прочитать - Lean StartUp, там конечно воды дохрена, но ключевая мысль - надо все тестить.

    По факту, перед написанием кода надо было задаться вопросом - для кого этот продукт? Кто целевая аудитория?

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

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

    Все.

    Проще всего вам взять таргетолога, зафигарить лендосик, налить таргета на лендос, собрать контакты, провести хотя бы 50 интервью, лучше конечно 100, для чистоты данных. Сделать аналитику этих интервью и людей, которых вы интервьюировали и только после этого приступать к написанию кода. Это позволит вам сэкономить сотни, а то и тысячи часов работы.

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

    Кстати, вот недавно курс попадался https://simulator.gopractice.ru/ хз конечно норм он или нет, но просто для информации, может что-то вам зайдет с этого сайта.
    Ответ написан
    1 комментарий
  • Есть какая-нибудь книга как продвигать it project или статья?

    @Denioo
    Есть какая ни будь книга как продвигать it project или статья, или придётся самому разбираться?


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

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    600bc83f7a66c023877322.png
    Здесь сделали ?

    600bc85896cb8423120640.png
    У меня есть опрос блютуз устройств. Сканирование происходит только с активити сопряжения, поэтому написал, что в фоне постоянно не использую.
    Ответ написан
    6 комментариев
  • Как разложить число в PHP?

    rozhnev
    @rozhnev Куратор тега PHP
    Fullstack programmer, DBA, медленно, дорого
    Можно решить в лоб: перебором всех значений - медленно но верно:
    <?php
    function number_sum($num)
    {
        return array_sum(str_split($num));
    }
    
    $sum = 28;
    
    for ($b1 = 1; $b1 < 256; $b1++) {
        for ($b2 = 0; $b2 < 256; $b2++) {
            for ($b3 = 0; $b3 < 256; $b3++) {
                for ($b4 = 0; $b4 < 256; $b4++) {
                    if ((
                        number_sum($b1) +
                        number_sum($b2) +
                        number_sum($b3) +
                        number_sum($b4)
                    ) == $sum) {
                        echo "$b1.$b2.$b3.$b4" . PHP_EOL;
                    }
                }
            }
        }
    }


    Результат запуска PHP

    Наверно можно быстрее, но если честно, лень
    Ответ написан
    3 комментария
  • Какие есть сервисы для рассылки sms code?

    Бесплатных нет и быть не может.
    Из дешёвых - везде цены примерно одинаковые и находятся где-то в 0.5-3р
    Есть неплохой smsc.ru
    Ответ написан
    Комментировать
  • Какой лучший путь для получение список заказов?

    Jeer
    @Jeer
    уверенный пользователь
    Добрый день,
    Процесс, который вы описываете, называется рефакторинг. Советую по данной теме лёгкое чтиво refactoring.guru
    Так же, существуют общие советы, так называемые принципы, вот первая ссылка в гугле, поверхностно, но должно быть понятно.
    Отвечая на ваш вопрос, дублирования кода не должно быть. Делаете один метод. Потом, если, вдруг, появится разветвление, то в этой фукнции остаётся общий код и появляются две другие, в которых будет разный код
    Ответ написан
    3 комментария
  • Какой лучший путь для получение список заказов?

    YuriyVorobyov1333
    @YuriyVorobyov1333
    Software Developer
    Напишите общую функцию и две поменьше, в которых есть различия. Затем из общей вызывайте одну из тех двух.
    Ответ написан
    3 комментария
  • Соседний блок растягивает рядом стоящий и растягивает родительский элемент?

    "По-умолчанию flex-элементы растягиваются, занимая все пространство по высоте." Пропиши родителю align-items: flex-start;
    Ответ написан
    2 комментария
  • Как изменить код в пакете node_modules?

    Negezor
    @Negezor
    Senior Shaurma Developer
    А зачем его локально менять? При каждой установке или переустановки он у вас вернётся к первоначалой версии. Сделайте форк на гите и меняйте сколько хотите, плюс ко всему у вас не возникнет проблем в будущем.
    Ответ написан
    2 комментария
  • Ошибка при установка пакета node-sass?

    Krasnodar_etc
    @Krasnodar_etc
    fundraiseup
    Какая версия ноды установлена?

    PS - увидел. У node-sass очень плохая совместимость с Node 8+ . Или откатывайтесь (через NVM) на Node 6 , или не ставьте плагин
    Ответ написан
    2 комментария
  • Почему UC browser mobile некоторые функций не работают?

    k12th
    @k12th
    console.log(`You're pulling my leg, right?`);
    Потому что это устаревший кусок барахла:)

    Поддерживаемые фичи можно проверять тут: https://caniuse.com/#feat=fetch

    Решение: использовать полифиллы (например, https://polyfill.io/ или подключать соответствующие библиотеки)
    Ответ написан
    2 комментария
  • Ошибка в запросе к базе данных?

    v_decadence
    @v_decadence
    Оберните 'DATE(created_at)' в DB::raw.
    Ответ написан
    Комментировать
  • Ошибка в запросе к базе данных?

    @vanillathunder
    $model = $model->whereRaw(
                        'DATE(created_at) >= DATE(DATE_ADD(created_at, INTERVAL 7 DAY))" 
                    );
    Ответ написан
    Комментировать
  • Ошибка в запросе к базе данных?

    t-alexashka
    @t-alexashka
    Сразу пишу legacy код
    Тут проблема в том что он ваш 'DATE(created_at)' подсовывает не функцией а строкой:
    ... and `DATE(created_at)` >= ...
    к сожалению не силен в laravel решить не смогу, но хоть наводку вам дал :)
    Ответ написан
    Комментировать
  • Как сохранить куки в базе расшифрованные?

    xpert13
    @xpert13
    Full Stack Developer
    В Request они расшифрованные.
    $request->cookie('name');

    Так же можно вообще отключить шифрование (не стоит) убрав middleware "\App\Http\Middleware\EncryptCookies"
    Ответ написан
    Комментировать