LINUX.ORG.RU

Переиздание книг Столярова по программированию

 


9

4

Скандально известный на ЛОРе Андрей Викторович Столяров выпустил новое издание своего учебного пособия «Программирование: введение в профессию» и обновил PDF-версии:
«Азы программирования»
«Системы и сети»
«Парадигмы»
В новом издании 4-томник стал 3-томником.

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

>>> Сайт автора

★★★★★

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

pump and dump

так двух-тактный механизм вполне эффективен в истории мирового капитализма

похода ща как раз период консолидации (как раз на падающей конъюктуре олигополизировать проще) -

винда всё больше снова становиться просто gui оболочкой - раньше dos, ща типо posix ( но по факту linux)

c браузерами ща как уже выше отметили из тяжеловесов тока два движка V8 и «второй»(чьё существование возможно в том числе по причине наличия антимонопольного законодательства и желательности поэтому первым иметь видимого антагониста)

ваще кризис который идёт с 2008 ещё даже не в зените.

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

bootOS и kolibriOS существуют

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

Ну хочешь я тебе ACSII-кодами картинку нарисую — тоже своего рода творчество.

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

Ну хочешь я тебе ACSII-кодами картинку нарисую — тоже своего рода творчество.

Так рисуют. И демосцены делают. Наличие кинематографического рендеринга не запрещает рисовать в ASCII. Также как наличие кино не запрещает театр. У каждого творчества своя ниша.

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

Если кто-то чем-то работает, это что-то — рабочий инструмент.

А утверждение, что Gemini не нужно, так как есть HTTP/HTML, равноценно утверждению, что nano не нужен, так как есть vim, а vim не нужен, так как есть Eclipse.

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

Если кто-то чем-то работает, это что-то — рабочий инструмент.

Кто работает в kolibriOS?

nano не нужен, так как есть vim

Ну вообще так и есть, правда это уже совсем оффтоп.

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

И использовать в «третьей части» for выражение без побочных эффектов если есть смысл, то только ради комментариев, которые компилятор должен проверить на правильность синтаксиса.

for ( int i; ; "Pascal " "suxx!" ) {}
То же самое с первым операндом оператора ,

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

Кто работает в kolibriOS?

Без понятия. Вот нагуглилось: https://habr.com/ru/company/kolibrios/blog/256799/

Использование при наладке железа

Использовали на заводе для SCADA-системы

На железнодорожном транспорте для автоматического контроля состояния контактного кабеля на основании анализа видеоинформации с проезжающего поезда

Ну вообще так и есть

nano в тройку лучших текстовых редакторов входит.

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

nano в тройку лучших текстовых редакторов входит.

Это говорит человек, который выступает против хрома и вообще веба?

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

Это говорит человек, который выступает против хрома и вообще веба?

В данном случае, цитирую. С целью показать, что существует достаточно большое число людей, использующих nano как рабочий инструмент.

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

Ну тут есть разница.

При таком использовании for компилятор код не исполнит, только проверит. У запятой – исполнит.

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

Но нужно, в основном, именно для for.

Для макросов же еще.

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

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

про немыслимость - журнал BYTE эдак середины 80 как пример - на уровне концепций уже лет так 70 в software индустрии нет «нового качества»

Я и оговорился, что алгоритмы в большинстве были известны с 60-х - 70-х. Но например честная деконволюция (томографические задачи) изображений выливается в итоге в решение системы из миллионов уравнений. Благо матрица там разреженная и есть методы, а то ведь в лоб такое даже сейчас не решить за разумное время.

Эти методы до недавних пор «честно» не применяли для обработки фотографий и тем более видео. Хотя в учебниках по математическим методам примеры обработки изображений еще в 80-х были.

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

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

Кто работает в kolibriOS?

Слышал, что есть истории успеха по засовыванию в эмбедщину.

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

всё так - но это не прогресс переднего края

это «ликвидация отсталости» возможностей массового потребителя.

крч коммунизьма близиться.

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

При таком использовании for компилятор код не исполнит, только проверит. У запятой – исполнит.

В чём разница по сравнению с

"Pascal ", "suxx!";

?

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

Не понял вопрос.

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

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

всё так - но это не прогресс переднего края

Ты не потерял нить обсуждения? Речь зашла о том, что задачи те же, что и 20 лет назад и разговоры о том, что современные мощности обычным пользователям не нужны, если бы не раздувание сложности. Например, в вебе.

