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

    xenon
    @xenon
    Too drunk to fsck
    А какая-нибудь тильда вам не подойдет? Я так понимаю, высоких требований у вас нет - не проще ли это бесплатно где-то захостить?
    И еще, если будет интересно - можно подумать в сторону jamstack сайтов (статических). Многие блоги, например, очень хорошо реализуются как статические сайты. (Современный статический сайт - совсем не так, как было в 90-ых, он может иметь JS, может пользоваться разными API, например, статичные блоги имеют комменты от disqus или других подобных сервисов). Потребуется сделать небольшую learning curve. Но у вас, мне кажется, типичный блог - каждое новое появившееся животное - это новый пост в этом блоге.

    Из SSG (генераторов статичных сайтов) я предпочитаю hugo, но тут на вкус и цвет (я просто не люблю те, что написаны на JS).

    Какие плюсы вы получите, если сайт будет статичным:
    1. Он будет очень быстрым, это приятно пользователям и может хорошо индексироваться поисковиками (я для теста выжимал 100/100/100/100 web vitals по google lighthouse - оценка для десктопов, и 98/100/100/100 для мобил)
    2. Его можно хостить бесплатно на куче хостингов типа netlify, cloudflare pages, github, gitlab, ...
    3. Очень высокий аптайм, эти сервисы оочень редко ломаются.

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

    xenon
    @xenon
    Too drunk to fsck
    Я считаю себя скорее бэкэндщиком, и да - много раз пришлось фронт заново повторять, вспоминать очевидное, потому что тяжело решать какую-то простую "фронтовую" задачу раз в 2-3 года. За это время все забываешь, да.
    Точно так же забывается golang, если долго программируешь на python, и вообще любые неиспользуемые знания пропадают - так уж мозг устроен.

    Но две важных вещи:
    1. Вспоминать забытое - просто и быстро, это не учиться с нуля. Скорее всего какой-нибудь cheatsheet поможет из сети или самодельный. Они не пропадают совсем.
    2. Это все равно надо. Хороший специалист в любой сфере должен иметь некоторое представление и о смежных вещах. Бекэндщику никуда без хотя бы базовых знаний по фронтенду. Фронтендщику бэк, наверное, нужен немного меньше, но если хочется быть ценным специалистом - то все равно нужно.
    Ответ написан
    Комментировать
  • Какие уязвимости могут тут быть?

    xenon
    @xenon
    Too drunk to fsck
    cross site request forgery (наиболее вероятно и достаточно опасно)
    clickjacking (хотя он тут не кажется опасным)
    возможность забить ваш диск большим количеством файлов (если на виртуалке 20 гигов, то передать 20 гиг скриптом можно быстро)
    возможность залить какой-то ненастоящий CSV
    если (самое ужасное) имя и-или путь к файлу как-то зависит от пользователя (от данных в форме) - возможность перезаписать другие доступные файлы
    Ответ написан
    Комментировать
  • Может ли физ лицо создавать интернет-проекты?

    xenon
    @xenon
    Too drunk to fsck
    Законы разные, очень советую посмотреть на ютубе интересное видео "Раздел 230 - свободный интернет | Михаил Пожарский". Как раз про вашу ситуацию, объясняющий, почему площадки вроде вашей или Facebook возникли в США, а не в ЕС, например (сюрприз - в Европе законы тоже не очень хороши).

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

    xenon
    @xenon
    Too drunk to fsck
    IPv4 и есть число (32-битное). Можете, например, выдавать именно его как есть. Или пройтись xor с определенной маской. Или прохешировать (md5, sha1, ...) и в качестве числа взять сколько-то байт хеша. еще CRC можно использовать.

    Либо вообще другой подход - использовать http cookie.
    вариант 1) просто записать число в куку (и при заходе пользователь сам его вышлет вам)
    вариант 2) в куку записать session id, а на сервере хранить задуманное число, и session id для которого его придумали.
    Ответ написан
  • Почему отличаются результаты lighthouse в devTools от pagespeed insight?

    xenon
    @xenon
    Too drunk to fsck
    Ответ выше хорошо поясняет, почему отличается оценка Performance. Но у вас и Accessibility и Best Practices отличаются... Будто бы проверяется разный контент сайта...

    Вообще, как web.dev переделали и утащили мерилку в PageSpeed - она очень ненадежная стала, и иногда в принципе не срабатывает. (раньше было лучше)

    Я сам использую https://github.com/andreasonny83/lighthouse-ci - чтобы хотя бы быть независимым от аддонов и загрузки в других табах. Еще вариант (еретический, но все же) - поищите другие онлайн-тестилки по той же Lighthouse методологии на других сайтах. Возможно сторонний сайт будет надежнее-стабильнее чем гугловский.

    А насчет чертовщины с Accessibility и Best Practices - поглядите, за что именно снижается оценка в одном случае, и почему этого снижения нет в другом - может быть так получится понять проблему.
    Ответ написан
    Комментировать
  • С чего начать изучение web разработки?

    xenon
    @xenon
    Too drunk to fsck
    Немного HTML, CSS (не до мастерства, а до уровня, когда примерно понятно, что-где смотреть, если непонятно). Очень желательно git. Почти обязательно javascript (хотя бы на уровне fetch данных из API и отрисовать их).

    А дальше на выбор, смотря что хотите. Если backend - то Flask (это пайтон). Хорошее сочетание между простотой и высокой популярностью.

    Если фронтенд - то какой-нибудь из фронтенд фреймворков. Мне очень нравится svelte, но у других - другие вкусы. Какой-нибудь react, vue - точно пригодится востребован.

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

    xenon
    @xenon
    Too drunk to fsck
    Хостить такие статические сайты можно на разных хостингах: github pages, gitlab pages (да, у них же хостите и гит-репозиторий и у них же сайт), netlify, cloudflare pages.

    Общая схема: если хостинг там же, где и репозиторий, то обычно через CI/CD делается. Если снаружи (например, репозиторий на гитхабе, а хостинг на cloudflare), то при обновлении репозитория дергается хук и хостинг выкачивает новые странички себе.

    Возможно вам будет интересно почитать про концепцию JAMstack, это как бы "старые" статические сайты (которые быстро загружаются из CDN, не рендерятся на сервере), как из 90-ых, но со всеми фичами из XXI века через javascript API. Вот авто-обновление контента на хостинге из репозитория - это часть JAMstack.
    Ответ написан
    Комментировать
  • Для каких задач в веб-разработке очень хорошо подходит питон?

    xenon
    @xenon
    Too drunk to fsck
    Скажу как я (давным-давно) выбирал между Руби и Питоном. Это сейчас они более-менее по нишам разделились, а тогда оба были примерно одинаковыми новыми-модными языками. Поглядел список проектов на том и на другом. Везде немало. Но было принципиальное различие. На Руби почти все проекты были "полезные". Дали рубисту задачу, он ее исполнил и код в GPL выложил. А вот на Питоне было дофига "бесполезных" проектов, которые люди делали явно не ради денег. Вывод - на питоне писать приятно. Это важно.

    Ну и вряд ли вы когда-либо серьезно пожалеете, вроде "ах, проект - написать магазин авиабилетов, на руби-то я бы это сделал, а на питоне такое не сделать!". Руби для веба удобнее только рубистам. Питонистам удобнее питон.
    Ответ написан
    Комментировать
  • Посоветуйте linux для x86 в специализированный прибор?

    xenon
    @xenon
    Too drunk to fsck
    Приходилось заниматься подобными вещами. Может мои соображения окажутся полезными:

    1. «Минимальный» дистрибутив. Если прямо вот на самом деле важно сделать как можно меньше его — то лучший вариант даже не Gentoo, а Linux From Scratch ( www.linuxfromscratch.org/index.html ). Это даже не дистрибут, а просто гайд, как самому из исходников создать систему. Я в свое время по ней делал системы и размером даже с 1 флоппи диск (1.44Мб!), и вообще тогдашние давние гайды и разные мини-линукса, сейчас менее актуальны уже, но все таки могут быть интересны.

    Чем скромнее будет дистрибут — тем меньше глюков и меньше всяких непонятных процессов в памяти, которые жрут и память и CPU.

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

    2. GUI ооочень слабо завязан на дистрибут. Можете писать GUI например, на дебиане, а потом запустить на генту, просто поставив нужные библиотеки. И вообще — GUI — это ж ведь просто программа, как firefox или vim — ее не пишут под дистрибут, ее просто пишут. А под дистриб только потом чуть-чуть напильником подпиливают.

    3. Драйвер (модуль ядра) — вообще до дистриба не зависит. Важна только поддержка определенных версий дистрибом. (например, драйвер от 2.6 так просто на 3.0 не пойдет. Даже иногда внутри самой 2.6 после определенных изменений ядра, к новой версии нужно чуть дописывать драйвер, который писался для чуть более старой версии. Но внутри ветки, все эти изменения всегда очень небольшие).
    Ответ написан
    1 комментарий
  • Нужна ли миру система единых аккаунтов?

    xenon
    @xenon
    Too drunk to fsck
    Но если речь идет о привязке (напр, в качестве защиты от спама — забанил юзера, и он уже не заведет второй аккаунт), то мне кажется, очень тяжело будет продвигать такую систему. На форумах и всяких хабрах я б не хотел по паспорту регистрироваться, а вот какой-нибудь госуслуги, наоборот, не будет использовать стороннюю авторизацию — мало ли сколько левых «паспортов» нагенерирует создатель сервиса, или взломщик, который туда проник.
    Ответ написан
    Комментировать
  • Нужна ли миру система единых аккаунтов?

    xenon
    @xenon
    Too drunk to fsck
    Да, и оно давно уже есть. Скажем, OpenID через ЖЖ. Или авторизация через ВКонтакте.

    Вспоминается комикс про «в мире слишком много, N, стандартов на что-то, нужен единый стандарт! И получается мир с N+1 стандартом».

    А вообще, скажем, OpenID — чем не единая система аккаунтов? К тому же децентрализованная, что очень здорово.
    Ответ написан
    1 комментарий