Как стать автором
Обновить
1
0
Сергей Яковенко @SnyMaster

Salesforce Developer

Отправить сообщение

CORS для чайников: история возникновения, как устроен и оптимальные методы работы

Время на прочтение17 мин
Количество просмотров413K


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

Если вы давно хотели разобраться в CORS и вас достали постоянные ошибки, добро пожаловать под кат.

Ошибка в консоли вашего браузера


No ‘Access-Control-Allow-Origin’ header is present on the requested resource.

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://example.com/

Access to fetch at ‘https://example.com’ from origin ‘http://localhost:3000’ has been blocked by CORS policy.


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

Эти всплывающие ошибки в процессе разработки просто раздражают. Но на самом деле, CORS — это невероятно полезный механизм в мире неправильно настроенных веб серверов, злоумышленников, орудующих в интернете и организаций, продвигающих веб-стандарты.

Но давайте-ка пойдем к истокам…
Читать дальше →
Всего голосов 41: ↑40 и ↓1+57
Комментарии14

Ты наконец-то поймешь асинхронность в JS

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров30K

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

Читать далее
Всего голосов 26: ↑21 и ↓5+17
Комментарии33

Самый простой способ обхода блокировок доступа к сайтам любых стран

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров126K

Я понимаю, что пока, за использования VPN, аннонимайзеров и/или tor не применяют уголовные статьи, поэтому гораздо проще скачать какое нибудь приложение из магазина приложений и бесплатно воспользоваться им. Но где гарантия, что завтра они будут работать?

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

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

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

Интересно?

Читать далее
Всего голосов 90: ↑61 и ↓29+49
Комментарии412

Как создать веб-приложение на базе Telegram Mini Apps

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров41K

Telegram Mini Apps — отличная возможность выйти за пределы обычных ботов и попробовать себя в создании более интересных интерфейсов приложений. На базе этого инструмента можно создать магазин или даже сервис для заказа шавермы.

В этой статье познакомимся с Telegram Mini Apps и попробуем создать простое приложение. Сделаем это с использованием обновленного Angular 17 и telegraf, а в конце — задеплоим проект на виртуальный сервер.
Читать дальше →
Всего голосов 30: ↑30 и ↓0+30
Комментарии6

Типы событий в React и TypeScript

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров12K

При работе с React и TypeScript вы часто сталкиваетесь с подобными ошибками:

const onChange = (e) => {}; // Parameter 'e' implicitly has an 'any' type.

<input onChange={onChange} />;

Не всегда понятно, какой тип следует присвоить пременнойe внутри функции onChange.

Это может произойти с onClick, onSubmit или любым другим обработчиком событий, которые получают элементы DOM.

К счастью, есть несколько решений:

Читать далее
Всего голосов 4: ↑2 и ↓20
Комментарии5

Перевод третьей части учебника Patterns.dev

Время на прочтение1 мин
Количество просмотров7.1K

И снова всем привет! Продолжение к переводу второй части книги Patterns.dev

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

Напомню, что авторы Patterns.dev:
Лидия Холли — штатный консультант и преподаватель по разработке программного обеспечения, которая в основном работает с JavaScript, React, Node, GraphQL. Она также занимается наставничеством и проводит личные тренинги.
Эдди Османи — технический менеджер, работающий над Google Chrome. Его команды работают над такими проектами, как Lighthouse, PageSpeed ​​Insights, Chrome User Experience Report и другими.

Материал книги будет полезен не только React‑разработчикам, но и всем, кто так или иначе интересуется или сталкивается с frontend‑разработкой. Это ознакомительная часть перевода учебника https://www.patterns.dev/. Перевод всей третьей части учебника можно найти здесь.

P. P. S.: Третья часть взята из книги: https://www.patterns.dev/, переведена на русский язык. Книга находится под лицензией CC BY-NC 4.0

Данный адаптированный материал распространяется на условиях лицензии Creative Commons Attribution-NonCommercial 4.0 International (CC BY-NC 4.0)

Читать далее
Всего голосов 5: ↑4 и ↓1+4
Комментарии0

Frontend. Чистые и грязные компоненты

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров13K

Здравствуйте!

Коротко о чем тут, чтобы вы могли понять, нужно ли оно вам или нет.

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

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

