Насколько вообще полезно изучение книг?23.04.2024, 16:45. Показов 6543. Ответов 106
Метки нет (Все метки)
Добрый день
А насколько вообще полезно изучение "книг"? (бумажных сейчас вряд ли, поэтому в кавычках) Ну или вообще, теории? Вот мой личный опыт/мнение Не, ну книгами конечно "интересуюсь", когда вижу ссылки на "крутых авторов" - обычно стараюсь скачать и глянуть. Но толку, прямо скажем, немного Увы, все сводится к "пролистыванию по диагонали", при этом в примерно половине случаев вспоминаю что это уже видел. Не помню книги которая меня бы действительно увлекла, и я бы читал ее запоем и восхищался - и это конечно плохо. Очень раздражают обильные благодарности "всем кто помогал" - пока добрался до сути, половину настроя уже растерял Если дальше какой-то мутный пример на злополучной жабе - то на этом все и кончается.По содержанию заметны типовые варианты. Напр "фундаментальные знания". Кстати когда инета не было - "заходило" намного лучше (тот же Вирт). Должен ли нормальный программист знать алгоритмы сортировки? Смутно помню "пузырьковая" и "шейкер", но только названия, по сути знаю только "быструю" что пришлось когда-то писать. Ну вот совершенно тупой подход: освоить std::sort без всяких философий. Чем это плохо? Что мы теряем, и не являются ли все эти чтения чисто понтами? По моим наблюдениям в 98% случаев std::sort прекрасно проходит, никакие фундаментальные познания не нужны. Хотя 2% есть, напр косячат с транзитивностью. Из той же оперы дерево - та запомнил просто что std::set - красно-черное дерево, дежурное O = log(N) - и вся любовь. А если кто доклепается, то всегда можно задавить типа "профессионал не должен тратить свое время на такие детали". "Потому что работы очень много" (Ваня). "Коллеги не поймут" и.т.п. Другая категория - эффективная разработка программного обеспЕчения. Здесь надо спокойно относиться к само-восторгам типа "какую крутую систему мы сделали!". Как и к упоминаниям о SmallTalk, Ada и, оказывается, Мухтар-то ..собака! Если научиться гонорировать всю эту хрень - такие книги бывают совсем не плохи. Иногда я замечал что они рассказывают вещи к которым я приходил через долгий (и не безошибочный) опыт. Так может внимательно посмотреть что еще говорят (типа "учиться на чужих ошибках")? Увы, это не работает. Ну и, пожалуй, самая популярная категория: "сборник рецептов". Особенно если замешано API (напр OpenGL). Откровенно шкурный подход с целью продать "книгу". Ну конечно, "с примерами". Ну а "почему нет"? Что плохого в быстром старте с нуля - ведь для этого такие книги весьма полезны. В общем
0
|
||
| 23.04.2024, 16:45 | |
|
Ответы с готовыми решениями:
106
С каких книг начать изучение БД? С каких книг начать изучение Си? |
| 04.05.2024, 13:47 | ||||||
|
У меня ситуация совершенно другая. Мне нужна толковая молодежь, которая придет ко мне в лабораторию не с нуля, как остальные, а хорошо подготовленной для решения наших задач. Поэтому я набираю группу всего 8 человек (во-первых, моя учебная лаборатория не так велика, у меня просто не хватит места; во-вторых, я не смогу принимать выпускников на работу десятками: как бы они ни были хороши, все равно стажера на первых порах кто-то должен нянчить, у меня просто не хватит наставников). Поэтому в начале учебного года у меня наплыв желающих получить дополнительное образование. Провожу собеседование, стараюсь отобрать лучших. Стараюсь без предвзятости, но обычно лучше всех результаты собеседования у кафедр нанотехнологии/микроэлектроники и радиофизики (учебная лаборатория находится на факультете физики Южного федерального университета). При прочих равных условиях предпочтения второкурсникам (ибо ущербная четырехлетняя система бакалавриата просто не оставляет времени учиться). Прошедшие отбор стараются максимально использовать свой шанс (Вы ведь не хуже меня знаете цены на курсы сегодня, если только это не дядя Вася на Ютубе от скуки решил поучить народ уму-разуму). Тем более что если вдруг по ходу дела выясняется, что кто-то переоценил свои возможности, мы просто прощаемся. Но вообще мне с трудом удается разогнать студентов из лаборатории до 22 часов (слава богу, хоть домой ехать недалеко). Те, кто очень хотел, но не прошел (или просто не хватило мест), могут посещать лабораторию во внеурочное время со своими вопросами. У кого-то ардуина не желает слушаться, у кого-то гитарный усилитель замолчал, кто-то придумал мегадевайс, но не знает, с чего начать. Хорошим людям надо помогать.
Понятия не имею (пока) о ваших "показателем класса", но лично я, если бы ко мне приходили кандидаты с таким набором, был бы весьма доволен и не стал строить лабораторию. Еще пример. Я упоминал коллегу, "вечного джуна". Тут главная проблема, что мир делится на "я" и "они". На совещаниях его реплики сводятся примерно к "вот вы хотели это - вот вам, долбитесь дальше сами", только немного вежливее. Учить таким навыкам я не умею, и даже не знаю, возможно ли в принципе.
0
|
||||||
| 04.05.2024, 18:21 [ТС] | ||
|
Вот пример что уже упоминался выше. Такие темы имеют мало ответов и отвечающих 1-2, не более. Хотя "много ответов" совсем не показатель, а может и наоборот, огромное число собирают холивары и глупейшие темы. Большинство заходит на форум отдохнуть и потрепаться, в этом нет ничего плохого. Ну ладно, почему же так тяжко идет? Ведь задачка совсем не выглядит (супер) сложной, да и "абстрактной" ее не назовешь. Напр в любой игре это наверняка делается, это не какая-то там олимпиадная комбинаторика. Думаю причина - не срабатывает привычный багаж знаний/опыта. "Я такого не делал, значит лучше помолчать" - вполне разумно. Также неясно "а где узнать". Ну да, вроде школьная физика. Плюс понятие как "в принципе" работает движок (симуляция, шаг по времени) - в рамках общей культуры/эрудиции. То есть со "знаниями" проблем нет. Ну и что, как решать? И куда смотреть, что нужно освоить/овладеть - хз. И любимое "тыц ссылкой" тоже проблематично, нагуглить такое непросто (хотя наверно и возможно). Предлагать что-то самому, чисто велик - тоже так себе. Человек с опытом понимает что такой велик, скажем, "уязвим", очень может быть что самостоятельные решения окажутся "не совсем хороши", а то и наивны, "непрофессиональны" и.т.п. В такое положение лучше не попадать. Ну вот и не нравятся такие темы ![]() Да, и краткая формулировка (движение по заданному) - это всего лишь "хотелка". Начальная. А надо предвидеть что будет хотеться дальше (телепаты вышли из отпуска). А не ждать пока тимлид даст пинка. В общем, я очень сомневаюсь что все достигается великими "знаниями"
0
|
||
|
2245 / 1504 / 692
Регистрация: 17.03.2022
Сообщений: 4,794
|
||
| 04.05.2024, 18:43 | ||
|
Я вроде не самый плохой программист. Реально, конечно, судить не мне, но по формальным признакам это вроде так. Более того, я вроде не самый плохой физик, а обсуждаемое в упомянутой теме прямо относится к области моих профессиональных интересов. Однако, хотя я ее исправно читаю, я до сих пор так и не смог понять, что вы, собственно, хотите получить. Так что дело не в "привычном багаже", а в формулировке задачи, которая отсутствует. В 99% случаев нет никакой проблемы в том, чтобы что-то решить. Куда больше проблем в том, чтобы понять, что нужно человеку, который не может даже сформулировать задачу - и в том, чтобы угадать, что ему на самом деле хочется, и в том, чтобы сформулировать решение так, чтобы он его хотя бы в первом приближении понял.
0
|
||
| 05.05.2024, 05:18 | |||||
|
Если я понял задачу правильно, то она решается в два действия: первая производная вдоль траектории даст скорость, вторая - ускорение. Ну а ускорение однозначно связано с массой по Ньютону (о релятивистском подходе явно речь не шла, но тоже не слишком сложно). Как конкретно реализовывать? Как душа пожелает и скилл позволит. Если траектория задана аналитически, то и производные можно взять явно. А можно и численными методами. Если траектория задана таблично, можно довольствоваться ломаной, а можно сгладить сплайном или чем попроще. Словом, выбирайте подходящий вариант по вычислительным затратам и требуемой точности. Лично я в подобные темы не лезу, если там уже есть несколько ответов. Наверняка есть правильные. P.S. Мы куда-то ушли от основной темы далеко в сторону. Так что с книгами-то делать будем? Сдавать в макулатуру? Сразу жечь, чтобы остановить эту чуму? Или еще какие варианты?
0
|
|||||
| 05.05.2024, 14:48 [ТС] | ||
|
- вот моя сцена (вид сверху). Вот машинка (иномарка или ГАЗ). Мне надо чтобы она проехала вот по этой улице а потом свернула сюда. Вращение колес и все остальное должно вести себя корректно (знаю что движок это умеет). Да, понимаю, маршрут задаю/обеспечиваю я И что, такой юзер глуп? Я так не считаю. "Отсутствует формулировка"? Нет, присутствует, хотя конечно совсем не в том виде чтобы начинать писать код. Но юзер совсем не обязан "раскладывать по полочкам" и влезать в каждую мелочь, его дело оплатить работу и вести себя прилично. Так чего же Вы "не поняли"?
0
|
||
|
2245 / 1504 / 692
Регистрация: 17.03.2022
Сообщений: 4,794
|
||
| 05.05.2024, 15:19 | ||
|
1
|
||
| 06.05.2024, 13:22 [ТС] | ||
Тогда надо понимать "цену вопроса", что это, скорее всего, небольшая подзадача, возникшая по ходу дела, решение ожидается в течение 2-3 дней. В такой ситуации нанимать "доформулирующего" явно неуместно. Еще хуже если таковой найдется, тогда "мы с вами" (скажем так) будем не нужны и потеряем заказчика, а может и репутацию. Такие предложения называются "просить мамину сисю"
0
|
||
|
2245 / 1504 / 692
Регистрация: 17.03.2022
Сообщений: 4,794
|
|||
| 06.05.2024, 13:43 | |||
|
Так что в обсуждаемой теме вы успешно демонстрируете то, что получается, если подобными познаниями пренебречь: из вас уже шесть дней вместо требуемых 2-3 никто из пока сохранивших энтузиазм участников не может извлечь внятную постановку задачи.
2
|
|||
| 06.05.2024, 15:10 [ТС] | |||||
Объясняли типа
![]() Школьную физику помню, с движком работаю не первый год (пусть не все время но от случая к случаю). Я специально привел этот пример чтобы показать: со знаниями здесь практически у всех все в полном порядке, их предостаточно. А вот решений почему-то не видно. В чем дело?Да, и я не против что Вы - "более знающий", на здоровье. Но, блин, интересно, почему? Что же такого Вы знаете?
0
|
|||||
|
2245 / 1504 / 692
Регистрация: 17.03.2022
Сообщений: 4,794
|
|||
| 06.05.2024, 15:20 | |||
|
0
|
|||
| 07.05.2024, 13:29 [ТС] | |||||
Выходит , дело не (только) в знаниях. Тогда в чем? Как Вы это объясните?Задачка интересна своим "развитием", какие проблемы возникнут после ее очевидного решения? Было бы интересно "поиграть в телепатов" угадывая следующий запрос юзверя. Но увы, до этого дело не дошло.
Ну это наверно вряд ли возможно
0
|
|||||
| 08.05.2024, 04:21 | ||
|
Попробую по такому принципу: реальная проблема из тех, которые лично мне периодически докучают, и теория, которая позволяет с ними справиться. Пока книги буду обозначать вкратце; если кто заинтересуется какой-то конкретной и по этим данным не сможет найти подробности в моем обзоре, о котором я уже упоминал ранее, - спрашивайте, помогу чем могу. Набросал пока первое, что пришло в голову. Если видите, чего явно не хватает, дополняйте. 0. Со временем пришло понимание, что учили не тому, что реально нужно, а тому, что преподы знали сами и когда-то зафиксировали в устаревшей учебной программе. Нужно доучиваться самому, но нет четкого понимания, чему и по каким материалам. Решение: SWEBOK. 1. Есть унаследованный код невысокого качества, который необходимо поддерживать (или еще хуже - развивать). Документации нет или есть такая, что лучше бы не было. Решение: Физерс, "Работа с унаследованным кодом". 2. Нужно повысить качество разрабатываемого кода без снижения производительности разработчиков. Решение: паттерны, TDD/ATDD/CI, рефакторинг, QA. 3. Стратегические цели заказчика в целом понятны, но детали пока расплывчаты и представление о том, как это делать, слишком часто меняется. Решение: Agile, Scrum. 4. Репозиторий проекта больше похож на воронье гнездо. Решение: паттерны управления базой кода. 5. Выпускается не один продукт, а интегрированное семейство. Чтобы выпустить и скомплектовать нужный вариант, нужно проделать много ручной работы, легко ошибиться. Решение: управление конфигурацией, CD. 6. Когда проект зашел слишком далеко, пришло запоздалое понимание, что с самого начала кое-что нужно было делать не так. Вот бы начать все с чистого листа... Но заказчик и руководство не одобряют. Решение: рефакторинг с использованием шаблонов, метод микадо. 7. Существует огромное количество метрик, в которых можно запутаться. Нужно небольшое число, которое вовремя сообщит о надвигающихся проблемах. Решение: "Ваш код как место преступления". 8. Как получить объективную картину текущего состояния проекта: какие требования заказчика удовлетворены полностью, какие частично, в каких еще конь не валялся? И желательно иметь возможность получить эту картину в любой момент без больших затрат. Решение: "мост черед коммуникационную пропасть" по Гойко Аджичу. 9. Проект разросся, стало трудно охватить его разумом весь. Кое-как помогает разбиение на подсистемы, но все труднее найти человека, который знает о системе все. Знания разбросаны по разным источниками или передаются лишь устно. Решение: системная инженерия, SysML.
0
|
||
|
|
|
| 12.05.2024, 12:16 | |
|
Тут было написано очень много дельных и забавных вещей.
Добавлено через 24 минуты Тут было написано очень много дельных и забавных вещей. Расскажу о своих подходах - может быть кому-то будет полезно. Я уже очень давно занимаюсь коллекционированием книг и статей на тему программирования. Разумеется, прочитать все эти 48740 книг я просто не в состоянии. Поэтому, у меня есть отдельная папка ИЗБРАННОЕ - в которой находится 1479 книг. Я постоянно держу ее в актуальном состоянии - добавляя и удаляя нужные мне в данный момент и в данное время. Про алгоритмы. Да, есть две точки зрения - знать их обязательно и знать их необязательно. Я считаю - что базой хорошего программиста является знание парадигм. Многие мои знакомые программеры были в шоке, когда я им показывал примеры не класс-бейзед - а прототипного ООП. Как правило реакция была такая - "а что, так можно???" Такая же реакция как правило идет на встраиваемые языки. Ну и насчет соображалки. Я тогда учился на первом курсе - а моим шефом назначили пятикурсника. Основным средством разработки тогда был Борланд паскаль 5.0. И вот нам дали задачку - отрисовать схему промышленной установки. Растр тогда был очень тяжеловесным - 16Мгц машинка его просто не тянула - поэтому все рисовалось в векторе операторами line bar poligone. Я сразу понял, что если я на глаз буду все эти схемы рисовать, морковка заговеет. За 2-3 часа я быстренько сооружаю простейший векторный редактор, который генерирует паскалевский код. После чего за полчаса на глазах у изумленного шефа отрисовываю все нужные нам пять экранов. Я здесь когда-то рассказывал эту историю, но повторюсь. Мой приятель приходит на собеседование в студию Лебедева. Ему задают вопрос - какие языки программирования Вы знаете? На что Гриша отвечает - я умею решать задачи при помощи компьютера. И вопросов больше к нему не было.
1
|
|
|
282 / 485 / 12
Регистрация: 21.06.2019
Сообщений: 3,018
|
|||
| 13.05.2024, 16:43 | |||
0
|
|||
|
|
|||||||
| 14.05.2024, 10:19 | |||||||
|
Обозреть их очень легко - прочитать оглавления. Добавлено через 9 минут Да, извиняюсь, ввел в заблуждение, книг на самом деле 189 -- я не учел, что есть html-ные с разбивкой по главам. Тут очень всё на самом деле просто - 27 тематических папок - в среднем по 7 книг на папку. Этого достаточно. Добавлено через 13 минут Вот конкретный список Кликните здесь для просмотра всего текста
0
|
|||||||
| 02.06.2024, 21:02 [ТС] | |||
Ну в общем, как всегда, "не зашло". И книга хорошая, и мысли, но.. хватило меня на день, ну может на полтора. Вспомнился пример из моей практики. Решил я заменить самопальный строчник на QString. Это заняло ровно месяц (март). Причем строчник вроде был сделан "по уму". Базовый класс AbstractString , от него наследуются String31, String63, String255 (фиксированный размер), и DynamicString (переменной длины). Конечно сейчас экономить на таком никто не будет, но код писался еще в 90-е годы (и, надо сказать, работал достойно). Беда была в том что, во-первых, очень мало сервиса (по сути только оператор +), и как-то очень хреново было передавать его по значению (уже и не помню как). В общем, каждое общение с ним портило настроение. Ну и юникод тоже требовался. Ну что, как портировать? Я начал мочить всех: переименовал хедер этого класса, а исходник выкинул из проекта. Конечно проект стал нерабочим в течение нескольких недель (и это неприятно). Начал затыкать тысячи ошибок компиляции. Ну слава богу, подавляющее большинство из них простые - меняй старый на QString. Правда при этом потребовалось убирать костыли для старого, что несложно, но случаев-то много и в каждом надо (немного) думать. Потом обнаружился еще с(т)ервис в виде зависимых классов: типа если юзер ввел @*2 то это умножение текущего значения на 2. Портировать это чисто сил не хватило - перегнал QString в unsigned char[] и обратно. По ходу дела обнаружил с пяток наборов "полезных строковых утилит", часто дублирующих друг друга (разные программисты решали свои строковые проблемы), их тоже пристроил. Правильно ли я действовал? Может мне сначала надо было "внимательно изучить" теорию, рекомендации лучших собаководов, и тогда уж, вооружившись знаниями... ? Не знаю, лично я думаю что нет. Объективно случай хотя и "объемный", но простой - с функционалом (что хотим получить) все ясно. В общем, выходит "книги - сами по себе, работа - сама по себе", связи практически нет Добавлено через 4 часа 6 минут Ну а может просто "нет привычки"
0
|
|||
| 03.06.2024, 17:58 | ||
|
А мне как раз сегодня написал техлид из Canadian Imperial Bank of Commerce. Я ему недавно рекомендовал Физерса и Кериевски (удивительно, но в Канаде большинство программистов тоже не читают книги; я читал об этом у МакКоннелла, но думал, что он просто ворчит и на деле все не так плохо). Сердечно благодарил за рекомендацию, сказал, что благодаря этим книгам решил ряд неприятных проблем с кодом, которые ему подарили аутсорсеры из солнечной Индии (хотя, по справедливости, "индусский код" создается сегодня в изобилии по всему глобусу, включая Россию-матушку). Правда, он пользуется английскими первоисточниками. Я тоже в свое время читал именно их, перевод не смотрел. Возможно, переводчики сильно испортили русскую версию, так нередко бывает.
0
|
||
| 04.06.2024, 18:52 [ТС] | |||
) , не стоит так уж в это верить. Интересно было бы разобрать что и как удалось решить, но этого ж не будетДобавлено через 1 час 30 минут Я к чему: вот выше привел пример - это тяжёлая работа исправить множество ошибок. Еще тогда подгадило IDE - убрали возможность компились один/текущий файл. В какой-то момент кажется что "плита кода" просто раздавит и довести до конца не хватит дыхалки. Конечно хотелось бы получить помощь, хотя бы совет "в тему", ну хоть что-то. Но...
0
|
|||
|
Модератор
3132 / 2279 / 469
Регистрация: 26.03.2015
Сообщений: 8,870
|
||
| 05.06.2024, 17:17 | ||
|
p.s. Книгу Страуструпа Вы читали?
0
|
||
| 05.06.2024, 17:17 | |
|
Помогаю со студенческими работами здесь
80
Насколько вообще важен алиас в адресной строке URL вместо id и т.п Массив структур: определить общее число книг в библиотеке, наличие книг по автору, наличие книг по названию Насколько плоха и насколько хороша такая сборка? Ваше мнение Насколько плоха и насколько хороша такая сборка? Ваше мнение Насколько опасны вирусы, насколько они могут навредить? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|