Как реализовать перегрузку функции в TypeScript?TypeScript поддерживает перегрузку функций, но её реализация отличается от той, которую можно видеть в других языках. А именно, описывается лишь одна функция и некоторое количество её объявлений с разными параметрами. Когда такой код компилируется в JavaScript, в нём остаётся лишь одна функция. Этот механизм работает благодаря тому, что JS-функции можно вызывать с любым количеством параметров. class Foo { myMethod(a: string); myMethod(a: number); myMethod(a: number, b: string); myMethod(a: any, b ? : string) { alert(a.toString()); } }👉@frontend_mind
Frontend Головного Мозга
@frontend_mind · 6.7K подписчиков
Посты канала Frontend Головного Мозга в SillyFeed: единая лента публичных Telegram-каналов со ссылками на оригиналы.
Фронтендер из сибири, обо всём что связано с frontend разработкой и интересно самому:✅Новости, статьи,✅Авторские кейсы,✅Песочница, готовые UI макеты.✅ЮморЯ хочу услышать три главных слова: JS, Angular, ReduxСотрудничество:@cyberJohnny
Посты канала
Что делает babel?Babel – это транспилер для JavaScript, который преобразует современный код (ES6+ и JSX) в старый, совместимый с более старыми браузерами. Поддержка старых браузеров Некоторые браузеры (например, Internet Explorer) не поддерживают новые фичи JavaScript. Babel переводит код на более старый стандарт, чтобы он работал везде. Поддержка современных стандартов (ES6, ES7, ES8...) Позволяет использовать новые возможности JavaScript, даже если браузер их пока не поддерживает. Компиляция JSX Babel преобразует JSX (используется в React) в обычный JavaScript. Оптимизация и эксперименты Можно использовать нестандартные предложения для JavaScript, такие как плагины для новых фич. Как это работает? Babel делает три шага: Парсинг – разбор кода в абстрактное синтаксическое дерево (AST). Трансформация – изменение AST (например, замена const на var). Генерация – создание нового кода из изменённого AST. Пример работы Babel Современный JavaScript (ES6+) const greet = (name) => `Hello, ${name}!`;console.log(greet("Alice"));После транспиляции Babel (ES5) "use strict";function greet(name) { return "Hello, " + name + "!";}console.log(greet("Alice"));👉@frontend_mind
Используйте простейшие рабочие решенияЗанимаясь проектированием систем ПО, идите самым простым путём из возможных.Причём эту рекомендацию можно применять на удивление широко. Я искренне верю, что так можно делать всегда. Эта техника подходит для исправления багов, обслуживания имеющихся систем и проектирования новых.Многие инженеры, продумывая дизайн системы, представляют себе некий её «идеал»: что-то стройное, практически бесконечно масштабируемое, удобно распространяемое и так далее. Я же считаю, что это абсолютно ошибочный подход к проектированию ПО. Напротив, нужно вложить всё это время в глубокий анализ имеющейся системы, а затем реализовать простейшее рабочее решение.👉@frontend_mind
Ещё по теме «Технологии»
ТехнологииIntl.NumberFormat помогает форматировать числа под конкретную локаль: с правильными разделителями, символами валют и единицами измерения.Вместо ручной склейки строк можно использовать встроенный API:new Intl.NumberFormat("de-DE", { style: "currency", currency: "EUR"}).format(123456789);// 123.456.789,00 €new Intl.NumberFormat("pt-PT", { style: "unit", unit: "kilometer-per-hour"}).format(50);// 50 km/hnew Intl.NumberFormat("fr-FR", { style: "unit", unit: "kilobyte", unitDisplay: "long"}).format(123456);// 123 456 kilooctetsСоздание словаря из набора ключейДля создания словаря из известного набора ключей и одинаковых значений часто используют генераторы словарей (dict comprehensions).Однако класс dict имеет удобный метод fromkeys, который был создан специально для таких случаев.📲 Мы в MAXПодписывайтесь на канал 👉@pythonofff
Как делать классный дизайн с Claude CodeНе надо писать «Ты Джонни Айв» или «сделай как у Apple»Вместо этого — даёте ему готовый DESIGN.md файл, где уже описано всё, что обычно формулируют размыто:— цвета— типографика— отступы— правила компонентовНашел подборку 2000+ DESIGN.md файлов топовых сайтовВыбираете тот, который нравится, вставляете в свой Клод или Кодекс — и получаете классный дизайнhttps://styles.refero.designUPD: в комментах подсказывают еще опцииhttps://getdesign.mdhttps://impeccable.style
Всю первую половину дня в Москве был заблокирован мобильный интернет. Я прочитал о предстоящей блокировке в новостях ещё вчера, но не придал этому значения. Вышел из дома и быстро понял, что всё не так, как обычно. Сначала не открылась карта транспорта в телефоне, и я ждал на остановке автобус, не зная, когда он придёт. Затем у меня не загрузился мобильный банк, и не получилось расплатиться в автомате метро через систему быстрых платежей. Расписание электричек тоже было недоступно. Подобные злоключения то и дело преследовали меня до того времени, пока мобильный интернет не заработал. Конечно, за последние десять-пятнадцать лет мы привыкли к электронному комфорту, и интернет стал нашим незаменимым спутником. Мы уверены, что так будет всегда. Но сегодняшний день показал всю зыбкость наших привычек. Обстановка в мире, увы, неспокойная, и дальше будет ещё сложнее. Нам надо быть готовыми к тому, что, возможно, придётся жить без интернета не полдня, как сегодня, а неделями и даже месяцами. И тогда мы на некоторое время вернёмся к бумажным книгам, проводным телефонам, а может быть, и письма будем писать ручкой на бумаге, запечатывать их в конверты и бросать в почтовые ящики. Дети станут играть у подъезда в классики, резиночку и прыгать со скакалкой. Кстати, сегодня у меня была с собой в портфеле книжка, и я за то время, что не работал интернет, дочитал её до конца.
Кто найдёт в этом ролике «действия сексуального характера без обоюдного согласия» закину 1000 токенов на СинтексПоясняю - только что ютуб снёс мне этот ролик годичной давности по причине, которую написал выше.Подал апелляцию - сказали НЕ, всё равно видим элементы секса.Тут даже борцы за традиционные ценности проржали
Слушайте, я стал меньше писать полезных вещей, потому что занят тем, что, как маленький ребенок, реализую все штуки, которые всю жизнь хотел реализовать.Например, свой трекер.Я много раз пытался пользоваться готовыми: один быстрый, второй удобный, третий красиво выглядит. Но когда нужно быстро скинуть мысль, разобрать её, привязать к проекту, не потерять контекст и потом вспомнить, что я вообще хотел сделать, всё превращалось в ручную возню.А ручная возня — это ровно то, от чего таск-трекер обычно и умирает.Поэтому я собрал свою версию: inbox-first трекер. Я пишу обычным языком, система кладёт всё во входящие, разбирает через LLM и предлагает карточки на review. Из одного куска текста могут получиться задача, заметка, напоминание или несколько объектов сразу.Сейчас уже есть Web/PWA, inbox, разбор через OpenRouter с fallback на обычный parser, задачи, заметки, напоминания, области, проекты, уведомления, browser push, Telegram-уведомления, API для внешней постановки задач и публичная ссылка, которую можно дать человеку.Дальше хочу довести то, ради чего всё это и затевалось: голосовой ввод, постановку через Телеграмм, пересланные сообщения, нормальное сжатие, исправление формулировок и автоопределение проекта, области, срочности и важности.Короче, делаю трекер для людей, которые не хотят вести трекер. Кажется, это ровно мой случай.
💬Цифровые наблюдения из СмоленскаНа сотовой связи блочится всё кроме Макса, Мэйла, банков и т.п.На вай-фае, если на телефоне запущен Макс и висит в фоне, всё блочится: и прокси, и то, что нельзя называть вслух. Если Макс выгрузить, тогда всё начинает работать...
Налог на жизнь и цифровой занавес. Часть 2.Отдельный эффект этих ограничений проявляется не сразу, а через структуру самого бизнеса. Малый предприниматель в цифровой среде всегда работал за счет скорости и низких издержек: быстро протестировал продукт, быстро получил трафик, быстро масштабировался или закрылся без больших потерь. Ограничения эту логику ломают.Когда доступ к каналам становится нестабильным, бизнес теряет главное преимущество — гибкость. Любая гипотеза теперь стоит дороже, тестируется дольше и дает менее предсказуемый результат. Это означает, что часть новых проектов просто не запускается. Не потому что нет идей или спроса, а потому что вход в рынок становится слишком дорогим и рискованным.И это уже видно в цифрах. В 2025 году в России было зарегистрировано около 173 тыс. новых юрлиц — на ~20% меньше, чем годом ранее, при этом ликвидаций — около 233 тыс., то есть закрытий на треть больше, чем открытий. Это минимальные показатели «рождаемости» бизнеса за более чем десятилетие. Поток новых игроков сокращается не из-за отсутствия идей, а из-за ухудшения условий входа.Отсюда возникает первый системный слой — снижение предпринимательской активности. Если раньше цифровая среда постоянно генерировала новые проекты за счёт низкого порога входа, то при росте барьеров этот механизм перестаёт работать.Второй слой — деградация бизнес-моделей. Когда нормальный трафик недоступен или дорог, предприниматель начинает искать обходные решения: дробит каналы, уходит в закрытые группы, переводит коммуникацию в менее удобные форматы. Это снижает масштабируемость. Бизнес остается «на плаву», но перестает расти. Экономика получает не развитие, а консервацию.При этом стоимость привлечения клиента уже растет. После ограничений рекламы в Instagram* рынок столкнулся с удорожанием трафика, а сами платформы перестали давать прежний охват. Telegram, который стал ключевой альтернативой, показывает обратную динамику: при аудитории более 94 млн человек месячного охвата среднее время использования уже снизилось с 44 до 34 минут в сутки. Это означает прямое падение вовлеченности и эффективности каналов.Третий слой — потеря внешнего спроса. Для части МСП цифровые платформы были способом работать с зарубежной аудиторией: услуги, обучение, контент, продажи. При ограничении доступа и нестабильности каналов этот сегмент автоматически схлопывается. Бизнес замыкается на внутреннем рынке, где спрос и так ограничен.Четвертый слой — перераспределение выручки. Когда малый бизнес теряет прямой доступ к клиенту, его доля уходит посредникам. Уже сейчас на маркетплейсы приходится около 80% заказов в e-commerce, а доля крупных платформ продолжает расти. Это означает не просто зависимость, а потерю маржи: комиссии, логистика, продвижение съедают значительную часть выручки.В сумме это дает системный результат.Меньше новых бизнесов.Меньше масштабирования.Меньше выхода на внешние рынки.Больше зависимости от крупных платформ.Если эту динамику продолжить на горизонт 2027–2030 годов, картина становится ещё жестче. Ограничение VPN до заявленных 92%, рост стоимости обхода и дальнейшее ужесточение инфраструктуры приведут к тому, что цифровая среда перестанет выполнять роль «ускорителя» экономики. Она станет фильтром.Часть бизнеса уйдет на платформы и потеряет маржу. Часть уйдет в серую зону и потеряет эффективность. Часть просто закроется. И это происходит на фоне роста затрат на саму систему ограничений: только в 2026 году финансирование инфраструктуры блокировок увеличено до 83,7 млрд рублей, а к 2030 году мощность системы планируется нарастить в 2,5 раза.Именно в этом главный эффект ограничений. Они не «закрывают» экономику мгновенно. Они делают ее медленно неэффективной. Настолько, что со временем рост становится исключением, а не нормой.* Деятельность запрещена в России, сервисы принадлежат компании Meta, признанной в РФ экстремистской организацией@naebrosh

