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

Разработчик баз данных

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

Как GitHub заменил SourceForge в роли доминирующей платформы для хостинга кода

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

Уже 16 лет инженеры и разработчики всего мира размещают код своих проектов на GitHub. Но что было до него? Как сервис занял доминирующее положение на рынке? Разбираемся и смотрим скриншоты из конца нулевых вместе с Грегом Фостером, CTO Graphite.

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

История Git: на этот раз не так весело

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

Линус Торвальдс как-то написал в своей книге, что создавал Linux для развлечения, но в итоге это привело к революции. Git, его второе творение, также оказалось «случайной революцией» — и сегодня это стандартный инструмент для людей в ИТ. Однако процесс его создания был уже не таким «весёлым» — по крайней мере, для самого Линуса. 

Читать далее
Всего голосов 99: ↑98 и ↓1+114
Комментарии56

Git, Gitflow и ветка develop. Продолжаем разбираться в основах программирования

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

Привет, Хабр! В блоге beeline cloud я делюсь личным опытом разработки. Ранее рассказывал, как инжектить в статические поля, как упростить себе жизнь при написании тестов, подсвечивал особенности пагинации. А сегодня продолжу знакомить вас с Git, Gitflow и веткой develop. Если вы пропустили первую статью из цикла — рекомендую прочитать тут.

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

GitFlow процесс

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

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

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

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

Создание Git-коммита: The Hard Way

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

Мы постоянно используем высокоуровневые команды git, такие как git add и git commit. Однако также существует другая группа команд git, которые обрабатывают низкоуровневые операции.

В этой статье мы создадим git‑коммит, используя низкоуровневые операции, а не команду git commit.

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

Казначейство в 1С: Управление Холдингом. Планирование денежного потока

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

"Казначейство" в 1С: Управление холдингом помогает управлять финансовыми ресурсами и обеспечивает прозрачность и контроль над финансовыми операциями холдинга. В данной статье мы рассмотрим этап планирования платежей и поступлений.

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

Просто выберите Postgres

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

Отчасти это действенный совет, отчасти — вопрос к читателям.

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

Читать далее
Всего голосов 43: ↑38 и ↓5+41
Комментарии84

Можно ли повлиять на процесс старения мозга? Некоторые учёные считают, что это возможно

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

Одним солнечным утром 76-летняя уроженка Нидерландов Марийке и её муж Том пригласили меня на завтрак в свой дом в Лома-Линде, в часе езды к востоку от Лос-Анджелеса.

Овсяная каша, семена чаи, ягоды, но никаких переработанных хлопьев с сахаром или кофе — завтрак был таким же чистым, как и миссия Лома-Линды.

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

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

Это их «послание здоровья», как они его называют, и оно привлекло к ним внимание — город стал предметом десятилетий исследований, посвящённых тому, почему его жители живут лучше и дольше.

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

Гайд по деплою web-приложений для новичков. Часть 1. Shared-хостинг

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

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

В этой статье пошагово разберем самый простой вариант - деплой приложения на хостинг.

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

«Мы заметили, что не обсуждаем проблему, а бежим сразу что-то делать»

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

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

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

Как правильно визуализировать данные, чтобы принимать эффективные решения?

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

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

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

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

Пентест gRPC

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

В последнее время в современных веб-приложениях с микросервисной архитектурой всё чаще в качестве API используется фреймворк удалённого вызова процедур gRPC. Данный фреймворк чаще всего использует protocol buffers(protobuf) в качестве языка определения интерфейсов и в качестве основного формата обмена сообщениями. Однако, в отличие от более привычных форматов обмена сообщениями (JSON,XML и тд), которые являются текстовыми, в protobuf фигурируют бинарные данные. Помимо этого, gRPC в качестве транспорта использует исключительно HTTP/2. Чаще всего эти обстоятельства вызывают затруденения при тестировании безопасности веб-приложений, которые используют данный фреймворк.

Данная статья поможет разобраться в том, как тестировать веб-приложения, использующие gRPC. Содержание статьи частично пересекается с моим докладом на OFFZONE 2023, однако, если в нём был сделан упор на рассказ об аспектах protobuf и gRPC и обзор существующих инструментов для тестирования безопасности, то здесь мы рассмотрим практический пример по поиску уязвимостей на демонстрационном стенде с использованием Burp Suite и расширения prototbuf-magic, разработанным нами. Для ознакомления с основами protobuf и gRPC рекомендую послушать мой доклад.

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

Разбираемся с coroutine в Kotlin — 1

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

Я начну от идеи и истоков и надеюсь дойти до понимания реализации в Kotlin. Мне удалось найти статью Design of a Separable Transition-diagram Compiler от 1963 года. Люди пишут, что это одно из самых ранних упоминаний идеи корутин. В статье есть часть с названием "Coroutines and Separable Programs", про которую я узнал из поста Why using Kotlin Coroutines?. С этой части, а точнее с ее перевода я и начну.

Назад в прошлое
Всего голосов 4: ↑2 и ↓2+4
Комментарии4

Git: Очередной лист Вопросов и Ответов

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

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

