• Как оптимизировать поиск на Тостер?

    riky
    @riky
    Laravel
    нет
    Ответ написан
    Комментировать
  • Как получить все данные ограниченные LIMIT по запросу вроде LIKE?

    riky
    @riky
    Laravel
    все литеры и нужно перебирать. но это только в первый раз.

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

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

    riky
    @riky
    Laravel
    для получения любого цвета достаточно иметь 3 цвета RGB.
    поэтому
    #617730 = #610000 + #007700 + #000030
    Ответ написан
    6 комментариев
  • Как обезопасить сделку дистанционной купли/продажи услуги/товара без криптовалют?

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

    например старожилы на форумах. или безопасная сделка на биржах.
    Ответ написан
    5 комментариев
  • Какие есть инструменты для анализа поисковых запросов пользователей (по миру)?

    riky
    @riky
    Laravel
    для вордстата есть например Словоёб + его платная версия
    апи у них конечно же нет, более того, они совсем не любят когда их парсят.
    Ответ написан
    2 комментария
  • Чем пропарсить несколько миллионов доменов?

    riky
    @riky
    Laravel
    делал тупо на ноде такое.
    все *.RU домены (5,5 млн) за несколько суток.
    Ответ написан
  • Безопасный интерпретатор пользовательской логики (кода)?

    riky
    @riky
    Laravel
    во многих языках для таких случаев используют скриптовый язык LUA.
    например дизайнеры игр на нем скриптуют игровые события.
    в пхп есть экстеншен php.net/manual/ru/book.lua.php либо можно чисто на пхп такой интерпретатор поискать.
    такое решение позволит создать необходимую изоляцию и довольно понятный и дает большие возможности.

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

    UPD первое решение может показаться сложным (нужно еще и lua знать) а второе ограниченным. однажды например писал на пхп интепретатор excel-like формул. этот интепретатор формулы компилировал в пхп код, поэтому при исполнении это было довольно быстро. модуль получается конечно сложный, изоляция также полная, делал комбинируя код из symfony expression language и из твига, код в них довольно похожий, похоже от одних создателей.

    часто в небольших проектах конечно используют как раз php eval, если админка доступна только владельцу сайта. это просто, удобно и полнофункционально, но не безопасно (и с этим ничего уже не сделать). любой кто получит случайный доступ к админке сможет выполнять любой код на сервере.
    Ответ написан
    9 комментариев
  • Что такое Байт Бит и как это работает не много о звуке?

    riky
    @riky
    Laravel
    по поводу картинок это действует только для примитивных форматов типа bmp. там реально чтобы получить N пикселей достаточно прочитать 3*N байт. все остальные форматы графики (за редким исключением) сжимают изображение, очень часто даже с потерями (особенно jpeg).

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

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

    bmp и vaw простые форматы удобные для простой потоковой записи и чтения. но используются крайне редко из-за большого размера, поэтому используются гораздо более сложные форматы, для того чтобы размер файла был меньше. но их довольно сложно читать, без специальных готовых функций для их чтения и преобразования в понятный набор 3 байт например.
    Ответ написан
  • Имеет ли смысл на NodeJSделать большое количество вычислений?

    riky
    @riky
    Laravel
    "TS и прочих трансплайтеров."
    они тоже компилируются в js и скорость получается та же. (хотя возможно какие то из них используют типизированные массивы, см ниже)

    любые библиотеки отпадывают по той же причине. единственный бонус от библиотек может быть при работе с гигансткими числами.

    насколько я помню в ноде числа все int32. когда целое число превышает эти рамки оно превращается в float где младшие разряды (для целых числе) сохраняются вплоть до 2^59 вроде бы, это весьма неплохо.

    по поводу оптимизации в библиотеках связаных с мощными вычислениями (3д математика) (на фронтенде) часто используют типизированные массивы типа Int32Array как минимум меньше памяти и возможно более оптимизированные вычисления. самому интересно что есть на серваке в этом плане.
    Ответ написан
  • Где найти живое сообщество программистов (создание cms)?

    riky
    @riky
    Laravel
    сначала прочтите мой ответ отсюда Что почитать об архитектуре CMS?

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

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

    из русских создателей коробочных цмс знаю https://phpixie.com/ можете попробовать с его создателем сконнектится, но в коробочных цмс потребности немного другого порядка.

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

    если что - спрашивайте, и конечно же удачи!
    Ответ написан
    9 комментариев
  • Куда сохранить заметки из Вконтакте?

    riky
    @riky
    Laravel
    лично я сделал себе приватную группу и тупо делаю репосты туда. там даже поиск по постам на стене есть.

    если нужны разные тематики, типа папок, то можно создать несколько групп. (у меня пока все в одну, но планирую разнести)

    также можно легко расшарить доступ с женой или коллегами, просто пригласив их (отдельные группы также пригодятся), из плюсов - они увидят в ленте новые репосты.

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

    riky
    @riky
    Laravel
    в файле composer.json надо автолоад прописать.
    "autoload": {
            "psr-0": {
                "App": "src/"
            }
        },

    и обновить
    composer update
    все классы в неймспейсе App будут загружаться из папки src.
    Ответ написан
    3 комментария
  • Что почитать об архитектуре CMS?

    riky
    @riky
    Laravel
    не уточнили какую цмс вам надо.
    цмс бывают двух типов:
    (1) просто система для управления контентом, которая ставится на сервер как правило в одном экземпляре, для упрощения работы менеджерам над контентом, или пользователм сайта.
    (2) и коробочные цмс которые либо свободно распространяются либо продаются, но факт в том что много юзеров использует их.

    для проектирования цмс первого типа, нужны общие знания о ООП в пхп и MVC. проект очень простой, нужно знать только ООП/MVC и желательно выбрать какой нибудь фреймворк symfony/laravel/yii.
    во втором случае система должна быть супер универсальной, функциональной. очень большие сложности возникают для обеспечения писателям плагинов(сторонним разработчикам) хорошего внутреннего апи (систему хуков hooks).

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

    разработка же цмс первого типа ничего сложного, паттерны там общие как при разработке любого сайта на фреймворках, поэтому любые книжки по паттернам и проектированию подойдут.
    Ответ написан
    4 комментария
  • Почему не подключается стандартный класс Thread в php7?

    riky
    @riky
    Laravel
    реально ли вам нужна именно многопоточность?

    в большинстве случаев хватает решений на основе event loop например могу порекомендовать reactphp.org работает без доп расширений, реализует асинхронное IO, чего в большинстве случаев достаточно. в других случаях проще запустить несколько отдельных процессов, например вот этим https://symfony.com/doc/current/components/process.html
    Ответ написан
    Комментировать
  • Запуск параллельных потоков из setup, не из loop?

    riky
    @riky
    Laravel
    когда то давным давно тоже делал библиотеку для псевдопотоков.
    controll.run(); должен быть в loop.
    вы же понимаете что никакой многопоточности в ардуино быть не может. controll.run в каждой итерации loop проверяет все подключенные обработчики/thread и если пришло их время запускает эти функции. никакого волшебства, ровно как и никаких реальных потоков.

    если вы не вызываете controll.run в loop то эти обработчики никогда не будут запущены.

    также учтите что код в обработчиках не выполняется параллельно!!!
    то есть если 2 функции(thread) которые там добавлены выполняются каждая по 1 секунде (например они содержат sleep внутри себя) то они будут выполнены ровно по очереди и вместе будут выполняться 2 секунды, а не 1 секунду как было бы при честной многопоточности.

    либо еще вариант делать их запуск по условию
    initTime = millis() + 5000;
    
    loop() {
       if (millis() < initTime) {
          controll.run(); 
      }
    }


    controll.run будет запускаться только первые 5 сек. если вы не хотите получить лишние накладные расходы при обычной работе после запуска.

    UPD: читайте как работают EventLoop в любых языках программирования и библиотеках.
    Ответ написан
    Комментировать
  • Как подключить 2 сайта на wordpress к одной БД?

    riky
    @riky
    Laravel
    если домены на одном хостинге то просто пропишите в конфиге обоих одну базу (название/юзер/пасс).
    если на разных то в базе mysql нужно будет создавать пользователя с доступом извне (не только с localhost) это должен разрешать хостинг.

    но все равно полноценно работать не будет некоторые ссылки на тестовом будут вести напрямую на основной. тк в вордпрессе они сохраняются прямо в базе в некоторых местах.

    в основном будет страдать навигация. рекомендую сделать закладку в браузер при нажатии на которую меняется домен на тестовый, будет удобнее.
    Ответ написан
    3 комментария
  • Нужен ли свой хедхантер для технарей?

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

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

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

    riky
    @riky
    Laravel
    связь many-to-many c доп аттрибутами

    то есть отдельная таблица
    friends:
    id_user, id_friend, activity

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

    но учитывайте что дружба это односторонняя. то есть считается что чел подписан на другого (как сделано в вк), если дружба взаимная то будут две записи, второй друг первого и первый друг второго, и activity у них может быть разная.
    Ответ написан
    Комментировать
  • Как понять свой уровень знания какой либо технологии, и надо ли знать ее на 100%?

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

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

    поэтому стремись не к тому чтобы запомнить все html теги, все css свойства, а к тому чтобы знать что для решения той или иной задачи есть какой то тег/свойство, и уметь его быстро найти, вот для этого шпаргалка и нужна. можно даже их распечатывать, если тебе так удобно, но в электронном виде удобно делать поиск.
    Ответ написан
    Комментировать