Почему это дискуссия? Потому что я не могу утверждать, что это правильное решение или что это в принципе хорошее решение для действительно больших проектов. Я не знаю. Но в тоже время, чисто логически, это выглядит как правильное решение и все последние проекты которые я делал с этим подходом — легко поддерживаются и разрабатываются. Надеюсь, что более опытные разработчики оставят отзыв или комментарий на эту тему и по этому материалу.

Читать далее
Всего голосов 14: ↑14 и ↓0+14
Комментарии12

Что такое react-afc

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров9.7K

react-afc - библиотека для более простого уменьшения количества ненужных ререндеров дочерних компонентов.

Читать далее
Всего голосов 8: ↑8 и ↓0+8
Комментарии27

Эффективное использование Postman для тестирования RESTful API: от базовых запросов до автоматизации

Время на прочтение7 мин
Количество просмотров13K

В данной статье мы рассмотрим шаг за шагом, как использовать Postman для тестирования RESTful API. Начиная с отправки простых запросов, мы перейдем к созданию коллекций для организации тестовых сценариев. Затем мы обсудим возможности автоматизации тестирования с помощью коллекций и сценариев с использованием встроенных функций Postman.

Читать далее
Всего голосов 3: ↑2 и ↓1+3
Комментарии10

Kandinsky 3.0 — новая модель генерации изображений по тексту

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров47K

В прошлом году на АI Journey мы представили модель Kandinsky 2.0 — первую диффузионную мультиязычную модель генерации изображений по тексту, которая может генерировать изображения на основе русскоязычного текста. За ней последовали новые версии — Kandinsky 2.1 и Kandinsky 2.2, которые значительно отличались по качеству и своим возможностям от версии 2.0, и стали для нашей команды серьёзными вехами на пути к достижению лучшего качества генерации.

Спустя год после релиза нашей первой диффузионной модели мы представляем новую версию модели генерации изображений по тексту — Kandinsky 3.0! Это результат длительной работы нашей команды, которую мы вели параллельно с разработками версий Kandinsky 2.1 и 2.2. Мы провели много экспериментов по выбору архитектуры и проделали большую работу с данными, чтобы сделать понимание текста и качество генераций лучше, а саму архитектуру — проще и лаконичнее. Также мы сделали нашу модель более «отечественной»: теперь она значительно лучше ориентируется в российском и советском культурном поле.

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

Читать далее
Всего голосов 44: ↑42 и ↓2+58
Комментарии66

Эксперимент: сделать Telegram канал и зарабатывать на рекламе больше 500 тысяч в месяц

Время на прочтение8 мин
Количество просмотров130K

Привет! Меня зовут Аня!
Хабр я читаю уже давно, решила что теперь и у меня есть интересный материал, чтобы с вами поделиться :)

В начале 2023 года начала заниматься Telegram каналами и за 10 месяцев я создала 6 каналов в Telegram, на которые подписано уже более 70 000 подписчиков.

До Telegram я занималась парсингом данных сайтов на VB, созданием сайтов (wordpress, tilda) и бизнес-презентациями. Был даже свой собственный интернет-магазин детских товаров 2 года (опыт был неудачным, тогда еще нельзя было продавать через маркетплейсы )) 

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

Читать далее
Всего голосов 149: ↑35 и ↓114-72
Комментарии81

Typescript: лучшие практики

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров24K

Привет👋 В последние годы среди фронтенд разработчиков Typescript используется практически везде по умолчанию, начиная небольшими пет-проектами и заканчивая огромнейшими веб-приложениями. Однако, до сих пор на некоторых проектах можно встретить кучу any и Function. Давайте разберемся используете ли вы этот невероятно мощный инструмент правильно?

Читать далее
Всего голосов 22: ↑19 и ↓3+20
Комментарии27

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

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров259K

Друзья, всем привет! Сегодня я хочу рассказать вам про самую простую и доступную для понимания нейросеть, которая создает изображения по вашему текстовому описанию. Она называется Fooocus и основана на знаменитой Stable Diffusion XL. Это идеальное решение в качестве вашей первой нейросети, и необходимый инструмент для любого дизайнера или контент мейкера.

Внутри много тяжелых изображений.

Читать далее
Всего голосов 90: ↑87 и ↓3+114
Комментарии216

