LINUX.ORG.RU

Вышло издание 2,92 книги «Программирование: введение в профессию» А. В. Столярова

 , , ,

Вышло издание 2,92 книги «Программирование: введение в профессию» А. В. Столярова

3

4

Тихо и незаметно 30 апреля 2026 года вышло издание 2.92, которое наконец включает в себя читаемый текстовый слой.

Исправлены опечатки и ошибки, обнаруженные в предыдущих изданиях, в частности 2.91 (где введена кликабельная навигация) и 2.9 (первое чисто электронное издание).

Книга предназначена для самообучения основам программирования и в отличии от многих других изданий предполагает фундаментальный подход - вначале основы дискретной математики и использования GNU/Linux или BSD с командной строкой, затем паскаль, потом ассемблер и только потом Си, системное программирование и альтернативные парадигмы (функциональное, логическое и так далее).

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

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

>>> Ссылка на страницу издания
>>> Альтернативные способы скачивания

>>> Новость на сайте автора

★★★★★

Проверено: dataman ()
Последнее исправление: dataman (всего исправлений: 9)
Ответ на: комментарий от Xenius

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

Нам действительно надо всерьез опровергать шизобредни столярова - человека, который никогда всерьез не программировал, по рекомендациям тебя - человека, который никогда не программировал вообще?

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

liksys ★★★★
()
Ответ на: комментарий от eao197

Или же вы путаете программирование с математикой.

Скорее всё же ты путаешь программирование (в смысле ТАОСР) с (быдло)кодерством (в смысле «Джава для умственно-отсталых за 24 часа»).

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

zabbal ★★★★☆
()
Ответ на: комментарий от liksys

Оставляя в стороне правоту Столярова(очевидно он не прав) аргумент к индустрии такой себе

представь ситуация до массового Фордовского конвеера - неФорд из слоновье косте замка отмечатает - кста Адам Смит с буллавками ровно это и сделал - потребовалаь ~полтора столетия что бы общеизвестное в сказке о булавках внедрили на сборке самобеглых телег

ща it индустрия тот ещё цирк сильно обусловленный фиатными вертолётными эмисиями

qulinxao3 ★☆
()
Ответ на: комментарий от sunjob

вот только представьте ситуацию, когда он с вами поделился своей кровью…

Я могу представить ситуацию когда я поделился с ним своим… гхм… протеином :-Р

zabbal ★★★★☆
()
Ответ на: комментарий от zabbal

пойти дальше и делать СУБД частью файловой системы

Кстати был такой проект во времена оно в недрах MS Research. Жаль не взлетел.

Безусловно, все таинственные, но так и не взлетевшие идеи были рождены и умерли в недрах загадочной Майкрософт Ресерч. :) Хи-хи.

Любая Lustre использует базу данных, MySQL или PostgreSQL, для хранения метаданных, то есть для организации устойчивости и распределения нагрузки на сервера хранения самих данных. Выбор конкретной бызы зависит исключительно от предпочтений поставщика.

Вопрос в том, когда использование такого монстра ка Lustre становится оправданным?

VIT ★★
()
Ответ на: комментарий от wandrien

В программировании есть числа целые, с плавающей точкой, с фиксированной точкой, а также иные более редкие виды.

Не говори за всё программирование. Вот (racket-lang.org):

> (integer? 1)
#t

> (integer? 2.3)
#f

> (integer? 4.0)
#t
monk ★★★★★
()
Ответ на: комментарий от qulinxao3

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

Столяров никогда всерьез ничего не писал. @Xenius вообще не программист, но мнение имеет (не свое, конечно же, а слепо веря опусам столярова). В этом вся проблема.

liksys ★★★★
()
Ответ на: комментарий от qulinxao3

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

zabbal ★★★★☆
()
Ответ на: комментарий от monk

Ну вот и ты не говори за всё программирование со своими процедурами и функциями =)

wandrien ★★★★
()
Ответ на: комментарий от zabbal

Да я запросто могу путать т.к. не копенгаген ни в одном, ни во втором, ни в третьем.

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

eao197 ★★★★★
()
Последнее исправление: eao197 (всего исправлений: 1)
Ответ на: комментарий от liksys

