Pull to refresh
0
0
Send message

Делаем современное веб-приложение с нуля

Reading time31 min
Views146K
Итак, вы решили сделать новый проект. И проект этот — веб-приложение. Сколько времени уйдёт на создание базового прототипа? Насколько это сложно? Что должен уже со старта уметь современный веб-сайт?

В этой статье мы попробуем набросать boilerplate простейшего веб-приложения со следующей архитектурой:


Что мы покроем:

  • настройка dev-окружения в docker-compose.
  • создание бэкенда на Flask.
  • создание фронтенда на Express.
  • сборка JS с помощью Webpack.
  • React, Redux и server side rendering.
  • очереди задач с RQ.
Читать дальше →
Total votes 64: ↑56 and ↓8+48
Comments125

Как мы делаем опенсорс курсы для программистов от программистов

Level of difficultyEasy
Reading time8 min
Views32K
Мы разочаровались в курсах по программированию и поэтому сделали свои собственные. Не для вайтишников, а для типичных разрабов. В процессе нас хакнул инфлюенсер и забанил сервер телеграма.

Покоцанные, но не сломленные, мы представляем проект, над которым работали полтора года по ночам. Курсы по программированию с задачами в online IDE и прагматичной теорией. Никаких сертификатов и гарантий трудоустройства. Сплошной хардкор и опенсорс!


Читать дальше →
Total votes 118: ↑126 and ↓-8+134
Comments76

Как мы переехали с Oracle на PostgreSQL в нагруженном сервисе без даунтайма

Level of difficultyMedium
Reading time30 min
Views22K

Всем привет! Я Сергей, работаю в B2B-команде Яндекс Маркета последние 3,5 года. Как уже понятно из заголовка, сейчас я вам расскажу про yet-another-миграцию с базы на базу, которая началась в середине 2021 года и заняла почти год. Получается, мемуары.

Вас ждёт рассказ о том, как мы:

- несколько месяцев чинили тесты и делали трансформер;

- десятки раз переливали данные;

- чинили баги незаметно для пользователей;

- заставили сервис работать на PostgreSQL быстрее, чем он работал на Oracle.

Читать далее
Total votes 88: ↑89.5 and ↓-1.5+91
Comments15

Выгорание: рассматривая золу под макроскопом

Level of difficultyMedium
Reading time12 min
Views15K

На просторах необъятного можно найти массу статей про выгорание. По этой теме проходят конференции, у многих есть личный опыт. Проблема актуальна и останется такой надолго, ведь первое «выгорание» — это не про вопрос «случится или нет», это про вопрос «когда» и «насколько сильно».

Я начал свой путь как разработчик и был им 15 лет, а сейчас руководитель группы разработки. Прошёл всю дорогу от младшего до ведущего и шагнул дальше. Пока я гнал по карьерному треку, я полноценно выгорал два раза, а потом решил, что хватит это терпеть. И не выгорел третий. Как получилось? Об этом и будет эта статья.

Читать далее
Total votes 91: ↑88 and ↓3+85
Comments21

DCF77: как работает система передачи сигналов точного времени?

Reading time6 min
Views67K
Привет Хабр.

Наверное многие, приобретающие часы или метеостанцию, видели на упаковке логотип Radio Controlled Clock или даже Atomic Clock. Это весьма удобно, ведь достаточно поставить часы на стол, и они через некоторое время автоматически настроятся на точное время.



Разберемся как это работает и напишем декодер на языке Python.
Читать дальше →
Total votes 59: ↑58 and ↓1+57
Comments106

Обнаружение SSH-туннелей по размеру пакетов

Level of difficultyMedium
Reading time8 min
Views17K

Иллюстрация из книги «Справочник киберсантехника»

Протокол SSH — очень мощный инструмент, который используется для удалённой консоли или передачи файлов (scp, sftp). Есть менее известная функция перенаправления портов. Такие SSH-туннели используются для пробития файрволов и хорошо скрываются от обнаружения стандартными средствами мониторинга типа Trisul, Zeek (ранее был известен как Bro), Suricata и Snort. Поэтому для их обнаружения в корпоративной сети используются другие методы.
Читать дальше →
Total votes 74: ↑70 and ↓4+66
Comments23

Начало Aircrack-ng и WEF

Reading time7 min
Views6.7K

Предисловие

Рад приветствовать всех читателей статьи! С сегодняшнего дня запускаю новую рубрику моих статей "Без про-v-ода", в серии этих статей я буду обозревать различные методы, фишки, инструменты, устройства и всё что связано в вардрайвингом. Думаю не секрет, что довольно многие скажем так начинали свой путь с того "Как взломать Wi-Fi соседа?", а дальше углублялись в эту тему и находили что-то намного интересней чем просто бесплатный интернет.

Введение

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

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

Aircrack-ng

Читать далее
Total votes 12: ↑9 and ↓3+6
Comments12

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

Level of difficultyMedium
Reading time13 min
Views100K

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

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

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

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

Читать далее
Total votes 386: ↑386 and ↓0+386
Comments389

