Asynchronous Programming @asyncify Channel on Telegram

Asynchronous Programming

@asyncify


Asynchronous Programming (English)

Are you looking to dive deep into the world of asynchronous programming? Look no further than our Telegram channel, @asyncify! This channel is dedicated to all things asynchronous programming, providing valuable insights, tips, and resources for both beginners and experienced developers. Whether you are trying to improve the performance of your applications or simply want to learn a new programming technique, @asyncify has got you covered. Join our community of like-minded individuals who are passionate about mastering the art of asynchronous programming. Stay up-to-date with the latest trends, tools, and best practices in the industry. Don't miss out on this opportunity to enhance your programming skills and take your projects to the next level. Join @asyncify today and unlock the power of asynchronous programming!

Asynchronous Programming

26 Dec, 15:37


⭐️ Если вы не знаете, чем заняться на праздники, тут есть сборник моих докладов, прямых эфиров и интервью за 10 лет, он наверно не полный, но точно можно найти что-то интересное https://github.com/HowProgrammingWorks/Index/blob/master/Courses/Talks.md

Asynchronous Programming

21 Dec, 08:21


https://youtu.be/jj53cCZ0wFg

Asynchronous Programming

04 Dec, 15:55


✔️ Начинаются праздники, приходит время гостей-экспертов на курсах Node.js 2024, Async 2024 и Patterns 2024. Уже завтра будет семинар по применению LISP подхода для JavaScript и Node.js мира.
Наш гость на завтра: Евгений Юхно
🎓 Более 30 лет в ИТ. Прошел длинный путь от обслуживания и ремонта компьютеров на ВЦ, которые в то время занимали по-здания. Через программирование до управления ИТ как в реальном секторе экономики, так и в ИТ компаниях.
👨‍💻 В программировании:
- для ПК: ASM Z80, MASM PDP11, MASM i286, MSX Basic, Fortran, Pascal / Object Pascal / Delphi, C / C++ / Borland C++ Builder, Lisp, dBaseIII, dBaseIV, Clipper87, Clipper 5, Java, PL/SQL, T-SQL, VisualBasic, C#, PHP, Perl, Python, JS
- для PLC и embedded: ASM для КР-580, ASM Z80, Step 4... 7 (DSL of Siemens), DSL Allen Bradley, C/C++
- для ERP: C#, AL (DSL of MS Nav / MS Business Central), C-- (DSL of MS Axapta и его приемников), 1С -- куда ж без него в Украине 90х
- под различне операционки: CP/M, IRIX, Xenix, IBM AIX, HP-UX, MS-DOS, Linux, Windows
🎯 В бизнесе:
- Программист / Инженер по внедрению ИС
- Системный аналитик / Бизнес-аналитик / IT консультант / Бизнес-консультант / CTO / CIO / CEO
- Организовывал бизнес-направления в Hardware и Software
- Организовывал ИТ-компании с нуля
💬 Тема семинара:
Влияние основополагающих технологий на современные, и почему это хорошо на примере LISP и JS. Суперпозиция хорошо забытого и современного на примере персональной эффективности в Independent software development.

Asynchronous Programming

30 Nov, 10:13


🖼 Future in Metarhia https://github.com/metarhia/metautil/pull/260

Asynchronous Programming

02 Nov, 08:07


https://youtu.be/vJc4SotVL_g

Asynchronous Programming

22 Oct, 10:07


Наш следующий гость на курсе по асинхронному программированию — всемирно известный чеченский программист — Массив Колбеков

Asynchronous Programming

12 Oct, 10:35


https://youtube.com/live/vTMf21FG6wg

Asynchronous Programming

30 Sep, 18:36


⚠️ Завтра первый день онбординга на Patterns 2024.

Это нулевая неделя, формируются группы и назначаются менторы. Процесс оказался не таким простым организационно. Всем, кто зарегистрировался - прошу спокойно подождать до вечера и если вам на почту не придет приглашение, то утром обратиться в нашу поддержку, там отдельные люди занимаются вопросами платежей, рассрочкой, потерянными контактами (часть людей везде указывает разные почты и телефоны, вводят "Юра" или "EA 00 00 FF FF" в поле фамилии и невозможно понять, кто это).

