• Как программировать в команде?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    Тебе выдадут куратора, он будет тебе давать конкретные задания.
    Тебе должны выдать ссылки на документацию или показать, как у них организована работа.

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

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

    Не обязательно в первые недели выполнить все-все-все, важнее разобраться как правильно работать. У тебя на это целых три месяца, и понять, справляешься ли ты, можно будет только через месяц-два.
    Ответ написан
    3 комментария
  • OpenCart 2.2, Стоит ли вообще начинать? Как дела с 1С?

    Sanes
    @Sanes
    Зачем вам правильный код? Вам надо выполнить бизнес-задачу. Если движок справляется с задачей и есть на рынке специалисты, то делайте. В чём проблема?
    Ответ написан
    Комментировать
  • Какие самые дешёвые доменные зоны у западных регистраторов?

    @lakegull
    Смотрите здесь: 101domain.com
    Иногда попадаются промо-акции, т.е. можно продлить домен за дёшево сразу на несколько лет вперёд. Отслеживайте. Защита личных данных есть далеко не у всех, иногда её нет даже за деньги. Изучайте описание доменной зоны, там это указано.

    upd
    Кстати, как это не удивительно, на русскоязычной версии сайта цена выше, чем на англоязычной. В связи с этим выгоднее зарегистрироваться на английской версии и заплатить долларах
    Ответ написан
    Комментировать
  • В каком случае выполняется меньше операций?

    IonDen
    @IonDen
    JavaScript developer. IonDen.com
    https://jsfiddle.net/beaxe5np/1/
    Скорость примерно одинакова в хроме.
    Ответ написан
    Комментировать
  • В каком случае выполняется меньше операций?

    coderisimo
    @coderisimo Куратор тега JavaScript
    Вы всегда можете сами оценить скорость выполнения того или иного куска кода :

    var start = new Date().getTime();
     //ваш код
    var end = new Date().getTime();
    var time = end - start;
    console.log(' How long : ' + time);
    Ответ написан
    Комментировать
  • Отказ возврата товара Юлмартом со статусом "мех повреждение" законно ли?

    @nirvimel
    Эх, Юлмарт.Дисконт, сколько воспоминаний... Однажды в 2014 я писал для одной конторы бота, который должен был перехватывать "горячие" позиции выставляемые по неадекватно низким ценам. Бот проводит оперативную оценку по Яндекс.Маркету ("горячие" варианты случаются, только по тем позициям, которые уже отсутствуют в их собственном ассортименте на момент уценки, по тем позициям, которые еще торгуются, они никогда не ошибаются с ценами) и перемножает на коэффициент, вычисляемый от заявленного состояния товара.
    Так вот за первые двое суток его боевого применения случилось больше десяти срабатываний (и это только в одной товарной категории! правда, это был конец декабря). Подобных "горячих" позиций я никогда не видел при ручном серфинге, подозревал, что это сказки. Я выключил бота когда мелких заказов оформилось где-то на 35к руб. на разные аккаунты. Забирать все это поехал один коллега, вернулся ни с чем - из всех заказов не доставлено ни одного! (все заказы в ЛК в актуальном состоянии, дата получения - это число). Единственное, что смог сказать ему менеджер, что так бывает очень редко, когда две заявки приходят одновременно, то обе могут забронироваться до того, как произойдет списание с остатков (похоже, эти индусы не слышали про атомарные транзакции), а логистика исполняет ту, у которой отметка времени чуть раньше.
    Я задумался: мой бот проверяет обновления раз в минуту и сразу оформляет заказ, как только находит подходящий вариант, но из более десяти заказов ему не достался ни один, у него увели из под носа все, это значит, что кто-то парсит и бронирует быстрее его, намного быстрее! Кто бы это мог быть? Только другой чей-то бот! Похоже, на тот момент у кого-то уже был построен на этом свой бизнес. Мы опоздали.
    С тех под я не занимался Юлмарт.Дисконт-ом, не имею понятия, как там сейчас обстоят дела.
    Ответ написан
    1 комментарий
  • Правильно ли я создал класс?

    @IceJOKER
    Web/Android developer
    Бегло посмотрел код и что бросилось в глаза - это названия методов, пишите в стиле camelCase, а не almost_Camel_Case

    insertCSS (можно и Css как вам удобнее)
    appendContent
    etc.

    Меня особенно волнует правильно ли я наполняю переменные для return-на - лучше минимизировать return , чтоб он возвращал какой-нибудь примитивный тип(boolean, array, int etc.), но не HTML текст(прочтите про MVC).

    И зачем префиксы my*? без не лучше?
    set_h1- это не айс, а что если потом захотите h1 поменять на div#title? абстрагируйтесь, пишите setTitle или как-то по другому.

    В остальном - учитесь и практикуйтесь, смотрите код на github и сравнивайте, а то ваш вопрос какой-то некорректный что ли
    Ответ написан
    1 комментарий
  • Время выполнения php-скрипта по крону?

    @yuras666
    Вот, есть очень хорошая и компактная
    статья на эту тему.
    С Pid-файлом, что писали выше - тоже годное решение.
    Ответ написан
    Комментировать
  • Время выполнения php-скрипта по крону?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    pidfile

    стандартный *nix-way, это при запуске скрипта, проверять наличие pid-файла. Если файл есть - завершаем работу. Если файла нет - создаем его и начинаем обрабатывать задачу. После завершения работы - удаляем за собой pid-файл.

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

    P.S. Более тщательная проверка заключается в том, что в этот файл сохранять PID процесса, и следовательно при запуске скрипт проверяет и наличие файла, и существование процесса, который в файле указан. Позволяет избежать проблем, если какой-то скрипт был прерван до завершения и не успел удалить за собой pid-файл.
    Ответ написан
    3 комментария
  • Время выполнения php-скрипта по крону?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    запускать в отдельных процессах, если они у вас идут прям без остановки каждую минуту, то будет работать параллельно. Но будет накапливаться процессы. Так что в итоге скорее всего забъется процессами если не будет успевать отрабатывать.
    Ответ написан
    3 комментария
  • Не обойдут ли редирект?

    riky
    @riky
    Laravel
    только die забывать нельзя, без него вся страница рендерится и отдается на клиент.
    и домен можно не писать

    session_start();
    if (empty($_SESSION['username'])){
       header ('Location: /autorize.php');
       die();
    }
    Ответ написан
    1 комментарий
  • Цикл с таймаутом ровно в 1 секунду?

    pi314
    @pi314
    Президент Солнечной системы и окрестностей
    Ваш вопрос можно приводить в качестве наглядного пособия на тему "Как именно вылазит боком кривая архитектура системы" :) Основная проблема в том, что интеграция компонент через storage есть зло, рано или поздно (чаще - рано) заставляющее разработчика выполнять стойку на ушах. Так что, если есть такая возможность, постарайтесь устранить зло в корне, т.е. найти способ узнавать об изменениях, ну, или хотя бы о самом факте, до того, а не после. Тогда не придется ничего опрашивать в цикле, а только реагировать на изменения. А это уже - половина проблемы!

    Если возможности нет, а делать все равно надо, сначала смитритесь с тем, что Вы никогда на PHP не добьетесь ровненько 86400 вызовов в сутки каждую секунду, если только не поставите ядро реального времени / не напишете соответствующий код на С и т.д. и т.п. Особенно, если storage крутится на том же процессоре в той же ОС, и количесво данных в нем будет со временем увеличиваться. Но это почти наверняка и не нужно, а нужно проанализировать задачу и понять, что на самом деле критично и какие отклонения от идеала возможны без ущерба для функциональности.

    "Примерно 0.03с" само по себе еще не о чем не говорит. Это всегда или в случае, если изменений нет, или если они небольшого объема? А если 90% данных обновились? Это - раз. Два: если изменения обнаружены, сколько может занять их обработка (в худшем случае)?.. И, наконец, три: если уже наступила "следующая секунда", а мы все еще не закончили обработку прошлых изменений, возникает целый ряд вопросов. Имеет ли в этом случае вообще смысл проверять новые изменения (сможем ли мы их осмысленно обработать, если найдем)? Если да, понадобится как минимум 2 потока. Если нет, насколько критично пропустить эту секунду? А сколько еще можно пропустить без ущерба для функционала? Предположим, это не критично, и мы уже пропустили секунду (или несколько), что нам важнее: чтоб следующая проверка выполнилась как можно ближе к границе "следующей секунды", или как можно быстрее? И т.д. и т.п.

    Не зная ответов на эти и подобные вопросы, невозможно предложить "правильное" решение. Но в качестве сферического коня в вакууме можно посоветовать бесконечный цикл, в котором выполняется проверка, реакция на найденные изменения, после чего вычисляется время до следующей проверки, на которое выполняется sleep().
    Ответ написан
    Комментировать
  • Нужен ли сейчас Си?

    Nipheris
    @Nipheris Куратор тега C++
    Си как язык и экосистема, безусловно, нужны много где. Вопрос в том, нужны ли ВЫ этой экосистеме. Любой специались ценен не только знанием языка, но еще и знанием экосистемы и, самое главное, умением решать задачи, где вышеуказанный язык даёт наибольшую эффектиновсть с точки зрения бизнеса.
    Мало кому сегодня нужен человек, знающий PHP, но не знающий ничего о веб-разработке. С Си (да и с C++) то же самое. Чтобы вам давали те задачи, для решения которых имеет смысл использовать именно Си, вам нужно расти как специалист и в других областях. Например, хорошо разбираться в структурах данных. В управлении памятью. В машинной арифметике.
    Сравните например, человека, который просто знает, что в языке Си есть тип float, и человека, которому известно, что в Сишный float не запишешь значение 0.13, не потеряв в точности. А также человека, который понимает, почему точность теряется. И еще человека, который знает, что можно предпринять, если все-таки нужно как-то оперировать с десятичными дробями без потери точности.

    Этот ответ должен вас мотивировать на рост как IT-специалиста в целом, уделяющего дополнительное внимание принципам работы вычислительной техники и различным низкоуровневым вещам.
    Ответ написан
    2 комментария
  • Какая разница между VPS на базе KVM и VPS на базе OpenVZ?

    gr1mm3r
    @gr1mm3r
    50% ответа в правильном вопросе. Остальное мануал.
    Простая таблица сравнения
    Узкое место технологии OpenVZ - относительно медленная работа с диском. Эта проблема в принципе работы этой системы. + допустим "оверселлинг".
    Преимущества KVM- независимые ресурсы: каждому серверу выделяется своя область в оперативной памяти и на жёстком диске, что повышает надёжность работы такого сервера, не позволяя соседним серверам использовать те же участки памяти и дискового пространства. Это же не позволяет "оверселлить" ресурсы.
    Ответ написан
    1 комментарий
  • 3 планки ОЗУ будут работать?

    twix007
    @twix007
    нет не будет работать! Как и дурацйкий вопрос
    Ответ написан
    Комментировать