Я привел примеры задач, которые на 20-летних писюках не решались вообще или с большим трудом.

Хотя конечно много задач для которых и тех компов достаточно. К примеру, на работе есть MS Office 2003-го года с плагинами для поддержки более новых форматов и он более, чем устраивает. Он мог бы работать и на P-III. Правда, таки медленнее, чем на Core 2 Duo.

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

видео было немыслимо на обычных ПК 20 лет назад

контр аргументы был что почти 40 лет назад журналисты БАЙТА вполне мыслили «немыслимое» и следовательно за 20 лет это мыслимое вполне могло стать обыденным - ибо журналисты обычно «фантастят ближнего прицела» для накачки спроса на уже пущенного в серию либо уже почти вышедшее из лаборатории.

и кста если оставить в стороне идущий прогресс в алгоритмах

то кратный рост в производительности железа (переход на меньший шаг в техпроцесе печки процов - который уже не такой галапирующий как до середины нулевых - а по меньше 10% вгод - поэтому и рост в сторону увеличения потоков - что натыкается на закон Амдала) - почти полностью съедается несущественным и/или падением среднего уровня программистов ибо реально ща выпустить большую партию микроконтроллеров дешевле стоит и заложить в них на несколько порядков ресурсов чем необходимо и достаточно чисто для компенсации дефицита квалифицированных программистов сих железок

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

контр аргументы был что почти 40 лет назад журналисты БАЙТА вполне мыслили «немыслимое» и следовательно за 20 лет это мыслимое вполне могло стать обыденным - ибо журналисты обычно «фантастят ближнего прицела» для накачки спроса на уже пущенного в серию либо уже почти вышедшее из лаборатории.

Контраргументы к чему?

Извини, но такое ощущение, что мы каждый о своем говорим =)))

Моя мысль, что ПРАКТИЧЕСКОЕ и МАССОВОЕ применение того о чем там мыслили журналисты БАЙТА стало возможно на современных компьютерных мощностях. Раньше просто невозможно было.

почти полностью съедается несущественным и/или падением среднего уровня программистов ибо реально ща выпустить большую партию микроконтроллеров дешевле стоит и заложить в них на несколько порядков ресурсов чем необходимо и достаточно чисто для компенсации дефицита квалифицированных программистов сих железок

Где это так, но опять же все компенсируется возросшим уровнем «интеллекта» железок.

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

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

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

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

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

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

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

Раньше просто невозможно было.

это тавтология - ибо возможно стало когда стало возможно - вон есть много баек о возможно/не_возможно про ЭВМ в РИ до 1993.