Вкатываемся в Machine Learning с нуля за ноль рублей: что, где, в какой последовательности изучить

Уровень сложностиПростой
Время на прочтение26 мин
Количество просмотров208K

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

Читать далее
Всего голосов 129: ↑127 и ↓2+155
Комментарии49

Управление состоянием в React с использованием Valtio

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров4K

Когда дело доходит до управления состоянием в React-приложениях, может возникнуть сложность с выбором подходящей библиотеки. Есть довольно много решений, и каждое со своими особенностями и преимуществами. В таком многообразии выбрать оптимальный вариант становится настоящим вызовом. Меня зовут Станислав Быков, и в этой статье я расскажу про Valtio — простое, но мощное решение для управления состоянием в React.

Читать далее
Всего голосов 3: ↑3 и ↓0+3
Комментарии3

Как наложить макет на вёрстку через PerfectPixel

Уровень сложностиСредний
Время на прочтение2 мин
Количество просмотров11K

Привет! Меня зовут Сергей Криворучко, я работаю наставником на курсе «Фронтенд-разработчик» в Практикуме. Иногда у студентов возникают сложности с PerfectPixel — расширением Chrome, совмещающим макет из Figma с вёрсткой в браузере.

В этом материале я расскажу, как корректно экспортировать макет, установить PerfectPixel, управлять расширением и находить элементы страницы, которые стоит поправить на вёрстке. Для примера взял макет, с которым работают студенты на курсе.

Читать далее
Всего голосов 7: ↑6 и ↓1+5
Комментарии5

О чем пишут программисты, когда хотят найти заказчиков

Время на прочтение5 мин
Количество просмотров2.8K

Собрали готовый чек-лист для разработчиков и веб-студий. Проанализировали лучшие статьи за год по разработке приложений на habr и vc.ru. А потом собрали вопросы, по которым эти статьи написаны.

Читать далее
Всего голосов 5: ↑1 и ↓4-3
Комментарии0

Почему я не буду использовать Next.js

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров27K

Представьте, что вы планируете начать новый проект или использовать в существующем более современный подход. А, может, вас просто не устраивает используемый фреймворк, и вы подумываете об альтернативах. В любом случае вам нужно что-то выбрать.

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

С момента выхода Remix в 2020 году я использовал именно этот фреймворк. Мне он настолько понравился, что на следующий год я устроился в эту компанию, чтобы помочь с развитием сообщества, а через 10 месяцев ушёл работать в EpicWeb.dev, где теперь обучаю людей всему необходимому для создания фулстек-приложений. И Remix играет в этом значительную роль, являясь веб-фреймворком, который аналогично Next.js нацелен на решение задач, связанных с созданием веб-приложений.

Поскольку Next.js аналогичен Remix, многие спрашивают, почему для преподавания фулстек-разработки в EpicWeb.dev я предпочёл именно Remix. И текущая статья станет ответом на этот их вопрос.
Читать дальше →
Всего голосов 35: ↑29 и ↓6+38
Комментарии18

«Клиентов нужно не искать, а создавать»: погружение в Telegram API через TDLib

Время на прочтение9 мин
Количество просмотров13K

Сперва я рассказывал простые вещи о Telegram Bot API и делал интересных ботов — виртуальную подругу и друга для заказа шавермы. Затем коснулся тестовых серверов и юзерботов. И наконец, пришла пора заглянуть глубже — узнать, как сделать свой клиент для Telegram. Что такое TL-схема и TDLib? Об этом мы сегодня и узнаем.

Данная статья не только поможет тем, кто решил написать свой клиент для Telegram, но и немного расширит кругозор остальным: MTProto — это не приевшийся JSON API. Добро пожаловать под кат!

Готовы показать свои знания в IT? Примите участие в IT-кроссворде Selectel, выиграйте 10 000 рублей на аренду серверов и эксклюзивный мерч Selectel.

Читать дальше →
Всего голосов 48: ↑48 и ↓0+48
Комментарии9

Короче, кейс: как разработчика уволили. А он за 10 дней запустил свой простой продукт и вышел на $4K в месяц

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров19K

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

Читать разбор кейса
Всего голосов 27: ↑20 и ↓7+20
Комментарии55
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Россия
Зарегистрирован
Активность