another day rotting in vain
944 subscribers
20 photos
3 files
36 links
low-key nerds wanted
Download Telegram
а спонсор моего бодрствования в 6 утра - Григорий Перельман. Григорий Перельман - усни на видео с объяснением гипотезы Пуанкаре в 10 вечера, проснись в 3 ночи, развлекайся.

короче, #кино_для_скучных - Good Will Hunting (1997)

фильм больше про психологические проблемы, любовь и очень красивого Мэта Дэймона, но немножечко проскальзывает теория графов.

в самом начале фильма профессор дает студентам СУПЕР СЛОЖНОЕ НЕВЕРОЯТНОЕ ЗАДАНИЕ, С КОТОРЫМ СПРАВИТСЯ ТОЛЬКО СИЛЬНЕЙШИЙ УМНЕЙШИЙ ЛУЧШИЙ ИЗ ЛУЧШИХ. конечно же, это оказывается по плечу уборщику Уиллу Хантингу.

если вы хотите устроить домашний кинопросмотр и произвести впечатление на друзей/близких/парня/девушку, то вот

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

https://www.youtube.com/watch?v=5608sU3gCPk

https://www.youtube.com/watch?v=2PY1KGU1SEo

если вы хотите устроить домашний кинопросмотр и произвести впечатление на друзей/близких/парня/девушку, но готовы к тому, что больше с вами фильмы смотреть не будут, номер удалят из телефонной книжки и вообще господи когда ж ты заткнешься - для вас пдф файл выше
вообще не про математику, извините, но голос такой, что не поделиться не могу
и тут назрел вопрос: какие подкасты вы слушаете? напишите сюда @iamnotbergman, пожалуйста
Forwarded from Рупор экстраверта
Привет, ребята! Я Таня Зубко и это мой Рупор Экстраверта, где я буду рассказывать о волнительных для меня вещах. Здесь я смогу делиться с вами переживаниями, рассказами, умозаключениями, размышлизмами, буду изредка читать прозу и иногда поэзию, вперемешку с хорошей музыкой, это будет самодельный карманный вариант подкастов. Очень рада этому событию, всем приятного прослушивания.
Forwarded from Рупор экстраверта
смотрите, кто ожил 👀

напоминаю, что этот канал вам нужен для того, чтобы было о чем поговорить на первом последнем свидании. почему последнем? да вот поэтому:

0! = 1
почему? а вот самое понятное доказательство
факториал числа можно представить в виде n! = (n+1)! / (n+1)
например, 4! = 5!/5 = 24
движемся дальше:
3! = 4!/4 = 6
2! = 3!/3 = 2
1!= 2!/2 = 1
и та-дааам:
0! = 1!/1 = 1

честно сдаю все явки и пароли: решила написать про 0! после поста в Formulas for your comfort https://www.instagram.com/formulas_for_your_comfort/?hl=ru
ничего сюда не пишу и совесть замучила, точнее, пришла в лице Моисея Эльевича Шейнфинкеля (мурашки по спине от того, насколько круто звучат имя и фамилия!).

есть подозрения, что часть подписчиков — программисты или имеют какое-то к программированию отношение. так вот, каррирование — это когда функции строятся таким образом, чтобы была возможность частичного применения их аргументов.

название процесса — в честь математика Хаскелла Карри (имя намекает, что в его честь было названо кое-что еще).

вот тут очень хорошо про каррирование, а еще в книжке Стояна Стефанова про паттерны проектирования https://hackernoon.com/partial-application-of-functions-dbe7d9b80760

окей, а почему в канале про математику всплыл твой богомерзкий джаваскрипт? а потому что математик Моисей Эльевич Шейфинкель — отец каррирования (и комбинаторной логики). кстати, после Геттингенского университета, полежал в психиатрической лечебнице в Москве (1927-й год), умер в нищете, а во время войны соседи использовали его работы для растопки (по возможности, избегайте существования в виде советского ученого, спасибо).

а вот тут статья Шейфинкеля «О кирпичах математической логики» (я для нее слишком глупая, но вам, может, как раз) https://cyberleninka.ru/article/v/o-kirpichah-matematicheskoy-logiki
собственно, то, ради чего мы все здесь сегодня собрались
вообще, здесь должен быть пост про JPEG и алгоритм Хаффмана, но серфинг по интернету привел меня к серии заметок про математику, которая стоит за томографией. и в первой же из них обнаружилась Флоренс Найтингейл — удивительная женщина.

