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

Пользователь

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

Не базовые навыки. Как расширить свои возможности и найти новые подходы в работе

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

Привет, Хабр! Меня зовут Татьяна Ошуркова, я системный аналитик, разработчик и за время опыта своей работы успела не только попробовать себя в разных ролях, но также изучить и применить на практике множество навыков из различных сфер.

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

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

Как защитить свое Go-приложение

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

Очень важно думать о том, чтобы приложения были надежными и защищёнными. Go — язык, который известен своей простотой и производительностью. Но ни один язык не безопасен сам по себе и об этом нужно заботится самостоятельно.

В этой статье мы поделимся с вами методами, которые помогут сделать ваши Go-приложения неприступными крепостями.

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

Алгоритмы — самый провальный этап собеседований

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

Уже много лет IT компании проводят алгоритмические собеседования при найме технических специалистов. Подход введенный в FAANG плавно перетек в большинство крупных компаний. Яндекс, Авито, Т-Банк и многие другие хотят проверить алгоритмические знания кандидатов. Но на практике такое собеседование оказывается бесполезным созвоном на 45 минут, который ничего не говорит о кандидате.

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

Но очень мало можно встретить критики и конкретного разбора проблем алгоритмических собеседований и их внедрения в воронку найма. Эта статья будет первой в цикле “в чем проблема алгоритмов”.

Кто-то может сказать: “О, человека не приняли в компанию из-за алгоритмов и он решил обидеться и сказать всем, что алгоритмы бесполезны”. Отчасти это так и было, но я решил не останавливаться на своем чувстве несправедливости и пошел дальше: адаптировал алгоритмы в компании, прошел все этапы в Google и даже решал алгоритмы на протяжении года.

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

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

Сейчас я просто хочу рассказать свою историю.

Читать далее
Всего голосов 70: ↑58 и ↓12+59
Комментарии96

Навигация без перезагрузки используя expressjs, jade и History.js

Время на прочтение5 мин
Количество просмотров20K
Мне ранее не доводилось использовать в своей работе такую возможность HTML5 как History API. И вот настал тот час, разобраться в этом и провести небольшой эксперимент. Результатом этого эксперимента я решил поделиться с Вами.

И так что мы хотим:
— Навигация по сайту с использованием history api
— Получения данных с сервера в виде json объекта с последующим рендером на клиенте
— При прямом переходе рендер должен происходить на сервере
— Что бы все было легко и просто
Читать дальше →
Всего голосов 21: ↑19 и ↓2+17
Комментарии22

RabbitMQ: терминология и базовые сущности

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

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

Алексей Барабанов, IT-директор «Хлебница» и спикер курса «RabbitMQ для админов и разработчиков», подготовил конспект, который поможет понять терминологию и базовые сущности RabbitMQ.

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

Сначала войдите через Телеграм

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

Как-то мне понадобилось ограничить доступ к статическому сайту. Я написал сервер, который просит пользователей войти через Телеграм и пропускает только людей из белого списка. Ничего сложного, но вдруг кому-то понадобится.

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

Next.js: подробное руководство. Итерация первая

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


Привет, друзья!


Хочу поделиться с вами заметками о Next.js (надеюсь, кому-нибудь пригодится).


Next.js — это основанный на React фреймворк, предназначенный для разработки веб-приложений, обладающих функционалом, выходящим за рамки SPA, т.е. так называемых одностраничных приложений.


Как известно, основным недостатком SPA являются проблемы с индексацией страниц таких приложений поисковыми роботами, что негативно влияет на SEO.


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


Кроме того, существуют специальные инструменты, такие как react-snap, позволяющие превратить React-SPA в многостраничник путем предварительного рендеринга приложения в статическую разметку. Метаинформацию же можно встраивать в head с помощью таких утилит, как react-helmet. Однако Next.js существенно упрощает процесс разработки многостраничных и гибридных приложений (последнего невозможно добиться с помощью того же react-snap). Он также предоставляет множество других интересных возможностей.



Обратите внимание: данная статья предполагает, что вы обладаете некоторым опытом работы с React. Также обратите внимание, что заметки не сделают вас специалистом по Next.js, но позволят получить о нем исчерпывающее представление.


Заметки состоят из 2 частей. Это часть номер раз.


Итерация вторая.

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

Server-Side Rendering с нуля до профи

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


  • В данной статье мы разберем влияние SSR на SEO оптимизацию приложения.
  • Пройдем с вами путь по переносу обычного React приложения на SSR.
  • Разберем обработку асинхронных операций в SSR приложениях.
  • Посмотрим, как делать SSR в приложениях с Redux Saga.
  • Настроим Webpack 5 для работы с SSR приложением.
  • А также рассмотрим тонкости работы SSR: Генерация HTML Meta Tags, Dynamic Imports, работа с LocalStorage, debugging и прочее.
Читать дальше →
Всего голосов 8: ↑6 и ↓2+8
Комментарии7

Самое понятное объяснение Специальной теории относительности

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

Специальная теория относительности - удивительная теория, которая опровергла многие представления о мире, в которых человечество не сомневалось всю историю своего существования.

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

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

Для иллюстраций я написал интерактивный визуализатор СТО, работающий в браузере. Ссылка на него и исходники проекта в конце статьи.

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

Как и зачем создавать кастомные сборщики мусора в Go

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

В Golang (да в принципе во всех ЯП) управление памятью и эффективное использование ресурсов — основа создания высокопроизводительных приложений. Одним из важных инструментов, который помогает справляться с этой задачей, является сборщик мусора (на англ garbage collection). Встроенный сборщик мусора Go выполняет свою работу довольно хорошо, но иногда требуется более тонкая настройка, чтобы соответствовать специальным требованиям потребностям конкретного приложения.

Здесь нам и помогут кастомные сборщики мусора.

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

Что общего у японских бань и файрвола, или Кибербез головного мозга

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

Привет! Я Никита Ладошкин, руковожу разработкой PT Container Security в Positive Technologies. Однако в этой статье речь пойдет не о продуктах и техниках защиты, и даже не о контейнерах (но это не точно) — сегодня я хотел бы выступить в необычной для себя роли тревел-блогера и рассказать о своих впечатлениях о поездке в Японию.

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

Поехали!
Всего голосов 23: ↑18 и ↓5+17
Комментарии6

Дампим домен и смотрим артефакты

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

🔥 Атака Domain Dump позволяет злоумышленнику сдампить домен для получения информации о пользователях и группах, а также для последующего построения пути компрометации домена.

Но как она делается и, самое главное, детектится в домене?...

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

Информация

В рейтинге
5 731-й
Зарегистрирован
Активность

Специализация

Fullstack Developer
Python
Golang