3 measurements taken within a single day, net +1. Dots are measurements; the straight line between them is drawn to join them, not to claim we know the path taken in between — snapshots are recorded only when a count changes, so gaps mean “no change observed”, never “interpolated”. The vertical axis spans 238–239 and does not start at zero.
Measurement log — every subscribers count we have recorded
Measured (UTC)
Subscribers
Change
8 Aug 2026, 13:41
239
+1
8 Aug 2026, 09:50
238
no change
7 Aug 2026, 16:17
238
first reading
Engagement
13 posts held, back to 6 July 2025 — the reader has not yet reached the start of this channel’s public history, so older posts may sit further back, unread. Read across 1 pageof Telegram’s post history, 20 posts per page.
Nothing published in the last 30 days. ERR and ER are rolling 30-day measures, so there is nothing to compute — we hold 13 posts for this entry, the most recent from 25 June 2026. An engagement rate over an empty window would be a number about nothing.
Reaction mix
191 reactions across 13 posts, in 13 distinct kinds. The most used accounts for 18.3% of them.
Every reaction kind recorded on the sample, most used first
Reaction
Count
Share
Share, drawn
custom 5206467825610302253
35
18.3%
🔥
33
17.3%
❤
30
15.7%
🤯
22
11.5%
custom 5190678349009162471
20
10.5%
😱
19
9.95%
🤔
14
7.33%
😨
6
3.14%
custom 5206376896857673259
4
2.09%
✍
3
1.57%
👍
3
1.57%
custom 5303184995853033696
1
0.524%
💯
1
0.524%
Custom emoji. 4 of the rows above are Telegram custom emoji, which the public preview renders as an element carrying only a numeric id — no character, and no image we can reach. The id is printed as-is rather than substituted with a look-alike glyph, because a stand-in would be our invention showing where a measurement should be. The counts beside them areTelegram’s.
No sentiment is inferred, and none should be read in. This table is ordered by count and by nothing else. Emoji do not carry stable meaning across languages or communities — 🙏 is thanks in one channel and mourning in another — so we publish which ones were pressed and how often, and pass no judgement on what an audience meant by them.
Precision. Telegram publishes reaction counts per emoji and short-forms each one — 4.34K, 1.2M — so any single kind at or above 1,000 reaches us at three significant figures, and only counts below 1,000 are exact. The shares above are ratios of those figures and carry the same error. This is also why the total here can differ slightly from a reaction total printed elsewhere on the page: both are sums of the same rounded parts, taken over samples with different edges.
Coverage. Reactions were read on 13 of the 13 sampled posts in this sample. Summed by Telegram’s own count on each post — not by adding up the per-emoji breakdown above — those same posts carry 191reactions in total: the kind of figure the paragraph above means by “a reaction total printed elsewhere on the page”.
Measured over the 13 most recent posts we hold, published 6 July 2025 to 25 June 2026, using the newest reading held for each. Telegram Stars are excluded: they are a payment, not a reaction, and they have their own section.
Telegram Stars
Stars received
52
across the posts below
Posts paid on
12
of 13 we hold a reading for · 92%
Most on one post
9
single highest reading
A paid reaction is a reader spending Telegram Stars — bought with money — on a post by @igoroutine_courses. Telegram publishes the count on the public post preview alongside ordinary reactions, and this register reads it there. It is the only figure on this site that measures money moving rather than attention.
Stars are not reactions, and the two are never added. They are rendered in the same strip on Telegram and counted in the same shape, but one is a tap and the other is a purchase. The reaction totals and the engagement rate elsewhere on this page exclude every figure in this section, and no rate here is computed against a reaction count.
This is not revenue, and we publish no currency figure. What a Star costs a reader and what it pays a channel are different numbers, Telegram takes a share we cannot observe, and the terms have changed. Converting a Star count into money would be an estimate dressed as a measurement, so the count is where we stop.
Counted over the 13 most recent posts we hold for this entry, published 6 July 2025 to 25 June 2026. Star counts above 1,000 reach us in Telegram’s short form and carry the same three-significant-figure rounding as everything else on this page.
Разбор задачи с порядком вызова функций в select
Что будет выведено в stdout после запуска кода?
Go Playground
На первый взгляд может показаться, что здесь вывод недетерминирован. На самом деле мы имеем дело с очень тонкой гарантией из стандарта языка Go:
For all the cases in the statement right-hand-side expressions of send statements are evaluated exactly once, in source order, upon entering the "select" statem…
😎😎 Это изменение сломало set на map[key]struct{}, который мы знали
Продолжение предыдущего поста (ссылка) 👍👍
На самом деле, уже есть предложения по исправлению, например, поменять местами поля в структуре. Это действительно сработает, ведь компилятор не будет добавлять один байт паддинга для пустой структуры. Можно проверить это решение бенчмарками (размер слота, в котором хранятся ключи и значения, указан последни…
😎😎 Это изменение сломало Set на map[key]struct{}, который мы знали
В Go все привыкли писать set вот так:
type set[K comparable] struct {
data map[K]struct{}
}
Ибо многие знают, что в Go пустая структура не занимает память. Давайте посмотрим на формулировку из стандарта:
A struct or array type has size zero if it contains no fields (or elements, respectively) that have a size greater than zero.
поэтому, используя…
😎😎 От этого data race не спасает даже race detector
Продолжение к предыдущему посту.
Итак, разработчик из Go team написал такую реализацию:
func (c *cronImpl) Run(ctx context.Context, action func(), next func() time.Duration) {
var t *time.Timer
t = time.AfterFunc(next(), func() {
select {
case <-ctx.Done():
return
default:
action()
t.Reset(next())
}
})
<-ctx.Done()
}
func main() {
ctx, c…
😢😢 От этого data race не спасает даже race detector
Data race это частный случай race condition. Определять термин data race на самом деле можно по-разному.
Самое простое определение:
Состояние во время исполнения, когда две операции над переменной происходят из разных горутин без синхронизации, при этом хотя бы одна из них является записью.
Чуть более сложное:
Состояние во время исполнения, когда две конфликтующи…
😎😎 Убийственная задача с собеседования в UzumMarket
С каждым днём AI-инструменты обесценивают тривиальные знания и навыки. Никого уже не удивишь каналами, паттернами или устройством планировщика Go. Задачи становятся сложнее, требуются как знания нюансов языка, так и понимание базовых принципов. Всё это делается, чтобы отобрать максимально компетентных кандидатов среди огромного количества желающих.
Говоря про Go, …
🍀 Время это иллюзия?
🙄🙄 Что же такое время? Мы часто оперируем этим понятием в наших приложениях, но откуда вообще наш компьютер знает точное время?
Всё началось ещё давно, когда морякам необходимо было знать точное время, чтобы определить точное местоположение корабля в океане. Это связано с принципом долготы — одной из двух координат на Земле. В 1731 году изобрели хронометр, который надолго стал золотым стандарто…
🙄🙄 Есть ли смысл в CPU-bound сoncurrency?
Мы все видели таких коллег 😎😎 — только что изучили горутины и сразу решили «распараллелить всё!» Особенно так любят делать новички:
«Оо, я недавно изучил пакет unsafe и concurrency, сейчас распараллелю вычисления в этом запросе и уберу лишние копии».
В лучшем случае код становится менее читаемым.
В худшем — станет медленнее 🫡🫡
Как однажды сказал Дональд Кнут — один из отц…
Во сколько раз многопоточная реализация сложения матриц 4096 x 1024, распараллеливающая вычисления по строкам на 10 ядрах, быстрее однопоточной реализации?
(90 % кода распараллелено)
В 3 раза19%
В 5 раз20%
В 7 раз13%
В 9 раз14%
В 10 раз34%
Shares as published. No per-option vote count is published by Telegram, so none is shown.
🙄🙄 Как узнать номер горутины в Go?
Официальная позиция языка такая:
Goroutines do not have names; they are just anonymous workers. They expose no unique identifier, name, or data structure to the programmer. Some people are surprised by this, expecting the go statement to return some item that can be used to access and control the goroutine later.
The fundamental reason goroutines are anonymous is so that the full…
❤8🔥6👍3
Showing the 12 most recent of 13 posts we hold for @igoroutine_courses. View and reaction counts are the latest single reading for each post, not a live figure, and a recent post is still accumulating both. A view count marked ≈ was rounded by Telegram before we ever saw it — t.me prints views in full below 1,000 and to three significant figures above, so ≈1,200,000 means somewhere between 1,150,000 and 1,249,999. Unmarked counts are exact. Text is reproduced from the public post preview and truncated for length.
Stars beside a post are paid reactions — Telegram Stars, bought with money and spent on that post. They are a different unit from reactions and are never added to them, here or anywhere else on this page.
Polls
The 2 polls we hold for this entry, as Telegram rendered them when we read the post. A poll’s figures keep moving after that, so each one is dated.
Во сколько раз многопоточная реализация сложения матриц 4096 x 1024, распараллеливающая вычисления по строкам на 10 ядрах, быстрее однопоточной реализации?
(90 % кода распараллелено)
В 3 раза19%
В 5 раз20%
В 7 раз13%
В 9 раз14%
В 10 раз34%
Shares as published. No per-option vote count is published by Telegram, so none is shown.
Percentages only — there are no per-option vote counts here, because Telegram publishes none.The public post preview gives each option’s share and a single voter total, and nothing else. Multiplying one by the other would produce a per-option tally that looks measured and is not: the shares are rounded to whole numbers before we ever see them. We print what was published and leave the column that does not exist empty.
The shares need not add up to 100.Rounding alone puts many polls at 99 or 101. A poll that allows more than one answer per voter runs well past 100 by design, and several here do. The bars are drawn against a fixed 100% track at each option’s own percentage rather than normalised to the total, so a poll that exceeds it shows that it does instead of being quietly rescaled.
Read from the 13 most recent posts we hold, published 6 July 2025 to 25 June 2026. Telegram labels each poll by kind — an anonymous poll, a quiz, a closed set of final results — and that label is reproduced rather than paraphrased.
Citation-graph rank
Citation-graph rank — 171,742 of 1,176,251entries in the measured graph. A weighted position computed from the forward and mention edges below — republished posts weigh more than named mentions — and recomputed periodically, over the whole graph. Published only as this ordinal position, never as a score: a position is a fact, and a score printed beside one channel’s name would read as a verdict this register does not make. The two counts beneath stay separate for the same reason mentions are never summed with forwards anywhere else on this page — a named-by count costs nothing to manufacture. The top 100 by this measure, or how it is computed.
Forward network
Republished by
Channels on the register that have forwarded this channel's posts into their own feed.
Built only from forwarded posts we have actually read, on both sides. Coverage is early and deliberately incomplete: a missing link means we have not read the post that would prove it, never that the relationship does not exist. Counts are distinct forwarded posts observed, so they only ever go up as we read more.
Mentions
Named by 1 registered channel — every channel on the register whose own posts have named this one, by its current username or any other username it currently holds, merged from two separately captured readings of the same fact so a namer caught by only one of them is not missed and a namer both caught is not counted twice. A username this channel has since dropped is not matched — that handle may belong to someone else now, and crediting today’s namer to yesterday’s owner would misattribute it.
Named by
Channels on the register whose posts name this channel's handle.
A mention is a weaker signal than a forward and is counted separately for that reason — naming a channel is not republishing it, and a handle in a post body is easy to place deliberately. The post counts beside each row below are distinct posts in which the handle appeared, from posts we have read on both sides — the “Named by N registered channels” figure above is a different count, of distinct NAMING CHANNELS rather than posts, and is not the sum of the rows under it.
Cite this entry
A live page changes as we take new readings, so a citation should name the measurement it is based on, not just the URL. The line below cites the subscriber count as measured 8 August 2026 — this
entry's latest reading, not the date you are reading this.
“igoroutine.courses” (@igoroutine_courses), 239 subscribers as measured 8 August 2026. Telegram Register, tgregister.com/channel/igoroutine_courses.
Full measurement history, CC BY 4.0. Every reading this register holds for this entry, not just the latest one, as a dated, downloadable record: CSV · JSON. Free to use with attribution to tgregister.com. Each file carries its own generation timestamp, which is the figure to cite for exactly when the data was retrieved.