Увеличиваем оперативную память программиста, тренируясь в dual-n-back

Level of difficultyMedium
Reading time9 min
Views8.9K

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

После этого я задумался, как бы мне увеличить мозговой ресурс для решения подобных задач. И вбил в поисковик “Увеличение оперативной памяти человека”.

Через N времени гугления я наткнулся на ряд ссылок, ведущих к упражнению «Задача n‑назад», наиболее распространенный вариант которой называется «dual‑n-back».

Увеличить оперативную память
Total votes 25: ↑25 and ↓0+25
Comments11

Как я устроился в Амазон и перестал переживать за свой английский

Level of difficultyEasy
Reading time7 min
Views89K

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

Меня зовут Андрей Столбовский, последние 5 лет я работал в Яндексе, а в прошлом году перешёл в Амазон и теперь работаю Software Development Manager в AWS Redshift – это мой первый полноценный опыт работы в международной компании. 

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

Итак, поехали. 

Поехали!
Total votes 282: ↑279 and ↓3+276
Comments160

Как установить Windows 11

Level of difficultyEasy
Reading time10 min
Views77K

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

Читать далее
Total votes 143: ↑121 and ↓22+99
Comments238

Kubernetes: шпаргалка для собеседования

Level of difficultyEasy
Reading time10 min
Views35K
Всем привет! Меня зовут Олег, я работаю исполнительным директором по разработке в Газпромбанке. На разных этапах карьеры я участвовал во многих собеседованиях, а в настоящее время сам собеседую кандидатов на должность инженеров DevOps и системных администраторов в Газпромбанке, вследствие чего у меня сформировалось некоторое представление о вопросах, которые могут быть заданы соискателям. И сейчас я хочу остановиться на разделе вопросов про Kubernetes.

image

Сразу хочу сказать, что изначально планировал сделать одну статью, но в итоге получилась такая простыня, что пришлось разделить текст на две части. Ссылку на вторую опубликую здесь, как только она появится (вот она).

Вопросы по Kubernetes достаточно часты на собеседованиях на инженерные вакансии, связанные с администрированием и эксплуатацией. Они могут варьироваться от базовых, рассчитанных на механическую проверку теоретических знаний («объясните, что такое service») до более сложных и комплексных, требующих глубинного понимания внутренних принципов Kubernetes и работы (каким образом опубликовать приложение, развёрнутое в Kubernetes). Давайте пойдём от базы в направлении возрастания сложности.
Читать дальше →
Total votes 22: ↑21 and ↓1+20
Comments12

Джеймс Уатт, создатель инструментов

Reading time24 min
Views16K


<< До этого: Триумвират угля, железа и пара

Новый синтез


В XVIII веке начали формироваться новые каналы связи и новые союзы между ремесленниками и кустарями с одной стороны, и «школярами», приобретавшими абстрактные знания, с другой. Возможно, это сближение началось ещё с итальянских инженеров XV века, представителей эпохи Возрождения, таких гениев, как да Винчи и Брунеллески, однако по-настоящему оно раскрылось через несколько столетий, когда научные знания стали просачиваться в популярную культуру.

Мы уже видели, что натурфилософия Галилея и его коллег была гораздо более практичной, чем у его предшественников. К XVIII веку новое поколение философов учредило собственные институты в Британии и Франции – Королевскую академию и Королевское общество. Они также получили значительный престиж в обществе, особенно после драматического объединения земной физики с астрономией, проделанного наиболее достойным членом этой группы, Исааком Ньютоном. Ни один философ Аристотелевой школы не удостаивался панегириков от поэта уровня Александра Поупа:

Nature and nature's laws lay hid in night;
God said «Let Newton be» and all was light.[1]

Был этот мир глубокой тьмой окутан.
Да будет свет! И вот явился Ньютон.
(перевод С.Я. Маршака)
Читать дальше →
Total votes 36: ↑33 and ↓3+30
Comments8

Эпоха пара: Введение / Вес воздуха

Reading time16 min
Views21K

Введение




В центре двора университета Райса, где проходил обучение автор этих строк, на постаменте находятся три огромных гранитных плиты, расположенные вертикально, горизонтально и под углом 45° к горизонту. При этом менее заметной, но более значимой для моего юного впечатлительного сознания оказалась другая скульптура, "Энергия", расположенная в северной части двора, рядом с фасадом лаборатории Аберкромби. На ней изображён рельеф бородатой библейской фигуры, одетой в набедренную повязку, которая левой рукой забирает у Солнца лучи, а правой мечет их на Землю. Скульптура прославляет инженеров. Действительно, практически вся энергия, которую использует человечество, происходит от Солнца, в том или ином виде. Это откровение поразило меня, когда я был студентом. Частичным исключением можно считать лишь ядерную и геотермальную энергии, поскольку они происходят от давно умерших солнц, а не от нашего текущего.
Читать дальше →
Total votes 49: ↑47 and ↓2+45
Comments8

Затыкаем рот Windows 10

