Сохранен 93
https://2ch.hk/pr/res/424880.html
Прошлые домены не функционирует! Используйте адрес ARHIVACH.VC.
24 декабря 2023 г. Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

Дискасс

 Аноним 14/01/15 Срд 00:17:43 #1 №424880 
14211838633280.jpg
Программисткая программа должна быть устроена так:

Level 1 Введение в специальность

Базовый инструментарий программиста: repl. Примитивы и базовые матераильные конструкции: переменная (мутабельная, немутабельная [name binding]), вызов процедуры, оператор, оператор как вызов процедуры, выражение. Базовые вычислительные конструкции программирования: процедура (абстрагирование и аппликация, мера абстрактности выражений), условное выполнение (if, switch, cond), рекурсия (хвостовая, древовидная), вычисление, шаг вычисления, тупики в вычислениях (без теорем продвижения и сохранения, до типов пока не дошли), конвенции вычисления параметров при вызове процедур (call by name, call by value, call by need). Взаимосвязь между программированием и другими науками: общие черты и различия выражения языков программирования и математических выражений, разница между функцией в программмировании и математической, понятие комбинатора и контекста, свободные и связанные переменные, отличительные черты выражений языков программирования (контекстность, побочные эффекты). Язык программирования как алгебраическая система.

Книги: SICP

Практика: Задачки SICP, разбор избранных частей промышленных исходников с указание где там какое понятие из изложенного материала, масленные эксперименты "а вот если бы здесь было бы N все сложилось бы иначе", "можно сделоть".

Level 2 Начала программирования

Лямбда-исчисление: лямбда-выражения, абстракция, аппликацияя, альфа-, бета-, тета- преобразования. Выразительность лямбда-исчисления: булаены, нумералы, конструкции условного вычисления, рекурсия (комбинатор неподвижной точки). Структуры данных: память компьютера (линейное адресное пространство с ячейками + типы адресации), список, строка как структура данных. Машина Тьюринга, толстота по тьюрингу. OISC-системы. Машина Маркова. LISP.

Книги: Хариссон по лямбда-исчислению + что-нибудь покрывающиее остальные темы

Практика: Конструирование машин Тьюринга, Маркова, лямбда-конструкций, простейшего интерпретатора лиспа, Subleq-машины. Макроассемблер subleq-машины (выразить nop, mov, add, call, ret через subleq).

Level 3 Escape from hikkatraz

Гуманитарные аспекты программирования: язык программирования как средство коммуникации между программистами. Сообщества, экосистемы. Парадигмы мышления. Популярные парадигмы: ООП, ФП, байтолюбство. Прагматика языков программирования. Методология разработки программного обеспечения (примеры, V, аджайл, XP и какая-нибудь прочая бухня). Итерационность. Параметры надежности программного обеспечения: Ошибки в программировании и их основные источники. Повторяемость ошибок, разница между надежностью аппаратуры и программ. Особеннсти старения программного обеспечения. Экономика программирования: ресурсы, потребляемые программами: процессорное время, паметь, человеко-часы. Понятие алгоритмической сложности компьютерных программ. Методы защиты от ошибок: тестирование, обзор методов формальной верификации. Системы типов: место систем типов среди методов формальной верификации, проблемы простого нетипизированного лямбда-исчисления. Задачи эффективного использования машинного времени: виды и подводные камни разных видов многозадачности, примитивы потоковой многозадачности. Калбаки, подпрограммы, прерывания, короутины, генераторы, треды, тред-пулы. Конкуррентность и паралеллизм. Дистрибутивность, кластеризация.

Книги: Маконнел, Кормен, Пирс, че-нить по паралельности сотоварищи, развлекуха типа 50 дурацких ошибок погромистов, курятника в руках цыплят.

Практика: путешествия к центру TAPL, изучение 1..N промышленных языков программирования до кондиции джуниора. Генератор мотиваторов, имиджборда. Выход на родственников-заказчиков/фриланс биржы и попытка заработать первые денежки. Участие в опен-сорц проектах.

Level 4 Ну что тебе сказать про программирование?

(мне до такого далеко, пишу по интуиции)

Теории языков. Иерархия хомского. Начала математики. Миша, НМУ, что-нибудь из программы Мишы. ATAPL. Теорем пруферы. Разница между симметричной моноидальной и декартовыми категориями. Почему язык N говно?

Книги: ATAPL, HoTT, я не знаю

Практика: разработка программ-инструментов для других программистов, статус core-developer'а, проталкивания собственных парадигм (судьбоносных решений для проекта, которые будут реализовывать другие участники), аккуратное установление атмосферы управляемого безумия в рабочем коллективе, достижение бамплимита, выявления фундаментальных недостатков любого языка программирования. Выявления фундаментальных недостатков языка программирования без перехода по ссылкам.
Аноним 14/01/15 Срд 00:26:43 #2 №424882 
Пробежался. Норм.
Аноним 14/01/15 Срд 02:16:43 #3 №424895 
>>424880
Добавь еще побольше технического уровня (схемотехника, электро-техника и т.п.).
Аноним 14/01/15 Срд 02:31:15 #4 №424899 
>>424880
Первых два уровня ненужны, потеря времени на борщеедство.
Аноним 14/01/15 Срд 03:29:29 #5 №424904 
>>424880
Я бы сократил до:
1. SICP, TAPL, HtDP (Scheme)
2. Вирт Структуры и алгоритмы (Pascal)
3. Таненбаум: архитектура компьютера, системы и сети, операционные системы (ANSI C)
4. OOP, SOLID, GoF, Clean Code, Perfect Code, Refactoring (Java)
5. FP, лямбда исчисление, комбинаторная логика (Clojure)
6. Теория категорий. (Haskell)
Опционально:
7. Мат логика, логическое программирование (Prolog, Mercury)
8. Конкуретные модели: pi-calculus, ссs, csp, actor model.
sageАноним 14/01/15 Срд 03:30:47 #6 №424905 
>>424899
ты не нужен, слесарь ёбаный
sageАноним 14/01/15 Срд 03:31:27 #7 №424906 
>>424895
нахуй не надо
Аноним 14/01/15 Срд 08:54:45 #8 №424936 
14212148857210.jpg
>>424895
По электронике нужна аналогичная этой программа, а может быть и еще больше. Одни операционники, или проблемы синхронизации в больших цифровых схемах чего стоят.
>>424899
Без этого в голове не будет сформирована нужная картина мира. Твой подход безусловно имеет право на существование, но он применим больше для специализированных курсов, корпоративного обучения, а эта программа для вышки. Хотя конечно, в данный момент не до жиру, и было бы хотя бы качественное корпоративное, колледжевое обучение уже было бы неплохо.
>>424904
Я добавлю некоторые книжечки и понятия из твоего списка, честно говоря они забылись, а вообще-то нужны. Но так сокращать неинтересно. Программа должна быть более продумана и согласована по компонентам - прежде всего чтобы экономить силы учащемуся, избегать подводных камней. Кроме того, ты зачем конкурентные модели засунул в опционально? Где там CPS? Надеешься, что таненбаума хватит для того, чтобы рассказать про треды и прочее? А как же гибридные модели, которые распространены в современных вещах? Например калбаки + тред пул для ИО в нод жс, хачкельная тредовая модель и пр?
Аноним 14/01/15 Срд 09:09:53 #9 №424940 
Местный плебс и не слышал о том что считается достойными задачами:
САПРы для разработчиков электроники содержащие алгоритмы для размещения миллиардов транзисторов на кристалле в соответствии с высокоуровневой спецификацией.
Системы управления роботами самых разнообразных типов, ракетами, БПЛА.
Алгоритмы распознавания образов, визуальных, звуковых, каких-либо ещё. (Это и есть распознавние лиц, речи и т.д.)
Обработка информации на естественном языке.
Планирование для принятия решений (в т.ч. составление расписаний) таким образом чтобы решения были оптимальными по заданному критерию.
Моделирование сложных технических и экономических систем.
Биоинформатика.
Список можно продолжать и продолжать, я затронул лишь малую часть релевантных тем.

