Глубинный котер
95 subscribers
60 photos
7 videos
4 files
71 links
Download Telegram
#balancing_coupling

Всем любителям оверинженерии и хайповых примочек посвящается

A system is plagued with accidental complexity: the team introduces tools and techniques because they are trendy, and not because they are really needed.
👍2
#balancing_coupling

Modular design aims to address a wider range of goals than a non-modular system can. It expands the system’s goal to accommodate requirements that are currently unknown, but may be needed in the future.
👍1
#balancing_coupling

The goal of an abstraction is to represent multiple things equally well
🤔3
#balancing_coupling

An effective abstraction removes all extraneous information, retaining only what is absolutely necessary for effective communication
👍2
В этом году вышла книга Building Multi-Tenant SaaS Architectures собственно про построение multi-tenant SaaS, как понял, это как раз то, что сейчас в разных командах называют «платформизацией» или «платформой», но явно не является PaaS.

Такая «платформизация» является трендам во многих командах последние годы.

В список на чтение, нужно разбираться с сабжем
1👍1
Краткий ответ, почему для успеха ЯП недостаточно его хорошо спроектировать и дать базовые инструменты разработки. Экосистема играет огромную роль в завоевании успеха, и как кажется, инвестиции в неё могут позволить только большие компании
1👍1
Процессорный модуль от мейнфрейма 1975 года Amdahl 470V/6. Сначала Джин Амдал спроектировал System/360, а потом ушел из IBM и запустил свою линейку совместимых машин, которые были дешевле и шустрее.
Как они дебажили ошибки с такой разводкой, страшный сон инженера.

Модули иногда встречаются на ebay примерно за $1к
#cpu
🤔2
#balancing_coupling

Вот и ответ почему слоистая архитектура так хороша

Remember David L. Parnas’s saying that a module is an abstraction, and according to Edsger Dijkstra, the purpose of abstraction is to create a new semantic level in which one can be absolutely precise. Introducing an explicit integration contract takes this idea to the extreme. The integration contract can create a new language that focuses entirely on the tasks that can be carried out using the module, while completely abstracting how the tasks are implemented
2
#balancing_coupling

Честно про программную архитектуру от Влада Хононова:

DISCLAIMER: THIS IS NOT AN EXACT SCIENCE
👍2🤨1
Мелочь, а приятно
🔥3
Всегда думал, что Java слишком вербозная, а Python такой выразительный и краткий.

Но вот в случае функционального стиля Python явно проигрывает API стримов в Java. Вместо лаконичного пайплайна, получаем скобочный ад
👍32
Прикольно автор книги с кабанчиком раздает бесплатно избранные главы на сайте, как понимаю, его NoSQL СУБД ScyllaDB
👍1
Виртуальная машина СPython позволяет легко менять значения даже у литералов.

Например, мы легко можем заменить значение литерала a в нашей виртуальной машине. После замены a на z в нашей программе больше не осталось первой буквы алфавита, теперь в a лежит “z”


from ctypes import c_byte
from sys import getsizeof


def set_value(old: object, new: object) -> None:
src_s, des_s = getsizeof(new), getsizeof(old)
src_arr = (c_byte * src_s).from_address(id(new))
des_arr = (c_byte * des_s).from_address(id(old))
des_arr[:] = src_arr[:]


set_value('a', 'z')

assert 'a' == 'z'
🤬32😁1
Как до жизни такой докатился? 🤡
🥴32😁1
Поколение Юпитера 🪐
😁61