Pull to refresh
-2
0
Send message

Какую СУБД выбрать и почему? (Статья 1)

Reading time6 min
Views81K

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

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

Читать далее
Total votes 45: ↑33 and ↓12+28
Comments39

Почему стартапы терпят поражение

Reading time12 min
Views5K

Ключевые идеи не изданной на русском книги «Why Startups Fail» Тома Айзенманна, профессора делового администрирования в Гарвардской школе бизнеса.

Читать далее
Total votes 5: ↑4 and ↓1+5
Comments1

Создание реалистичных тестовых данных для Java приложений

Reading time9 min
Views7.5K

Чем ближе ваши тестовые или демонстрационные данные к реальному миру, тем лучше вы сможете протестировать приложение на UX, улучшить и отловить крайние случаи в процессе разработки. 

В этой статье я покажу вам, как использовать пример генератора данных Vaadin для создания демонстрационных данных для простой базы данных SQL. В статье показано, как создать полное приложение, используя Spring BootJPAProject LombokVaadin и MariaDB.

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

Как спарсить любой сайт?

Reading time6 min
Views206K

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

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

Узнать как
Total votes 64: ↑55 and ↓9+60
Comments89

Чек-лист хороших инженерных практик в компаниях

Level of difficultyEasy
Reading time7 min
Views19K

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

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

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

Читать далее
Total votes 18: ↑16 and ↓2+18
Comments8

Earth Baku: как работают профессионалы кибершпионажа

Reading time9 min
Views3.9K

В конце 2020 года мы зафиксировали новую кибершпионскую кампанию группировки Earth Baku, более известную как APT41. Атаки были направлены против различных организаций в странах Индо-Тихоокеанского региона. Как и в других кампаниях, Earth Baku использовала высококлассный инструментарий собственной разработки. В этом посте мы расскажем об этой кампании, а также о том, как Earth Baku развивала свои вредоносные инструменты для атак.

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

Энтерпрайзные проекты убили профессию разработчика

Reading time7 min
Views9.1K


От переводчика: Фокусом нашей компании всегда была именно разработка корпоративных приложений. В Haulmont мы занимаемся как созданием собственно приложений, так и инструментов, позволяющих разработчикам эффективнее решать задачи, связанные с разработкой таких систем. Например, наш фреймворк Jmix предназначен для корпоративной разработки, мы это заявляем в рекламе и анонсах. И конечно же, пройти мимо статьи с таким названием мы просто не могли. В Jmix есть все, чтобы сделать разработку корпоративных приложений интересной и успешной, кроме одного: он не может повлиять на людей, которые принимают решения о методах и процессах разработки. Почитайте статью, возможно, она заставит вас задуматься, о том, как можно поменять вашу корпоративную разработку, чтобы все участники были довольны.


На эту статью меня вдохновил комментарий на HackerNews, который я больше не могу найти. Суть его была такая: “В то время, как архитектура слишком проработана, код недоработан”. Если кто-то опознает автора, я с радостью проставлю его авторство.


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

Читать дальше →
Total votes 20: ↑16 and ↓4+14
Comments16

Docs-as-code: DevOps-технологии в документировании, или Как подружить технического писателя и разработчика

Reading time10 min
Views9.7K

Привет, Хабр! Меня зовут Роман Блинов, я ведущий технический писатель в «Цифре» — в команде по развитию платформы ZIIoT. Этот пост будет о подходе Docs-as-code для документирования разработки ПО. Пишу с прицелом на тех читателей (то есть писателей), кто этот подход пока не пробовал и по факту имеет набор файлов в Confluence, файлы формата .docx и .pdf, на поддержку, обновление и оформление которых тратится порядка 70 % времени (а хотелось бы меньше), и 101 отговорку разработчиков, чтобы не участвовать в документировании.

Сначала расскажу, с какими проблемами сталкиваются писатели до перехода на Docs-as-code, затем опишу подход в общих чертах и в конце упомяну об основной трудности его внедрения по собственному опыту и опыту коллег.

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

Какой софт использует ЦРУ и АНБ для дата-майнинга

Reading time6 min
Views16K


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

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

Разумеется, для быстрого поиска в таком огромном массиве данных требуется специальный софт.
Читать дальше →
Total votes 31: ↑31 and ↓0+31
Comments8

AWS Lambda с Java: быстро и недорого

Reading time10 min
Views7.1K

AWS Lambda - популярная платформа для разработки serverless-функций, и как Java-разработчик мне нравится иметь возможность использовать эту платформу. Однако, есть некоторые важные моменты, о которых стоит помнить при работе с ней.

Читать далее
Total votes 6: ↑5 and ↓1+6
Comments12

Вас тоже задолбала цифровая трансформация?

Reading time12 min
Views23K

Если я вижу в заголовке статьи на Хабре, названии доклада на конференции или в статье в СМИ слова «цифровая трансформация», я всегда знаю — будет пресно, скучно и много лжи. Из этого словосочетания делают волшебную палочку: цифровая трансформация как способ освоения бюджетов, цифровая трансформация как повод уволить сотрудников, цифровая трансформация как повод объяснить провалы сервиса, цифровая трансформация как способ поднять репутацию на модном тренде. При этом для многих за этими словами скрывается что угодно, кроме первоначального, идейного смысла. На фоне этого проваливаются более 70% проектов трансформации по всему миру. И так будет, пока в эти два красивых слова будут вкладывать всё что угодно, кроме принятия цифровых технологий внутри всех процессов управления. И это касается и гигантов рынка, и самых небольших компаний. Так почему мы все трансформируемся, трансформируемся, да так и не вытрансформируемся?