Области информатики где сейчас действительно есть большой прогресс это машинное обучение, алгоритмическая теория информации.
Новые, эффективные алгоритмы разработаны для применения в компьютерном зрении и биоинформатике.
Ваша PLT всегда была на обочине, и совершенно заслуженно.
До чего же тупыми нужно быть чтобы не понимать того что Programming Language Theory это очень узкое подмножество Computer Science?
Аноним 14/01/15 Срд 09:16:29 #10 №424942 
>>424940
двачую этова
Аноним 14/01/15 Срд 09:21:52 #11 №424944 
>>424940
> алгоритмы для размещения миллиардов транзисторов на кристалле в соответствии с высокоуровневой спецификацией.
Математика + таки PLT
> Системы управления роботами самых разнообразных типов, ракетами, БПЛА.
Матмодели
> Алгоритмы распознавания образов, визуальных, звуковых, каких-либо ещё. (Это и есть распознавние лиц, речи и т.д.)
Матмодели
> Обработка информации на естественном языке.
Структурная лингвистика
> Планирование для принятия решений (в т.ч. составление расписаний) таким образом чтобы решения были оптимальными по заданному критерию.
Теория принятия решений
> Моделирование сложных технических и экономических систем.
Матмодели
> Биоинформатика.
Биоинформатика

Не увидел программирования.
sageАноним 14/01/15 Срд 10:00:26 #12 №424954 
>>424944
> Теория принятия решений
Ох, блеать. Конечно же это больше по части LP и теории игор.
Аноним 14/01/15 Срд 11:15:32 #13 №424975 
>>424880
> Level 4
> Начала математики. Миша, НМУ, что-нибудь из программы Мишы.
4 левела до уровня первого курса НМУ, да ты охуел.
Аноним 14/01/15 Срд 11:16:25 #14 №424976 
>>424880
> программированием и другими науками
Аноним 14/01/15 Срд 12:34:19 #15 №424991 
>>424936
>электронике нужна аналогичная этой программа
Добавь самые основы: история, элементная база, устройство процессоров, памяти и т.п.. Погромист должен представлять на чем прожит.
Аноним 14/01/15 Срд 12:35:38 #16 №424992 
14212281384730.png
>>424905
>>424906
>>424954
Веб-макаки порвались.
Аноним 14/01/15 Срд 12:40:58 #17 №424994 
>>424992
иди мамкин борщ кушай
на свой то канплюктер-сцайнсом не заработал
Name 14/01/15 Срд 19:10:56 #18 №425102 
Окей, ты не спал ночами, дрочил все это. А я изучил каких-нить три кижки, что-то типо:
- c++ за 21 день (лабы уровня первого курса)
- Что-нибудь по ООП
- Программирование на Qt/Android/java/c#/Iphone

Я могу создавать любые программы, а ты сосешь хуй с такими же вонючими бабушкиными свитерами
Аноним 14/01/15 Срд 19:26:17 #19 №425105 
14212527771270.gif
>>425102
В твоём посте явно чего-то не хватает... эм, возможно пруфов?
Аноним 14/01/15 Срд 20:17:02 #20 №425112 
>>424936
>Кроме того, ты зачем конкурентные модели засунул в опционально?
Потому что не обязательны. Теоркат тоже знать не обязательно, но я оставил в основном списке, так как всё программирование по сути - теоркат, просто некоторые об этом не знают.

>Где там CPS?
Ты, наверное, имел в виду CSP? Там есть, ты не заметил.