∙ Поддержка по платежам: https://t.me/patterns2024 или на почту [email protected]
∙ Кто зарегистрировался но не оплатил, то платить тут https://nodeua.com/Patterns-2024-buy.html
∙ Кто оплатил, но не заполнил форму, это тут: https://forms.gle/wuJ3nvSeF2apgUESA
∙ Кто и зарегистрировлся и оплатил, но не полял куда попал, то можно посмотреть описание тренинговой программы на трех языках тут https://github.com/HowProgrammingWorks/Index/blob/master/Courses/Patterns-2024.md
∙ Курсы по ноде и по асинхронному программированию тут: https://www.patreon.com/tshemsedinov
Пишу это потому, что есть люди, которые пишут, что хотели попасть на курс по ноде и уже где-то оплатили, а оказалось, что они на паттерны попали.

Asynchronous Programming

30 Sep, 10:44


https://youtu.be/IDxb5eLx2b4

Asynchronous Programming

25 Sep, 12:18


Проблема сложности, которую решают микросервисы, на самом деле решается проектированием структуры кода на среднем уровне, т.е. люди от функций и классов хотят перескочить сразу к архитектуре, минуя модули, слои, подсистемы. Если код хорошо структурирован на среднем уровне благодаря:
- системам модульности,
- внедрению зависимостей и инверсии управления,
- архитектурным границам и слоям,
- декомпозиции абстракций,
- separation of concerns,
- information expert,
- контрактному программированию,
- управлению, сокрытию и изоляции сложности,
- разделению прикладного и системного кода,
то такое приложение можно в течении нескольких часов собрать в 2, 3, 5, 105 инстансов, заменив взаимодействие между их структурными компонентами на RPC и трансляцию событий. Так, что модули и подсистемы знать не будут, что они запущены не в одном процессе. А если код «рыхлый», то его и микросервисом не изолировать, у такого сервиса будет большой внешний трафик, потому, что зацепление на чужие данные и чужую логику высоки. Так что, «распиливание» это только распиливание бюджета команд и бюджета на инфраструктуру. Обойти вопрос хаоса на среднем уровне при помощи чуда не выйдет. Чтобы построить Application архитектуру, нужна качественная структура, а чтобы перейти к Solution и Enterprise архитектуре, нужна качественная Application архитектура. Попытки перескочить от функции, цикла и массива к Solution архитектуре приводят к появлению монстров типа облачных функций, микролитов, моносервисов и скоро мы увидим Variable as a Service, а потом гору этих абстракций, вываленных на уровень Solution, не сгруппированных и не изолированных в структурные единицы управления сложностью. Чуда не будет, ни кто не решит за нас вопрос перехода от отдельного кирпича к небоскребу, нужны промежуточные структурные единицы.

Asynchronous Programming

23 Sep, 10:10


🧩 Тарифные планы тренинга с наставниками Patterns 2024

∙ Minimal: обучение в общей группе без наставника, но с групповыми семинарами
∙ Standard: обучение с наставником в небольших группах (10 человек)
∙ Professional: обучение с наставником, индивидуально и в группах, дополнительные материалы
∙ Exclusive: персонализированный учебный трек с автором курса и приглашенными экспертами

👉 Подробности: https://github.com/HowProgrammingWorks/Index/blob/master/Courses/Patterns-2024-ru.md

Формат тренинга

🗓 12 недель (3 месяца) + онбординг (1 неделя) + секретный модуль
👍 Доступ к материалам курса дается навсегда
🕑 Каждую неделю обязательно: 1 час лекций + 2 часа семинаров + 2 часа самостоятельной работы
🥋 Тренировки и групповая работа с наставниками, а не только смотрение видосов и чтение
🙋‍♂️ По желанию: для глубокого погружения +3 часа дополнительных материалов на старших тарифах
🏅 По завершению курса Вы получаете сертификат
⚠️ Входные требования: базовый JavaScript + рекомендуется опыт практического программирования
🙅 Для кого не подойдет: не для начинающих, бесплатные материалы для начинающих ищите у Тимура
💳 Рассрочка: помесячная оплата для всех тарифов кроме минимального
🗺 После курса участие в комьюнити выпускников, где уже тысячи людей по всему миру

