Как стать автором
Обновить

Разработка

Сначала показывать
Порог рейтинга
Уровень сложности

SSR: ключевой элемент сайта, который требует особого внимания

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

Сегодня поговорим про SSR — что это, зачем использовать, как с этим работать, чтобы все получалось.

Что такое SSR?

SSR — это Server Side Rendering, то есть, генерация страницы на стороне сервере, а не в браузере, когда сервер отдает уже сгенерированный HTML.

Любая страница сайта или простейшая веб-версия приложения — это HTML-код, который отображается в браузере в виде набора визуальных элементов — текстовых блоков, изображений, ссылок и кнопок. Рендеринг — сборка html кода для браузера пользователя, из блоков кода исходного vue-файла. Это происходит тогда,  когда мы заходим на сайт — то есть, отправляем запрос на сервер, а с него получаем js-код vue приложения, html c пустыми местами, в которые будет рендериться контент уже на стороне пользователя. И, конечно, мы хотели бы, чтобы это происходило моментально.

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

Для этого и существует SSR. При этом методе весь HTML-код страницы генерируется на сервере и передается пользователю в браузер.

Какие боли решает метод SSR?

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

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

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

Новости

Kaggle. Соревнование Enefit — прогнозирование энергетического поведения потребителей

Уровень сложности Сложный
Время на прочтение 8 мин
Количество просмотров 120

Цель конкурса - создать модель прогнозирования энергетического потребления для снижения затрат на нарушение энергетического баланса.


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

Читать далее
Рейтинг 0
Комментарии 0

Пришли домой из-за Element

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

Буквально сегодня где-то час назад (в 21:00 по Мск примерно) ко мне в дверь постучались два молодых человека 25 лет примерно, одетые в курточки, качеством явно лучше и дороже, чем у большинства прохожих на улицах моего поволжского города с 300 к населения.

Как оказалось, это постучались оперуполномоченные из местного МВД. Не предоставив хоть какой-то распечатки, бумаги или постановления, только показав свои удостоверения они начали задавать мутные наводящие вопросы издалека, которые в конечном итоге свелись к вопросу «А не пользуетесь ли вы такими мессенджерами как Signal, Element или Джаббер?»

При этом к Тг, Вайберу и Ватсапу у них никаких вопросов не было. Я даже упомянул старые Майл.ру Агент – тоже 0 реакции. Про Миранду они уже сами «пошутили». Как я понял, у них «там» уже давно и крепко связали хоть сколько-то защищенные мессенджеры с активностью тех преступников, которые занимаются распространением (сами понимаете каких) веществ.

Или же они пытаются сделать вид для внешнего наблюдателя, что только определенная категория людей (преступники) пользуются группой мессенджеров вида «Signal, Element и Джаббер». Или же они сами искренне в это верят.

Заодно напомнили об опасности ознакомления с «недостоверной информации в сети Интернет», после которой люди перечисляют деньги на счет не той команды игроков на серверах Майнкрафта (образно выражаясь).

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

То есть провели такую воспитательную беседу на пороге моей квартиры в 9 часов вечера. Какая забота в преддверии выборов!

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

Пишу это как крик о помощи и предупреждение всем прочитавшим.

Читать далее
Всего голосов 39: ↑30 и ↓9 +21
Комментарии 15

Челлендж по обработке миллиарда строк на Go: от 1 минуты 45 секунд до 4 секунд

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

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

Я немного опоздал, соревнования проводились в январе. И на Java. Меня не особо интересует Java, зато давно интересует оптимизация кода на Go.

Этот челлендж был очень прост: обработать текстовый файл названий метеорологических станций и температур, и для каждой станции вывести минимальное, среднее и максимальное значение. Чтобы упростить задачу, было ещё несколько ограничений, однако я проигнорировал те, что относятся только к Java.

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

Истории

Доклады о системном и бизнес-анализе: что было на Flow и что будет

Время на прочтение 6 мин
Количество просмотров 145

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

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

Как вообще этот ваш CI CD настроить

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

Привет, Хабр!

Хочется рассказать о нашем опыте внедрения CI/CD в компанию. О том, как в целом работать с ним и как это работает у нас.

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

Приятного прочтения, всем peace!

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

Получение мостов tor из GMail с помощью Python

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

В предыдущей статье была рассмотрена установка и настройка tor в ОС Linux Mint 21.3, а также были рассмотрены несколько способов получения мостов obfs4 с помощью сайта и телеграмм бота. В комментариях был задан вопрос по поводу автоматического получения и обновления данных мостов. Если использовать рассмотренные ранее методы, скорее всего, получить мосты в автоматическом режиме не получиться. Но существует еще один, довольно интересный и не особо часто используемый метод, который рассмотрим в данной статье немного подробнее.

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

