LINUX.ORG.RU

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

 , , , ,

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

1

2

В среду, 9 апреля 2025 года, Андрей Столяров (пользователь @Croco) опубликовал на своём сайте новую версию второго тома под изданием 2,9. Второй том, как и в предыдущем издании, посвящён изучению языка Си, взаимодействию программиста с операционной системой (Unix) и объяснению концепции параллельного программирования.

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

Ввиду обстоятельств, сложившихся в последнее время, о которых Столяров поделился в своём обращении от 25 марта, были даны некоторые обещания публике, которые он был намерен выполнять по достижении определённых сумм пожертвований. За довольно короткое время (около двух недель) была набрана значительная сумма, и Столяров приступил к выполнению своего первого обещания — сделать кликабельную навигацию во всех трех томах учебника третьего издания. В вышедшем втором томе навигация уже работает.

В очередной раз Андрей Викторович выражает благодарность публике:

Всем поддержавшим спасибо за поддержку, это мотивирует.

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



Проверено: CrX ()
Последнее исправление: AP (всего исправлений: 7)
Ответ на: комментарий от zx_gamer

И да, они все ужасны, о чем автор и пишет. Опять-таки посмотрите пример.

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

Начать с того, что всё, что входит в HTML5, не имеет права на существование просто потому, что входит в HTML5.

Ты видишь, что история с SGML - она общая, и никак не выделяет именно HTML5? А ты используешь аргумент про SGML, относящийся к любому HTML, для оправдания ненависти к HTML5. То есть, ты сам не понял свой аргумент.

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

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

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

Не-не, это уже следующая итерация шизы. Он его вернул после болезни.

А про неприемлемость HTML он говорит безотносительно HTML5. Любой SGML-based язык разметки, будь то HTML, XML, и т.п. ужасен, в сообщении наглядно показано почему.

Не, не ужасен. И нет, не показано. HTML это язык с удивительной обратной совместимостью, у нас в индустрии почти нет примеров такого же. Он многословный? Ещё как. Это плохо? Да, но не критично. Есть всратый тег? Окей, давайте заменим на другой. Давайте сделаем тег <latex> и будет всем счастье.

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

Контекст. Вырывать фразы из контекста непрофессионально.

В ответ на это сообщение писали: http://stolyarov.info/guestbook/archive/8/#cmt50

На что А.В. ответил: http://stolyarov.info/guestbook/archive/8/#cmt51

Собственно по этой ссылки обсуждение, почему веб ни в каком виде, включая, но не ограничиваясь HTML5 — не должен существовать: http://stolyarov.info/guestbook/archive/7/#cmt626

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

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

Например, теги font, center и т.п. удалены, просто если браузер их не покажет — это плохой браузер.

Во-вторых посмотрите на S-выражения. Этот формат хранения данных был придуман и известен почти всем программист уже лет 20 как к тому моменту, как стали придумывать HTML. Встает вопрос: а все ли в порядке с головушкой у авторов HTML? Сейчас можно поныть: «ну так сделали тогда, сейчас никто ничего исправлять не будет» — но это не уменьшает вреда, нанесенного авторами HTML.

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

sgml то исходно для документов и что бы человек не искал контекста поэтому многословные теги

ровно из того же явления длиные идентификаторы характерные для языков где менеджеры - тот же великий! COBOL - который прямо был нацелен «руководители смогут писать код»

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

Главное что ты либо Столяров, либо его дрессированный хомяк

shalom_ ★★
()

Так какие книги на данный момент самые лучшие для полного вката в программирование?

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

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

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

вайбик: https://www.youtube.com/watch?v=UfDJRh-LzEo

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

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

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

Не, в ультиме так не говорили, ну, по крайней мере, на наших шардах

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

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

Что сломалось между HTML5 и HTML4, например?

Например, теги font, center и т.п. удалены, просто если браузер их не покажет — это плохой браузер.

И? В HTML4-то они остались. Если у тебя HTML4 документ, все работает. HTML5 не пройдет проверку на валидность, ты починишь, будет нормально. Выкинуть стили в CSS было лучшим решением evar. То что CSS стал переусложненным кошмаром это плохо, но это судьба всех популярных индустриальных стандартов.