👉 Купить: https://nodeua.com/Patterns-2024-buy.html

Asynchronous Programming

20 Sep, 10:18


Вот вы говорите, алгоритмы, алгоритмы, а тут открываешь ноду и видишь такое: https://github.com/nodejs/node/blob/7014e50ca32d39b94d04e04a5e6498e5c2f4346f/lib/path.js#L249-L274

Asynchronous Programming

13 Sep, 07:33


🎓 IT образование: для себя определил, что неприемлемо брать деньги с начинающих, с людей, которые еще не знают что им нужно, которые вообще слабо ориентируются в отрасли. Обратите внимание, большинство трешевых ИТ-школ и "инфобизнесменов" специализируются именно на начинающих, им же можно рассказывать про циклы месяц, про переменные разжевывать и про операторы еще месяц, массивы учить и уже через полгода написать какой-то несчастный тудулист или чатбот, в виде простыни кода, и они рады, у них есть результаты, ну вот реально что-то получилось. А попробуйте продать что-то мидлам и синьорам, у них уже сформировалось мировоззрение, есть свое видение, им доказать ценность вашего курса на порядки сложнее. А потом они будут требовательными в процессе обучения, окажется, что нужно быть специалистом высокого уровня, тратить много времени, чтобы удовлетворить их, ответить на вопросы, не засыпаться от реальных продуктовых примеров кода, которые они приносят на занятия для разбора. А начинающих, ну я готов допустить, что можно брать с них деньги за наставничество, за проверку работ, за ревью кода, но не за учебный материал, которого и так море в интернете. Но такое наставничество, это удел джунов, которые еще год назад сами были такими же, и не может быть бизнесом, оно так же полезно этим наставникам для их роста, как и для начинающих. По-хорошому, вообще непонятно, кто кому платить должен. В идеале, сам процесс должен выходить в ноль по затратам сил и пользе с обоих сторон и может идти как взаимозачет. Посмотрите на всех приличных людей, которых вы знаете в ИТ-образовании, они концентрируются на обучении людей, которые уже работают и могут заработать на свое образование. Ни в коем случае не учите начинающих, которые берут кредиты на обучение, которые одалживаются или тратят последние деньги на то, ценность чего еще сами не понимают. Они еще 100 раз передумают, бросят, опять начнут, переметнутся на другой язык, поймут, что душа лежит к какой-то третьей экосистеме, и главное, что первые полгода они не могут определить качество обучения. И вот тут из кустов появляются создатели "образовательного контента", высокохудожественные читатели документации и прочие мошенники. Люди, учите друг-друга, не давайте этой нечисти парить голову начинающим, помогите им проложить роадмап в профессии, материала море, до первой работы можно вполне на нулевом бюджете доучиться, вкладывая только время и силу воли.

Asynchronous Programming

12 Sep, 21:05


https://youtu.be/E8CtE7qTb-Q?si=3TRqyFD23sFodgwW

Asynchronous Programming

09 Sep, 09:52


🚀 Структура программы менторинга Patterns 2024 постепенно вырисовывается

🧩 Unit 1: Structure and Modularity
Week 1: Code Characteristics and Optimization Strategies
Week 2: Native features in language and platforms
Week 3: Instantiation: Creational Patterns and Techniques
Week 4: Isolation: Separation of Concerns
🧩 Unit 2: Execution and Contracts
Week 5: Contracts: Interfaces for Component Interaction
Week 6: Decoupling with Events and Messaging
Week 7: Streams: Data Flows and Transformations
Week 8: Handling Errors: Exceptions and Soft Failures
🧩 Unit 3: Runtime for Applications
Week 9: Semantics: Expressive DSLs
Week 10: All-agnostic as a Default Strategy
Week 11: Scaling Applications and Architectural Styles
Week 12: Methodology: How to Start Applying Concepts

Начало 1 октября, уже а наставников кол-во ограниченное, я не успею подготовить новых до начала, так что резервируете.
На днях обновим сайт и разложим темы по неделям https://nodeua.com/Patterns-2024-buy.html

Asynchronous Programming

04 Sep, 14:05


✔️ Как в JavaScript/TypeScript реализуется SoC (separation of concerns) и для чего он нам?