Отрицание, гнев, торг, депрессия, новый сервис — как переключить коллег с Excel на другой инструмент, если ты техлид

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

Привет, Хабр! На связи Надежда Костякова, техлид в ПГК Диджитал. Мы разработали «Оптимизатор ремонтов», инструмент, который позволяет быстро и эффективно формировать план технического обслуживания вагонов. Однако на этапе внедрения столкнулись с проблемой — коллеги неохотно переходили на новую систему, продолжая вести расчеты в электронных таблицах. Сегодня я поделюсь историей о том, как нам удалось развеять их сомнения — и при чем здесь методология change management.

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

Использование информационно-телекоммуникационных сетей в преступных целях

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

Статья посвящена не преступлениям, связанным с нарушениями целостности, доступности и конфиденциальности информации, а именно распространению преступных действий через информационно-телекоммуникационные сети. Будут рассмотрены лишь некоторые из способов использования сети Интернет и других информационно-телекоммуникационных сетей в целях, рассматриваемых законодательством РФ как преступления, влекущие за собой разные виды ответственности.

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

Flowise: доступ к AI без кода

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

Привет, Хабр!

Как без единой строчки кода сделать чат-бот с доступом в сеть, или сервис для генерации изображений, анализа файлов, как встроить это всё в свой проект... Об этом и не только в обзоре Flowise.

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

Полезные расширения VScode для работы с документацией

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

Как правило, работа с документацией — это последний этап любого проекта, связанного с данными (data science, data visualization и т. д.), проектированием и разработкой ПО. Речь о создании и редактировании библиотек, файлов README, обучающих материалов и др. Среди всех преимуществ VScode — его уникальная экосистема расширений. И особенно впечатляют те, что помогают работать с документацией. В этой статье поделюсь самыми полезными из них.

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

1С или СБИС: что выбрать предпринимателю

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

Решили сравнить СБИС и 1С по трем критериям: простоте операций, удобству интерфейса и дополнительным фичам. Рассказываем, какая система лучше и кому она подойдёт.

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

Тест на секретную вечеринку Яндекса, — ночь в финтехе

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

Всем привет!
Недавно прошло событие ночь в финтехе от Яндекса и поскольку Яндекс не рассказал о нем здесь, то это сделаю я. Что бы попасть на мероприятие - нужно было решить несложную задачку (приведена ниже в тексте). Статья будет включать 4 темы: предыстория, попытки решения, решение, послесловие и мои мысли.
П.С. вся статься носит авторский хараткер и написана по типу вольного сочинения.

Короткая предыистория:
Ближе к ночи я писал код и попеременно листал ленту ВК, пока глупый и ленивый компьютер не хотел компилировать мой код каждый раз возвращаясь с новой ошибкой.
Неожиданно мое внимание привлек интересный рекламный пост в ленте. Меня заинтересовал даже не столько пост, сколько его формат. "Приглашаем крутых(?) разработчиков на закрытое "пати" для дружеского общения и дальнейшего найма (к сожалению, ссылка на сам рекламный пост у меня не сохранилась), - так можно передать суть поста и красочная картинка внизу.
Ремарка: "Крутых" я написал курсивом, потому что у меня отложилось в памяти будто речь в рекламе шла о мидл+ уровне, хотя в оригинале об этом не сказано, возможно тексты слегка расходятся, а возможно я это пирдумал.
Интересно, Я не только тратит бюджет на рекламу вакансий (что нормально), но и организует тусовки закрытого формата, а это уже что-то новенькое. Умело проработанная дизайнером картинка и не менее яркая отдельная страничка вселяли уверенность в серьезность события.
В качестве фейс-контроля выступала задача, что только придавало ажиотажа.

Задача:

Cтранное сообщение мы тут написали, что-то в нем явно не так🤔
Давай попробуем расшифровать:

10000100 11001110 10101110 00000100 00100110 01110110 10101110 11110110 01001110 10000110 00000100 11001110 10100110 00101110 10011110 01000110 00000100 00100110 01110110 10000110 00000100 11001110 00101110 10010110 01000010

Поле для ответа:
Форма отправится только в случае верно заполненного ответа

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

Ближайшие события

Moscow QA #3 — митап по тестированию ПО
Дата 14 марта
Время 18:30 – 21:30
Место
Москва Онлайн
Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн

Основы управления состояниями во Flutter

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

Привет, если вы на пути изучения Flutter/Dart или вам просто интересно почитать про путь изучения, подписывайтесь на мой канал в telegram, буду рад вас видеть! А сегодня поговорим про управление состояниями во Flutter!

