• Доступ к локальному веб-серверу по одинаковым ссылкам из локалки и Интернета?

    Привязать домен к внешнему IP, а внутри локалки прописать его на внутренний IP в hosts (самый простой способ)
    Ответ написан
    1 комментарий
  • Архитектура хранения картинок

    Вместо деления использовать substr или что-то этом роде не быстрее будет?
    Ответ написан
    Комментировать
  • Бизнес-логика в конроллере или модели?

    Не знаю как правильно, но я размещаю так:
    — логика приложения (она же системная): роутинг, логи, проверка параметров, прав, сохранение и получение данных (вызов всяких load и save), обработка форм, выбор способа отображения (html, xml, json, редиректы, ...), кэширование и т. п. — контроллеры (включая фронтконтроллер)
    — логика модели (она же бизнес-логика): действия с данными без учёта их способа хранения (выставить или оплатить счёт, атаковать кого-то или построить здание) — как не странно, модели
    — логика отображения: вывести сообщения системы (если они есть, формируются в контроллерах) раскрасить по разному чётные и не чётные строки таблицы, вывести дополнительные блоки (как правило для сайд-баров через вызов других контроллеров) — отображения (шаблоны)

    То есть получается, что в модели сосредоточен код, который ничего не знает ни о http-запросах и ответах, ни о БД (или другом способе хранения). Контроллеры просто создают объекты модели, заполняют их, если нужно, данными из хранилища/запроса, вызывает, если требуется, методы модели, и если состояние объектов модели изменилось сохраняет их, после чего передаёт объекты в нужное отображение. Если приложение простое (только CRUD действия), то в модели вообще нет методов, кроме геттеров/сеттеров/делетеров (а иногда и их нет, только данные)
    Ответ написан
    Комментировать
  • KeePass или блокнот? хранение паролей

    У меня все пароли хранятся (резервная копия) в ящике gmail'а, а от него в голове (плюс ещё несколько паролей «на все случаи жизни»). А так во всю стараюсь пользоваться различными галочками и попапами «сохранить пароль». Небезопасно, зато удобно. Пробовал менеджеры паролей — на своём компе ещё куда не шло (хотя всегда определять корректно, что надо вводить пароль они не могли и приходилось рыться в списках, а окно с паролем может быть и модальным), а вот когда надо оперативно зайти на свой аккаунт с чужого компа… Поэтому, кстати, и отказался от активного использования сертификатов при работе по ssh.

    Может когда и пожалею, но способа одновременно и удобно, и секурно хранить и вводить логины/пароли я не нашёл. С одной стороны нужна секурность (и доверие к онлайн-хранилищу не меньшее чем к гуглу, прежде всего, что не исчезнет никуда, потому к стартапам доверия мало, сегодня есть — завтра нет), с другой — удобство (удобный локальный клиент под линукс/виндовс, чтобы корректно распознавал необходимость ввода паролей в популярных браузерах, ssh/ftp клиентах и IDE + возможность получить любой пароль через веб-морду с любого девайса с браузером).
    Ответ написан
  • Зачем мне свой бизнес?

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

    1. Имхо, стоит, особенно если один пользователь может зайти с разных компов (перемещаемые профили тоже хорошо). Пароли обязательны, как и, хотя бы, версионность (история правок) в документах.

    2. Если в ближайших планах нет внедрения системы документооборота и перемещаемые профили не хотите, то сетевую папку(и), имхо, обязательно под документы предприятия (личное файло могут хранить локально) с регулярным бакапом и отработанной процедурой восстановления сервера в случае, например, отказа винта/материнской платы. Можно попробовать использовать синхронизацию папок и файлов, если пользователи будут жаловаться на низкую скорость работы по сети.

    3. В принципе реализовать антивирусную проверку (и, например, учёт/блокировку) всего трафика и сетевых файлов только через сервер можно, но вероятность заражения рабочих станций будет выше, чем если бы антивирус работал локально — флешки, упакованные вирусы и т. п. сервер проверить не сможет.

    4. Прочитайте Закон №152-ФЗ — по-моему, очень большая подлянка для малого бизнеса вообще, а для мини-отелей очень-очень большая, т. к. персональные данные по другим законам/подзаконным актам они обязаны собирать и обрабатывать (передавать на обработку другим операторам) и мало где это делается вручную на бумаге.
    Ответ написан
    2 комментария
  • Какие онлайн сервисы упрощают вам жизнь и экономят время?

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

    — транслейт от гугла

    Очень многие упомянутые выше сервисы пробовал, и даже как бы использую (тот же дропбокс постоянно висит в «трее»), но реально обхожусь «дедовскими методами» вплоть до узелков (очень результативно оказывается :) )
    Ответ написан
    Комментировать
  • Где бы найти преподавателя по PHP?

    Помню на phpforum.ru/ были бесплатные онлайн курсы PHP, хотя лично мне многие моменты казались спорными…

    А вообще постановка вопроса «препод по php» мне кажется неверной — для изучения большинства (на всякий случай не «всех») императивных ЯП нужно несколько дней максимум, годы может занимать приобретение опыта, изучение «best practices», получение навыков проектирования архитектуры и реализации приложения с учётом архитектуры, особенностей и стандартных/популярных библиотек/фреймворков, «подводных камней» и т. п…
    Ответ написан
  • Python vs Java

    Имхо, если стартовые условия одинаковые (при текущем знании и Python, и Java — одинаковые стартовые условия по ЗП и прочим «бонусам»), то через 5 лет ничего особо не изменится, а через 20 вопрос не будет иметь смысла. Нет оснований полагать, что динамика роста зарплат изменится, по-моему, при одном и том же росте квалификации, если не случится какого-то форс-мажора типа новой (а в действительности хорошо забытой старой, но не восстребаванной в прошлом из-за дорогих ресурсов) парадигмы программирования
    Ответ написан
    Комментировать
  • PHP, MySQL. антиповтор

    Приводить в одну «нормальную» форму: отбросить мусор (знаки препинания, например), преобразовать в один регистр, развернуть сокращения (или наоборот, свернуть в них)отсортировать слова по алфавиту
    Ответ написан
    Комментировать
  • Задачка : Сколько стоит Хабрахабр построить?

    0. сами, если проект является основной деятельностью (или основная деятельность хоть как-то коррелирует с веб-разработкой), «под ключ», если проект является «имеджевой рекламой» оффлайновой деятельности и мощного ИТ- подразделения нет.

    1. один-два разработчика для поддержки (если планируется развитие функционала, а не просто выполнение «снимка» ткущего хабра), фрилансеры/студия для запуска

    2. cms/cmf/фреймворк для запуска, далее по анализу узких мест и стоимости их разруливания

    3. постоянный состав — менеджер проекта и разработчик (он же суппорт), как минимум, остальные (дизайнеры и верстальщики, дополнительные разработчики) по необходимости для запуска и развития — фрилансеры/студии, в общем аутсорс или временный контракт

    4. запуск первого релиза (посты, комменты, профили, карма :) и т. п.) — с месяц (если не найдётся подходящей CMS с практически реализованным функционалом)

    5. порядка 100-150к р. «техническая» (включая дизайн и т. п.) часть (аналогично п.4 )
    Ответ написан
    3 комментария
  • Как соотносятся скриптовые и объектно-ориентированные языки программирования?

    Есть «чистые» ОО языки, в которых невозможно работать без объектов, а есть «гибридные», которые позволяют создавать программы как в процедурном («скриптовом») стиле, так и в ОО.
    Ответ написан
    Комментировать
  • Запретить на Ubuntu посещение определенных сайтов?

    127.0.0.1 vkontakte.ru в hosts будет достаточно, третий параметр позволяет обходиться одним адресом для многих хостов: 127.0.0.1 vkontakte.ru vk.com odnoklassniki.ru… В Windows он тоже должен работать technet.microsoft.com/en-us/library/bb727005.aspx#EDAA:
    A single entry consists of an IP (IPv4 or IPv6) address and one or more host names. Хотя, имхо, использование NS для блокировки доступа это как яму топором копать :)

    запись ALL: vkontacte.ru в hosts.deny запретит доступ к вашему компу от сервера vkontakte.ru, если они часто к вам ломятся, то занесите :)
    Ответ написан
    3 комментария
  • Объединение нескольких exe-шников в один?

    Когда решал проблему просто с помощью .bat файла, теперь перешёл к файлу со списком необходимых пакетов для менеджера пакетов :)
    Ответ написан
    5 комментариев
  • Поменять местами 2 строки в таблице mysql

    UPDATE table SET priority=IF(priority=1, 2, 1) WHERE priority IN (1,2) — меняет местами order 1 и 2. order не должно быть уникальным, иначе 3 запроса.
    Ответ написан
    1 комментарий
  • дизайнер для некомерческого проекта

    Как вариант можете попробовать на фриланс-биржах поискать начинающих фрилансеров для наработки портфолио «за отзыв» (если не запрещено правилами биржи) или минимальную сумму.
    Ответ написан
    1 комментарий
  • Архитектурный вопрос: мультиязычный сайт?

    Самое простое в такой ситуации, по-моему, просто дублировать поля, которые надо переводить, что-то вроде:
    id: integer, required
    title_ru: string, required
    body_ru: text, required
    title_en: string
    body_en: text

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

    Хороший шаблонизатор, идеально интегрирующийся с PHP называется… PHP :) В шаблонах удобно использование альтернативного синтаксиса.
    Ответ написан
    4 комментария
  • Вам нравятся эти кнопки "КупиКупон" и прочая реклама на всех страницах Хабра?

    Я даже кликал по ней, надо же хабру на что-то существовать. Мне куда больше не нравится реклама MS
    Ответ написан
    Комментировать