Читать далее
Всего голосов 30: ↑24 и ↓6+24
Комментарии61

Сравнение технологий WebSockets, Server-Sent-Events, Long-Polling, WebRTC и WebTransport

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

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

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

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

Оцениваем сложность алгоритмов на C# по памяти и времени с примерами

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

Продолжаем говорить о производительности и оптимизации кода. Сегодня поговорим о том, как и зачем оценивать сложность алгоритмов,  а также наглядно покажем, как эта сложность влияет на производительность кода.

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

Двадцать лет — ничто

Время на прочтение7 мин
Количество просмотров21K
В прошлом выпуске журнала мы утверждали, что английский язык стал в индустрии настолько вездесущим, что мы больше задаемся вопросом, почему используем именно его. То же самое можно сказать и о Git. Сложно представить себе, что каких-то двадцать лет назад ландшафт систем управления исходным кодом был разнообразнее и выбрать из этих систем какую-то одну было гораздо сложнее. Собственно, Git тогда еще и среди вариантов не значился. Прежде чем рассуждать, к лучшему или к худшему установилась гегемония Git, давайте ненадолго вернемся в прошлое.



Источник

В одном из самых знаменитых танго в истории Карлос Гардель пропел хорошо известные строки:

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

Двадцать лет назад


Второе издание Совершенного кода Стива Макконнелла было опубликовано в 2004 году. На 668 странице этого девятисотстраничного талмуда мы находим единственное упоминание темы управления исходным кодом на всю книгу, длиной примерно в три четверти страницы. Больше ничего. ChatGPT без труда обобщил бы сказанное в этих абзацах в одном предложении: «Применение ПО для контроля версий – это хорошо, оно дает несколько существенных преимуществ». Не бог весть какие новости. От GitOps нас тогда отделяло очень многое.
Читать дальше →
Всего голосов 21: ↑19 и ↓2+24
Комментарии73

Экзокосмонавтика и точки Лагранжа или держитесь подальше от суперземель

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

Романтическая научная фантастика XX века, а тем более космооперы, по-видимому, почти не учитывали фактор существенного отличия гравитации у разных планет, на которые приходится эпизодически высаживаться или колонизировать их. Как я уже писал в некоторых публикациях, в особенности, «Суперземля как иллюзия» и «Гикеаны, потомки нептунов», мы в настоящее время настолько одержимы идеей, что среди экзопланет найдётся множество жизнепригодных или даже обитаемых, что на месте мининептуна всегда готовы увидеть суперземлю. Впрочем, такое заблуждение характерно не только для нашего времени. Ещё в начале XX века Венера считалась «юной сестрой» Земли (так как предполагалось, что, чем ближе планета к Солнцу, тем позже она сформировалась), что там может царить тропическая эра, подобная мезозою, шуметь экзотические леса, а обширные океаны из-за сильной минерализации могут быть наполнены «зельтерской водой». Климат Венеры и её парниковый эффект – тема для отдельной публикации, и пока ограничусь ссылкой на это исследование 2019 года, в котором выдвигается гипотеза, что бесконтрольный парниковый эффект на Венере существует лишь чуть более 700 миллионов лет, а до этого там могли существовать вполне комфортные для жизни условия. А в этой статье попробуем обсудить феномен гравитационных колодцев и их опасность при сближении с суперземлями. Отдельно поблагодарю уважаемого @ilmarinen за его интереснейшие публикации о гравитационных манёврах в ныне закрытом корпоративном блоге «Маклауд», под впечатлением от которых я взялся писать эту статью.     

Читать далее
Всего голосов 111: ↑109 и ↓2+138
Комментарии114

Пошаговая инструкция создания нового вида контроля в «1С: Управление холдингом»

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

Привет, Хабр! Меня зовут Донскова Елена, я работаю разработчиком на проектах внедрения 1C в IBS, занимаюсь разработкой нового функционала и модифицирую типовой функционал для удовлетворения потребностей бизнеса. Сегодня я расскажу о том, как создать новый вид контроля в системе «1С: Управление холдингом». Подобные задачи в моей практике встречаются не так часто, но когда я впервые столкнулась с необходимостью добавления такого функционала, поняла, что информации по нему практически нет.

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

Курс «PostgreSQL для начинающих»: #4 — Анализ запросов (ч.1 — как и зачем читать планы)

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

Продолжаю публикацию расширенных транскриптов лекционного курса "PostgreSQL для начинающих", подготовленного мной в рамках "Школы backend-разработчика" в "Тензоре".

В этой лекции мы узнаем, что такое план выполнения запроса, как и зачем его читать (и почему это совсем непросто), и о каких проблемах с производительностью базы он может сигнализировать. Разберем, что такое Seq Scan, Bitmap Heap Scan, Index Scan и почему Index Only Scan бывает нехорош, чем отличается Materialize от Memoize, а Gather Merge от "просто" Gather.

Как обычно, для предпочитающих смотреть и слушать, а не читать - доступна видеозапись (часть 1, часть 2) и слайды.

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

Информация

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

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

1C Developer, ERP Developer
От 400 000 ₽