Level of difficultyHard
Reading time33 min
Views97K


Windows 10 очень любит Интернет. Обновления, синхронизации, телеметрия и ещё куча разной другой очень нужной ЕЙ информации постоянно гуляет через наши сетевые соединения. В «стандартном» сценарии использования, когда Windows 10 управляет домашним или рабочим компьютером, это, в общем-то, терпимо, хотя и не очень приятно.

Однако жизнь сложная штука и не ограничивается только стандартными вариантами. Существуют ситуации, когда подобная сетевая активность операционной системы (ОС) нежелательна и даже вредна. За примерами далеко ходить не надо. Попробуйте подключить к Интернету давно не используемый резервный компьютер, собранный на старом железе. Пока софт на нём не обновится, использовать его будет практически невозможно, всё будет дико тормозить и еле шевелиться. А если вам в этот момент нужно срочно что-то сделать?

Для того чтобы подобного не происходило, необходимо «заткнуть рот Windows», то есть сделать так, чтобы она самостоятельно перестала «стучаться» в Интернет, устанавливать обновления и заниматься прочими непотребствами. Вот именно этим мы с вами и займёмся.
Читать дальше →
Total votes 217: ↑207 and ↓10+197
Comments308

GOST: швейцарский нож для туннелирования и обхода блокировок

Level of difficultyMedium
Reading time13 min
Views95K

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

Сегодня я расскажу о замечательном инструменте под названием GOST. Не пугайтесь, он не имеет никакого отношения к ГОСТ-шифрованию или чему-то подобному, на самом деле это Go Simple Tunnel. Он действительно simple (простой) в использовании и настройке, но при этом невероятно мощный, поскольку поддерживает огромное количество протоколов и транспортов, из которых вы при желании сможете построить самые упоротые и бронебойные комбинации, а именно...

Читать далее
Total votes 180: ↑177 and ↓3+174
Comments113

OpenConnect: недетектируемый VPN, который вам понравится

Level of difficultyMedium
Reading time15 min
Views224K

Я уже написал здесь много статей на тему прокси-протоколов и прокси-клиентов, которые очень сложно детектировать и заблокировать, и которые используют пользователи в Китае, Иране, Ираке, Туркменистане, и теперь вот в России (мы здесь в отличной компании, правда?). Но довольно часто мне в комментариях писали, мол, это все отлично, но мне нужен именно VPN для целей именно VPN - доступа в частные локальные сети, либо для соединения клиентов между собой, и желательно так, чтобы его не заблокировали обезьяны с гранатой. Поэтому сегодня мы поговорим именно о VPN.

Классические OpenVPN, Wireguard и IPSec отметаем сразу - их уже давно умеют блокировать и блокировали не раз. Модифицированный Wireguard от проекта Amnezia под названием AmneziaWG — отличная задумка, но есть одно но...

Читать далее
Total votes 325: ↑324 and ↓1+323
Comments342

Биологический DIY, что-почём? И ТБ

Level of difficultyMedium
Reading time12 min
Views7.7K


В последние годы особую популярность набирает т.н. DIY — Do It Yourself. На ютубе можно найти массу каналов с подобным контентом от откровенного треша до настоящего искусства (думаю, не стоит называть конкретные имена, вы и сами всё прекрасно понимаете). Но на ютубе практически нет биологического DIY. А как показывает практика офлайн общения, большая масса людей заинтересована именно в том, чтобы попробовать сделать что-либо своими руками.



Автор этого очерка свято верит в кустарей-одиночек и гаражную науку, так что решил попробовать заполнить пробел в данном контенте. Потому, если этот опус, что называется, зайдёт, то периодически в Биореакторе будут публиковаться материалы с практическими рекомендациями по биологическому DIY.
Читать дальше →
Total votes 50: ↑48 and ↓2+46
Comments29

Интересные трюки HTML. Экстремальный минимализм

Level of difficultyMedium
Reading time8 min
Views18K

Мы уже много говорили про оптимизацию сайтов до минимального размера, преимущества статичного HTML, а также упаковку сайта (и веб-сервера) в портативный формат одного исполняемого файла, который нативно исполняется под любой ОС.

Но стремление к минимизации может пойти дальше, если вы хотите поместить весь сайт в адресную строку браузера. А с помощью сокращателя ссылок даже большой сайт сжимается до восьми байт. В этом случае и хостинг не нужен (то есть роль хостинга выполняет сервис сокращения ссылок).
Читать дальше →
Total votes 62: ↑62 and ↓0+62
Comments5

Практический гайд по процессам и потокам (и не только) в Python

Level of difficultyMedium
Reading time5 min
Views21K

За то время что я занимаюсь менторством я заметил, что большинство вопросов новичков связаны с темами: конкурентность, параллелизм, асинхронность. Подобные вопросы часто задают на собеседованиях, в работе эти знания позволяют писать более эффективные и производительные системы.

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

Читать далее
Total votes 16: ↑13 and ↓3+10
Comments7
1
23 ...

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Registered
Activity