Читать далее
Рейтинг 0
Комментарии 0

SQL инъекции для продолжающих: ломаем настоящий сайт

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

Про SQL-инъекции написано огромное количество статей. Все знаю про пресловутые ‘ OR 1 = 1 и аналогичные конструкции, но далеко не все реализовывали их на практике. В этой статье мы разберем на практике некоторые способы реализации SQL-инъекций на примере уязвимого сайта.

Статья предназначена для тех, кто хочет на практике разобраться с тем, что такое SQL-инъекции.

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

Бизнес-метрики в Sentry или как сделать велосипед из самоката

Время на прочтение 11 мин
Количество просмотров 330

Привет! Меня зовут Врублевский Артур, и я занимаюсь frontend-разработкой на Angular в Страховом Доме ВСК. Так сложилось, что ранее, до работы в ВСК, я уже сталкивался с инструментом Sentry – занимался его настройкой на отлов ошибок. Наверно именно поэтому я был привлечен к неожиданным для меня работам, которые так же касались Sentry, его использования в необычной плоскости. Об этом и пойдет далее рассказ в 6 актах.

Стадия 1 — «Отрицание»

Думаю, многим Sentry известен как инструмент, позволяющий аккумулировать ошибки, отслеживать метрики производительности, делать тревожные оповещения о состоянии ваших приложений. И когда мне принесли задачу, звучащую как «Нам нужны продвинутые бизнес-метрики, можем ли мы это сделать в Sentry?», я сразу начал отрицать возможность такой затеи. Это казалось противоестественным действием, хотелось отправить постановщика в Яндекс Метрику, которая изначально была создана для подобных целей. Но со слов постановщика, решение Яндекса все же не давало необходимых показателей в нужном виде, нужно было больше гибкости.

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

«Нам нужны продвинутые бизнес-метрики, можем ли мы это сделать в Sentry?»

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

Итак, вы унаследовали старую кодовую базу на C++. Что дальше?

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

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

Теперь вы отвечаете за кодовую базу на C++. Она большая, сложная и своеобразная; достаточно слишком долго на неё посмотреть, как она начинает разваливаться разными интересными способами. Иными словами, это легаси.

Но баги всё равно как-то нужно устранять, а ещё добавлять новые фичи. То есть вам нельзя просто закрыть на неё глаза или что ещё лучше, взорвать её динамитом. Она важна для компании. По крайней мере, для тех, кто платит вам зарплату. А значит, важна для вас.

И что делать теперь?

Не волнуйтесь, у меня такое случалось очень много раз и в разных компаниях (кто-то язвительный может спросить: а разве кодовые базы на C++ бывают какими-то другими?), выход есть, он не особо сложен и поможет вам действительно устранять баги, добавлять фичи, а то и когда-нибудь переписать её.

В этой статье я расскажу о том, что оказалось полезным для меня, и о том, чего стоит всячески избегать.
Читать дальше →
Всего голосов 28: ↑28 и ↓0 +28
Комментарии 8

Концепции устройства приёмника умного звукового датчика на базе шины CAN

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

Концепции устройства приёмника умного звукового датчика на базе шины CAN.

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

Мне представляется, что каждый специалист по АСУ самостоятельно изобретает общие видение задачи, чтобы потом перейти к практической работе по реализации или эксплуатации АСУ. Будучи разработчиком программ станков ЧПУ и систем управления технологическими установками, я тоже на практике выработал общие схемы, которые использовал для разработки архитектуры приёмника данных умных звуковых датчиков. Классификация приёма/передачи и обработки данных даётся в виде 3–ёх базовых схем.

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

Оценка внедрения архитектуры Jamstack в веб-разработке: тематические исследования реальных приложений

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

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

Что такое Jamstack?

Jamstack - это надежная архитектура веб-разработки, созданная для создания безопасных, более быстрых и масштабируемых веб-приложений. Он состоит из трех аспектов разработки, которые включают JavaScript, API и Markup (JAM).

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

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

Markup - Для пользователей веб-сайт Jamstack представлен в виде HTML-файлов. Таким образом, можно создать их из структурированных данных, таких как XML, Markdown, JSON или даже исходных файлов, с помощью генератора статических сайтов.

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

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

Проводим и проходим собеседование по системному дизайну

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

Привет Хабр, меня зовут Вячеслав Таранников, я старший Android-разработчик в команде монетизации RuStore, и сегодня хочу поделиться взглядом, из каких ингредиентов можно собрать полезное и эффективное техническое интервью.

В предыдущей статье я рассказал, как мы пришли к системному дизайну как основному этапу собеседования в RuStore.

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

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