Читать далее
Total votes 30: ↑26 and ↓4+35
Comments51

Grafana as code, или как я перестал кликать мышкой в UI и полюбил grafonnet

Reading time15 min
Views34K

Когда мы в Tarantool столкнулись с задачей настройки мониторинга для сдачи проекта заказчику, мы решили её с помощью grafonnet. Это библиотека для написания дашбордов Grafana с помощью кода на языке jsonnet, которая заметно облегчила нам жизнь.


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


Читать дальше →
Total votes 35: ↑35 and ↓0+35
Comments7

Доступ разрешён: Вечерняя Школа Kubernetes для разработчиков

Reading time3 min
Views12K

1 октября начнется Вечерняя Школа Kubernetes для разработчиков от Слёрма при поддержке Mail Cloud Solutions и Intel. 24 онлайн-лекции и 22 практические работы в кластере MCS, и все это бесплатно

Научим использовать преимущества и учитывать ограничения Kubernetes, поднимать инфраструктуру для тестирования и экспериментов, выкатывать и эксплуатировать сервис не дожидаясь команды DevOps. Сможете быстро спасти продакшн и влиять на успешность сервиса, уменьшая time-to-market. 

Прочитать больше о Вечерней Школе
Total votes 15: ↑15 and ↓0+15
Comments6

Когда использовать mocks в юнит-тестировании

Reading time13 min
Views80K

Эта статья является переводом материала «When to Mock».

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

Ни одна из этих практик не является достаточно хорошей. В этой статье Владимир Хориков покажет, какие зависимости следует мокать, а какие использовать как есть в тестах.

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

Ботнет Mēris: расследуем крупнейшую DDoS-атаку в истории интернета

Reading time7 min
Views95K
image

На днях в СМИ появилась информация о DDoS-атаке на Яндекс. Это правда, но не вся. Нашим специалистам действительно удалось отразить рекордную атаку более чем в 20 млн RPS — это самая крупная атака из известных за всю историю интернета. Но это лишь одна из множества атак, направленных не только на Яндекс, но и на многие другие компании в мире. Атаки продолжаются уже несколько недель, их масштабы беспрецедентны, а их источник – новый ботнет, о котором пока мало что известно.

Сегодня вместе с коллегами из Qrator Labs мы хотим поделиться текущими результатами совместного расследования деятельности нового ботнета Mēris. Расследование еще продолжается, но мы считаем важным поделиться уже собранной информацией со всей индустрией.

Читать дальше →
Total votes 138: ↑135 and ↓3+175
Comments148

Java 17 и Jakarta EE 9 — минимальные требования для Spring Framework 6

Reading time3 min
Views19K


От переводчика: на конференции SpringOne были сделаны довольно важные анонсы относительно нового поколения Spring Framework, на Хабре это почему-то это прошло незамеченным. Судя по всему, в ближайшее время мы будем жить не просто в мире “Java 8/Java 11+”, а появится ещё один водораздел: “Spring 5/Spring 6+”. Чем это грозит? Например, если вы используете Hibernate 5.4, то придется принудительно обновиться на Hibernate 5.5+.


1 сентября на SpringOne было объявлено, что минимальные требования для Spring Framework 6 и Spring Boot 3, который будет доступен в 4 квартале 2022 года, сдвигаются в сторону увеличения:


  • Java 17+ (c Java 8-17 в линейке Spring Framework версии 5.3.x)
  • Jakarta EE 9+ (с Java EE 7-8 в линейке Spring Framework версии 5.3.x)
Читать дальше →
Total votes 26: ↑26 and ↓0+26
Comments4

7 артефактов проектирования, которые улучшат дизайн

Reading time8 min
Views14K

Когда кто-то сегодня говорит о UX, довольно часто он имеет в виду не проектирование пользовательского опыта, а визуальный дизайн. И это объяснимо. Сам по себе интерфейс (UI) уже представляет собой некий конечный продукт, и он прост для понимания. 

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

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

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

Как отсеять хороших разработчиков при найме

Reading time5 min
Views24K
Нанимать разработчиков – дело непростое: это долгосрочное вложение, их полгода приходится вводить в курс дела и полную отдачу от них получаешь, только если сумеешь удержать на несколько лет. Сегодня на рынке труда идет повальная охота на самых талантливых разработчиков, так что, если хотите быть уверенными, что Facebook, Amazon, Apple, Netflix или Google не начнут обивать пороги ваших сотрудников, нужно остерегаться нанимать слишком способных. Чтобы вам с этим помочь, мы предлагаем несколько советов касательно того, как отсеять лучших из лучших в своем деле и набрать таких, кому больше некуда податься.
Читать дальше →
Total votes 45: ↑33 and ↓12+34
Comments53

Зачем себя обесценивать: о синдроме самозванца

Reading time7 min
Views11K

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

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

Из-за того что технологии постоянно развиваются, а конкуренция — огромная, для сферы IT проблема тоже актуальна. Здесь самопровозглашенных «самозванцев» через край: далеко не все направления точно выстрелят, не все хайтеки станут новым «Яндексом», Facebook или Apple.  

«Да кто ты вообще такой? Тебе просто повезло! Скоро все поймут, что ты — ничтожество. Тебя точно уволят, здесь тебе не место. Кого ты вообще пытаешься обмануть?» — и вот это вот всё. 

Читать далее
Total votes 12: ↑10 and ↓2+10
Comments19

Information

Rating
Does not participate
Registered
Activity