В Телеграме есть функция "Похожие каналы". Не знаю, как платформа оценивает похожесть, но, думаю, что это комбинированная метрика из подписчиков и ключевых слов.
Так вот, тёзка Denull сделал прикольный кластеризатор каналов. Я просканировал свой канал на глубину 3 и обозначил кластеры.
Какие интересные выводы из этого можно сделать:
1. Каналов про айти так много (возможно именно в ближайших к моему, но я думаю, что и в целом), что они, в свою очередь, тоже делятся на выраженные кластеры: мобилки, фронт, дизайн и т.д.
2. Больше всего айтишных каналов про ML. Это очень модно.
3. Канал ровно на серединке между "Мобильной разработкой" и "Компьютерной безопасностью" — это канал про компьютерную безопасность в мобильной разработке! Прикольно.
4. Каналы со всякими новостями практически неотделимы от каналов с политикой.
5. Если якобы тематический канал находится очень близко к кластеру "Новости и политика", то, вероятно, этот канал часто постит нетематический ширпотребный мусор для разгона трафика. То есть, я бы на такие не подписывался.
6. Вообще нет кластера по настолкам. Похоже, эта тема довольно слабо освещается в блогах.
7. Стартапы и инвестиции находятся где-то между политикой и машинным обучением. Неспроста.
#web
http://www.paulbrownmagic.com/blog/python_partial_application
Python Partial: Code Your Intention
Of all the functional programming inspired features in Python, partial application must be the best kept secret that you really need to know. Partial application lets you create highly abstract functions and make them more specific for use, pass a function arguments without calling it yet, and so much more.
#tuple#sort
http://wla.berkeley.edu/~cs61a/fa11/lectures/streams.html
In this chapter, we continue our discussion of real-world applications by developing new tools to process #sequential#data. In Chapter 2, we introduced a sequence interface, implemented in Python by built-in data types such as #tuple and #list. #Sequences supported two operations: querying their length and accessing an element by index. In Chapter 3, we developed a user-defined implementations of the sequence interface, the Rlist class for representing recursive lists. These sequence types proved effective for representing and accessing a wide variety of sequential #datasets.