<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel>
        <title>Добро пожаловать на форум 8 факультета МАИ! - Фундаментальная информатика</title>
        <description>Вопросы по циклу дисциплин</description>
        <link>https://faq8.ru/list.php?5</link>
        <lastBuildDate>Sat, 05 Sep 2026 08:07:29 +0300</lastBuildDate>
        <generator>Phorum 5.2.23</generator>
        <item>
            <guid>https://faq8.ru/read.php?5,16571,16571#msg-16571</guid>
            <title>50 фунтов Алана Тьюринга</title>
            <link>https://faq8.ru/read.php?5,16571,16571#msg-16571</link>
            <description><![CDATA[ Какая машина изображена на купюре? <br />
Отладить в четвёрках!]]></description>
            <dc:creator>zzz</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Wed, 23 Jul 2025 09:20:47 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,16293,16339#msg-16339</guid>
            <title>Re: Почему Busy Beaver является невычислимой функцией?</title>
            <link>https://faq8.ru/read.php?5,16293,16339#msg-16339</link>
            <description><![CDATA[ В статье математика Tibor Radó приводится доказательство невычислимости данной функции. Сама статья на английском, поэтому я приведу краткую сводку данной статьи. Оригинал стаьи есть в прикреплённых файлах.<br />
<br />
В игре Busy Beaver используются &quot;карточки&quot;, которые являются аналогом пятерок МТ; бесконечная в обе стороны лента Тьюринга, изначально заполненная нулями; алфавит - {0, 1}. Каждая карточка пронумерована (некоторое число - исходное состояние МТ), в ней описано, что делать, если в текущей ячейке 0 или 1, что поставить (0 или 1), куда перейти (0 - влево, 1 - вправо) и в какое следующее состояние перейти (0 - остановка, любое другое число - номер соответствующей карточки).<br />
Например:<br />
<br />
карточка 1<br />
0   102<br />
1   111<br />
<br />
карточка 2<br />
0   111<br />
1   100<br />
<br />
Суть игры в том, чтобы МТ, описываемая n карточками, остановилась и количество подряд идущих единиц было наибольшим среди всех МТ, которые возможно описать n карточками.<br />
Введём функцию Busy Beaver и будем записывать её как S(n). Значение S(n) - наибольшее количество подряд идущих единиц, которые получились у остановившейся МТ, которая описывается n карточками.<br />
Теперь перейдём к теореме.<br />
<br />
Будем писать <br />
f(x) &gt; (g(x))*, <br />
если f(x) &gt; g(x), начиная с какого-то x_0.<br />
<br />
Сама теорема звучит следующим образом.<br />
S(n) &gt; (f(n))* для любой вычислимой функции f(n). Следовательно, S(n) невычислима.<br />
<br />
Обозначим вспомогательную функцию F(x) = (Сумма от i = 0 до x (f(i) + i^2)).<br />
Отсюда:<br />
F(x) &gt;= f(x)<br />
F(x) &gt;= x^2<br />
F(x + 1) &gt; F(x)<br />
<br />
Так как F(x) - вычислима, то можно создать МТ (назовём её M_F), которая вычисляет F(x), при этом вся МТ записана в C карточках. <br />
Объявим МТ M_x, которая печатает x единиц подряд и останавливается; при этом для самой M_x используется x карточек. Например, для x = 3:<br />
карточка 1<br />
0   112<br />
1   110;<br />
карточка 2<br />
0   113<br />
1   ---;<br />
карточка 3<br />
0   101<br />
1   ---;<br />
<br />
Теперь объявим МТ MF_x, которая является последовательным применением: M_x -&gt; M_F -&gt; M_F. Такая МТ, используя x + 2C карточек, будет последовательно записывать x, F(x), F(F(x)) единиц. Таким образом, получится x + F(x) + F(F(x)) единиц подряд, при чём MF_x является одной из вариантов МТ для S(x + 2C). Отсюда получаем:<br />
S(x + 2C) &gt;= x + F(x) + F(F(x)).<br />
<br />
Так как <br />
x^2 &gt; (x + 2C)* и F(x) &gt;= x^2, то<br />
<br />
F(x) &gt; (x + 2C)*.<br />
<br />
Так как F(x) - монотонна, то<br />
F(F(x)) &gt; (F(x + 2C))*.<br />
<br />
Так как S(x + 2C) &gt;= x + F(x) + F(F(x)), то:<br />
S(x + 2C) &gt; (F(x + 2C))*<br />
<br />
Поскольку F(x) &gt;= f(x), то:<br />
S(x + 2C) &gt; (f(x + 2С))*<br />
<br />
Теперь обозначим x + 2C как n:<br />
S(n) &gt; (f(n))*.]]></description>
            <dc:creator>Павел Клюкин</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Mon, 05 Feb 2024 14:28:38 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,16298,16298#msg-16298</guid>
            <title>Кончина титана информатики и программирования, лауреата Тьюринговской премии</title>
            <link>https://faq8.ru/read.php?5,16298,16298#msg-16298</link>
            <description><![CDATA[ Никлаус Вирт способствовал систематическому подходу к программированию. Победным шествием Паскаля по процессорам и микропроцессорам показал как надо бутстрэпить вплоть до железа системы программирования и компиляторы. Он любил авиацию и мечтал об экскурсии по МАИ, чтобы увидеть раритеты, которых нет даже в Монино.]]></description>
            <dc:creator>zzz</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Sun, 07 Jan 2024 14:46:45 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,16293,16293#msg-16293</guid>
            <title>Почему Busy Beaver является невычислимой функцией?</title>
            <link>https://faq8.ru/read.php?5,16293,16293#msg-16293</link>
            <description><![CDATA[ Здравствуйте!<br />
Недавно наткнулся на функцию Busy Beaver и узнал, что она является невычислимой. Зная, что невычислимой является та функция, для которой не существует машины Тьюринга, которая могла бы ее вычислить, я задался вопросом, почему для такой простой функции не сущетсвует алгоритма. Насколько я понял из статьи [2],  вся проблема в том, что не для всех возможных вариантов МТ, которые перебираются в данной функции, можно понять, остановится текущая МТ или нет. Но разве это нельзя никак отсмотреть, например, попадание в цикл и т. д.? Да, я знаю про проблему остановки, и, что проблема остановки неразрешима на МТ, но почему именно для машин Тьюринга этой функции нельзя сказать, остановится каждая из них или нет?<br />
Заранее спасибо<br />
<br />
[<a href="https://en.wikipedia.org/wiki/Busy_beaver"  rel="nofollow">en.wikipedia.org</a>]<br />
[<a href="https://habr.com/ru/articles/317996/"  rel="nofollow">habr.com</a>]]]></description>
            <dc:creator>Павел Клюкин</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Sat, 23 Dec 2023 23:11:51 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,15903,15903#msg-15903</guid>
            <title>Аналоговые вычислительные машины</title>
            <link>https://faq8.ru/read.php?5,15903,15903#msg-15903</link>
            <description><![CDATA[ [<a href="https://zen.yandex.ru/media/id/5b935f60343d6c00a9f52b06/analogovye-vychislitelnye-mashiny-1-chto-eto-takoe-i-kakimi-oni-byli-61d48fc9673f911a55321cba"  rel="nofollow">zen.yandex.ru</a>]]]></description>
            <dc:creator>zzz</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Wed, 12 Jan 2022 00:16:58 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,15902,15902#msg-15902</guid>
            <title>Тонкая грань между аналоговым и цифровым</title>
            <link>https://faq8.ru/read.php?5,15902,15902#msg-15902</link>
            <description><![CDATA[ [<a href="https://zen.yandex.ru/media/id/5b935f60343d6c00a9f52b06/tonkaia-gran-mejdu-analogovym-i-cifrovym-61dd157f6865712f752af627?&amp"  rel="nofollow">zen.yandex.ru</a>];]]></description>
            <dc:creator>zzz</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Tue, 11 Jan 2022 23:57:25 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,15424,15431#msg-15431</guid>
            <title>Re: Python vs C++</title>
            <link>https://faq8.ru/read.php?5,15424,15431#msg-15431</link>
            <description><![CDATA[ CLOS -- абсолютно объектный язык программирования! <br />
Бюрократия и коронавирус мешают нам вводить новые языки.]]></description>
            <dc:creator>zzz</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Fri, 28 Aug 2020 20:08:16 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,15424,15430#msg-15430</guid>
            <title>Re: Python vs C++</title>
            <link>https://faq8.ru/read.php?5,15424,15430#msg-15430</link>
            <description><![CDATA[ Валентин Евгеньевич, а какие мысли есть насчет го, гофера и голангеров? Еще, если можно, хотелось бы услышать комментарий по поводу модного языка программирования Rust и всеми любимой классики Common Lisp!]]></description>
            <dc:creator>karma</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Fri, 28 Aug 2020 20:03:33 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,15429,15429#msg-15429</guid>
            <title>Известные программисты</title>
            <link>https://faq8.ru/read.php?5,15429,15429#msg-15429</link>
            <description><![CDATA[ [<a href="https://thebiggest.ru/lyudi-i-zhivotnye/izvestnye-programmisty.html?utm_referrer=https%3A%2F%2Fzen.yandex.com"  rel="nofollow">thebiggest.ru</a>]]]></description>
            <dc:creator>zzz</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Fri, 28 Aug 2020 10:26:05 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,15424,15428#msg-15428</guid>
            <title>Re: Python vs C++</title>
            <link>https://faq8.ru/read.php?5,15424,15428#msg-15428</link>
            <description><![CDATA[ &quot;Опять бредовые холивары на тему, какой ЯП лучше. Питон и С++ служат для решения разных задач. Питон чаще используется для веба и всяких ботов. Плюсы в основном для программирования микроконтроллеров или около аппаратных библиотек. Так же плюсы используются для работы со всякими директ иксами, опен гл и т.д. И тот и тот ЯП, например фигово справится с созданием десктоп приложения под винду. Я на своем любимом C# сделаю функционал десктоп приложений банально быстрее и удобнее, чем на плюсах. Но не потому что плюсы плохие. А потому что каждый ЯП имеет свои плюсы и минусы.&quot;]]></description>
            <dc:creator>zzz</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Fri, 28 Aug 2020 10:18:20 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,15424,15427#msg-15427</guid>
            <title>Re: Python vs C++</title>
            <link>https://faq8.ru/read.php?5,15424,15427#msg-15427</link>
            <description><![CDATA[ &quot;Разница между интерпретатором и компилятором примерно как между нотной партитурой и музыкальной шкатулкой. Партитуру легко править и по ней можно импровизировать, но каждый раз нужно включать ум, какие клавиши нажимать. Поле того, как барабан скомпилирован, исправить трудно, но зато потом думать уже не надо. Музыкальная шкатулка играет сама по коду на барабане.&quot;]]></description>
            <dc:creator>zzz</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Fri, 28 Aug 2020 10:16:35 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,15424,15426#msg-15426</guid>
            <title>Re: Python vs C++</title>
            <link>https://faq8.ru/read.php?5,15424,15426#msg-15426</link>
            <description><![CDATA[ &quot;Сравнение с++ и питон...не думал что кто то в здравом уме способен, питон это скорее доп инструмент, который учится программистом с++ за пару дней для некоторых конкретных задач, никакая крупная разработка на питоне не возможна, ему не предначертано создателем просто. Автор прошу сравнить питон и хтмл, что лучше. <br />
...<br />
Ещё лучше не с хтмл, а с пхп!&quot;]]></description>
            <dc:creator>zzz</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Fri, 28 Aug 2020 10:15:54 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,15424,15425#msg-15425</guid>
            <title>Re: Python vs C++</title>
            <link>https://faq8.ru/read.php?5,15424,15425#msg-15425</link>
            <description><![CDATA[ &quot;Извините-с, но если сравнивать С/С++ и Python, - то не понимать разницы между компилятором и интерпретатором. Это две вещи не сравнимые и предназначены для разных целей и задач.&quot;]]></description>
            <dc:creator>zzz</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Fri, 28 Aug 2020 10:14:04 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,15424,15424#msg-15424</guid>
            <title>Python vs C++</title>
            <link>https://faq8.ru/read.php?5,15424,15424#msg-15424</link>
            <description><![CDATA[ &quot;Согласен с тем, что питон -- фуфло.<br />
Уже давно пора понять, что употребление самого слова &quot;Питон&quot; свидетельствует о несостоятельности, глупости или неопытности говорящего. Я даже из телефонной книги этих людей удаляю: зачем мне они в контактах?<br />
В 1985 году незнание c++ было позором для 13-летнего подростка! Этот язык не просто простой: он ОЧЕНЬ простой. Миф о его сложности придумали питонисты.&quot;]]></description>
            <dc:creator>zzz</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Fri, 28 Aug 2020 10:10:10 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,15329,15333#msg-15333</guid>
            <title>Re: Логарифмическая линейка</title>
            <link>https://faq8.ru/read.php?5,15329,15333#msg-15333</link>
            <description><![CDATA[ Да, это очень полезная штука. Алгоритмически поучительная!]]></description>
            <dc:creator>zzz</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Thu, 30 Jul 2020 09:10:05 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,15329,15331#msg-15331</guid>
            <title>Re: Логарифмическая линейка</title>
            <link>https://faq8.ru/read.php?5,15329,15331#msg-15331</link>
            <description><![CDATA[ Помогла на экзамене по линалу) Произвёл впечатление на преподавателя]]></description>
            <dc:creator>EngineerXL</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Wed, 29 Jul 2020 20:45:00 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,15329,15329#msg-15329</guid>
            <title>Логарифмическая линейка</title>
            <link>https://faq8.ru/read.php?5,15329,15329#msg-15329</link>
            <description><![CDATA[ [<a href="https://www.popmech.ru/gadgets/11381-krugi-proportsiy-logarifmicheskaya-lineyka/"  rel="nofollow">www.popmech.ru</a>]]]></description>
            <dc:creator>zzz</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Wed, 29 Jul 2020 14:33:12 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,15300,15300#msg-15300</guid>
            <title>Декодер Лебедева не поможет?</title>
            <link>https://faq8.ru/read.php?5,15300,15300#msg-15300</link>
            <description><![CDATA[ Кириллица незаметно осыпалась!]]></description>
            <dc:creator>zzz</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Tue, 07 Jul 2020 21:08:31 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,15281,15281#msg-15281</guid>
            <title>Магнитные ленты не сдаются!</title>
            <link>https://faq8.ru/read.php?5,15281,15281#msg-15281</link>
            <description><![CDATA[ 4 июл 2020 19:00<br />
Fujifilm планирует выпускать кассеты на 400 Терабайт<br />
Потребительский рынок постепенно переходит с жестких дисков на SSD, однако в некоторых индустриях до сих пор распространено использование кассетных картриджей. Сегодня можно найти версии, которые стоят всего $100, при этом включают более десяти терабайт. И это далеко не самая впечатляющая цифра. Компания Fujifilm считает, что уже в ближайшие годы сможет достигнуть емкости в 400 терабайт на один картридж — по крайней мере в лабораторных условиях. <br />
<br />
Такие форматы не используются в обычной технике — вместо этого картриджи применяются в дата-банках, где важен сам факт хранения данных, а не скорость доступа к ним. Когда информацию требуется держать десятилетиями, использование кассет более чем оправдано. <br />
<br />
Сегодня основным типом кассет с магнитной пленкой остается Linear Tape-Open. Актуальный стандарт — LTO-8 вмещает до 12ТБ без компрессии или 30ТБ с компрессией. В этом году ожидается выпуск LTO-9, удваивающий объем хранимых данных на картридж. Но Fujifilm жаждет большего. <br />
<br />
Компания планирует переход на материал стронций феррит (SrFe), молекулы которого меньше нынешних материалов, что позволит увеличить плотность записи. <br />
<br />
Ожидается, что картриджи на 400ТБ будут соответствовать стандарту LTO-13 и массовое производство может начаться только ближе к 2030-м годам.]]></description>
            <dc:creator>zzz</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Sun, 05 Jul 2020 12:09:51 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,14756,15089#msg-15089</guid>
            <title>Re: Критика Си</title>
            <link>https://faq8.ru/read.php?5,14756,15089#msg-15089</link>
            <description><![CDATA[ Конспект читали? Начните с. <br />
Дополнительный материал подайте академично!]]></description>
            <dc:creator>zzz</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Fri, 19 Jun 2020 07:25:45 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,15080,15088#msg-15088</guid>
            <title>Re: Логическое программирование</title>
            <link>https://faq8.ru/read.php?5,15080,15088#msg-15088</link>
            <description><![CDATA[ Пролог будет в третьем семестре на ПМИ от моих блестящих учеников к.ф.-м.н. по функциональному и логическому программированию Дмитрия Сошникова и Марии Левинской.]]></description>
            <dc:creator>zzz</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Fri, 19 Jun 2020 07:14:52 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,15080,15080#msg-15080</guid>
            <title>Логическое программирование</title>
            <link>https://faq8.ru/read.php?5,15080,15080#msg-15080</link>
            <description><![CDATA[ Парадигма интересная, но показалось, что среди всех эта наименьше популярная. Например, по ФП-языкам на хабре и других ресурсах вижу хайп.<br />
Хотел бы поработать с ней чуть-чуть для поверхностного ощущения, но боюсь трогать Пролог, так как кажется старым.<br />
Валентин Евгеньевич, что посоветуйте?]]></description>
            <dc:creator>DungeonMaster</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Fri, 19 Jun 2020 01:15:15 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,14988,14988#msg-14988</guid>
            <title>Linux-прошивка ракеты Falcon-9</title>
            <link>https://faq8.ru/read.php?5,14988,14988#msg-14988</link>
            <description><![CDATA[ [<a href="https://www.ixbt.com/news/2020/06/06/mozg-rakety-falcon-9--.html"  rel="nofollow">www.ixbt.com</a>]]]></description>
            <dc:creator>zzz</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Sun, 07 Jun 2020 13:27:20 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,14853,14855#msg-14855</guid>
            <title>Re: Гит на шелле</title>
            <link>https://faq8.ru/read.php?5,14853,14855#msg-14855</link>
            <description><![CDATA[ Спасибо за ценнейшую тематическую ссылку!]]></description>
            <dc:creator>zzz</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Thu, 13 Feb 2020 20:28:49 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,14853,14853#msg-14853</guid>
            <title>Гит на шелле</title>
            <link>https://faq8.ru/read.php?5,14853,14853#msg-14853</link>
            <description><![CDATA[ Вот что на POSIX Shell написали.<br />
[<a href="https://www.opennet.ru/opennews/art.shtml?num=52355"  rel="nofollow">www.opennet.ru</a>]]]></description>
            <dc:creator>DungeonMaster</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Wed, 12 Feb 2020 21:22:12 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,14810,14824#msg-14824</guid>
            <title>Re: Как балерина?</title>
            <link>https://faq8.ru/read.php?5,14810,14824#msg-14824</link>
            <description><![CDATA[ Это эпатаж, По объёму превосходит 10 лет бакалавриата, магистратуры и аспирантуры. <br />
Что из этого у нас проходят, выделю как-нибудь шрифтом.]]></description>
            <dc:creator>zzz</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Thu, 30 Jan 2020 17:20:56 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,14810,14823#msg-14823</guid>
            <title>Re: Как балерина?</title>
            <link>https://faq8.ru/read.php?5,14810,14823#msg-14823</link>
            <description><![CDATA[ На каких курсах ПМИ/ПМ всё это проходят?]]></description>
            <dc:creator>DungeonMaster</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Thu, 30 Jan 2020 16:35:01 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,14810,14810#msg-14810</guid>
            <title>Как балерина?</title>
            <link>https://faq8.ru/read.php?5,14810,14810#msg-14810</link>
            <description><![CDATA[ Программист не должен идти на пенсию в 40 лет, если он знает это:<br />
<br />
&quot;Меня потряс как-то «список знаний и умений любого уважающего себя» программиста из miram.livejournal.com/630972.html и sharpc.livejournal.com/67583.html. Не поленюсь привести полную цитату: <br />
Все, что должен знать программист, чтобы его после 40 лет не выбросили на Помойку, Где Бомжи.<br />
… В возрасте около 45 лет начинает активно проявляться деградация мозга, приводящая к существенным проблемам в понимании и способности оперировать кодом с обычной цикломатической сложностью. Потеря способности писать код в сочетании с неспособностью из-за отсутствия тренировок к анализу/синтезу — гарантированный путь именно туда. Некоторые люди сохраняют способность оперировать нормальной цикломатической сложностью и в старости, однако лишь за счет превышающих норму показателей в молодости. Проверить, входите ли вы в зону риска, можно на TopCoder.<br />
Добавление от себя. TopCoder – это реально хорошее место, чтобы держать себя в тонусе. Решаем задачки оттуда и поддерживаем тонус (или даже участвуем в challenges, конкурируем с другими и зарабатываем деньги). Итак, что же нужно знать, чтобы тебя не выбросили на помойку?<br />
• C++, стандарт, Comeau, 1TBS, Страустрап/D&amp;E/Джосаттис/Вандервуд, Дьюхэрст/Мейерс/Саттер, RAII/copy-and-swap/exception-safety, правило пяти, Александреску/Абрахамс-Гуртовой, type erasure, CRTP, NVI, SFINAE, Koenig lookup, Duff&#039;s device, Boost, Сик-Ламсдейн/Карлссон, TR on C++ performance, тест Степанова, forwarding problem/move semantics, SPECS, GotW, Meyer&#039;s singleton, cppgm<br />
• Компиляторы С++, особенности реализации стандарта, ограничения реализации, интринсики, отличия стандартных библиотек (контейнеры, rand), ABI, реализация виртуальных функций, виртуального наследования, исключений, RTTI, switch, указателей на функции и методы; оптимизации, copy elision (RVO, NRVO), sizeof на различных платформах, дефайны компилятора и среды, __declspec, ключи компилятора, empty-base optimization, статическая и динамическая линковка, манглинг, распределенная компиляция, precompiled header, single compilation unit, (strict) aliasing/restrict, inline/_forceinline, volatile, быстрое вычисление математических функций через битхаки, linkers &amp; loaders by Levine<br />
• Мультитредность, обедающие философы, deadlock/livelock/race condition/starvation, атомарность, lock инструкции процессора, memory model/barrier/ordering, CAS или LL/SC, wait/lock/obstruction-free, ABA problem, написание lock-free контейнеров, spin-lock, TLS/per-thread data, закон Амдала, OpenMP, MPI, map-reduce, critical section/mutex/semaphore/condition variable, WaitForSingleObject/WaitForMultipleObjects, green thread/coroutine, pthreads, future/deferred/promise, модель акторов, parameter server, RDD (as seen in sparks), downpour SGD, wait-free, stackful vs stackless<br />
• Язык ассемблера, Зубков/Хайд/Дреппер/Касперски/Фог/Абраш, x86, FPU/MMX/SSEn/AVX, AT&amp;T и Intel-синтаксис, masm32, макросы, стек, куча/менеджеры кучи, соглашения вызова, hex-коды, машинное представление данных, IEEE754, little/big endian, SIMD, аппаратные исключения, прерывания, виртуальная память, реверсинг, срыв стека и кучи, return oriented programming, alphanumeric shellcode, L1/L2/RAM/page fault и их тайминг, язык ассемблера ARM<br />
• Аппаратное обеспечение, Хоровиц-Хилл/Титце-Шенк/От физики к Си от panchul, полупроводниковая электроника/спинтроника/фотоника, транзистор, триггер, схемотехника, микрокод, технология создания процессоров, logic synthesis, static timing analysis, FPGA, Verilog/VHDL/SystemC, SISAL, Arduino, устройства памяти (ROM → EEPROM, RAM, SSD, HDD, DVD), RISC/CISC, Flynn&#039;s taxonomy ([SM]I[SM]D), принстонский и гарвардский подход, архитектуры процессоров, архитектуры x86, VID/PID<br />
• Процессоры, конвейеризация, hyper-threading, алгоритм томасуло, спекулятивное исполнение, static/dynamic branch prediction, префетчинг, множественный ассоциативный кэш, кэш-линия/кэш-промах, такты, кольца защиты, память в мультипроцессорных системах (SMP/NUMA), тайминг памяти, intel optimization manuals, performance counters<br />
• Дискретная математика, K2, теорема Поста, схемы, конечные автоматы (ДКА и НДКА), автомат Калашникова, клеточные автоматы<br />
• Вычислимость, машина Тьюринга, нормальные алгоритмы Маркова, машина Поста, диофантовы уравнения Матиясевича, лямбда-функции Черча, частично рекурсивные функции Клини, комбинаторное программирование Шейнфинкеля, Brainfuck, эквивалентность тьюринговых трясин, проблема останова и самоприменимости, счетность множества вычислимых функций, RAM-машина, алгоритм Тарского, SAT/SMT-солверы, теория формальных систем, interactive proofs, теорема Левина-Кука, 3SAT, PSPACE = NPSPACE, #P<br />
• Языки программирования, грамматики, иерархия Хомского, теорема Майхилла-Нероуда, лемма о накачке и лемма Огдена, алгебра Клини, НДКА → ДКА, алгоритмически неразрешимые задачи в формальных языках, Драгонбук, Фридл, регекспы и их сложность, PCRE, БНФ, Boost.Spirit + Karma + Qi/Ragel, LL, LR/SLR/LALR/GLR, PEG/packrat, yacc/bison/flex/antlr, статический анализ кода, компиляция/декомпиляция/обфускация/деобфускация, Clang/LLVM/XMLVM/Emscripten, GCCXML, OpenC++, построение виртуальных машин, JiT/AoT/GC, DSL/DSEL, on-stack replacement, type checking/type inference алгоритмы, CYK parser, advanced compiler design and implementation by Muchnick<br />
• Алгоритмы и комбинаторная оптимизация, Кормен/Скиена/Седжвик/Кнут/Ахо-Хопкрофт-Ульман/Пападимитриу/Шрайвер-Голдберг/Препарата-Шеймос/e-maxx.ru, структуры данных, алгоритмы, сложность, символика Ландау, теорема Акра-Баззи, time-space tradeoff, классы сложности, NP-полные задачи, КМП, графы и деревья, потоки в сетях, матрица Кирхгофа, деревья поиска (особенно RB-дерево и B-дерево), occlusion detection, куча, хэш-таблицы и идеальный хэш, сети Петри, алгоритм русского крестьянина, метод Карацубы и матричное умножение Винограда-Штрассена, сортировки, жадные алгоритмы и матроиды, динамическое программирование, линейное программирование, diff-алгоритмы, рандомизированные алгоритмы и алгоритмы нечеткого поиска, псевдослучайные числа, нечеткая логика, gusfield (suffix tree, string alignment), motif search, scanning line, cache oblivious, funnel sorting, VEB-layout, корневая оптимизация, алгоритмы для динамических графов,<br />
модели вычисления (RAM-machine/pointer machine/decision trees и т.д.), алгоритмы в иерархиях памяти/стриминговые алгоритмы, time forward processing, range &amp; rank, LSM-trees, buffered a-b-trees, toku trees, персистентные структуры, succint-структуры, lossy-струтуры (bloom/bloomier filter, hash-tables with false positives), locality sensitive hashing, space-time tradeoff в хэш-таблицах, scheduling strategies<br />
• Численные методы, дихотомия/метод Ньютона, интер- и экстраполяция, сплайны, метод Гаусса/Якоби/Зейделя, QR и LU-декомпозиция, SVD, МНК, методы Рунге-Кутты, метод Адамса, формулы Ньютона-Котеса, метод Ритца, метод Бубнова-Галеркина, метод конечных разностей/элементов, FFT/STFT, сходимость и устойчивость, l-bfgs и другие квазиньютоновские методы, adagrad, PARAFAC, cassowary, interior point methods, вариационные методы для байесовского вывода, nesterov, автоматическое дифференцирование, alternating least squares, what every computer scientist should know about floating point arithmetics by Goldberg, Nocedal &amp; Wright/Boyd &amp; Vandenberghe<br />
• Машинное обучение, Тибширани/Bishop, подходы к моделированию AI, переобучение/кроссвалидация, байесовские сети, нейросети, сети Кохонена, Restricted Boltzmann machine, градиентный спуск/hill climbing, стохастическая оптимизация (метод Монте-Карло, метод отжига, генетические алгоритмы, муравьиные алгоритмы), SVM, gradient boosting, кластерный анализ, метод главных компонент, LSH, обучение с подкреплением, MDP, information retrieval/data mining/natural language processing, машинное зрение, Szeliski, OpenCV, image processing, OCR, фильтры Собеля, каскад Хаара, Viola-Jones framework, SURF, введение в психофизиологию зрения, IPython/pandas/scikit-learn, (ME)HMM, CRF, label bias problem, stacked NN, LeToR, factorization machines, autoencoders, RNN/CNN, вместо NLP лучше отдельные задачи (language modelling, co-reference detection, text chunking, POS-tagging, probabilistic parsing, statistical machine translation, misspell correction, question answering, NER, collocation detection, text summarization, speech recognition, fact extraction, sentiment analysis), эффективное вычисление softmax, feature engineering/selection, quality estimation, Manning/Jurafsky/McCallum/Koehn, latent topics (LDA, chineese restaurant, pLSI), parallel coordinates, vowpal wabbit, NLTK, structured learning, EM-алгоритм, contrastive divergence, optimal brain surgery, belief propagation, semi-supervised learning, inductive vs transductive learning, kernel trick, discriminative/generative pairs (as seen by Ng &amp; Jordan), sequence to sequence learning, bagging, анализ социальных графов, рекомендательные системы/collaborative filtering, multimodal learning<br />
• Теория информации, сжатие, Хаффман, RLE, BWT, LZ, коды коррекции ошибок, сжатие с потерями (изображения, аудио, видео), информационная энтропия, формула Шеннона, сложность Колмогорова, maximum entropy problem, kullback-leibler divergence, elias/shannon-elias encoding<br />
• Криптография, Шнайер/Ященко, Принцип Керкгоффса, симметричная (DES, AES), асимметричная (RSA), качество ГПСЧ, алгоритм Диффи-Хеллмана, эллиптические кривые, хэширование (MD5, SHA, CRCn), DHT, криптостойкость, криптоатаки (атака гроссмейстера), WEP/WPA/WPA2 и атаки на них, цифровая подпись и сертификаты, PKI, HTTPS/SSL, доказательство с нулевым разглашением, пороговая схема, murmurhash/cityhash, DKIM<br />
• Математика, Кнут-Грэхем-Паташник/Зорич/Винберг, Spivak/Dummit-Foote, матан, линал, комплан, функан, диффгем, теория чисел, дифуры/интуры/урчпы/вариационное исчисление/оптимальное управление, производящие функции, ряды, комбинаторика, теорвер/матстат/слупы/теория массового обслуживания, цепи Маркова, интегральные преобразования (Фурье, Лаплас, вейвлет), NZQRCHOS, матпакеты (Mathematica, Maple), теория категорий<br />
• Физика, правила Кирхгофа, закон Джоуля-Ленца, комплексное сопротивление, скорость и частота света, уравнения Максвелла, лагранжиан и гамильтониан, <br />
quantum tunnelling/hot electron injection :)<br />
• Химия, стехиометрия, химия кремния :)<br />
• Архитектура и стиль кода, Макконнелл/Фаулер/Лебланк/Гамма/Александреску-Саттер/Буч, защитное программирование, паттерны, SOLID/GRASP/KISS DRY SPOT/YAGNI, UML, OOP (Smalltalk), OOD/OOA, метрики кода, uncle Bob<br />
• Методологии разработки, Waterfall/RUP/Agile/Scrum/Kanban/XP, TDD/BDD, CASE<br />
• Тестирование, юнит-тесты, функциональное, нагрузочное, интеграционное тестирование, тестирование UI, mocks/stubs/spies, fixture, запахи и паттерны тестов (Osherove/Meszaros)<br />
• Инструментальные средства разработки, IDE, IntelliSense, отладчики (VS/Olly/WinDbg/kdb/gdb) и трейсеры (strace/ltrace), DWARF debug information format, дизассемблеры и декомпиляторы (IDA/HexRays/Reflector), системы контроля версий (SVN, GIT), merge/branch/trunk, системы именования файлов и бранчей, continuous integration, ant, code coverage, статический анализ (lint, cppcheck), динамический анализ (valgrind, фаззинг), верификация и валидация ПО (Frama-C, RAISE (RSL), Coq), профайлинг, багтрекеры, документирование кода, системы сборки (CMake), пакетные менеджеры (NuGet)<br />
• Фреймворки, Qt, moc и метаинформация, концепция слот-сигнал, Саммерфилд-Бланшет/Шлее, PoCo, промышленные библиотеки: GMP, i18n, lapack, fftw, pcre<br />
• Операционные системы, Silberschatz/Рихтер/Соломон-Руссинович/Робачевский/Вахалия/Стивенс/Таненбаум/Love/Linux Kernel Internals, менеджер памяти, менеджер кучи и ее устройство (LAL/LFH/slab), менеджер устройств, менеджер процессов, context switch, реальный и защищенный режим, исполнимые файлы (PE/ELF/Mach), объекты ядра, отладочные механизмы (strace/ptrace/dtrace/pydbg, Debug API) и минидампы, bash, сетевой стек и высокопроизводительные сервера, netgraph, CR0, IPC, оконная подсистема, система безопасности: ACE/ACL и права доступа, технологии виртуализации, RTOS (QNX), программирование драйверов, IRQL, IRP, файловые системы, BigTable, NDIS/miniport/FS drivers/filter driver, Mm-, Io-, Ldr-функции, DKOM и руткиты, GDT/IDT/SDT, ядра Windows/Linux/BSD, POSIX, TRIM<br />
• Компонентно-ориентированные модели, Роджерсон/Таварес, COM/OLE/ActiveX/COM+/DCOM RPC, ATL, апартменты, моникеры, MIDL, XPCOM, CORBA, TAO, D-Bus<br />
• Сеть, Стивенс, OSI model/Internet model, Ethernet, TCP/IP, TCP window, алгоритм Нейгла, сокеты, Protocol buffers/Thrift/Avro/ASN.1, AMQP, ICMP, роутинг/BGP/OSPF, ARP, атака Митника, syn flood, HTTP/FTP, P2P/DHT, DHCP, SMB/NBNS, IRC/XMPP, POP3/SMTP/ESMTP/IMAP, DNS, WiFi/WiMax/GSM/CDMA/EDGE/Bluetooth/GPS, ACE, Wireshark<br />
• Графика и GPGPU, алгоритм Брезенхема, цветовые модели, трассировка лучей vs полигональная графика, OpenGL/GLSL/Open Inventor, DirectX/DirectShow/DirectAudio/HLSL, stencil/depth/alpha-test, графический конвейер в DirectX 11, шейдеры, модели освещения (Фонг), пропускная способность, fillrate, OpenCL/CUDA/AMP, ландшафты, лоды, тени, deferred shading, текстурирование и фильтрация, антиалиасинг, HDR, tone mapping, virtual/augmented reality<br />
• Форматы, XML/XSLT/XPath/XMLStarlet/DOM/SAX, RTF/ODF, JSON/BSON/bencode, YAML, JPEG/PNG/WebP, AVI/MPEG/RIFF/WAV/MP3/OGG/WebM, SVG, Unicode, кодировки однобайтные/UTF-8/UTF-16/UCS-2/UTF-32, проблемы длины и сравнения Unicode-строк, base64, markdown<br />
• Базы данных/Распределенные системы, Грубер/Дейт, ANSI SQL, T-SQL, ODBC, MySQL/PostgreSQL/MS SQL/BDB/SQLite/Sphinx, хранимые процедуры, триггеры, алгебра Кодда/А, Tutorial D, нормальные формы, оптимизация и выполнение запросов, структуры данных индексов, транзакции и ACID, CAP-теорема Брюера, graph DB, document store, wide column store, key-value storage, теория распределенных систем, CRDT, net split проблема, протоколы консенсуса, теория шардинга/репликации, ORM (C++ ODB), ERD, OLAP, семантическая сеть, triplestore, RDF/Turtle, SPARQL, OWL, Semanticscience Integrated Ontology, reasoner, DBpedia, big table/hbase vs. dynamodb/cassandra/riak, 2/3PC, chubby/zoo keeper, leader election (paxos/raft), hdfs/gfs/glusterfs, deduplication problem, causality detection (vector clock/stamps), R/W quorum, load balancing, устройство индексов поисковых систем, event sourcing, CRDT, дизайн протоколов и принципы коммуникации, с точки зрения эволюции, расширяемости, надежности, дизайн программных интерфейсов (API)<br />
• Прикладное программирование, C#/F#, Шилдт/Троелсен/Рихтер, генерики, yield, linq/plinq, рефлексия, AST, WCF, WinForms/WPF/Silverlight, AOP, фреймворки логгирования, .NET assembly, Scala, Хорстманн/Одерски, pattern matching, макросы/квазицитаты<br />
• Квантовые вычисления, алгоритм Шора, квантовая криптография<br />
• Функциональное программирование, Haskell/Ocaml/Scheme/Alice или Oz, SICP/TaPL/YAHT/Purely Functional Data Structures/Харрисон-Филд, HOF (map/fold/filter), система типов Хиндли-Милнера, монады, тайпклассы, АТД, dependent types, ленивость/энергичность, логическое программирование (Prolog или Mercury), конкурентное программирование (Erlang или Oz)<br />
• Веб-программирование и скриптовые языки, Фланаган/Zend PHP5 Certification Course + Study Guide, Apache/nginx, CGI/FastCGI, PHP/Zend Framework/ReactPHP/Zend Engine/Doctrine или Propel/CodeIgniter или Symphony или Yii, Python/Django/Twisted, Ruby/RoR, ASP.NET MV*, JavaScript/jQuery/React/Google Closure/ExtJS/node.js, ООП в JavaScript, HTML5, CSS3/табличная и блочная верстка, RSS, canvas/WebGL, Ajax/WebSockets, вопросы безопасности (XSS, SQL injection, CSRF), highload, C10k problem, SWIG, CDN, shadow DOM, квирки браузеров, real time bidding/trading, anomaly detection, архитектура single page apps, устройство веб-краулеров, web/social graph random walk, asm.js и компиляция в js, v8/spidermonkey internals, PaaS/IaaS, SPDY<br />
• Проектирование GUI и представление информации, Раскин/Тафти, юзабилити, основы дизайна и типографики, закон Фиттса, основы верстки, LaTeX, алгоритмы визуализации данных (as seen in d3), subpixel rendering<br />
Немного на 40 лет, правда? Или много, если надо еще и работать? Действительно, когда же это изучать, если надо работать? В свободное время? А я не знаю и половины из этого списка. И четверти не знаю. Метод Карацубы пока не освоил. Химию кремния, наверное, придется, как и уравнения Максвелла, отправить в долгий ящик. Есть более приоритетные темы.<br />
Но в свете будущего повышения пенсионного возраста мне ведь еще минимум лет 40 работать – как раз узнаю вторую половину в свободное от работы время. И что же, что будет, если я всё это узнаю? Что будет с тем гением, который знает всё по этому списку? Уверен, что его не только не выбросят на помойку, более того, его под конец жизни ожидает священная грааль – Яндекс (и зарплата молодого специалиста + 15%). Там он и найдет упокоение. Аминь.&quot;&quot;]]></description>
            <dc:creator>zzz</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Thu, 23 Jan 2020 15:11:27 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,14756,14770#msg-14770</guid>
            <title>Re: Критика Си</title>
            <link>https://faq8.ru/read.php?5,14756,14770#msg-14770</link>
            <description><![CDATA[ &gt;Язык весьма сложен и наполнен опасными элементами, которые очень легко использовать неправильно. Своей структурой и правилами он никак не поддерживает программирование, нацеленное на создание надёжного и удобного в сопровождении программного кода<br />
А у нас Си противопоставляет как язык, который лучше подходит для промышленности. <br />
<br />
&gt;Из-за различных допущений в языке программы могут компилироваться с множественными ошибками, что часто приводит к непредсказуемому поведению программы.<br />
Факачую, на одной из лаб, кажется, 13 не поставил пробел в дефайне, и компилятор подумал, что я написал функцию и потом непонятно ругался.<br />
<br />
&gt;Предупреждения вместо ошибок<br />
Это, наверное, хороший аргумент.<br />
<br />
&gt;Автоматически и динамически создаваемые объекты по умолчанию не инициализируются и после создания содержат значения, оставшиеся в памяти от ранее находившихся там объектов<br />
&gt;Отсутствие контроля над адресной арифметикой<br />
&gt;Побуждающая к ошибкам динамическая память<br />
Эти тейки не прокатит, так как динамику и указатели мы ещё не проходили.]]></description>
            <dc:creator>DungeonMaster</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Tue, 14 Jan 2020 02:52:44 +0300</pubDate>
        </item>
        <item>
            <guid>https://faq8.ru/read.php?5,14756,14758#msg-14758</guid>
            <title>Re: Критика Си</title>
            <link>https://faq8.ru/read.php?5,14756,14758#msg-14758</link>
            <description><![CDATA[ О, ну на Википедии об этом тонна информации. (<a href="https://ru.wikipedia.org/wiki/%D0%A1%D0%B8_(%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F)#%D0%9F%D1%80%D0%BE%D0%B1%D0%BB%D0%B5%D0%BC%D1%8B_%D0%B8_%D0%BA%D1%80%D0%B8%D1%82%D0%B8%D0%BA%D0%B0"  rel="nofollow">клик</a>)<br />
Сколько из всего этого достаточно будет рассказать на экзамене, Валентин Евгеньевич?]]></description>
            <dc:creator>Edward Joseph Snowden</dc:creator>
            <category>Фундаментальная информатика</category>
            <pubDate>Thu, 09 Jan 2020 00:56:29 +0300</pubDate>
        </item>
    </channel>
</rss>
