• Где можно потренироваться написанию "идеального кода"?

    aioon
    @aioon
    Я его выполнил, мое решение было рабочим, но мне отказали в дальнейшем собеседовании по причине неудачного архитектурного проектирования кода.

    изучай чужой код
    Ответ написан
    Комментировать
  • Где можно потренироваться написанию "идеального кода"?

    Mike77
    @Mike77
    lamp sf2 yii разработчик
    патерны твое все
    Ответ написан
    Комментировать
  • Почему использование session.use_strict_mode возвращает 2 сессионные куки?

    Mike77
    @Mike77
    lamp sf2 yii разработчик
    попробуй пересобрать
    вот патч для 5.5.3
    diff --git a/ext/session/mod_files.c b/ext/session/mod_files.c
    index e5733b4..004d9d4 100644
    --- a/ext/session/mod_files.c
    +++ b/ext/session/mod_files.c
    @@ -338,13 +338,13 @@ PS_READ_FUNC(files)
                     if (!PS(id)) {
                             return FAILURE;
                     }
    - php_session_reset_id(TSRMLS_C);
                     if (PS(use_cookies)) {
                             PS(send_cookie) = 1;
                     }
    + php_session_reset_id(TSRMLS_C);
             }
    
    - ps_files_open(data, key TSRMLS_CC);
    + ps_files_open(data, PS(id) TSRMLS_CC);
             if (data->fd < 0) {
                     return FAILURE;
             }
    Ответ написан
    4 комментария
  • Из-за чего очень много Warning'ов PHP?

    вы извините, но разве вас читать не учили?
    1. Warning: expects parameter 1 to be mysqli_result, boolean given in /var....
    функция ожидает mysqli_result, вы ей даете булево значение.
    2. Warning: Invalid argument supplied for foreach() in /var...
    вытекает из предыдущей, foreach() ждет массив, у вас массива нет.
    3. Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in /var...
    см. 1.
    4. Warning: fopen('...'): failed to open stream: Permission denied in /var...
    Доступ запрещен - яснее некуда.
    5. Warning: fclose()....
    опять же, из предыдущей, раз ничего не открыто, функция вместо файла получила false.
    _________________
    то есть из за отсутствия проверки на полученные данные (не проверен результат из базы, не проверена возможность чтения файла), каскадом сыпятся предупреждения.
    Ответ написан
    Комментировать
  • Из-за чего очень много Warning'ов PHP?

    Sild
    @Sild
    Invalid argument supplied for foreach()

    Классика, перестаньте гонять пустые массивы. Проверяйте на наличие в в них элементов.
    Благословление пхп стрелять себе в ноги - ещё не повод так делать.
    Ответ написан
    Комментировать
  • Какой есть IDE HTML5\JS\PHP\CSS?

    Bandicoot
    @Bandicoot
    Вась-программист
    Не совсем то, что вы хотите, но очень добротная IDE: www.jetbrains.com/phpstorm
    Ответ написан
    1 комментарий
  • Какой выбрать язык для создания сайтов?

    nazarpc
    @nazarpc
    Open Source enthusiast
    А ещё в интернете много информации о старых версиях PHP.
    Текущие версии 5.4 и 5.5 очень даже хороши.
    Слабые стороны есть в любом языке, главное уметь использовать сильные.
    PHP достаточно зрелый язык, на котором можно писать качественные и современные сайты.
    Ответ написан
    Комментировать
  • Как средствами php посчитать количество просмотров изображения?

    в базу значения счетчика так или иначе прийдется заносить скриптом.
    видится это только так:
    ссылка на файл (site/123.jpg) запускает скрипт, который добавит значение счетчика, и отправит header redirect на конкретно файл, который вообще может быть по пути "site/upload/563453476573465.jpg"
    ________________________________
    upd:
    www.opennet.ru/base/net/nginx_x_accel_redirect.txt.html
    Ответ написан
    Комментировать
  • Как средствами php посчитать количество просмотров изображения?

    @kaasius
    nginx+X-Accel-Redirect
    Алсо, апач его тоже умеет.
    Ответ написан
    Комментировать
  • Какими навыками должен обладать системный администратор?

    foxmuldercp
    @foxmuldercp
    Системный администратор, программист, фотограф
    Для работы хорошим системным администратором надо:
    нулевой уровень - крепкие нервы и выдержку - часто звонят обычно истерики, у которых "аа, ничего не работает, вы все козлы". Ну или реально, что-то большое и толстое упало и не работает, Вы занимаетесь восстановлением.

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

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

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

    Дальше - оптимизация переустановки рабочих станций - служба вроде WDS - не руками же винду, офис и прочий внутренний софт накатывать каждый раз (по два часа на машину, угу)

    Прокладка сетей и их диагностика - обрывы, переобжимание патчей, учёт что и куда на патчпанелях воткнуто. что такое вланы и подсети, маски, - это хорошо рассказано в курсах Cisco ICND и более старшем CCNA - маршрутизация и TCP/IP стек

    Ну а дальше - уже всякий серверный стафф - серверное железо, технологии удалённого управления самими серверами (ssh/rdp) и их железом - ipkvm, ipmi, iLO, мониторинг, диагностика.
    Тоже самое с системами хранения данных - дисковые полки, стримеры для бекапов на ленты и библиотеки лент.

    Программная часть серверов - Active Directory и роли Windows Server, какие есть, зачем нужны и как настраиваются, как делается резервное копирование и восстановление данных, как правильно хранить бекапы и где их хранить, как ставится ось - linux, windows, как она правильно настраивается под конкретные задачи - почта, dns, dhcp, брандмауер/фаервол, и т.п., как выпускается в интернет, что такое демилизаризованный сегмент сети.
    Как правильно ставится более сложные сервисы - SQL, почта, веб, мастер установки - 10 минут Next, Next, а грамотное развёртывание - и настройка - вполне нормально от нескольких дней.

    Виртуализация - какая есть, на кой черт нужна.

    Диагностика, мониторинг, серверного железа, планирование рисков при аварии и восстановления ИТ инфраструктуры - от выхода из строя конкретного сервиса (упал почтовый демон) до все, приехали - "здания офиса больше нет".

    Побочно - мелкое скриптописание - powershell, bash или крупно-программирование - C#, python, perl, местами веб вроде html/css.

    Вроде ничего не забыл
    Ответ написан
    2 комментария
  • Как Вы называете свои таблицы и поля в БД? CamelCase, camelCase, camel_case.....?

    egor_nullptr
    @egor_nullptr
    Только snake_case. И для таблиц, и для полей, и для индексов, и для хранимых процедур.
    Ответ написан
    Комментировать
  • Как Вы называете свои таблицы и поля в БД? CamelCase, camelCase, camel_case.....?

    GeneMoss
    @GeneMoss
    void
    По привычке использую under_score. Хотя с засильем ORM надо бы на camelCase переходить для единообразия.
    Ответ написан
    1 комментарий
  • Есть ли среди резидентов Хабра поклонники iPhone?

    risik
    @risik
    Программист
    Если Вы с 12 лет да на Агате - iPhone, боюсь не для Вас :)
    Есть мнение, что есть два типа людей.
    1) те, которые рассматривают вещь как систему с подсистемами. Вы берете в руку железку, Вы понимаете, что там есть процессор, память (Вы даже тех. характеристики знаете), операционная система, под управлением, которой работают приложения, и, наконец, сами приложения... и Вас бесит, что Вы не можете подстроить систему под себя, как свой PC. Вас бесит, что за Вас уже все решили, что и как Вы должны и можете делать.
    2) те, которые рассматривают устройство, как законченную вещь. Они знают, что это в айфоне весьма пристойная звонилка, с хорошим качеством звука и довольно устойчивым сигналом.
    Они знают, что в айфоне есть интернет. какая им разница какой именно стандарт 3G поддерживает их устройство. Им довольно знать, что у айфонов есть интернет. Они пользуются приложениями, которым нужен интернет. Они знают, что AppStore есть огромное количество приложений, в том числе и те, которые им нужны. И им совершенно без разницы какие стадии проходит ОС при загрузке, как она стартует приложения, и почему так сложно закачать собственный файл. Да им даже не важно файлы существуют! Для них есть документ. Кроме того, этим людям не важно какой именно там процессор. Боже, даим вообще не важно наличие там процессора. И уж тем более не важна его разрядность. да пусть он будет хоть жидкий и аналоговый!

    то есть, просто разный уровень абстракции окружающего мира.

    и да, я в первой категории. айфоном пользуюсь, как разработчик :)
    Ответ написан
    1 комментарий
  • Есть ли среди резидентов Хабра поклонники iPhone?

    Boleg2
    @Boleg2
    Я хоть айфон и не использую как основной телефон, но в руках держу и настраиваю часто, поделюсь мнением:
    Айфон - идеальный End-user продукт для неискушенного пользователя, при этом желающего пользоваться имеющимися нынче социальными примочками. Чуть в сторону - ни исходников тебе, ни масштабирования функционала, вообще никаких вариаций чего-либо. Тут уж каждому своё, по потребностям =)
    Иногда думаю: приобрету себе айфон, будет всё шоколадно и "так же, как и у всех". А потом вспоминаю, что без прямого доступа к файловой системе при первой же надобности отправится он в стенку.
    Каждому своё, да :)
    Ответ написан
    5 комментариев
  • Актуально ли использовать Mongo для хранения товара с аттрибутами?

    Если не ожидается частого изменения структуры, атрибутов, полей и связей, то советую, как и предыдущий комментатор, старое доброе SQL-решение (но все же лучше PostgreSQL).

    А вообще, если масштабы небольшие и не страшно в случае проблем потерять данные за последние минуту-полторы – то с Монго будет просто приятно и удобно поработать.
    Ответ написан
  • Как установить PHP 5.2 и дополнительные модули в CentOS 6?

    nazarpc
    @nazarpc
    Open Source enthusiast
    Знаю, что не совсем тот ответ, которого вы ожидаете, но к вашему сведению актуальная версия 5.5, а 5.3 скоро потеряет поддержку.
    Пожалуйста, не используйте 5.2, правильно сделали что выпилили!
    Ответ написан
    2 комментария
  • Как ускорить запуск эмулятора android?

    @ashmigirilov
    Можно использовать виртуальную машину с android-x86. Подробнее по ссылке startandroid.ru/ru/articles/listofarticles/206-bys...
    Ответ написан
    Комментировать
  • Как убедить руководство сменить платформу разработки проекта, полностью переписав его?

    Zerstoren
    @Zerstoren
    Вы не сможете убедить руководство, что нужно сменять платформу или будет "миссия невыполнима". Если такая бадяга творится, заставьте разработчика на все баги писать тесты.

    Если это браузерный сервис, юзайте selenium, контролируйте успешность прохождения и показательные ли тесты. Сделайте систему CI (Jenkins как пример) и получается, что платформа будет той-же, кол-во багов будет сокращаться, но по мере покрытия тесатми.
    Ответ написан
    Комментировать