уже был пост про Кетле — тот, который индекс массы дела. так вот, если Адольф (не тот Адольф, а Кетле) — отец социальной статистики, то леди Найтингейл — ее мать.

кроме того, что Флоренс была сестрой милосердия и отлично гуглится по запросу «леди с лампой», она получила блестящее образование и обладала пытливым умом (пишу это, отставив мизинчик в сторону). так вот, Найтингейл использовала статистику для того, чтобы убедить власти в том, что причиной многих потерь во время войны является не только то, что в кого-то прилетел снаряд, но и ненадлежащие условия в полевой медицине.

чтобы информация не казалась слишком сухой, Флоренс одна из первых, если не первая, использовала для «доходчивости» инфографики — круговые диаграммы (Найтингейл называла их coxcombs, а мы — Nightingale Rose Chart).

о том, как их строить и с помощью каких инструментов — https://datavizcatalogue.com/RU/metody/diagramma_roza_najtingejl.html

в итоге хеппиэнд и вот она первая женщина в Королевском статитическом обществе

а я поздравляю нас всех с наступающим новым годом, спасибо, что подписались, спасибо, что не отписались, пока тут было тихо-тихо ❤️

и как нью еа резолюшн хочу в 2019-м выступить с докладом про математику во фронденте — пока из пунктов на подумать только каррирование, вебпак и графы, jpeg и оптимизация. если у вас есть идеи-зацепки-крючки на тему — пишите, пожалуйста @iamnotbergman
погуглить про Knapsack problem мне подсказал @dead_lesbian, кстати, он сделал бота для поиска скидосов на asos - @gdeskidos_bot (возможно, эта информация из сегодняшнего поста окажется для вас наиболее полезной)

так вот, Knapsack problem или задача о рюкзаке - задача комбинаторной оптимизации. если очень просто и понятно, то допустим есть набор предметов, у каждого предмета есть стоимость (vi) и вес (wi), есть рюкзак, у которого есть максимальный вес (W) - больше не запихнешь. наша задача - собрать рюкзак так, чтобы не превысить его максимальный вес, но при этом собрать максимальную суммарную стоимость предметов внутри (max V).

есть много версий этой задачи, https://ru.wikipedia.org/wiki/%D0%97%D0%B0%D0%B4%D0%B0%D1%87%D0%B0_%D0%BE_%D1%80%D1%8E%D0%BA%D0%B7%D0%B0%D0%BA%D0%B5

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

допустим, каждый предмет мы можем брать только один раз.

задачу можно решить несколькими способами - первое, что приходит в голову - решить перебором, но тогда это экпоненциальный алгоритм и есть способы получше
например, я посмотрела первые 20 минут лекции по динамическому программированию, где как раз на первых 20 минутах рассматривают эту задачу

итоговая формула выглядит как-то так Мw,i = (max(Mw-1, i, Mw-wi, i-1 )+ vi)

звучит и выглядит жутко, но по сути решение похоже на разложение суммы на слагаемые

и вот на этом видео человек объясняет, как вывести эту формулу - пока сам не начертишь табличку - ничего не понятно и лучше 20 минут посмотреть https://www.youtube.com/watch?time_continue=124&v=7qTfENjWiHw

ну а поскольку я личинка программиста, то нашла решение этой задачи на js - https://www.youtube.com/watch?v=WkGd9C9hO9M (кстати, очень крутой канал <3), лектор (?) даже сравнивает это с компьютерными игрушками

воот.
Софья Васильевна - мой любимый сорт грусти

высказывания от "всё в жизни кажется таким бледным и неинтересным, в такие минуты нет ничего лучше математики" до "почему же любят самых незначительных, и только меня никто не любит?"

https://postnauka.ru/longreads/91842
теперь это мой любимый телеграм-канал про фронтенд и считаю преступлением не поделиться, воот
Недавно на youtube появился очень ламповый документальный фильм, посвящённый Ember.js. В нём создатели Ember.js рассказывают про историю появления фреймворка и рассказывают про то, какое место он занимает в современном мире фронтенд разработки.