Во-вторых посмотрите на S-выражения. Этот формат хранения данных был придуман и известен почти всем программист уже лет 20 как к тому моменту, как стали придумывать HTML. Встает вопрос: а все ли в порядке с головушкой у авторов HTML? Сейчас можно поныть: «ну так сделали тогда, сейчас никто ничего исправлять не будет» — но это не уменьшает вреда, нанесенного авторами HTML.

Какая разница какие там причины-то были? Оно понятное? Понятное. Удобное? Вполне. Как язык разметки он хорош для роботов, а люди в нем не пишут (как не писали бы в S-expr), предпочитая какой-нибудь текстовый редактор или MD.

gaylord
()
Последнее исправление: gaylord (всего исправлений: 2)
Ответ на: комментарий от zx_gamer

Контекст. Вырывать фразы из контекста непрофессионально.

Это как раз про тебя. Ты используешь вырванный из контекста всего обсуждения пост и пытаешься им аргументировать ненависть к HTML5. А когда я наглядно подсветил твой фейл - начал верещать про вырывание из контекста.

Иронично.

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

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

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

Но у секты столярова нет цели, только путь.

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

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

Ты, видимо, вообще не помнишь веб в девяностые. W3C сделал огромный вклад встандартизацию.

не уменьшает вреда, нанесенного авторами HTML

Какого вреда-то? Кому стало хуже от того, что веб существует? Столяродебилам?

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

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

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

Не хочешь дискутировать - не дискутируй, но ты зачем-то бегаешь за мной и жалобно скулишь: то про поней, то про свои маргинальные взгляды, то про еще какую-нибудь чушь. Бегаешь, пытаешься задеть и ставишь свои клоунские отметки в духе «прочитал, увидел». Я же вижу в твоих действиях некоторое противоречие, а именно детскую обиду на уязвленное самолюбие.

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

На самом деле я вовсе не пытался задеть чувства недопрограммистов.

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

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

NeoX
()
Ответ на: комментарий от zx_gamer

Столяров, как можно заметить, на своих сайтах использует не HTML, а XHTML.

Выбрал самый колючий кактус?

bread
()
Ответ на: комментарий от NeoX

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

Это нереально.

sabacs
()
Ответ на: комментарий от zx_gamer

А про неприемлемость HTML он говорит…

Угу. И при этом пилит свою CMS, которая генерирует угадай что. Более того, генерирует она это из текстовых файлов с front matter, который подозрительно похож на YAML (который Столяров, мягко говоря, не уважает). А ведь мог бы запилить векторный гипертекстовый фидонет на лиспе и S-выражениях.

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

Ага. Лучше сразу увидеть, что браузер отказывается рендерить страницу, чем долго-долго искать опечатку из-за который что-то работает «не так».

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

Про «не наши» разговора вообще не было, зачем ты это начал? Я говорил исключительно про наши.

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

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

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

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

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

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

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

Да, называется линтер. Можно еще с lsp вместе. Прям в редакторе, интерактивно. В ходе написания кода. Чорная магия, поди разберись.

t3n3t
()
Ответ на: комментарий от zx_gamer

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

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

bread
()
Ответ на: комментарий от WatchCat

Вызывающее 4.2.

Царь очень сильно старался не оставлять после себя ну совсем никаких артефактов. И даже когда создал на ЛОРе тему с предложением дать ему достойную задачу, заботливо сопроводил её внушительным стоп-листом, исключающим возможность, что задача будет иметь хоть какую-то прикладную ценность. Смешно вспомнить, но когда его после этого забанили, я ходатайствовал за снятие бана, уж больно было интересно, получится ли из этой темы что-нибудь. Но нет, остались только «побежала обосновывать».

Столяров же написал не только 4 тома (да ещё и дорабатывал их в нескольких изданиях, что вообще-то, немалый труд), но и CMS, которую можно щупать, критиковать. Она есть.

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

А вдруг автор Gemini вырос на первом издании Столярова и воплотил его гениальные предвидения в жизнь?

Я скорее поверю в то что его воспитали животные.

gaylord
()
Ответ на: комментарий от hobbit

Столяров же написал не только 4 тома (да ещё и дорабатывал их в нескольких изданиях, что вообще-то, немалый труд), но и CMS, которую можно щупать, критиковать. Она есть.

Ты же понимаешь что там нет буквально никакой ценности? Таких поделий десятки тысяч на гитхабе.

gaylord
()
Ответ на: комментарий от hobbit

Столяров же написал не только 4 тома (да ещё и дорабатывал их в нескольких изданиях, что вообще-то, немалый труд)