Когда решения о технологиях принимают колхозники, которых только вчера отмыли от коровьих лепёх - это путь вникуда.

о ком речь?

Welle
()
Ответ на: комментарий от eao197

Всегда подозревал, что Lisp оказывает на неокрепшие умы необратимое воздействие.

Я на Лисп ушёл из-за расстройства на Borland C++. Пишу программу, дописываю очередные 10 строк, перестаёт работать всё, что уже ранее было написано. Сейчас думаю, может какое UB спровоцировал, тогда, что глючный компилятор. В результате после Borland Pascal ушёл на Lisp, а теперь на Racket.

А для денег 1С. Там тоже Массив что угодно, но не указатель на байты:

М = Новый Массив(3);
М.Добавить(1);
М.Добавить("Строка");
М.Добавить(М);
Сообщить(М.Количество()); // 6
monk ★★★★★
()
Ответ на: комментарий от VIT

Любая Lustre использует базу данных, MySQL или PostgreSQL, для хранения метаданных

Не, там вся идея была в том чтобы работать с ФС через аналоги SQL-запросов вместо привычных интерфейсов чтения\записи с дескрипторами. Не деталь реализации, а принципиальная смена парадигмы - полное переосмысление того что такое ФС вообще. Поэтому и

недра загадочной Майкрософт Ресерч

Прибежище академиков, для которых практическая применимость это что-то скучное на менеджерском - для тех кто не понимает красоту монад. Не даром там автор Haskell долгое время подвизался :)

zabbal ★★★★☆
()
Ответ на: комментарий от zabbal

а вы не загадывайте... или хотите насмешить?

sunjob ★★★★★
()
Ответ на: комментарий от eao197

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

Это называется императивный подход. И тот факт что он на порядки распространённее декларативного на мой взгляд весьма убедительный довод в пользу замены большинства программистов на LLM - не много потеряем :)

zabbal ★★★★☆
()
Ответ на: комментарий от liksys

я из колхозников в советской власти знаю только Горбачева. выше речь скорее всего о Калмыков, Валерий Дмитриевич, а он в колхозе никогда не работал

Welle
()
Ответ на: комментарий от monk

А для денег 1С.

Это многое объясняет в твоих рассуждениях про программирование. И я ещё не верил когда мне втирали что 1с-программист это диагноз, а не специализация :)

zabbal ★★★★☆
()
Ответ на: комментарий от liksys

А ничего, что столяров тоже в жизни ни строчки боевого кода не написал?

Он в районе 2011-го года, если не путаю, писал драйверы к каким-то девайсам для работы с USB и много плевался с их устройства.

anonymous_incognito ★★★★★
()
Ответ на: комментарий от Welle

Хм, я сейчас открыл в приложении «Книги» в своём смарте Huawei nova - книга разбита на страницы. Хм, может читалка сама разбила? Дома на компе посмотрю.

UriZzz ★★
()
Ответ на: комментарий от anonymous_incognito

и много плевался с их устройства

Это в целом его характерная особенность независимо от того о чём идёт речь. Видимо какие-то проблемы с недержанием слюны или ещё чего.

zabbal ★★★★☆
()
Ответ на: комментарий от UriZzz

откройте все книги и пролистайте страниц 15-20... я прошлый раз натыкался на простыни (но не сразу, а как-то погодя)

sunjob ★★★★★
()
Ответ на: комментарий от monk

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

eao197 ★★★★★
()
Ответ на: комментарий от Welle

Родился 9 (22 августа) 1908 года в Ростове-на-Дону. С 1924 года — электромонтёр и одновременно (с 1925 года) учащийся Ростовского-на-Дону индустриального техникума. С 1929 года на заводе «Москабель»: мастер, начальник цеха, старший инженер[2]. В 1934 году окончил вечернее отделение МЭИ имени В. М. Молотова. С 1935 года работал в НИИ-10 наркомата (министерства) судостроительной промышленности: инженер-конструктор; главный конструктор, главный инженер, с 1942 года директор. Член ВКП(б) с 1942 года. В 1943 году включён в Совет по радиолокации при ГКО[3].