не случись(али в иных датах и местах) микропроцессорной … в течении 1970ых (а там если по эволюции того же байта ( точнее «комьюнити» вокруг) посмотреть выглядит как прекрасный пример оутсорса (де жавю прям) – как кто-то метко высказался социология(корректней наука о человечестве в целом) - это квантовая физика с постоянной планка == 1 (т.е макро)

крч интересно мир «само устроен».

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

с квадрокоптерами забавный факт - Вирт ими с середины 90ых занимался - чисто совпадение.

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

Зайдите на zx-pk.ru, там целый раздел про РКшки. Их до сир пор паяют!

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

Вы игнорируете эффект масштаба: да, труд программиста дороже (и то не всегда, по факту) стоимости одной планки на 8Гб. Даже двух. Но когда речь заходит о тысячах рабочих мест, где используют неоптимальный софт - масштабы затрат совсем другие. И стоимость «апгрейда ради апгрейда» совсем другая. А сейчас, как правило, имеет место именно «IT-таджикинг», когда вместо одного дорогого «экскаватора» нанимают сотню дешевых аутсорсеров - с соответствующими результатами.

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

Обратите внимание (да, там виндовая проприетарщина с триалом, но все же) на продукцию Topaz gigapixel https://topazlabs.com/gigapixel-ai/ - то, что их софт вытворяет с фото и видео было немыслимо на обычных ПК 20 лет назад. Формально конечно чистка от шума и прочее и тогда были, но это действительно новое качество.

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

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

дык эта .

солнышко светит.

стиглиц цена неравенства

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

ваще в некотором смысле «конец вечности»

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

нужно марс осваивать - тогда IT-таджикинг перестанет так нужен.

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

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

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

Вы опять игнорируете очевидное: железо в 99% случаев УЖЕ ЕСТЬ. Просто так покупать новое, потому что программист Васян так сказал, никто не хочет - для денег всегда есть лучшее применение, чем замораживать их в железе (и платить налоги с имущества). Не забывайте - падает и нынешнее сырое «оттестируем на пользователях» неоптимизированное ПО, а user - бывает не только частник с единичными покупками, но и бизнес, считающий СВОИ деньги. И для этого бизнеса IT - далеко не всегда прямой источник дохода (сколько раз слышал - «мы тут деньги зарабатываем, а эти компьютерщики только тратят»).

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

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

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

Звиняйте, но когда БД, к которой подключено всего 5 клиентов (4 ПК и на самом сервере БД), периодически фризится на пару минут, это бесит, если в это время надо обслужить клиента.

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

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

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

каков объём данных в БД?

Примерно 30 тыс записей, часть которых помечена как «мусор» и не отображается.

БД сделана на основе FoxPro, именуется ACT-торговля и разрабатывается уже много-много лет.

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

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

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

не работайте со жмотами считающими деньги

У тех кто деньги не считает - они быстро заканчиваются почему-то...

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

Нельзя заниматься СУБД и не слышать про FoxPro. Может, для вас и dBase пустой звук?!

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

Т.е. любой переход – вопрос остановки бизнеса на неопределённое время.

Но вопрос чисто теоретический, т.к. фирма ликвидировалась. Правда, пришедшая на замену с 1С тоже не шоколадно. Крива сляпанная 1С – это худшее, что есть для работы.

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

как с foxpro так и с dbase, судя по всему к счастью, не работал. работал с postgresql, mysql, из nosql с mongodb и firebase/firestore.

почему остановки? 30,000 записей сконвертировать минутное дело.

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

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

как с foxpro так и с dbase, судя по всему к счастью, не работал

dBase – это пионер СУБД на ПК, а FoxPro некогда была флагманом СУБД для персоналок, за что и была выкуплена M$.

почему остановки? 30,000 записей сконвертировать минутное дело.

Как раз патамушта FoxPro теперича программируется высокоуровневыми технологиями от M$, ибо теперя FoxPro не просто FoxPro, а Visual. И что там она делает, если в БД ни добавляют, ни убирают записи, а только просматривают, даже без модификаций, сие есть таинство великое, человеческому разуму неподвластное. Причём фризилась она стабильно около 12 дня, а потом случайным образом.

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

Не, хорошо настроенное это работает без сбоев и годами. Вот только реальная стоимость 1С – не кот наплакал. 25 тыс за одно рабочее место БЕЗ настройки. Потому используют то, что уже есть, а не то, что следует.

Ну, например, 1С-Торговля, вместо 1С-нужный-магазин. При этом если надо более 10 рабочих мест, то требуется покупка M$ SQL иначе тормоза.

Вот и считайте стоимость IT-структуры маленького магазинчика: 30 тыс 1 ПК, тыс 5 – ОС с минимальной начинкой, 25 тыс 1 шт. 1С, 5 тыс за настройку, сколько-то тысяч за покупку и установку проводов ЛВС, а если ещё всём так нужный M$ Office? Принтер, сканер или МФУ. ККМ, обязательный доступ в Инет, а он для юриков выше, чем для «физиков».

Так что в совокупности 1 рабочее место обойдётся тысяч в 100. А надо их минимум 3. Т.е. это да, «всего лишь» годовая з/п продавца. Но платить-то надо сразу, ещё до открытия.

Потому используют всякий хлам, лишь бы работало, пока не рассыпется. Ибо замена – это расходы явные и неявные.

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

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

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

Наращивание мощностей, языки, инструменты - всё это стратегии развития. Да они кем-то продвигаются, интересантов много.

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

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

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

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

Вот мы и имеет web 2.0 во всей красе. Удобный джаваскрипт, всё удобство которого в 99.99% направленно на то, что-бы мы поглощали бесполезный контент и радостно причмокивали.

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

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

так вы «сами себе злобные буратины» раз наворотили этого проприетарного говна вместо использования нормальных технологий. 30 тысяч записей это вообще тьфу для любой open source БД. в общем то можно порекомендовать разве что как можно быстрее слезать с этой иглы. если можно просматривать записи уже хорошо. значит можно их оттуда достать всё таки.

wtj12
()
Ответ на: комментарий от mister_VA

вы описали ситуацию «обратных величин»

1/n VS n

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

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

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

qulinxao3 ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.