Вообще под конкурентными моделями тут я подразумевал именно математические модели, а не методики, поэтому и не стал включать их в обязательный курс. Но возможно ты прав и стоит дать что-то по конечным автоматам, и вообще по конкурентности в обязательном курсе, только более инженерное, нежели математическое.
Аноним 14/01/15 Срд 20:23:54 #21 №425113 
>>424992
Борщ вкусный?
Аноним 14/01/15 Срд 22:21:00 #22 №425146 
>>425113
А ТО!
Аноним 14/01/15 Срд 22:40:57 #23 №425155 
>>424944
>Не увидел программирования.
Соболезную.
Аноним 14/01/15 Срд 23:56:32 #24 №425165 
>>425102
Дай угадаю. И теперь ты никому не нужная макак разучившая пару функций из нескольких библиотек, не понимающая сути программирования. Я прав?
Аноним 14/01/15 Срд 23:59:37 #25 №425169 
14212691771220.jpg
>>424975
Как тут не охуеть, когда пишешь про то, чего не знаешь (:
>>424991
Тут мы с тобой похоже не согласимся. Имхо, для программистов достаточно нормально рассказаной машины Тьюринга/Поста, даже OISC это что-то немного избыточное. Мой поинт в том, что краткий, но более полный чем у меня, экскурс здесь пользы принесет мало, а полный неуместен.
>>425102
По поводу твоих трех книжек - не все так просто.

С одной стороны любую программу из тех, которые ты можешь представить ты наверное напишешь, но открытым остается вопрос, насколько качественно она будет написана. Тут мне неохота тебе пояснять, тем более что о чем-то подобном уже говорил до некий Джеймс Гордон:

> Коэффициент запаса и коэффициент незнания

> Как бы то ни было, но примерно с 1850 г. даже британские и американские инженеры вынуждены были начать рассчитывать на прочность ответственные конструкции, например крупные мосты. Пользуясь разработанными к тому времени методами, они вычисляли наибольшие возможные напряжения в конструкции и следили за тем, чтобы они не превышали некоторой узаконенной официальными нормами прочности материала на разрыв.

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

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

С другой стороны в программировании известно достаточно много прииеров, когда успех получали не академические, а чисто инженерные проекты, например, няшная сишка, разработанная людьми, которые не очень писали пейперы или ядро линакса, которое почти что началось со срача между академиками и инженерами.
>>425112
> Ты, наверное, имел в виду CSP? Там есть, ты не заметил.
Нет, имелся ввиду continuation passing style. В тех штуках, которые ты перечислил я плаваю, правда у меня когда-то был флирт с timed boolean functions, но они не очень про программирование, да и флирт остался флиртом. Пи исчисление и акторы добавлены, осталное нет, потому что не люблю добавлять то, о чем нет даже диагонального представления.

-

Обновленная версия https://gist.github.com/anonymous/cc4908a280592be77140
Diff (корявый правда он) https://gist.github.com/anonymous/dc8469dc86944f331f59
Аноним 15/01/15 Чтв 00:09:54 #26 №425176 
14212697942280.jpg
>>425155
Соболезновать-то все могут, а ты молебен закажи.

Каждая их областей, которые ты перечислил раскладывается на: математическое ядро + перенос этого ядра в специфические комплюктерные условия существования. Для самолетов, ракеток - это встраиваемая система, реактивно вычислающая формулки по прерываниям и дергающая ножки контроллера, шимы, цапы, и пр (или вообще аналоговая ВМ, "пневматическая логика" и прочие ебы, если по олдфажно-военному хардкору). Для проектирования микросхемок это конпелятор, привязанный гвоздями к коммерческому сапру, и др. и пр.

Так вот, для получения навыков разработки математического ядра данная программа конечно не поможет, потому что это не программа по прикладной математике. А вот перенос этого ядра в специфические условия - это как раз по теме.

Почему ты на PLT возбудился кстати непонятно, оно вообще-то тут только на последнем уровне, остальное - это объяснение какие виды кирпичей есть в программировании и как с ними обращаться, так чтобы ложку с едой нести в рот, а не в ухо.
Аноним 15/01/15 Чтв 01:59:14 #27 №425194 
>>425169
>Пи исчисление и акторы добавлены, осталное нет
Ну CCS действительно можно не включать, так как он развился дальше в pi-calculi, а CSP я бы оставил, это ж Хоар, классика, к тому же в Go применяться.

Вообще норм список, вот мои замечания:
1. Почему есть лямбда-исчисление и даже алгоритмы Маркова, но нет комбинаторной логики? Она была первой, да и лямбда исчисление из неё выражается. По комбинаторной логике, особенно в программировании отлично пишет В.Э.Вольфенгаген, практиковаться можно на комбинаторных языках J, K и Unlambda.
2. Зачем там вообще нормальные алгоритмы Маркова?
3. Материал в целом хорош, но ужасно отсортирован. Давать OOP, FP и байтоёбство в одном куске это очень странно.
Ящитаю что FP должно быть там же, где и лямбда с комбинаторной логикой, OOP c GoF, SOLID, Мартином, Макконелом, а байтоёбство с UNIX, архитектурой компьютера и сетями. Кстати где последние?
4. >Книги: Кормен, Пирс, Фаулер
Это что прикол? Все трое из разных областей. Пирс с таплом должен идти в начале, где-то во втором блоке, вместе с лямбдой, Фаулер в основном пишет про ООП дизайн рефакторинг, так что его в третий блок, а Кормен - алгоритмы, алгоритмы должны идти сразу со структурами в отдельном блоке между 2 и 3 например, и зачем Кормен, он неоправданно тяжёлый как и Кнут, лучше уж Вирта, или Седжвика.
5. Не хватает графов, конечных автоматов и чего-то такого из дискретки где-то во втором блоке. Или может между первым и вторым.
6. Было бы хорошо указать на каком языке в какой момент лучше писать. Т.е. в первом блоке очевидно scheme, во втором там несколько, в третьем какая нибудь Java/C#, в четвёртом Scala/Haskell, в блоке с осями и байтоёбством очевидная сишка, потом с конкуретноыми моделями можно поюзать Erlang, Clojure, Go, Node.JS, хотя ноджс можно раньше, так как конечные автоматы нужно дать раньше. Ну и в конце какой нибудь Coq/Agda
Аноним 15/01/15 Чтв 02:40:04 #28 №425196 
>>425169
>Тут мы с тобой похоже не согласимся.
Воу-воу, это ты пришел сюда за дополнениями и критикой, так что не кукарекай и исправляй, что говорят. Анон лучше тебя знает как учить быдло, что бы получить погромиста вместо быдлокодера.

>но более полный чем у меня, экскурс здесь пользы принесет мало
Твой курс не охватывает даже части ИТ. Все эти абстракции с машинами тьюринга, лямбда счисления, экосистемы и прочее дерьмо - полная хуита, если ты не объяснишь хотя бы метод кодирования машинных инструкций и вообще минимальные знания по устройству компа.
Плюсом еще было бы накинуть в курс, что-нибудь для соц-развития, ибо необщительный программист никому в хуй не уперся. Для начала, подошел бы годный учебник по коммуникации.

И еще, ты забыл включить в список комбинаторику и мат.логику., ебанный стыд. Без этого в погромирование - никуда. Основы основ, особенно в целях оптимизации вычислений. Исправляй нахуй.
sageАноним 15/01/15 Чтв 14:01:54 #29 №425281 
>>425196
На сосач, быдло!
Аноним 15/01/15 Чтв 14:13:49 #30 №425289 
>>425196
Смотрите, тупоголовый байтослесарь порвался.
Аноним 15/01/15 Чтв 14:36:52 #31 №425295 
>>425196
джва чаю адеквату.
как показывает практика, абстракции без базы успешно забываются после экзамена.

комбинаторика нужна , инфа 146.
Аноним 15/01/15 Чтв 14:51:10 #32 №425305 
Вообще в программировании тоже две культуры, как в математике. Но разве можно не смотреть на прикладников без снисходительной улыбки, господа? Разве не забавно наблюдать как они там внизу по колено в процедурном навозе придумывают очередной архаичный способ более быстрого перекладывания кирпичиков? Не имея ни малейшего представления о том, как всё это устроено в целом, никаких фундаментальных понятий, вообще никаких соображений на этот счёт. Вот она беззаботная жизнь порешателя задачек под водочку и картофанчик. Прилежный байтослесарь высокого разряда будет отчаянно вопить "не заставляйте машину выполнять лишние действия, не заставляйте прошу", потому что весь его мирок, весь багаж знаний крутится вокруг машины. Самое смешное случится, если, например, завтра старые добрые железяки с архитектурой фон Неймана будут вытеснены каким нибудь новейшим биокомпьютером - весь мир байтоёба рухнет моментально. Абстрактные господа лишь улыбнутся, так как их модели работают везде, потому что они фундаментальны. Орды байтоёбов, задрачивавшие всю жизнь стек, регистры и прочее говно будут выкинуты на мороз, и их заменят новые прикладники - биоёбы. Абстрактные господа же останутся на своих местах, попивая чай и спокойно обсуждая новые математические подходы в теории кластеризации метапарадигм.
Аноним 15/01/15 Чтв 16:20:40 #33 №425330 
Интересно, когда до небожителей типа >>425305 дойдëт, что на облаках сидеть нельзя и что есть такая вещь как «уровни абстракции» и что между этими уровнями обязательно существуют пробои и поэтому хороший программист должен уметь переходить от одного к другому в зависимости от поставленной задачи.

Касательно упомянутой «фундаментальности»: ребят, вы хоть один учебник по теоркату прочитали, свойства хоть одной категории доказали? Вы вообще можете определить понятие категории? О научных работах я вообще молчу. Дали дитяткам ошмëтки от теорката нашпиговали вкусностями типа паттерн-матчинга, комбинаторов, и прочих котоморфизмов - всë, дитятки себя возомнили ну просто охренеть какими математиками, которым Чëрч в подмëтки не годится. Да вас любой средний студент 3-4 курса матфака по стене размажет. Смешно ей-богу. Культ карго какой-то с претензией на «фундаментальность».
Аноним 15/01/15 Чтв 16:48:47 #34 №425349 
14213297272560.jpg
>>425305
>способ более быстрого перекладывания кирпичиков
Обезьянке неведомо, что более чем 2-х вековая гонка за ускорением перекладывания кирпичиков, есть причина возникновения и развития абстрактных разделов математики ибо абстракция, не более формальное описание систем высшего порядка с целью их методологии для (sic) развития кирпичикоперекладовательных систем.
>фундаметализм
Видишь ли, макак, твой фундаментализм - не более чем следствие банального перекладывания кирпичиков. Так что не упоминай его перед знающими господами - будешь смешно выглядеть.

Unrelated.
Аноним 15/01/15 Чтв 16:52:00 #35 №425351 
>>425330
Всё программирование это сплошные суперпозиции функций, - как раз то, о чём теоркат. Комбинаторная логика, lambda-calculi - это всё разделы мат логики, у которых цель была вообще дать обоснование математике, но вышло что это идеальные модели для программирования. Замечу, абстрактные модели, т.е. не зависящие от конечной имплантации, которые могут быть применены где угодно.

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

Более того, абстракция - это то к чему идёт it индустрия всю свою жизнь. В эпоху клаудов, кластеров, гигантских приложений, огромных объёмов производства нет времени на дрочение регистров, памяти и прочего блядства. Именно тут на помощь приходят абстрактные модели, всякие pi-calculi, lambda-calculi, элементы из теорката, темпоральная логика, линейная логика, и т.д. реализовав которые можно повысить уровень абстракции и обобщённости, и начать обращаться с машиной, её работой и данным, как с абстрактными объектами из комбинаторной логики, повысив скорость и надёжность разработки.

Именно поэтому сейчас, всё старинное байтоёбское говно должно уходить на задний план, как аналитическое взятие интегралов в математике. А на передним план должны выходить именно чистые абстрактные модели.
Аноним 15/01/15 Чтв 16:53:15 #36 №425355 
>>425349
>есть причина возникновения и развития абстрактных разделов математики
Лол, дибил itt попутал причину и следствие.
Аноним 15/01/15 Чтв 16:59:08 #37 №425362 
>>425349
Ну так вот, комбинаторная логика появилась в 20х годах, где тогда было твоё программирование? Так же само как теоркат жил сам по себе без всякой надобности кому либо. Смысл чистой науки систематизировать знания и искать связи, а не горбатиться на потребителя, как это делают прикладники. Так что твоё утверждение хуйня, абстрактные модели живут сами по себе, а используют их прикладники из различных дисциплин когда им надо. Считай пользуются дарами мудрых господ. Так что не надо тут делать умный вид, уёбуй, прикладная опущенка.
Аноним 15/01/15 Чтв 17:37:06 #38 №425385 
14213326267250.jpg
>>425355
Мартыхан, ну зачем ты так? Перечитай мой пост, заучи на ночь и утром повтори, а то так и останешься чуханом мямлящем про "лямбда-исчисления", "теоркат" и прочую абстракцию. Стыдно будет перед взрослыми дядями такое рассказывать. Давай.

>>425362
>Смысл чистой науки систематизировать знания и искать связи, а не горбатиться на потребителя, как это делают прикладники.
Смотрите-ка, а до обезьянок начинает доходить, что они всего-лишь ручные мартышки с искусственно привитым чувством "гордости", созданные для обслуживания математического аппарата и принадлежащие байто-господам.

>как теоркат жил сам по себе без всякой надобности
Теоркат - мартышечья забава для оперирования над математическим языком. Эдакий формальный язык над формальным языком. Отдан на откормление обезьянками, дабы те хотя-бы высрали что-то из метапарадигм. Сделано с целью решить ряд емких(по времени)-матзадач, на тот момент нерешаемых из-за медлительности физических вычислений. Ошибочно полагалось, что емкость вытекает из системы её описывающий. Думали поменять саму систему описания, но как повелось, обосрались, и всё решилось банальным ускорением вычислений (как раз именно эти и занимались взрослые дяди), а формальная метасистема осталась на мусорке истории. И только на дваче забитая обезьянка кукарекает про "фундаментализм" и "элитарность".

>комбинаторная логика
Нашла применения после развития вычислений.

В общем посыл такой: знайте своё место, сосунки.
Аноним 15/01/15 Чтв 20:13:55 #39 №425433 
>>425385
> созданные для обслуживания математического аппарата и принадлежащие байто-господам.
Слишком толсто, try again. Олсо, я тебе выше уже всё объяснил.
>Теоркат - мартышечья забава для оперирования над математическим языком.
Дальше не читал. Уёбуй, безграмотное чмо.

>В общем посыл такой: пок-пок-пок
Ясно.

Применение не нужно, дебилушка.
sageАноним 15/01/15 Чтв 20:16:48 #40 №425435 
>>425385
порешатель задачек под водочку и картофанчик закукарекал, память освободить не забыл?
sageАноним 15/01/15 Чтв 20:32:09 #41 №425438 
>>424880
>строка как структура данных
Можно подробнее?
Аноним 15/01/15 Чтв 20:33:29 #42 №425439 
>>424880
Короче, ОП, это всё было к тому, что современная программа для обучения программистов должна преследовать приблизительно такие же идеи, как программа Вербита в матеше. Минимум прикладного говна, больше чистых моделей.

>>425196
>Плюсом еще было бы накинуть в курс, что-нибудь для соц-развития, ибо необщительный программист никому в хуй не уперся. Для начала, подошел бы годный учебник по коммуникации.

С этого люто проиграл, кого должны ебать проблемы проебашвих социализацию омежек? Если ты аутист, то это твои личные проблемы, полноценные люди и так достаточно хорошо коммуницируют.
Аноним 15/01/15 Чтв 20:33:51 #43 №425441 
>>425438
Сажу подбросили.
Аноним 15/01/15 Чтв 20:41:11 #44 №425442 
14213436719940.png
>>425433
>Толсто пок пок я объяснил кудах
>уёбуй
>чмо

>>425435
>под водочку и картофанчик

>>425439
>С этого люто проиграл, кого должны ебать проблемы проебашвих образование омежек? Если ты аутист, то это твои личные проблемы, полноценные люди и так достаточно хорошо программируют.
Иди блядь, грамматику поучи, ебательпроблем хуев.
Аноним 15/01/15 Чтв 20:52:17 #45 №425444 
>>425442
Маня, уёбуй уже толстить где-то в другое место. И колобков свои забери.

Или постой, ты же тот говноед, постящий Д'артаньянов, Фрейда и любиель убёржирноты в подобных тредах.
Майнкрафт уже закончил делать? Тянки модельной внешности из HR отдела обратили на тебя внимание?
Аноним 15/01/15 Чтв 20:53:56 #46 №425445 
>>425442
Маня, уёбуй уже толстить где-то в другое место. И колобков свои забери.

Или постой, ты же тот говноед, постящий Д'артаньянов, Фрейда и любитель убёржирноты в подобных тредах.
Майнкрафт уже закончил делать? Тянки модельной внешности из HR отдела обратили на тебя внимание?
Аноним 15/01/15 Чтв 21:00:39 #47 №425450 
>>425438
Наверно имелось в виду trie и дерево суффиксов.
Аноним 15/01/15 Чтв 21:57:14 #48 №425468 
14213482344410.jpg
>>425194
>1. Почему есть лямбда-исчисление и даже алгоритмы Маркова, но нет комбинаторной логики? Она была первой, да и лямбда исчисление из неё выражается. По комбинаторной логике, особенно в программировании отлично пишет В.Э.Вольфенгаген, практиковаться можно на комбинаторных языках J, K и Unlambda.

От безграмотности (: Почитаю Вольфенгагена, добавлю.

>2. Зачем там вообще нормальные алгоритмы Маркова?
Как пример достаточно простой rewrite system. Можно рассказать, что в школе на уроках математики как раз все выполняли роль rewrite системы (: Поэтому кстати там же и содержится эта самая "строка как структура данных" - под этим конечно же имеется ввиду проведение паралеллей между строкой и списком, и между string rewrite system и term rewrite system. От этого потом можно переходить к сопоставлению с образцом (кстати, его тоже надо куда-то затолкать) и более мощным rewrite системам. Можно разобрать лямбда исчисление как rewrite систему, вообщем тут голова кружится от возможностей.

>3. Материал в целом хорош, но ужасно отсортирован. Давать OOP, FP и байтоёбство в одном куске это очень странно.
>Ящитаю что FP должно быть там же, где и лямбда с комбинаторной логикой, OOP c GoF, SOLID, Мартином, Макконелом, а байтоёбство с UNIX, архитектурой компьютера и сетями. Кстати где последние?
>4. >Книги: Кормен, Пирс, Фаулер
>Это что прикол? Все трое из разных областей. Пирс с таплом должен идти в начале, где-то во втором блоке, вместе с лямбдой, Фаулер в основном пишет про ООП дизайн рефакторинг, так что его в третий блок, а Кормен - алгоритмы, алгоритмы должны идти сразу со структурами в отдельном блоке между 2 и 3 например, и зачем Кормен, он неоправданно тяжёлый как и Кнут, лучше уж Вирта, или Седжвика.
Ну по поводу сортировки я еще напишу в ответе сердитому байтолюбу, а вообще это мой замысел такой.

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

На втором уровне стоит задача показать обучаемым радость открытия. Когда начинаешь со скучного набора правил или каких-то непонятных описаний, переносишь их в точности в код, не понимая до конца что происходит и - опа - из них получаются всякие маленькие, но суперпрограммки - машины простейших языков программирования, имитаторы простейших микропроцессоров и все такое. Если этот мотор удастся завести, то потом мало кто сможет остановиться в изучении всяких новых и интересных штук. Также здесь стоит задача позапутывать всякими лямбда-булеанами, нумералами \f \x. x x (\y. x f y x), чтобы выработался отрицальный опыт, чтобы потом, при разборе типов было что вспомнить и с чем сравнить.

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

Третий уровень имеет одну задачу - плавно начать переходить от борща к тому, что имеется в программистской промышленности. Поэтому там большое количество баззвордов, поэтому там в одном месте даются FP, OOP и байтолюбство. Даются они там именно на уровне парадигм, здесь нет цели сказать "вот три полных учебника по одному, второму и третьему, и вот гугл, осваивайте", рассказ будет вида "ООПешники представляют задачу в виде набора объектов и отношений между ними, фунционалисты придумывают функциональную композицию, а байтоебы пытаются делать и так и так, но все пропускают через прокурстово ложе своих машинных ограничений и языков, где даже конкатенация строк требует решение проблем выделения и освобождения памяти".

Четвертый уровень предполагает переход от легкого флирта к серьезным отношениям с промышленностью. Это тоже меня смущает, так как он видится "ступенькой", имеет горяздо большую сложность по отношению к предыдущим. Именно поэтому типы даются здесь, а не раньше, потому что именно в условиях задач нечеловеческой сложности, с большим количеством сущностей, где как раз требуется автоматическая микроверификация, они проявляют себя наиболее ярко. Сети и компьютеры наверное запихну тоже куда-то сюда, скорее всего речь о них пойдет в разрезе "экономики" программирования, как о ресурсах, обладающих специфическими свойствами. Здесь же разговор об операционных системах, как о системах распределения этих самых ресурсов.

Поэтому на четвертом уровне и идет Пирс, Кормен(пускай Вирт, пускай Седжвик) и Фаулер.

>5. Не хватает графов, конечных автоматов и чего-то такого из дискретки где-то во втором блоке. Или может между первым и вторым.
Не хватает вообще матмоделирования. Оно неявно подразумевается в уровнях 3 и 4, не знаю как его явно прописать. Это необъятное море, начнешь прописывать, впишешь всю программу прикладной математики.

>6. Было бы хорошо указать на каком языке в какой момент лучше писать. Т.е. в первом блоке очевидно scheme, во втором там несколько, в третьем какая нибудь Java/C#, в четвёртом Scala/Haskell, в блоке с осями и байтоёбством очевидная сишка, потом с конкуретноыми моделями можно поюзать Erlang, Clojure, Go, Node.JS, хотя ноджс можно раньше, так как конечные автоматы нужно дать раньше. Ну и в конце какой нибудь Coq/Agda

Может быть, но в этом итт треде не вижу возможности, весь дискасс скатится к форсенью любымого язычечка.
Аноним 15/01/15 Чтв 21:57:50 #49 №425469 
>>425450
Это позже можно, главное пример хороший найти.
Аноним 15/01/15 Чтв 21:58:54 #50 №425470 
14213483346200.jpg
>>425196
> Воу-воу, это ты пришел сюда за дополнениями и критикой, так что не кукарекай и исправляй, что говорят.
Неправильно было тебя отшивать, не обосновав по существу, это я признаю.

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

Теперь по существу, про элементы комплюктернов. Одним из ключевых вопросов, на которых нужно ответить перед включением той или иной темы в курс является "А как это бьется с остальным материалом?". Курс можно представить в виде орграфа, где вершинами являются объясняемые темы, а ребра представляют собой связи между ними, причем направление ребер = направлению обратной ссылки, т.е. вершина-источник ребра - это тема, которая может быть объяснена через вершины-назначения. Например

(машинные слова) <-
(битики) <- ( машинный
(свойство префиксности) <- код )
(адреса) <-

Все вершины лежат на временной оси, потому что темы излагаются более менее последовательно, человек не может воспринимать одновременно две темы. Так вот, хорошо, если большинство ребер направлены от более поздних вершин к более ранним, т.е. ссылаются на уже пройденный материал. Чуть хуже, если ребро направленно вперед, в этом случае нужно по месту городить костыльное объяснение. И очень плохо, если в курсе имеются несвязные островки или вершины. Такой материал наверняка не будет усвоен.

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

Так вот, возвращаясь к электронике компьютеров, я не могу провести от нее ссылки. Где еще мне понадобится при объяснении свойство префиксности? Где еще мне понадобится говорить о nested или не nested-прерываниях? Где еще обучаемым пригодится знание о том, что помимо тупиковых вычислений, комп может повиснуть, если у него тупо повиснет кварц? Зачем погромистам знать про шунтирующие вч конденсаторы? У них ведь головы не резиновые. Безусловно, мне в курсе, в четвертом уровне понадобится рассказать о гетерогенности памяти, что кеш работает вообще быстро, оператива медленнее, жесткий диск еще медленнее, а стример, наконец, это вообще не RAM. Нужно будет сказать о презистентности, наверн. Ну так это можно изучить по месту, в отдельную тему выделять подобные вещи не вижу смысла.

> Анон лучше тебя знает как учить быдло, что бы получить погромиста вместо быдлокодера.
Видишь ли проблема в том, что мы не можем получить достоверных свидетельств того, что анон 1) учит кого-то 2) начинает с быдлокодеров, заканчивает погромистами 3) весьма искусен в этом занятии. Ровно как и свидетельств обратного. Хотя бы из-за риска имперсонизации. То есть это нефальсифицируемое высказывание, которе в расчет принимать нельзя.
> Твой курс не охватывает даже части ИТ.
Потому что это не обзорный курс.
> Все эти абстракции с машинами тьюринга, лямбда счисления, экосистемы и прочее дерьмо - полная хуита, если ты не объяснишь хотя бы метод кодирования машинных инструкций и вообще минимальные знания по устройству компа.
Таки говорим на разных языках. Лучше уж действительно добавить элементы матмоделирования, структуры данных, чем объяснять про свойство префиксности, которое если и объяснять, то в разрезе орхеваторов.
sageАноним 15/01/15 Чтв 22:00:33 #51 №425471 
(машинные слова) <-
(битики) <- ( машинный
(свойство префиксности) <- код )
(адреса) <-
Аноним 15/01/15 Чтв 22:23:03 #52 №425478 
Коданы, я тут в европке сижу и решил в вузик пойти
Посоветуйте, что лучше
1) computer science - неохота, слушать в основном то, что я и так знаю, разве что может про байтоебство и хачкели расскажут
2) математика - норм, но сложно себя будет заставить учить эту абстрактную хуиту
3) экономика - вот внезапно заебись (с моего дивана), разберусь досконально, как мир денег устроен, да и в интерпрайзе пригодится, а может поможет перекатиться в менеджмент со временем
Ну что, какие мысли, коданы?
Аноним 15/01/15 Чтв 22:25:31 #53 №425479 
>>425478
А епт, биоинформатику забыл
Хуй знает что за зверь, но звучит прикольно
Аноним 15/01/15 Чтв 23:05:54 #54 №425489 
>>425478
Ты выбери, что тебе нужно - академия или индустрия.
Аноним 15/01/15 Чтв 23:13:21 #55 №425494 
>>425489
Но это же пиздецки сложно выбрать.
Хочется, чтобы было
1) интересно
2) полезно для мозга
Но и нищенствовать не хотелось бы. Боюсь навыки веб-слесаря ща время учебы могут проебаться и буду опять снтзу карабкаться
Аноним 16/01/15 Птн 00:52:45 #56 №425533 
>>424880
Дело когда делать?
Аноним 16/01/15 Птн 01:22:26 #57 №425553 
>>425533
Качаешь курс Попова "Освой PHP за 23 часа 42 минуты" и делаешь дело, ёпт.
Аноним 16/01/15 Птн 01:25:21 #58 №425555 
>>425553
Я начал изучать программирование, как только поступил в высший технический вуз. После получения высшего технического образования на протяжении нескольких лет я окончил 10 курсов повышение квалификации, 5 из них в России, 3 в Европе, 1 в Индии и еще одни курсы я окончил в Америке. Итого 10 лет я повышал свое умение программировать. На сегодняшний момент я владею более чем 29 языками программирования из них 14 языков — это ВЕБ языки программирования, но Вас я обучу программировать только на 23 языках!!!
Аноним 16/01/15 Птн 02:19:05 #59 №425563 
>>425478
Тебе в /wrk экономику бери
Аноним 16/01/15 Птн 10:51:50 #60 №425610 
Альфа-тян и SICP. Умилился, поностальгировал.
Аноним 16/01/15 Птн 10:53:00 #61 №425611 
>>425563
Почему в wrk?
Я так-то уже опытная макака, думал мне лучши сюда.
Аноним 16/01/15 Птн 12:16:03 #62 №425633 
>>425553
Ага. А потом нанимаешь покорителей монад за 3 рубля пучёк. Лучший совет на самом деле.
sageАноним 16/01/15 Птн 14:48:16 #63 №425673 
Тред не читал. Единственный нормальный подход:
Level 1: пиши код.
Level 2: пиши код.
Level 3: говори какой код писать другим.
А со своей борщехлебской кукаретикой ты никогда не начнешь писать программы, так и будешь у мамки на шее сидеть. А если и возьмешься, то высрешь убогое никому не нужное говно, которое еще и поддерживать невозможно. Но ты не возьмешься, ведь кукаретизировать гораздо проще.
sageАноним 16/01/15 Птн 18:31:07 #64 №425756 
>>425673
На сосач, быдло!
sageАноним 17/01/15 Суб 09:37:47 #65 №425905 
>>425756
Ну нитраль плис((((
Аноним 17/01/15 Суб 10:43:19 #66 №425911 
>>424880
>Программисткая программа должна быть устроена так:
0) Зеленый треугольник "сделать/запустить/остановить/удалить программу".
1) Спаравочник по языку.
2) Справочник по типовым алгоритмам и структурам данных.
3) Довольно крупный проект на полгода.
4) ...
5) Гото 0: пока сдано менее 5-6 проектов из разных областей на разных языках.

