StringConcat - разработка без боли и сожалений – Telegram
StringConcat - разработка без боли и сожалений
3.44K subscribers
87 photos
9 videos
3 files
209 links
Полезный блог от разработчиков для разработчиков. Наш сайт: howto.stringconcat.ru
Download Telegram
Forwarded from Grisha Skobelev
Всем привет 👋
В рамках книжного клуба { между скобок } мы организовали интервью с тем самым Мартином Клеппманном книгу которого мы прочитали. Обсудим книгу, поговорим про будущее data systems и о новых исследованиях Мартина:
📍 https://www.inkandswitch.com/local-first/
📍https://automerge.org/

Встречаемся 30 июня в 20:00 по мск

Martin Kleppmann is a researcher in distributed systems and security at the University of Cambridge, and author of the bestselling book Designing Data-Intensive Applications (O'Reilly Media). Previously he was a software engineer and entrepreneur, co-founding and selling two startups, and working on large-scale data infrastructure at LinkedIn.

Ссылка на подключение будет чуть позже в чате https://news.1rj.ru/str/backend_megdu_skobkah

Также закидывайте ваши вопросы для Мартина в гугл форму https://forms.gle/ZCGNfZ42JJDNsEcd8
🔥7
👀 Новое видео на канале!
Топ жести на собеседовании: https://youtu.be/KdmYL8TJEIA

Что делают большинство разработчиков, когда им нужно провести собеседование? Правильно, гуглят 100 вопросов на собеседование на ${любимый_язык}. А потом мы все жалуемся, что на собеседованиях творится какая-то вакханалия.

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

🙏 Не забудьте поставить лайк и подписаться на YouTube канал, если видео вам понравилось!
👍9
Пост немножечко ни о чем

Работал тут намедни с участком системы, у которой а) отсутствовала «единая кнопка» и б) не было тестов.
Все это появилось до моего прихода на проект и возводить такие конструкции мы сознательно не стали, ибо этот код в скором времени должен быть убран из проекта насовсем. Но что-то в нём пофиксить бывает нужно прямо сейчас, пока он ещё существует.

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

Если вы испытываете те же чувства, то крайне рекомендуем присмотреться к пирамиде тестирования и другим геометрическим фигурам. Если вы сможете её реализовать, по другому уже работать не захотите, проверено на себе.
👍9🤔2😢2
Господа, начинаем цикл видео “Философия Kotlin для Java разработчиков”. Для начала разберем что такое null safety в Kotlin и как его использовать в реальной жизни
https://youtu.be/AkL7uFm8ze4

А в следующем видео разберем не менее важное: immutability в Kotlin. Stay tuned!
❤‍🔥7🔥4🤔1
Недавно писали про энтерпрайз-деформацию, теперь еще раз столкнулись с этим на практике. Очень показательный случай вышел.

Суть такова. Дали нашему подопечному задание реализовать марсоход (задание на тренировку TDD). В первом варианте решения были угадайте что? Прааавильно, Spring и MarsRoverService. Спустя несколько итераций задание было побеждено голой джавой без фреймворков (ну разве что junit остался). Комментарий автора:

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



Теперь немного понятнее, почему на собеседованиях спрашивают кишочки спринга и жвм, а важным вещам вроде дизайна классов и прочего совсем не уделяют внимания. Не боярское это дело — классы продумывать, новый фреймворк/субд/брокер сам себя не выучит. Посему настоятельно рекомендуем поупражняться в такого рода заданиях.
🔥8👍2🤩1
Мы уже много раз говорили и про локальный CI (когда все или почти все проверки проходят локально) и про удобный интерфейс "одной кнопки". При использовании такого подхода, помимо очевидной экономиии времени есть еще и экономия вычислительных мощностей билд-сервера. Можем меньше платить как за потребленные ресурсы, так и машины выбирать чуть послабее. На скришоте результат работы команды из 3,5 человек за пару-тройку дней. Тут всего 2 падения. Первый раз сборка упала из-за экспериментов на инфраструктуре, второй раз - потому что я не проверил локально (запушил мимо хука). Специально замерил, в лучшем случае мне удается прорваться сквозь статанализаторы и прочие проверки где-то с 3-4 раза, даже если изменения несущественны. Думаю понятно, сколько времени и ресурсов мы в итоге сэкономили.
👍10🤔3💩1
Forwarded from Russian Association of Software Architects (Eugene Lukianov)
Если вы не можете объяснить начальству что такое технический долг и легаси, то вот вам хороший пример от нетехнаря (поэтому могут быть неточности), но со способностью хорошо объяснять сложное.
https://vitalyfilatov.ru/all/techdebt-and-legacy/
👍19
Продолжается прием заявок на доклады конференции по архитектуре IT-решений ArchDays 2022!