А ШО ТАМ В ЭТИХ ВАШИХ ЭВЭЭМ, ТЕ ЖЕ ПРОВОДА ДА ЛАМПОЧКИ, ШАС ВСЁ СКОПИРУЕМ У ЗАПАДА ПОХАНОВО.

liksys ★★★★
()
Ответ на: комментарий от zabbal

Это называется императивный подход.

Как по мне, как это называется реальная жизнь.

eao197 ★★★★★
()
Ответ на: комментарий от anonymous_incognito

писал драйверы к каким-то девайсам для работы с USB

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

много плевался с их устройства

Ну кто б сомневался.

liksys ★★★★
()
Ответ на: комментарий от VIT

Тем, что если человек не понимает, зачем нужен многоядерный процессор, от абсолютно точно не знает, что такое make и тем более что делает «-j», и даже если вы ему это объясните, он всё равно ничего не поймёт, потому что не знает, что такое «компилировать».

Столяров-то хорошо знает, что такое компиляция и зачем нужен make и даже, если не знает опции -j способен прочитать и понять, что она делает.

Потому что это лишний раз говорит о том, что да, действительно, нормальному человеку и вправду многоядерность не нужна.

Это всё в контексте книги для обучения программированию и комментарии его тоже были для тех, кто хоть немного, но в ИТ-сфере что-то понимает.

А вот откуда у кандидата физматнаук и философии, многолетнего преподавателя программирования в МГУ, такие странные взгляды - непонятно. И ведь как бы даже нельзя сказать, что замшелый старый пень, которому ничего не нужно уже. До этого работал в ИТ, да и сейчас какие ни какие, но программы пишет, всё же можно критиковать туже талассу, но явно не все могут написать что-то аналогичное.

Феномен.

anonymous_incognito ★★★★★
()
Ответ на: комментарий от zabbal

Не обязательно. Например, чтобы получить данные из СУБД. Надо

  1. Сформулировать запрос данных на языке SQL.

  2. Получить результат этого запроса.

Это императивный подход?

monk ★★★★★
()
Последнее исправление: monk (всего исправлений: 1)
Ответ на: комментарий от liksys

Ими кто-то, кроме него самого, пользовался?

Вроде бы да. Даже кажется можно купить, если сильно захотеть. Устройство управления цепями UNC001

Кстати, смотри комментарий выше перед моим.

anonymous_incognito ★★★★★
()
Последнее исправление: anonymous_incognito (всего исправлений: 1)
Ответ на: комментарий от anonymous_incognito

Столяров-то хорошо знает, что такое компиляция

Откуда? Он же в программировании ни в зуб ногой.

многолетнего преподавателя

Преподавание это прежде всего работа с людьми - знаю по своему преподавательскому опыту. Как к ним относится пациент можно посмотреть прямо здесь: https://www.linux.org.ru/search.jsp?q=%D1%83%D0%B1%D0%B8%D1%82%D1%8C&range=COMMENTS&interval=ALL&user=Croco&_usertopic=on&sort=DATE&section=

нельзя сказать, что замшелый старый пень

Можно. Если что скажешь что я разрешил ;)

какие ни какие, но программы пишет

В том-то и дело что именно «никакие» - для чего-то большего нужно всё-таки уметь программировать.

можно критиковать туже талассу, но явно не все могут написать что-то аналогичное

Вот тут ты прав: написать что-то столь же убогое и вправду под силу далеко не каждому - разве что с помощью ранних версий LLM.

zabbal ★★★★☆
()
Последнее исправление: zabbal (всего исправлений: 1)
Ответ на: комментарий от sunjob

Всё, увидел, да🤣 читабельно, но… Странно… Какой то новый формат страниц))

UriZzz ★★
()
Ответ на: комментарий от anonymous_incognito

Посмотрел. Самую сложную часть позаимствовал из V-USB. Остальное довольно примитивно. Я б не стал называть это каким-то серьезным продуктом. Зато там можно найти конструкции в духе while(--i), что явно говорит нам о том, что гуру своим же советам не следует.

Если сравнить код по ссылкам и код в талассе, то видно, как у столярова прогрессирует шиза.