Кого мы получим в результете такого обучения?
Умерено грамотного быдлокодера, готового к действительно большим проектам на роли джуна/мидла.

Кого мы получим по программе ОПа?
Слабого недокодера, заебаного теорией, который обосрется на первом же реальном проекте.

>>425673
Вот этот прав.
Аноним 17/01/15 Суб 12:01:27 #67 №425926 
>>425911
Сёма съеби уже на хабру, или где там нынче прагматичные прикладные слесари говно толочат.
Аноним 17/01/15 Суб 13:40:10 #68 №425942 
algebra
set theory
single variable calculus
combinatorics/counting
linear algebra
graph theory
probability theory
coding theory
chemistry
general physics
statistical physics and thermodynamics
organic chemistry
cell biology
algorithms.

как-то так.
sageАноним 17/01/15 Суб 15:39:49 #69 №425969 
>>425926
Лол, проиграл с великого математика-теоретика с сосача. Борщ остынет, скорее факториал дописывай.
Алсо, чини детектор.
Аноним 20/01/15 Втр 22:27:45 #70 №427063 
14217820654340.jpg
>>425330
> Интересно, когда до небожителей типа >>425305 дойдëт, что на облаках сидеть нельзя и что есть такая вещь как «уровни абстракции» и что между этими уровнями обязательно существуют пробои и поэтому хороший программист должен уметь переходить от одного к другому в зависимости от поставленной задачи.
Неправда. На этот случай существуют три стратегии.

