Ответы пользователя по тегу Веб-разработка
  • Как хранить альбомы фотографий?

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    software engineer
    Смотря какая файловая система. Но для современных файловых систем проблем нет.
    Листинг может занять врея (find на папку с 3 млн файлов на обычном сервере - 16 гб, 4 ядра, ssd- выполнялся 3-5 мин.) но доступ к одному конкретному файлу по полному пути будет почти мгновенный.

    Но в принципе, лучше разбивать по подпапкам.
    Ответ написан
    Комментировать
  • Насколько популярная в России и странах СНГ оплата покупок через webmoney?

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    software engineer
    В Украине Вебмани запрещен. В России вроде вытеснен яндексманями.
    У меня там еще осталось пару сотен $, сливаю на игрушки и российских стримеров
    Ответ написан
  • Разумно ли конвертировать изображения в base64 и сохранять в базу?

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    software engineer
    В базе можно хранить небольшие изображения (иконки, аватарки), но сейчас вместо base64 можно использовать нативные форматы базы данных типа blob
    Ответ написан
    Комментировать
  • Как найти этот сайт по скриншоту?

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    software engineer
    IMHO это очень старый скриншот, и оригинальный сайт уже давно получил свой редизайн.
    Думаю это https://www.clickbank.com/product-category/arts-en...
    Ответ написан
    Комментировать
  • Сайт на домене третьего уровня это нормально, или не очень?

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    software engineer
    поисковикам пофиг.
    А регистратор имеет значение.
    Ответ написан
    2 комментария
  • Граница между front-end и back-end?

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    software engineer
    Суть заключается не в базовых знаниях, а в специализации.
    Написать простенький сервер-заглушку не должна быть проблемой для senior frontend, но не обязательно лезть в дебри отказоустойчивоти, кластеризации, производительности бэкенда и изучать несколько фреймворков и десятки и сотни библиотек.

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

    Ну или есть еще путь фулл-стек.
    Ответ написан
    Комментировать
  • Как эффективно познакомить новичка с проектом?

    saboteur_kiev
    @saboteur_kiev Куратор тега Организация работы
    software engineer
    Человек или понимает или нет.

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

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

    saboteur_kiev
    @saboteur_kiev Куратор тега IT-образование
    software engineer
    Это же самая примитивная база. И вы уже начинаете выбирать нужно ли это учить?
    Вы точно хотите в ИТ? Если даже это на курсах собираетесь учить, как вы будете учить что-то более сложное?
    Ответ написан
    3 комментария
  • Возможно ли тестирование сайта в автоматическом режиме?

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    software engineer
    headless browser, например chromium, запускается из командной строки, прописываются различные варианты что он должен делать и какой результат должен получиться.
    Скриптуется и запускается автоматом.

    Можно использовать что-то посложнее, типа Selenium.
    Ну и вообще, QA automation engineer, есть такое.
    Ответ написан
    Комментировать
  • У вас есть какие-то интересные идеи для проектов, на которые нету времени?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    кроссплатформенную читалку, которая хранит открытые книжки и текущую позицию в указанном месте (cloud, ftp, ssh, etc), чтобы можно было почитать на телефоне, потом перейти на ноут, потом дома на десктопе дочитать и все синкалось само.
    Ответ написан
  • Возможно ли создать бота для консольного браузера?

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    software engineer
    При желании любую ботоармию можно разоблачить. Банально по бенефициару.
    Ответ написан
    Комментировать
  • Как создать сайт типа пикабу?

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    software engineer
    Что скажите по этому поводу, дайте советов.
    Есть ли готовый скрипт(движок)?
    Как называются подобные сайты и на английском?
    Читал про LiveStreet и InstantCMS.
    дайте развернутый ответ пожалуйста


    коммерческий успешный проект типа пикабу

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

    А вот вложиться в раскрутку сайта - это нужно МНОГО работы. Реклама, раскрутка, SEO оптимизация, тщательная работа с поисковиками. И может быть через пару лет на сайт зайдет первая тысяча человек.

    Но вот станет ли он после этого коммерчески успешным - неизвестно никому.

    Вопрос ваш - вне тематики тостера.
    Ответ написан
    Комментировать
  • Как заставить браузер работать через одно соединение?

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    software engineer
    Все браузеры открывают при необходимости больше соединений, и не все могут изменить это
    sgdev-blog.blogspot.com/2014/01/maximum-concurrent...

    Для firefox:
    about:config: network.http.max-connections-per-server

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    software engineer
    Разве вопрос в языках? IMHO вопрос в платформе.
    Какой браузер будет это выполнять?
    Сейчас вот разные табы работают в разных процессах, то есть с разделяемой памятью и т.п. И на это ушло много лет..

    Посмотрите https://developers.google.com/web/updates/2018/10/...
    Ответ написан
  • Лучше разобраться с cron или силами одного PHP?

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    software engineer
    Ваш план плохо масштабируется - в вопросе неизвестно сколько будет выполняться ваш запрос, и будут ли тормоза у пользователя. И что будет через месяц, через год, если товаров станет больше.

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

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

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Организация работы
    software engineer
    1. Договор - полюбому. Чтобы можно было прижучить.
    В нормальных команиях также секьюрити проводят регулярные таунхолы, особенно для новичков, где рассказывают о безопасности. И приводят пару примеров, как кто-то расшарил кусочек кода, как его засудили на много денег и добавили в черные списки всех компаний.
    Это для тех, кто по глупости может.

    2. Делите исходники на части. Автоматизируйте деплой так, чтобы разработчик это руками не делал и никуда не лазил - сделал коммит - CI сервер автоматом закачал все нужное из разных репозиториев и задеплоил. Надо нескольким разработчикам - сделайте несколько тестовых окружений, чтобы разработчик мог зайти в Jenkins или Teamcity, нажал одну кнопку и выбрал куда ему деплоить. Но своих логинов парлей у него не было.

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

    И это все равно не гарантия. Смиритесь =)
    Ответ написан
    1 комментарий
  • Что должен знать от DevOps средний веб-программист при устройстве на работу?

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    software engineer
    маст хев:

    Понимание принципа работы ssh ключей, чтобы уметь настроить себе доступ на линукс машину или в гит (bitbucket/github/etc)

    Базовое понимание git и то, что висит поверх него (github, bitbucket, etc) чтобы не путаться в пулл реквестах, понимать зачем они и как организована у вас работа - неймконвенш для веток, как ревью делается

    Если пишете под докер, то Dockerfile - это в основном ответственность разработчика. Где его запускать - уже второй вопрос.

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

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

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

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    software engineer
    То есть по канону, даже если в одном файле надо букву поменять - следует запускать полный цикл выгрузки?


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

    В этом случае вы просто не мучаетесь выбором, а просто кодите.
    Ну а одна буква это может быть и - на +. Без тестирования в продакшен?
    Ответ написан
    Комментировать
  • Что проджекту делать с недооценкой времени?

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    software engineer
    Agile технологии хорошо работают в опытной команде. Поэтому со временем и тимлиды и вы должны лучше справляться с оценкой.
    * Со стороны лидов - качественнее прогнозы, качественнее оценка работы подчиненных
    * С вашей стороны - корректировка самого agile процесса - размер спринтов, количество и время на митинги, размер буфера.

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

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

    Вообще, всегда в сложных тасках, они должны дробиться на более мелкие, вот уровень этого дробления и подбирается в каждом проекте на опыте.
    Ответ написан
    Комментировать
  • Есть ли смысл в моем выборе. PHP или JS?

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    software engineer
    Изучиьт php на базовом уровне не проблема. Возьмите и изучите.

    Изучить php на уровень уверенного junior-а, умеющего хотя бы в базовую работу одного из популярных фреймворков - долго, много.
    Но для уверенного JS-джуниора будет гораздо проще, потому что есть определенное количество технологий, которые пересекаются - работа с json/xml/css/html/sql, базовая настройка веб-сервера, сертификаты, установка компонентов.

    PHP на текущий момент умирает уже десятки лет, и все равно он доступен на каждом хостинге. IMHO поднимать nodejs на бэкенде для сайта-визитки это ненужный оверинженеринг. Поэтому базово подтянуть PHP - маст хев.

    Углубляться в изучение фреймворков - уже отдельный вопрос. Смотря как устроитесь.
    Ответ написан
    2 комментария