liksys ★★★★
()
Ответ на: комментарий от monk

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

soomrack ★★★★★
()
Ответ на: комментарий от anonymous_incognito

Столяров-то хорошо знает, что такое компиляция

Очень сомнительно, учитывая его опусы про раст и нулевой рантайм.

А вот откуда у кандидата физматнаук и философии

Прочитал как «фимознаук», лол. А что до философии - я бегло читал его диссертацию. Строго говоря, это просто бред. За одно только использование гегелевской диалектики это бумагомарательство следовало бы обоссать и сжечь. Но философия в наших вузах - это голландский штурвал. Потому имеем кандидата.

Строго говоря, столяров необучаемый. Это очень странно, но факт. Любые технологии, которые он не осилил понять, он отвергает и придумывает для них идеологическое оправдание. Не понимает многоядерность? Многоядерность не нужна. И всё в таком же духе.

liksys ★★★★
()
Ответ на: комментарий от soomrack

Я про то же. Но внятная и четкая последовательность действий для достижения требуемого результата вполне может включать написание запроса SQL.

monk ★★★★★
()
Ответ на: комментарий от liksys

Что, скажем, если все говорят, что столяров пишет чушь - это не они ничего не понимают, а столяров?

Столяров приводит аргументы, а противники кидаются какашками и апеллируют к личности автора.

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

который никогда не программировал вообще?

Я такого не писал, ты передёргиваешь. Я говорю, что не вёл больших проектов. Но я программы писал и не один раз.

Xenius ★★★★★
() автор топика
Ответ на: комментарий от liksys

обоссать и сжечь

Может лучше наоборот: сжечь и обоссать? С целью предотвращения дальнейшего горения вещей к тому не предназначенных?

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

Можно было бы конечно предложить вырывать страницы и поджигать их засовывая в зады.
Но как уже было установлено, страницы там повышенной размерности.
А кроме того «полыхающие пердаки» – это видимо фигура речи: о реальном использовании их для поджига наука пока ещё не в курсе дела.

frob ★★★★★
()
Ответ на: комментарий от Xenius

Столяров приводит аргументы, а противники кидаются какашками и апеллируют к личности автора.

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

хотя бы преподавал

Преподавание не делает его автоматически специалистом в обсуждаемых темах.

Я такого не писал, ты передёргиваешь. Я говорю, что не вёл больших проектов. Но я программы писал и не один раз.

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

liksys ★★★★
()

сука, страницы 70:16,5, так ещё и сноски внизу страниц

Welle
()
Ответ на: комментарий от frob

страницы там повышенной размерности

В нашу редакцию поступило замечание от читателя.
В статье допущена ошибка: повышенная размерность страниц была установлена для другого произведения того же автора.
От лица редакции приносим свои извинения нашим читателям.
Лицо допустившее ошибку было сожжено и обоссано.

frob ★★★★★
()

чтобы ни говорили, а автор уникум, блджад

Welle
()
Ответ на: комментарий от liksys

Нет. Противники приводят аргументы

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

>> В своём исходном смысле побочный эффект может возникнуть только при вычислении выражения, и это очень важно: побочный эффект — это произвольное изменение, которое происходит при вычислении выражения и может быть позже каким-то образом обнаружено. Если единственное, что происходит при вычислении выражения — это получение его результата (значения), говорят, что такое выражение (точнее, его вычисление) побочных эффектов не имеет. Когда же некое действие задаётся оператором или иной конструкцией языка, не имеющей отношения к вычислению выражений, ни о каких побочных эффектах вообще не может идти речи. Путаница здесь во многом обусловлена распространённостью языков Си и Си++ — для них, как и для языков функционального программирования, любое модифицирующее (если угодно, «разрушающее») действие в самом деле оказывается побочным эффектом. <<

С чем конкретно ты не согласен? Можешь открыть саму книгу и прочитать всё методическое предисловие, оно не длинное.

Ты сам говорил, что писал только однострочники.

Я не так говорил.

Xenius ★★★★★
() автор топика
Последнее исправление: Xenius (всего исправлений: 1)
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.