Прикладник старается обойти дыры в абстракциях "MySQL показывает на запросах данного вида плохую производилеьность, надо использовать другие способы", "Лямбды в питоне плохие, однострочные, ограниченные, поэтому их по возможности следует использовать пореже", "Картинка дрыгается, когда рисуешь с помощью этой библиотеки, поэтому нужно использовать двойную буфферизацию" и т.п.. Если бы это было не так, все прикладные программисты вместо разработки крудов, игор и прочих полезных вещей занимались бы кернел-хакингом, либо бит-патчингом gdi.dll, либо решением фундаментальных проблем разработчиков железа.

Мидлварщик ведет себя уже не так. В случае если обнаруживает дыру в абстракциях собственных api - он старается от нее избавиться, тогда приходится проникать через уровни. В случае дыр в нижележащих слоях, он можеть помочь тамошним разработчикам дружеским советом.

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

> Касательно упомянутой «фундаментальности»: ребят, вы хоть один учебник по теоркату прочитали, свойства хоть одной категории доказали? Вы вообще можете определить понятие категории? О научных работах я вообще молчу. Дали дитяткам ошмëтки от теорката нашпиговали вкусностями типа паттерн-матчинга, комбинаторов, и прочих котоморфизмов - всë, дитятки себя возомнили ну просто охренеть какими математиками, которым Чëрч в подмëтки не годится. Да вас любой средний студент 3-4 курса матфака по стене размажет. Смешно ей-богу. Культ карго какой-то с претензией на «фундаментальность».
Для программиста прежде всего хорошо быть грамотным потребителем теорката, а не его толкателем. Для того, чтобы вешать овощи не обязательно открывать заново законы ньютона и всякие штуки про рычаги, хотя это и является полезным упражнением.
Аноним 20/01/15 Втр 23:32:26 #71 №427088 
>>424880
Петух, вот как надо
http://sharpc.livejournal.com/67583.html
Аноним 20/01/15 Втр 23:53:03 #72 №427092 
>>427088
>C++, стандарт
И сразу нахуй. Такой то зашквар, фу блять.
Аноним 21/01/15 Срд 00:31:10 #73 №427118 
>>425673
>>425911
Знавал я одного такого, подготовленного по такой программе. Код - ёбаная мешанина из абстрактно названных методов. При этом принципиально не пишет комментарии, отмахиваясь статьёй "Читайте код". Правда, он C++.
Аноним 12/02/15 Чтв 21:37:02 #74 №436460 
14237662226690.jpg
Окей ОП, ты выучил и даже возможно понял все что написано в твоем посте.
Теперь вопрос тебе - КЕМ идти работать чтобы получать больше хорошего сишника с этими знаниями?
Аноним 12/02/15 Чтв 21:48:41 #75 №436466 
>>425165
>не понимающая сути программирования
Этот хипстор порвался.
Аноним 12/02/15 Чтв 22:44:56 #76 №436487 
>>436460
Пишешь новейшую платформу которая способна заменить тысячи хороших сишников, рубишь бабло на её распространении.
Аноним 13/02/15 Птн 16:04:00 #77 №436738 
>>425102
>Любые программы.
>Никому не нужные говноприложения, от вида кода которых тянет блевать
Ясно
Аноним 13/02/15 Птн 16:31:37 #78 №436753 
>>425169
У меня небольшой шок от таких программистов, которые втирают про "качественные программы", но даже не подозревающих о том как работает процессор.
Вот зачем мне вообще что-либо знать о Лиспе? Где используются Лисп машины?
Почему бы сразу не начать с популярных архитектур х86, х64, ARM. Это то, что используется в 99% случаев. Почему прикладного программиста должна интересовать абстрактная чушь про лисп машины?
Аноним 13/02/15 Птн 16:47:41 #79 №436765 
>>436753
Физику кремния не забудь изучить.
Аноним 13/02/15 Птн 17:00:06 #80 №436776 
>>436765
Тонкая ирония?
Физ процессы в полупроводниках при различных условиях усваиваются за 15 минут. При этом нужно всего-лишь обладать минимальными знаниями о строении атома и понимание принципов ковалентной связи электронов.

