Ответы пользователя по тегу PHP
  • Как перейти на linux front-end разработчику?

    viktorvsk
    @viktorvsk
    Ставьте Ubuntu - врядли с ней кто-то сравнится по количеству разжеванной базовой информации на первых страницах поиска, что очень важно по-началу

    И пробуйте, пробуйте... Сам давно трижды ставит и забивал на линукс, пока не появились задачи, которые без юникса никак. Если искуственно пробовать "разбираться в линуксе", то, скорей всего, желание быстро отпадет

    Книги врядли нужны. Пробуте поставить LAMP стэк. Купить дешевый VPS и настроить его по SSH для своих целей и т.д.
    Ответ написан
    Комментировать
  • Как сделать подобный сайт?

    viktorvsk
    @viktorvsk
    Вот встал вопрос о том, как сделать самостоятельно что-то подобное. Не копию, но сам принцип - лаконичные страницы, минимум лишней информации, быстрая загрузка, удобные формы заказа (выдающие по ходу заполнения формы параметры скидки и цены) и так далее.

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

    Но с другой стороны неужели так сложно научиться делать сайты более-менее нормального вида? =)

    Просто невозможно. Потому что не существует "сайтов более-менее нормального вида". Всегда есть предметная область и конкретная специализация. Дизайн? Фотошоп, иллюстратор, графический дизайн, веб-дизайн, десктопы, мобильные приложения, адаптивность ? Фронтэнд? Верстка, SPA, конкретная мобильная платформа ? Бэкенд? Банковские приложения или социальные сети?

    В вашем случае полезнее всего, мне кажется, взять за образец ваш сайт из примера (раз так понравился) и за месяц-два попробовать сделать его копию на чистом HTML (используя для удобства, скорости разработки и что б не отставать от времени и получить реальную пользу), такие вещи, как генераторы статических сайтов, систему контроля версий, багтрекеры и препроцессоры (для html - haml\slim\jade... , для css: LESS\SAS, для JS, думаю, для начала не стоит. Если вообще круто удариться в верстку (фронтэнд), то еще и использовать CSS методологию (smacss, bem...) ), а так же все это делать в нормальной OS (unix-like), и не в блокноте, а в IDE.

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

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

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

    После того, как ТЗ будет готов, уже и определитесь, что лучше, взять CMS и допилить или использовать фреймворк. Так же, определитесь со стэком технологий (не стоит делать сайт визитку на erlang и mongodb, а cms\ecommerce на ruby).
    Ответ написан
    Комментировать
  • Как создать PHP фильтр по критериям?

    viktorvsk
    @viktorvsk
    Попробуйте, всё же, сделать это на PHP, храня данные в mySQL, используя циклы.
    А не на do, while и for.
    Ответ написан
    Комментировать
  • Kohana vs Yii vs ...? Какой фреймворк способен максимально эффективно использовать ресурсы сервера?

    viktorvsk
    @viktorvsk
    Перед тем, как оптимизировать, нужно понять, что оптимизировать. Количество образщений в секунду, какие операции с базой выполняются, необходимый процент надежности... У вас же синдром преждевременной оптимизации.

    В 80% случаев все решается индексацией базы, правильным применением движков таблиц, мемкешем\редисом. В этом все популярные фреймворки должны быть на одном уровне. В другом - вы не определитесь, пока не будет четких требований.

    А так, да, всегда хочется взять Node.js. И немножечко jQuery
    Ответ написан
    1 комментарий
  • Правильная ли структура приложения?

    viktorvsk
    @viktorvsk
    Аякс, Backend, API заказчика и курл - это не структура системы.
    Ответ написан
    Комментировать
  • Правильно ли организованна таблица?

    viktorvsk
    @viktorvsk
    Как-то, когда работаешь с фреймворками, с одной стороны плохо, что мало взаимодействуешь с низким уровнем. С другой стороны, когда мыслишь не таблицами, а моделями, то такие вопросы как-то и не приходят в голову.

    Есть модель юзер ? у пользователя может быть 1 вариант бала (как рейтинг ВК давно, например, от 0% до 100%) ? Добавьте ему колонку "рейтинг". У пользователя может быть много балов (балы по экзаменам, например) ? Тут уже очевидно, что это немного другая сущность, поэтому создаете юзер_балы и т.д...
    Ответ написан
    Комментировать
  • Как посчитать количество цифр после запятой?

    viktorvsk
    @viktorvsk
    Довольно странная задача и формулировка. Хотите определять _нематематический_ вид числа, представляйте (вводите) его как строку. А вы хотите проводить математические операции с нематематическим сущностями. Как-то немного запутанно получается.

    Действительно интересно, возможно ли это. Сдается, что врядли, ведь флоат - это не 1.35000, а что-то вроде 1.35000124124512512581259283593857238905823782358723592308592385923905 где-то там далеко. Поэтому как дать понять php, сколько цифр из него вы хотите использовать без явного указания по средствам number_format или операции округления ?
    Ответ написан
    Комментировать
  • Почему многие принижают asp.net mvc и IIS?

    viktorvsk
    @viktorvsk
    - Железо стоит дешево. Намного дешевле, что грамотные программисты, которые будут под него писать (на том или ином языке, цена тоже разная)
    - В вебе 230 в секунду и 900 в секунду не играет никакой роли для 99% вебсайтов (цифра с потолка, смысл, думаю, понятен, насчет сайтов-визиток, бложиков, интернет-магазинчиков...)
    - В вебе часто нужно "запилить сейчас. нужно, что б работало вчера". На rails\django это сделать проще, чем на Java, мне кажется.
    - Не хочется очень сильно зависеть от кадров (разработчиков пхп куда больше, чем c#, как я понимаю, опять же играет фактор, что не всем нужны гуру, а на c# врядли кто-то будет работать за 3 копейки в час)
    - Комьюнити php, мне кажется, больше.
    - Если проект специфический (гитхаб, твиттер, фб...), то там отталкиваются, опять же, не столько от языка, сколько от команды, на которую можно положиться
    - Есть очень мало вещей, которые нельзя сделать на языке Х быстрее, чем на языке Y. А когда все-таки нельзя, то приходит не java или c#, а Erlang и Go. Хотя, гитхаб и так, вроде живет неплохо на рельсах.

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

    viktorvsk
    @viktorvsk
    Необходимо найти сходства у этих строк по смыслу


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

    Если все словосочетания у вас подобного типа, то находите "расстояния" между ними и группируйте по диапазонам.
    Расстояния можно рассчитывать, например, по количеству одинаковых букв в словосочетании или строгой их последовательности.

    Например, расстояние между "у человека нет проблем" и "у человека нет проблемы" = 1, а между "у человека нет проблем" и "задачи человека решение" уже или 0 или около "длина строки (которая длиннее или короче) минус количество букв в слове "человека)

    Ну или попробуйте построить свои грамматики и факты с блэк-джеком и Томитой

    P.S. А вообще это попахивает сео, и если это так, то не маскируйте неприятные запахи, а устраняйте их (с)
    Ответ написан
    1 комментарий
  • Как исправить ошибку Fatal error: Cannot redeclare totranslit()?

    viktorvsk
    @viktorvsk
    "Ї" => "yi", "Є" => "ye",
    Завершающая запятая, для начала?
    Ответ написан
  • Стоит ли еще раз проверять данные из формы на сервере, если ее уже проверил javascript на клиентской стороне?

    viktorvsk
    @viktorvsk
    Проверка у клиента - для удобства клиента
    Проверка на сервере - для безопасности клиентов
    Ответ написан
    Комментировать
  • Зависит ли СЕО от CMS?

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

    viktorvsk
    @viktorvsk
    Да, жесть.
    https://github.com/NoahBuscher/Macaw
    symfony.com/doc/current/components/routing/introdu...

    P.S. не до конца вник в то, что вы хотите реализовать. Возможно, это можно (и нужно) сделать по-другому. Но если нет, то может быть, что "очевидных" возможностей существующих роутеров не хватит. Не знаком особо с php, но в rails routing есть много разных фишек, в частности, constraints, с помощью которых можно сделать вообще что угодно. Думаю, что-то похожее должно быть и в php
    Ответ написан
    Комментировать
  • Как разработать Web-приложение?

    viktorvsk
    @viktorvsk
    Решить задачу по отправке сообщений - это несложно.
    Выучить symphony, или даже просто применить в этом случае - может зависеть от миллиона ваших личностных факторов.

    Если прямо отвечать на вопрос (с чего начать?) я бы сказал так:
    Начните с того, что решите эту задачу (про отправку сообщений, сервер и т.д.) на любом языке и любым говнокодом. И когда доделаете, все заработает и вы поймете, какая получилась каша - решайте сами, лучше ли было бы использовать какой-то фреймворк и best practices.

    Если вы пришли на практику, вам дали задание и вы даже не знаете с чего начать... То кажется, что где-то очень много рекламируют фразу:
    "Программирование - это легко:
    1) Выбираешь популярный фреймворк.
    2) Задаешь вопрос на тостере.
    3) PROFIT."
    Ответ написан
    4 комментария
  • Как модальному окну передать значение get-параметра?

    viktorvsk
    @viktorvsk
    Зависит от того, какой скрипт у вас создает модальное окно. У большинства популярных можно аяксом подгружать содержимое.
    Ответ написан
  • В чем преимущества PHP перед ASP.NET?

    viktorvsk
    @viktorvsk
    Думаю, если бы на какой-то из этих вопросов можно было ответить объективно, почему Х хуже\лучше Y, то один из них бы уже был бы забыт.

    1) Самый медленный язык в вебе - это SQL. в 99% случаев (при прочих равных) ни один современный язык нельзя изуродовать настолько, что б он проиграл SQL

    2) Легче учится - понятие субъективное, по крайней мере сегодня, в отношении популярных языков, и с точностью, опять же, 99%

    3) Легче поддерживать то решение, в фундаменте которого - хорошая архитектура, а реализовывала - грамотная команда

    4) Врядли, скорость разработки сильнее зависит от языка, чем от всяких факторов типа команды, ЗП, настроения и т.д. Действительно, в ruby больше синтаксического сахара, чем в php. Но все относительно и это понятие тоже довольно субъективное. Например, в руби можно одной строчкой из коробки делать различные сложные манипуляции с массивами, которые в пхп придется освоить самому. Зато когда дойдет до реализации классического ООП, может возникнуть потребность понять, где же абстрактные классы и интерфейсе в таких языках как руби и питон

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

    6) Не совсем понимаю, что вы имеете ввиду под облаками? PaaS типа heroku? или SaaS типа Dropbox для статики? или yandex cocaine?

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

    viktorvsk
    @viktorvsk
    У меня есть довольно успешный знакомый, который считает, что сейчас очень ценятся "мастера на все руки": и фронтэнд, и бэкенд, и понимание всяких там, как модно нынче говорить DevOps.

    Препод с универа, который тоже и зарабатывает неплохо и вроде как совсем не дурак - говорит, что "разобраться в MVC, MV... ruby, python" - часа 3-4 (сам работает со встраиваемыми системами по основному профилю)

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

    Явно, не стоит делать соцсеть на perl, форум а-ля phpBB на nodejs или лэндинг на erlang.

    Наверное, самое главное - это интерес и "подходящие" проекты. Подходящие - значит:
    1) вовремя (ничего в данный момент не отвлекает от конкретного проекта)
    2) осмысленно (или хорошо оплачивается, или доставляет много удовольствия)
    3) хорошая команда или хороший настрой, если делаешь сам
    4) хорошо вписывающийся в интересующий стек, что б не впихивать стек в проект и страдать.

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

    P.S.
    Не думаю, что можно дать рабочую пошаговую инструкцию, как достичь успеха в разных стэках. если такой есть, было бы интересно и самому увидеть
    Ответ написан
    5 комментариев
  • 1 папка и 10 000 картинок или 10 000 папок и по одной картинке в каждой?

    viktorvsk
    @viktorvsk
    Если прямо отвечать на вопрос, то я думаю дела обстоят так (если ошибаюсь, поправьте):
    1) Если в базе у вас хранится путь к картинке, то по производительности абсолютно не важно, это users/user_10000/avatar.png или users/avatar_10000.png
    2) Каждая созданная директория - это накладные расходы (на большинстве файловых систем около 4 КБ, как я понимаю)
    3) Фрагментирование здесь не играет роли, так как сервер обычно на юниксе, так что ничего страшного (вот тут не уверен)
    Ответ написан
    Комментировать
  • Как вставить JavaScript код в страницу новости Simpla CMS?

    viktorvsk
    @viktorvsk
    Если блог, портал, портфолио или что там у вас не важно, только ваше - то убирайте экранирование html символов и добавляйте прямо код
    Если извращаться нет желания, то к записи поста, работы, новости или что у вас там не важно, добавьте колонк js_code и заполняйте по надобности
    Ответ написан