S0ER
Архитектура | Программирование | Профессиональное развитие Соер.Клуб - https://t.me/soer_live По всем вопросам писать на @soerdev
Mostrar más📈 Análisis del canal de Telegram S0ER
El canal S0ER (@softwareengineervlog) en el segmento lingüístico de Ruso es un actor destacado. Actualmente la comunidad reúne a 10 453 suscriptores, ocupando la posición 11 381 en la categoría Tecnologías y Aplicaciones y el puesto 60 858 en la región Rusia.
📊 Métricas de audiencia y dinámica
Desde su creación el невідомо, el proyecto ha mostrado un crecimiento acelerado, reuniendo a 10 453 suscriptores.
Según los últimos datos del 28 agosto, 2026, el canal mantiene una actividad estable. En los últimos 30 días la variación de miembros fue de -12, y en las últimas 24 horas de -1, conservando un alto alcance.
- Estado de verificación: No verificado
- Tasa de interacción (ER): El promedio de interacción de la audiencia es 48.15%. Durante las primeras 24 horas tras publicar, el contenido suele obtener N/A% de reacciones respecto al total de suscriptores.
- Alcance de las publicaciones: Cada publicación recibe en promedio 0 visualizaciones. En el primer día suele acumular 0 visualizaciones.
- Reacciones e interacción: La audiencia responde de forma activa: el promedio de reacciones por publicación es 0.
- Intereses temáticos: El contenido se centra en temas clave como rbp, архитектура, callme, mov, указатель.
📝 Descripción y política de contenido
El autor describe el recurso como un espacio para expresar opiniones subjetivas:
“Архитектура | Программирование | Профессиональное развитие
Соер.Клуб - https://t.me/soer_live
По всем вопросам писать на @soerdev”
Gracias a la alta frecuencia de actualizaciones (últimos datos recibidos el 29 agosto, 2026), el canal mantiene la vigencia y un amplio alcance. La analítica demuestra que la audiencia interactúa activamente con el contenido, lo que lo convierte en un punto de referencia dentro de la categoría Tecnologías y Aplicaciones.
что думаете по поводу предстоящего релиза snapdragon x elite, будущего арм vs х86, и кто будет лидировать на рынке не-apple arm процессоров?
Как относитесь к переходу многих технологий - Redis, как недавний пример, на двойное лицензирование, вместо лицензии, которая соответствовала open source?Для меня здесь несколько моментов: 1. Для создания хорошего софта нужны деньги и компании всегда будут искать варианты монетизации своих продуктов. Это нормально. 2. Переупаковка софта с открытым кодом с целью дальнейшей продажи - часто встречаются на рынке и то что Redis хочет ограничить такую возможность - это нормально. 3. Не нормально то, что теперь людям надо дважды думать, что они могут делать с кодом от Redis, а чего нет. Это дополнительная сложность, которая может быть ложкой дёгтя в бочке мёда. Хотя ядро, вроде, осталось под BSD лицензией, но все равно не все прозрачно и понятно. В целом рынок становится все сложнее, компаниям хочется зарабатывать и развиваться, так что как говорится се ля ви.
some_string указан как string, а не Email :
type Email = string;
function auth(login:Email) {}
const some_string:string = "some_string";
auth(some_string); // ok
Тип string структурно идентичен типу Email , поэтому ошибки нет.
Номинативные типы работают по-другому - они совместимы только при явном использовании. К сожалению, встроенной поддержки таких типов в typescript нет, но есть хак, который называют брендированием. Его суть заключается в том, что мы добавляем к типу уникальное свойство:
type Email = string & { _: 'Email' };
Теперь тип Email будет структурно не совместим с типом string. Мы получим ошибку компиляции:
type Email = string & { _: 'Email' };
function auth(login:Email) {}
const some_string:string = "some_string";
auth(some_string); // Argument of type 'string' is not assignable to parameter of type 'Email'.
Чтобы код заработал, нам придется явно указывать, что переменная имеет тип Email:
const some_string = "some_string" as Email;
Или добавить проверку в наш код, которая также будет выводить нужный нам тип:
function isEmail(value:string): value is Email {
const emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
return emailRegex.test(value);
}
Для удобства создания брендированных типов можно воспользоваться дежнериком:
type Brand<B extends string, T> = T & { readonly _: B }
Пример использования:
type Email = Brand<'Email', string>;