Спустись на уровень абстракций пониже, шутник и не забывай о нише микроконтроллеров, ПЛИС и о всей той хуйне выше, которую окрестили "матмоделированием".
Именно эти вещи делают мир, а не твои абстрактные подтеки.
Аноним 13/02/15 Птн 18:53:21 #81 №436822 
14238428015570.png
>>436753
Но ведь Лишп — это всего лишь синтаксическое дерево, и всё:
http://www.defmacro.org/ramblings/lisp.html
Почему бы не изучить его.

>Где используются Лисп машины?
Ну хотя бы emacs тот же. Ви таки будите смеялсо, но оно работает!

И пикрелейтед.
Аноним 13/02/15 Птн 20:05:54 #82 №436850 
>>425673
Ах, так вот откуда берутся макаки-сеньоры с 10летним опытом, которые никогда не слышали про мьютексы, не знают, зачем нужны деревья и т.д.
Вот http://fprog.livejournal.com/23285.html , например. Хотя у этого, скорее всего, просто шиза. гм.. или не шиза? При каком расстройстве человеку кажется, что он разбирается в какой-либо области, о которой практически ничего не знает?
Аноним 13/02/15 Птн 20:26:11 #83 №436870 
Да вот же блядь, все уже до вас написали.

http://sharpc.livejournal.com/67583.html?thread=994303
Аноним 13/02/15 Птн 20:32:35 #84 №436878 
>>436870
ОТКАЗ. Не изобретено здесь.
Аноним 13/02/15 Птн 23:59:06 #85 №436969 
14238611461850.jpg
14238611461881.png
>>436460
>Окей ОП, ты выучил и даже возможно понял все что написано в твоем посте.
>Теперь вопрос тебе - КЕМ идти работать чтобы получать больше хорошего сишника с этими знаниями?
Очевидно, тем кто получает больше, чем хорошие сишники.