Ember.js это эволюционное развитие SproutCore, другого фреймворка, котрый был разработан в Apple (используется на icloud.com). Чарльз Джоли, который был лидом SproutCore вместе с Йехуда Катц, основали стартап, в котором Йехуда и Том Дейл фуллтайм работали над новым фреймворком Amber.js, который затем переименовали в Ember.js. Сейчас вокруг Ember есть небольшое сильное коммьюнити. Фреймворк используют как в стартапах (Tilde), так и в больших корпорациях (linkedin.com). Ребята видят рост популярности React, Angular и Vue.js, но сдаваться не собираются.

#jsframeworks #emberjs #documentary

https://www.youtube.com/watch?v=Cvz-9ccflKQ
Forwarded from Веб-стандарты (Веб-стандарты)
Паттерны итераторов в JavaScript. Лучиано Маммино рассматривает разные способы создания последовательности чисел Фибоначчи — https://loige.co/javascript-iterator-patterns/
пусть эта статья полежит здесь
кроме диаграммы Вороного, которую в своём окрасе используют жирафы, из примечательного ещё и шутка про разбитое сердечко (было сложно пройти мимо)
https://tympanus.net/codrops/2019/03/26/exploding-3d-objects-with-three-js/
👆 внимание! первый действительно полезный пост за всю историю канала

недавно проходила крым рым и медные трубы (собеседования) и поняла, что всем собеседующим от собеседуемых нужно только одно - числа фибоначчи

минутка каминаута: я не умею в рекурсию. предположим, вы тоже (извините).

так вот, числа фибоначчи это последовательность 1, 1, 2, 3, 5, 8, 13, 21...
каждое следующее - это сумма двух предыдущих.

когда на собеседовании просят написать функцию, которая вернет энное по счету число фибоначчи, то предполагается, что вы должны сообразить нечто подобное (можно ещё поиграть с зачеркнуто шрифтами генераторами)

function fibonacci(n) {
let num;
if (n >= 2) {
num = fibonacci(n - 1) + fibonacci(n - 2);
} else {
num = n
}
return num;
}
по формуле Fn = Fn-1 + Fn-2
это я тут такая умная, а на деле толстый лев
так вот, если в рекурсию не получается, а плакать перед чужими людьми как-то "извините, не сегодня", то гуглится такое решение https://css-live.ru/javascript/chisla-fibonachchi-kak-uchat-v-uchebnikax-i-kak-ix-luchshe-iskat.html

function fibonacci2(n) {
var sq5 = Math.sqrt(5);
var a = (1 + sq5) / 2;
var b = (1 - sq5) / 2;
return (Math.pow(a, n) - Math.pow(b, n)) / sq5;
}

автор рассказывает про решение с помощью формулы Бине, но не так стыдно не уметь в рекурсию, как позорно зазубривать формулы, не понимая, что и откуда берется, как оно работает, откуда взялся корень из пяти, например

сейчас разберём (спасибо Эдварду Шейнерману!)

допустим, у нас игривое настроение и мы решили ни с того, ни с сего посмотреть, что получится, если число фибоначчи разделить на предшествующее

1/1 = 1
2/1 = 2
3/2 = 1,5
5/3 = 1.66666666667
8/5 = 1,6
13/8 = 1,625
21/13 = 1.61538461538
...
987/610 = 1.61803278689
1597/987 = 1.61803444782

чем дальше в лес, тем больше соотношение Fn+1/Fn становится похожим на 1,61803.
выведем из этого формулу:

x = Fn+1/Fn = Fn+2/Fn+1 = Fn+3/Fn+2
то есть, Fn+1 = xFn, Fn+2 = xFn+1
Fn+2 = xFn+1 =x^2Fn
поскольку Fn+2 = Fn+1 + Fn, то x^2Fn = xFn + Fn

если поделить обе части на Fn, то вот оно нормальное квадратное уравнение:
x^2-x-1 = 0

у него два решения:
x1 = (1+ √5)/2 ≈ 1, 61803
x1 = (1- √5)/2 ≈ -0, 61803

а 1,61803, кстати, не просто число, а φ (фи) - обозначает золотое сечение

если у нас опять таки игривое настроение, то можно чекнуть соотношение Fn/ Фn и заметить, что оно приблизительно равно 0, 723607 = Ф/√5

и та-даам Fn = Ф^n+1/ √5

и как бы вот откуда у формулы Бине ноги растут (и после всего этого проделаного пути даже не очень-то и стыдно не уметь в рекурсию) 🦄🥂