Это ваще спорный тезис. Развести труд и его ценность для других — небесполезно.

Можно вспомнить, например, историю шрифта PragmataPro. Фабрицио Скиави потратил на него херову тучу времени. А когда вышел на Indiegogo, чтобы собрать бабла, дорабатывать его два года в режиме фултайма и выпустить под OFL, оказалось, что никому это нафиг не нужно. Он там набрал четыре тыщи евро из 200 тыщ и теперь просто продаёт его у себя на сайте уже который год. А количество глифов догнал до 18 000 в обычном начертании. Сколько он на том заработал — большой вопрос. Хотя труда вложено немеряно.

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

Как ты мог заметить, Столяров на своих сайтах использует SGML-like языки разметки (XHTML, CSS) и т.д. Даже, Таласса пусть и не заточена под это, но способна генерировать файлы в соответствующих форматах.

Но ты не понимаешь почему он не использует CSS3, HTML5, JS и прочее. Ответ на это все уже много раз звучал: алгоритмическая полнота.

Почему он все ещё пользуется вебом? Потому, что он пока не нашёл то, что его бы устраивало больше. Например, Gemini его не устроила тем, что содержит встроенную криптографию (а точнее TLS), тогда как по его мнению криптография должна находится на уровне инфраструктуры, а не в прикладных программах. Spartan он пока не особо смотрел, поэтому сказать про это что-то трудно.

rOgret
()
Ответ на: комментарий от hobbit

Скорее автор Spartan (лишь идейно, ведь основную реализацию на питоне (если она все ещё на питоне) Столяров воспринимать откажется).

Gemini Столярову за встроенные TLS и UTF8 (насчёт этого не уверен, сам не тыкал) не понравился.

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

Но ты не понимаешь почему он не использует CSS3, HTML5, JS и прочее. Ответ на это все уже много раз звучал: алгоритмическая полнота.

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

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

Таких поделий десятки тысяч на гитхабе.

Ну назови «таких» хотя бы пяток. Пару (с оговорками) я, в принципе, сам знаю.

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

Таких проектов? Вся околовейландовая экосистема это тонны говнокода на C от любителей “KISS”. Одних только скриншотилок я видел штук сорок. CMS для SSG тоже полно. Вот, например: https://github.com/decaporg/decap-cms

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

gaylord
()
Последнее исправление: gaylord (всего исправлений: 2)

О, @AntonI клоуном отметился. Ты же вроде добавлял меня в игнор, не? :) Или у тебя уже встали мозги на место, хотя бы частично?

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

или лучше Керниган Ричи.

Несравнимые книги, но вообще Керниган и Ричи.

В K&R2 меньше рассказов о том как всё устроено, она менее объёмная, но при том достаточно упраженений, которые можно ещё по разному прорешивать: с использованием только того, что уже введено в главах или того что знал до чтения книги, решать на стандарте C89 или на C23.

Хорошая книжка, классика, хоть в чем-то и могла устареть и Modern С может быть актуальней.

Книги Столярова… Они всеобъемлющие. Он явно считает себя кем-то вроде Дональда Кнута из России, хотя конечно ощущается как не особо удачливый и добившийся гораздо меньшего Столлман.

В них автор пытается дать очень широкую картину происходящего и того как ВСЁ устроено.

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

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

Вместо того чтобы рассказывать о том, что в Си можно писать c каким-то выдуманным zero runtime, упоминание которого встречается чуть ли не только у него, он мог бы сослаться на стандарт Си, который так презирает и рассказать про то что существует hosted environment и freestanding environment. Про то как вне юзерспейса операционной системы имплантирован только freestanding, про то как круто писать freestanding библиотеки и потом портировать куда-либо.

Artsi0m
()
Ответ на: комментарий от gaylord

Я, в отличие от некоторых, просто умею пользоваться поисковиком.

rOgret
()
Ответ на: комментарий от Minoru

Ну вся эта семантика и async/await суть обертки над poll-select'om. К оберткам он относится плохо. А к poll-select'y — хорошо.

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

Упрощенно конечно да, но у async/await более широкое применение. У тебя например никакого poll-select’ора может и не быть, а есть какой-нибудь тред-пул который исполняет эти корутины.

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

Скорее всего для веб-макак. Этот async/await слизали почти полностью с питоновского варианта :)

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