• Как массово заменить значения NULL в MYSQL?

    @latush
    UPDATE `shop_product_skus` SET `count` = 0 where `count` IS NULL
    Ответ написан
    1 комментарий
  • Почему так много удаленки на Bitrix?

    @spaceatmoon
    Очень сильный маркетинг.

    Ради интереса как-то хотел сделать один заказ на битриксе, там все-то нужно было доработать компонент. При просмотре кода будущего проекта я обалдел. В одном компоненте, а именно в одном его файле было всё: роутинг, контроллеры, модели, вьюха. Это было настолько убого, что хотелось плакать и смеяться. Тех денег этот геморой не стоил, так и закончилось моё знакомство с битриксом.
    Ответ написан
    8 комментариев
  • Над чем нужно работать, что улучшать?

    Vlad_IT
    @Vlad_IT
    Front-end разработчик
    1. Закомментированный код на гитхабе - не хорошо. https://github.com/marinarodkin/aviasales-app/blob...
    2. Минимум логики в render функции компонента. Все сложные конструкции переносите в методы, а лучше в отдельные компоненты (тогда сможете легче контролировать перерисовку компонентов через shouldComponentUpdate , чтобы они не перерисовывались, если данные не поменялись). Вы можете прямо как методы писать стрелочные функции:
      class Flight extends Component {
          getWeekDay = (date) => {
              //..
          }
          // ....
      }

    3. Вы в половине случаев используете точку с запятой, а в половине нет. Используйте чаще.
    4. Атрибут for нельзя использовать в jsx (как и class, как вы знаете). Вместо for пишите htmlFor
    5. Смотрите консоль инструментов разработчика, там есть ошибки.
    6. Освойте shouldComponentUpdate, он позволяет контролировать перерисовку компонента при изменении состояния или пропсов. У вас при изменении кол-во пересадок, перерисовывается весь список билетов, даже те, которые уже были в этом списке. Многие скажут, что еще рано такое учить, но я не согласен. Если не учиться контролировать перерисовку еще в начале обучения, то можно написать очень много тормознутого софта.
    7. У вас данные ticket.json подгружаются хардкодно из github, это не хорошо, т.к. этот файлик с данными есть в папке public, и если потенциальный работодатель захочет поменять там что-то, он не увидит изменений (т.к. грузится с гитхаба).
    8. У вас если в данных в параметре departure_date стоит 11.10.2018 (т.к. сегодня), то отобразится это как "11 окт 2018, вс", т.е. день недели неправильный. А он неправильный потому, что это не октябрь, а ноябрь. Ошибка в методе getDateFormat
      const newDate  = new Date (year, month, day, );
      const monthName = ["дек", "янв", "фев", "мар", "апр", "мая", "июня", "июля", "авг", "сент", "окт", "ноя", "дек"];
      const newMonth = monthName[newDate.getMonth()];

      конструктор Date вторым аргументом ожидает номер месяца, нумерация которого начинается с нуля. т.е. 0 - январь, 1 - февраль, 11 - декабрь. Судя по monthName вы подозвевали, что есть что-то неладное, но ошибись с реализацией. monthName должен иметь обычный вид, начинаться с января и заканчиваться декабрем, т.к. нулевой элемент массива как раз подходит по логике с нулевым месяцем. В getDateFormat, а также в getWeekDay, вычтите из month - 1
      const newDate = new Date(year, month - 1, day)
    9. У вас в тех же getDateFormat и getWeekDay в конструкторе Date вы в конце аргументов пишите запятую, так не нужно делать. Это не вредно и не полезно, просто дурной тон. Там в любом случае будет undefined, хоть с запятой хоть без нее.
    10. Картинки тоже грузятся с marinarodkin.github.io, измените.

    11. const getStopsNumber = (stop) =>{
            switch (stop) {
              case 3:
                return "3 пересадки"
              case 2:
                return "2 пересадки"
              case 1:
                return "1 пересадка"
              case 0:
                return "без пересадок"
              default:
                return // это не нужно делать, писать return. Если вы удалите эту (и строку выше), то результат будет такой же - undefined
            }
          }

    12. Если бы в SideBar пропс stopsData был не объектом, а строкой или числом, то компонент SideBar можно было бы безболезненно превратить в PureComponent. Ну это так, к слову об оптимизации.
    13. Я бы в stopsClick передавал не объект события e, из которого вы потом берете id элемента через e.target.id (что не есть гуд), а сделал бы стрелочную функцию (или bind), в которую бы передавал id. Вот так
      <input onClick={() => this.props.stopsClick("allStops")} />
      <input onClick={() => this.props.stopsClick("noStops")} />

      Если это читают опытные ReactJS разработчики, рассудите пожалуйста. Согласен, что на каждый компонент будет создана своя копия функции, но по крайней мере, не нужно взаимодействовать с DOM напрямую.
    14. Это не красиво
      if( this.state.stops.allStops === false && this.state.stops.noStops === true && this.state.stops.oneStop === true && this.state.stops.twoStop === true && this.state.stops.threeStop === true  ){
               newStops = {...this.state.stops, allStops: true}
          }

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


    Может я многое высосал из пальца, но это будет вам полезно. Учитесь, развивайтесь. Удачи вам в этом :-)
    Ответ написан
    1 комментарий
  • Как адаптировать скрипт под новые версии php?

    borisdenis
    @borisdenis
    Ленив и вреден...
    1 вариант:
    • Запустить этот скрипт под новой версией php.
    • Увидеть ошибки и выяснить изменился формат вызова функции, количество ее параметров или она была заменена на другую.
    • Переписать проблемные участки
    • Повторить процесс до тех пор, пока не получится рабочий код.


    2 вариант:
    Отдать фрилансеру на переделку.
    Ответ написан
    Комментировать
  • Как адаптировать скрипт под новые версии php?

    @balamyt92
    ; select * from users; --
    Как это не парадоксально но сложность зависит исключительно от сложности проекта.
    Ответ написан
    Комментировать
  • Не работает смена переменной PHP+AJAX?

    inoise
    @inoise Куратор тега PHP
    Solution Architect, AWS Certified, Serverless
    Подключи уже базу данных
    Ответ написан
    2 комментария
  • Какой линукс можно полноценно установить и использовать на флэшке?

    Nikita-Fast
    @Nikita-Fast
    SVGшник и леплю что попало
    Любой , абсолютно любой
    Ответ написан
    Комментировать
  • Почему Create table не сочетается с alter?

    Radjah
    @Radjah
    Не смущает, что на момент вызова второго ALTER таблицы "OBJECTS" еще нет в базе?
    Ответ написан
    2 комментария
  • На сколько плохое решение хранить изображения в БД как blob?

    inoise
    @inoise
    Solution Architect, AWS Certified, Serverless
    Это очень плохой способ) работать будет, но есть ряд недостатков. Изображения надо хранить отдельно, желательно вообще не там же где и база
    Ответ написан
    Комментировать
  • Возможно ли устроиться на работу UI/UX дизайнером без профильного образования?

    inoise
    @inoise Куратор тега Карьера в IT
    Solution Architect, AWS Certified, Serverless
    Да. Более того - обычно так и происходит
    Ответ написан
    Комментировать
  • Как и что нужно изучить (веб) чтобы просто устроиться работать?

    Stalker_RED
    @Stalker_RED
    На данный момент есть какие то знания в вебе. Не полный ноль.
    Вы ждете что кто-то угадает какие именно есть знания, а каких нет, а потом угадает какие знания нужны работодателям, и выдаст рекомендации?

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

    Это будет намного надежнее и быстрее, чем надеяться на угадывание.
    Ответ написан
    Комментировать
  • Такой разбор строки (explode) делать вообще законно?

    kimono
    @kimono
    Web developer
    Обработку вывода можно сделать в самой команде (добавьте awk), а в php только вывод конечного результата.
    Не уверен (не смог повторить вашу команду), но можно попробовать что-то такое:
    prlctl statistics ct1 --filter guest.ram.* | sed 's/://g' | awk '{print $1 " - " $2}'
    Ответ написан
    4 комментария
  • Работал в вузе после диплома, преподавал программирование и сети, но решил уходить в ИТ, что делать?

    @Cheypnow
    Готовься к тому что без опыта сначала все равно джуном посидеть придется, а вот через полгодика вполне возможно 80+.
    Ответ написан
    Комментировать
  • Работал в вузе после диплома, преподавал программирование и сети, но решил уходить в ИТ, что делать?

    sim3x
    @sim3x
    Я хочу узнать, на что могу рассчитывать с моим бэкграундом
    на собеседование

    Идете на собеседование и смотрите насколько вами заинтересованы и сколько вам дают
    Ответ написан
    Комментировать
  • Работал в вузе после диплома, преподавал программирование и сети, но решил уходить в ИТ, что делать?

    mak_ufo
    @mak_ufo
    Опыта в продакшене нет

    Школьникам язык Java на курсах преподавал, самые основы

    Конкретные фреймворки готов освоить, просто сейчас с ними не знаком.

    Чего хочу в идеале: исследовательская/управленческая работа с хорошим окладом, 5/2, без переработок, от 80 т.р

    Пожалуйста, скажите, что вы шутите.

    Опыт управления проектами - в каком-то смысле есть: когда ты единственный айтишник на неайтишное предприятие - приходится контролировать и себя, и подрядчиков, чётко формулировать задачи, сроки ставить и т.д.

    Это не опыт управления проектами, а его отсутствие.

    Знаю С/С++ (знаком с STL и немного с boost, OpenMP, MPI), С#, Java и Python

    Без комментариев

    Если по сабжу, то выбирайте один язык, доучивайте его нормально, изучайте фреймворк, изучайте БД и инструменты и идите работать джуном
    Ответ написан
    2 комментария
  • Работал в вузе после диплома, преподавал программирование и сети, но решил уходить в ИТ, что делать?

    vvpoloskin
    @vvpoloskin
    Инженер связи
    В отличии от остальных тут отметившихся у вас есть отличный математический бэкграунд и навык преподавания. Легко устроитесь на 100+, только работу подольше поискать надо, ее меньше чем в веб и мобилках, программировать будете в матлабе)) А все отметившиеся так и будут дальше формошлепить на фрилансах, не подозревая, что карьера на этом закончилась.

    P.S. Вот недавно знакомый устроился на работу в западную коммерческую контору, занимается моделированием сигналов LTE и 5G для последующего внедрения в 3gpp. Прогает в ML, а на основе его кода даётся ТЗ C-шным программерам для непосредственной имплементации в сетевом оборудовании.
    Ответ написан
    9 комментариев
  • Обязательно ли читать книгу по языку/технологии что бы быть тру и продвинутым кодером?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Вы не найдёте ни одного авторитетного программиста с мировой известностью, который бы утверждал, что курсы и видео-уроки лучше книг. Обычно это утверждают либо профаны, оправдывающие своё нежелание читать, либо авторы курсов, делающие деньги на лентяях и глупцах. И я лично за 18 лет в отрасли встретил множество программистов, но ни одного хорошего, выучившегося по курсам и видео-урокам.

    Видеокурс может запилить любой дурак. Чтобы написать книгу, нужно иметь авторитет достаточный для издательства. Кроме того, текст пройдёт редактуру нескольких профессионалов. Поэтому знания в книгах качественные и систематизированные. Для начинающего это очень важные качества.

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

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

    Кроме того, чтение развивает абстрактное мышление - основной инструмент разработчика.
    Ответ написан
    16 комментариев
  • Какую программу выбрать для работы с базами данных?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Обычно такого в базах данных нет. Но программа, которую обслуживает база данных, может вести свои журналы - логи - в удобном для вас формате, какой запрограммируете.
    Ответ написан
    Комментировать