Правда согласно моей программе на работу надо начинать устраиваться на Level 3, обучение должно плавно перетечь в работу и продолжаться в течении всей карьеры.
>>436776
> Спустись на уровень абстракций пониже, шутник и не забывай о нише микроконтроллеров
Работающий с микроконтроллерами человек - это инженер-электронщик, который должен знать электронику. Для его подготовки нужна программа по электронике, где бы спокойно и в гораздо большем объеме описывалось то, что ты, пыхтя и обзываясь, пытаешься сунуть сюда.

Data science инженер должен уметь ворочать данными различного объема и качества, для этого также описанной программы будет недостаточно, нужна будет еще одна по этой его data science.

Для веб-программиста - surprise - также нужна специализированная подготовка, по верстанию, поведению бровзеров и т.п.

Но всем им, трем, помимо их специализации нужно умение составлять программки - на его выработку и направлена эта программа.

-

В интернете был обнаружен скриптик на d3, поэтому, буквально спустя несколько месяцев, программа по программированию станет отзывчивой как никогда. Заодно и более логичной, я надеюсь.
Аноним 14/02/15 Суб 02:10:32 #86 №437007 
14238690326940.jpg
14238690326951.jpg
14238690326982.jpg

>>424940
Приятно видеть свою копипасту спустя год
Ребят, да действительно забейте вы на свою унылую теорию типов, это же аутизм полный, очень похожий на то как стэнфордские ребята пытались построить логический ИИ в 1960 (и родили при этом семейство логик и доказателей теорем/планировщиков), но так ничего применимого к шумному многомерному real-valued реальному миру и не изобрели. Учёным-логикам часто кажется что как только сведёшь задачу к формальной системе да докажешь что твой алгоритм делает вывод в ней то и задача решена, но за полвека это нигде кроме очень узких доменов типа block world и не получалось.
Лучше deep learning изучайте. На нём большая часть айти будет держаться в будущем:

Сходил к доктору, получил диагноз - на самом деле он сделан DL классификатором который принял во внимание все пиксели твоего рентгена и все воксели твоего МРТ и priors твоей мед. истории, а может и твой геном. Доктор тут так, на всякий случай, дань традиции. Кстати диагноз в соответствии с контрактом используется для обновления модели твоей страховки которая предсказывает сколько тебе жить и сколько страховая компания сделает с тебя профита.

Нарушил ПДД на дороге - камера увидела, классификатор DL отработал, тебе выслан штраф на почту.