Основатель Revolut получит $80 млрд. Wildberries строит IT-империюЧто это значит для васRevolut хочет вырасти с $75 до $200 млрд к 2028 году. Wildberries создал собственный аналог Jira за сотни миллионов рублей. Казалось бы - две разные истории из разных миров, но если смотреть глазами инвестора - обе про одно и то же.Про то, кто строит систему - а кто реагирует на обстоятельства.Revolut. IPO не раньше 2028-го, оценка должна вырасти вдвое. Звучит амбициозно - но вот деталь, которую важно не пропустить. У основателя Сторонского мотивационная программа завязана на росте капитализации. Если оценка дойдёт до $200 млрд - его доля вырастет до 40%, около $80 млрд. Это не просто красивая цифра, а это означает, что основатель лично заинтересован в том же, в чём заинтересованы инвесторы. Интересы совпадают - и это один из главных признаков актива, за которым стоит следить.Wildberries. Вложили сотни миллионов рублей в собственную платформу для проектного управления - и судя по удалённой вакансии, думали выводить её на рынок. Пока не вывели. Но сам факт говорит о стратегии: WB последовательно строит собственную технологическую инфраструктуру вместо того чтобы зависеть от внешних сервисов. Каждый такой шаг снижает операционные риски и создаёт актив внутри экосистемы.Про венчур и что эти цифры значат для вашего портфеля - разберу в следующем посте. Там есть один неочевидный вывод, который меняет взгляд на весь рынок.Напишите в комментариях: какая из двух историй кажется вам интереснее с инвестиционной точки зрения - Revolut или WB?#разбор #цифры #стратегия
HP ввела подписку на печать. Без оплаты принтеры блокируются. Пользователи жалуются, что устройства не печатают даже при наличии бумаги и чернил. Тарифы HP Instant Ink и All-in Plan предполагают оплату за количество страниц: от $1,79 за 10 страниц в месяц или $7,99 за 100. При этом в план входит доставка чернил и доставка бумаги. При неоплате компания удалённо отключает возможность печати.Теперь я знаю, что старые принтеры скоро будут цениться, так как в них не будет этих подписок и веяния времени.Это уже конечно маразм :) купить устройство да еще и платить за него каждый месяц чтобы им пользоваться локально.