В этом году мы возвращаемся в офлайн!
Конференция пройдет 21 октября в Москве + Online-трансляция.

Основные тематики конференции:
1. Процессы проектирования
2. Инструменты проектирования
3. Практики проектирования
4. Обучение архитектуре/развитие в архитектора
5. Soft skills
6. Кейсы

Всего в программе будет около 30 докладов и 4 очных воркшопов.

Подать заявку на выступление: https://archdays.ru/#speaker
👍3🔥2
👓OWASP TOP-10

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

Вообще, сам проект OWASP (Open Web Application Security Project) - это некоммерческая организация, нацеленная на повышение защищенности веб-приложений.

Помимо рейтинга уязвимостей, там есть еще немало интересного, например:
- Инструмент для поиска уязвимых зависимостей в Java
- Популярный сканер веб-приложений OWASP ZAP
- Руководство по тестированию веб-приложений
И многое другое. Полный список на этой странице

#Безопасность
👍1
Если уже ознакомились с OWASP'ом, то вот вам следующий материал, который касается более общей темы по безопасности.
Это CIS Сontrols (на данный момент версии 8 ) от некоммерческой организации CIS (Центр Интернет Безопасности).
Здесь собраны рекомендации для организаций, которые хотят повысить свою защищенность. То есть не для конкретного ПО, а для организации в комплексе (хотя про ПО там тоже есть). Можно сказать это некий ИБ-фреймворк.

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

Выглядит как отличная отправная точка для тех кто хочет поправить ИБ-здоровье в своей компании.

#Безопасность
👍3
Следующим шагом в изучении ИБ может стать что называется "набитие руки". Думаю, разработчикам может быть интересно посмотреть как ведут себя узявимости в дикой природе. Для этого можно пойти и посканить собсвенное изделие есть специальные сервисы и приложения, которые содержат определенные уязвимости.

- Один из самых популярных ресурсов HackTheBox Распространяется как SaaS, много бесплатных лаб.
- Vulnhub. Много виртуалок с уязвимостями (которые нужно скачать и запустить), но почему-то последняя активность в ноябре прошлого года.
- OWASP Juice Shop - уязвиомое веб-приложение от OWASP, содержит весь TOP-10 и много чего еще
- Список узязвимых приложений от OWASP
Думаю вы без труда найдете похожие проекты.

Ну а дальше, когда получен какой-то практический опыт и примерное понимание предмета, можно приступать к моделированию угроз, внедрению SSDLC путем использования технических и организационых средств.
👍9
👨‍🚒Вебинар управление тех долгом.
Господа, мы готовим новый вебинар по теме управление тех долгом: как его продавать и кому. как работать с командой, чтобы он был не только вашим головняком, а общим. и в конечно итоге как его минимизировать.
Нам очень нужно понять что именно вы бы хотели узнать о борьбе с тех.долгом, какие проблемы есть у вас. Я Буду очень благодарен, если вы напишите в комментарии к этой записи свои проблемы и соображения. А мы постараемся включить их в программу вебинара и вышлем вам приглашение на него 😉

Спасибо! 🙏
🔥10👍1
Вы или ваши коллеги считаете тесты 2nd class Citizens?

Kevlin Henney в своем недавнем выступлении убедит вас почему тесты лучше писать вместе с продакшен кодом. И более того, покажет почему тесты пишутся не только для компьютера, но и в НЕ меньшей степени для людей. + Огромное количество рекомендаций по лучшим практикам написания тестов.

Приятного просмотра! https://www.youtube.com/watch?v=MWsk1h8pv2Q
👍9
Мы строили, строили и наконец, построили.