Купил себе новую машину с автопилотом? DL работает на 10000-ядерном embedded GPGPU чтобы семантически тэгировать каждый пиксель поступающий от стереокамер и каждую точку из облака точек выдаваемого лидаром, всё чтобы знать что путь свободен, нет других машин несущихся к тебе на встречу и граждан. По этой информации планировщик легко генерирует безопасную траэкторию и выдаёт управляющие сигналы на актуаторы. А ты спишь себе потому что знаешь что автопилот водит надёжнее чем ты сам.

Написал пост в фэйсбуке? Пост сразу же обратно прокачивается через DL-модель выдающую summary & sentiment analysis, веса подкручиваются, это влияет на то какая реклама будет тебе показываться фэйсбуком в будущем. Ещё твой пост совмещается с историей твоих действий в фэйсбуке и обратно распространяется через рекуррентную DL-модель предсказывающую что ты будешь делать в будущем. Модель стала ещё чуть-чуть точнее. Впринципе 95% твоих действий на год вперёд уже предсказано этой моделью, ты и не нужен, лол.

Видишь какие улицы чистые? Это потому что вместо дворников дешёвые роботы-шайбы со щётками, манипулятором и камерами - с помощью DL они распознают мусор и убирают его себе в совок, периодически возвращаются на базовую станцию для очистки и подзарядки.

Может у тебя среди знакомых есть хоть один водитель? А у знакомых знакомых? А у их знакомых? Скорее всего нигде ты не найдёшь водителя потому что DL-powered автопилоты уже лет десять как вытеснили их с рынка труда, потому что позволяют грузовикам работать круглосуточно, оптимально выбирать маршрут и почти никогда (гораздо реже чем люди-водители) попадать в происшествия. А между прочим автомобильные происшествия это 40000 смертей в год в одной Америке.

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

Короче изучайте DL, иначе не будете понимать как оно изучает вас.
Аноним 14/02/15 Суб 02:17:35 #87 №437009 
14238694553510.jpg
>>437007
>Видишь какие улицы чистые? Это потому что вместо дворников дешёвые роботы-шайбы со щётками, манипулятором и камерами - с помощью DL они распознают мусор и убирают его себе в совок, периодически возвращаются на базовую станцию для очистки и подзарядки.
Аноним 14/02/15 Суб 02:20:55 #88 №437011 
>>437007
А можно так: написал функцию, dl под грузил библиотеки, прогнал ее по каскадам своего перцептрона через 10000-ядерный gpu и сказал, во всех случаях ее выполнение завершается или нет?
Аноним 14/02/15 Суб 02:42:38 #89 №437017 
14238709589550.png
>>424880
Первая часть выглядит как нормальный такой CS-курс какого-нибудь MIT. Вторая часть выглядит как болезненная попытка вот таких вот
>>425385
>Теоркат - мартышечья забава для оперирования над математическим языком. Эдакий формальный язык над формальным языком.
>>427063
>Для программиста прежде всего хорошо быть грамотным потребителем теорката, а не его толкателем.
легковнушаемых персонажей взятых на слабо хаски-тусовкой, ощущающих что что-то в их образовании "не-так" (на самом деле не-так то что в рахе вообще нету традиции computer science, компьютерная наука тут кое-как сколочена по-быстрому из мат. логики и информатики (которая вообще вышла из библиотечного дела, лол)) это ощущение компенсировать, да так чтобы походить в этом на Мишу Вербицкого.

>>425305
>весь его мирок, весь багаж знаний крутится вокруг машины
А ведь знаешь, весь твой богатый внутренний мирок истины и лжи, боли и удовольствия это внешне некрасивые, паттерны потенциалов действия и концентраций веществ в клетках мозга закодированные псевдослучайным кодом который зависит от того на каком боку и при какой температуре тебя вынашивала мама, и от той basepair что у тебя в хромосоме #14 по смещению 57267425.
Мы живём в физическом мире, даже у абстракций есть однозначное физическое представление.

>их модели работают везде, потому что они фундаментальны
Ну вот разрабатываешь ты всю свою академическую жизнь логику Хоара, а потом отдел метаматематики закрывают и в компьюта саенс врывается орда категористов, и засталбливает так весь твой департамент, и вот ты уже отсталое ископаемое потому что в морфизмах не разбираешься. Тру стори.
А потом приходят ребята из департамента машин лёрнинг и говорят "ну что вы тут за символьный аутизм развели, нам формализмы для аналоговых вероятностных вычислений нужны, мы строим из мемристоров реализацию иерерхического контроллера для решения общей задачи reinforcement learning"
и такие закрывают вообще ваш PLT факультет потому что бесполезен. Future story.

>>425351
>Именно поэтому сейчас, всё старинное байтоёбское говно должно уходить на задний план
Посмотрим как это у тебя получится когда транзисторы состоящие из 100 атомов Si станут аналоговыми, или ещё хуже - туннельными. И ты можешь знать что в лучшем случае каждое ядро твоего смартфонного 10e7-ядерного процессора отрабатывает без ошибок 99 инструкций из 100.
Доказатели теорем да факториалы от 40 сразу свалятся как карточный домик, хех.

TL/DR:
Программист это не тот кто создаёт ещё одну формальную систему из бесконечного числа возможных и доказывает её свойства и соотношения с другими формальными системами, ну и заодно выбивает гранты под это дело и печатает статьи на тему, нет.
Программист это тот кто создаёт программные решения, системы которые делают жизнь людей лучше и приятнее. Программист это инженер программных систем.
Аноним 14/02/15 Суб 02:53:46 #90 №437020 
Итак, у нас объявился новый вид животных - датадураки.

Россказни про транзисторы, про то что компьютерные программы состоят из атомов и э/м полей, потому что хранятся в оперативной памяти, запугивания теорвером, от которого - внимание - логика как и плт соснет вся и разом. И многое другое!
Аноним 14/02/15 Суб 02:54:38 #91 №437021 
>>437011
Для широкого класса частных случаев можно, люди же могут.
Насколько широкого - не берусь говорить. Но почему не может быть так что для 99% нашего кода может быть распознана тривиальная завершаемость, а оставшийся процент можно переписать без рекурсии и с ограничениями по циклам (прямо как в гайдах по созданию программ для NASA) ?
Да и если уж мы совсем честно будем относиться к формализации выполнения программы на любом физическом компьютере то память-то конечна, а вместе с ней и количество состояний. А значит либо она остановится либо будет повторять одну и ту же последовательность состояний. И проверить что же с нашей машиной будет можно за O(1) (как быстро!), лол.

Тем временем первый шаг в понимании программ рекуррентными нейронными сетями уже сделан http://arxiv.org/abs/1410.4615 .
Аноним 14/02/15 Суб 03:05:01 #92 №437022 
14238723020480.jpg
>>437021
> память-то конечна а вместе с ней и количество состояний
Аноним 14/02/15 Суб 08:45:37 #93 №437038 
Котяты, оно конечно понятно что знать и уметь хочется всё. Но такого ведь не бывает ни у кого. Желания разные, мировоззрения тоже. Давайте не проецировать на идеальных себя где-то в будущем, а посмотрим на реальный расклад.

Есть ветки специализации. Очень круто было бы иметь наглядное дерево "от бывалых", с поправкой как можно достичь этого быстро. И самое главное что можно делать достигнув конца ветки, чтобы неофит мог сразу оценить уровни зарплат/вкалывания/перспективность/свои хотелки, и главное количество усилий которое нужно вложить чтобы эту ветку освоить.

Хуй знает как это огранизовать. Но такая штука была бы очень полезной.
comments powered by Disqus