Вы наверняка видели код, в котором на событиях или на роутах висит обработчик, который содержит и часть бизнес-логики и обращение к базе и работу с сетью. Такой портянка-код характерен для чат-ботов и серверов. Как это можно написать иначе и как в этом помогают паттерны?

Нам нужно отделить три составляющих кода (грубо говоря, совсем упрощая): транспорт, бизнес-логику, базу. Но обеспечить между ними зацепление, минимальное необходимое. Лучше всего разнести их в три разные модуля (на это не обязательно), можно разнести в три разные программные компонента или в три разные абстракции. Одна обеспечивает работу с базой и ничего не знает о транспорте, а вторая - работу с транспортом и ничего не знает о базе. Дальше их должна сшивать общая абстракция (по принципу композиции, можно и агрегации). Какие паттерны тут помогут?

🧩 Mediator - снижает зацепление и подойдет нам для изоляции базы от транспорта.
🧩 Strategy - реализация стратегии для JavaScript это Map<PropertyKey, Implementation> что позволяет абстрагироваться от Implementation, находя его по ключу и работая по обобщенному интерфейсу.
🧩 Bridge - позволяет разделять абстракции и снижать зацепление, но не характерен для JavaScriot.
🧩 Abstract factory - для JavaScript абстрактная фабрика сводится к стратегии инстанциирования: Map<PropertyKey, Creator> и применяется как и стратегия, но в том месте, где нам нужно создавать инстансы (тут Creator это любой порождающий паттерн).

Признаки проблемы:
• Если вы не можете модифицировать работу с базой не трогая транспорт или бизнес-логику, не задевая базу, то нужно начинать внедрять разделение ответственности (separation of concerns).
• Если сложно написать юниттесты, а что-то протестировать можно только все целиком - ну вот оно, вы нашли проблему.
• Если код невозможно переиспользовать и вы чувствуете, что одно и то же пишете уже много раз.

Примеры на курсе по паттернам 👉 https://nodeua.com/Patterns-2024-buy.html

Asynchronous Programming

01 Sep, 14:32


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

Asynchronous Programming

21 Aug, 09:27


https://youtu.be/sm9FVEa9P9Y?t=0

Asynchronous Programming

20 Aug, 11:19


Открыта предварительная регистрация на курс Patterns 2024 — я уже изучил всю доступную литературу и конкурентов и теперь уверен — аналогов нет, ни кто так и не смог сделать приличной адаптации паттернов к JavaScript, TypeScript, Async, Node.js миру — https://nodeua.com/Patterns-2024-buy.html

Asynchronous Programming

19 Aug, 14:57


Кто еще не смотрел стрим про связь профессионального роста и паттернов, то готовьтесь, там больше 7 часов, и главное — все по делу, про то, как и чему учиться и про важность культуры, которая проникает через паттерны https://www.youtube.com/watch?v=QzxklJW4_LM

Asynchronous Programming

17 Aug, 07:03


https://www.youtube.com/watch?v=QzxklJW4_LM

Asynchronous Programming

16 Aug, 17:05


⭐️ Менеджмент — это лженаука об управлении. А наука об управлении называется кибернетика.

⭐️ Парадигмы программирования, кроме процедурной — это пока еще так... игрушечки и эксперименты.  Весь существенный софт написан процедурно.

⭐️ Если вы приличный человек, у вас успешный продукт, большая команда и кодовая база — то вам очень стыдно за код проекта.

⭐️ Секта антисектантов «осознанность»

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

⭐️ Чем заменить конфлюенс? Он прекрасно заменяется отсутствием конфлюенса.

⭐️ No-code advantages: no bugs, no problems, no tests needed, no git diff, no code review and fixes needed, perfect just after first release, no-code is compatible with serverless.

⭐️ Cloud naïve: PaaS — promise as a service

⭐️ Приходит Цекербрин к своим разработчикам и спрашивает: ну шо, когда уже наш фейсбук будет дописан окончательно?

⭐️ Любая достаточно развитая технология неотличима от Метархии.

Asynchronous Programming

14 Aug, 09:12


В субботу будет мастер-класс «Middle to Senior in 2024» в 15.00 (GMT+3) 👉 https://t.me/JavaScriptPatternsBot?start=TIMUR