Насколько вообще полезно изучение книг?23.04.2024, 16:45. Показов 7908. Ответов 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
|
||
|
2469 / 1615 / 741
Регистрация: 17.03.2022
Сообщений: 5,262
|
||
| 04.05.2024, 18:43 | ||
|
Я вроде не самый плохой программист. Реально, конечно, судить не мне, но по формальным признакам это вроде так. Более того, я вроде не самый плохой физик, а обсуждаемое в упомянутой теме прямо относится к области моих профессиональных интересов. Однако, хотя я ее исправно читаю, я до сих пор так и не смог понять, что вы, собственно, хотите получить. Так что дело не в "привычном багаже", а в формулировке задачи, которая отсутствует. В 99% случаев нет никакой проблемы в том, чтобы что-то решить. Куда больше проблем в том, чтобы понять, что нужно человеку, который не может даже сформулировать задачу - и в том, чтобы угадать, что ему на самом деле хочется, и в том, чтобы сформулировать решение так, чтобы он его хотя бы в первом приближении понял.
0
|
||
| 05.05.2024, 05:18 | |||||
|
Если я понял задачу правильно, то она решается в два действия: первая производная вдоль траектории даст скорость, вторая - ускорение. Ну а ускорение однозначно связано с массой по Ньютону (о релятивистском подходе явно речь не шла, но тоже не слишком сложно). Как конкретно реализовывать? Как душа пожелает и скилл позволит. Если траектория задана аналитически, то и производные можно взять явно. А можно и численными методами. Если траектория задана таблично, можно довольствоваться ломаной, а можно сгладить сплайном или чем попроще. Словом, выбирайте подходящий вариант по вычислительным затратам и требуемой точности. Лично я в подобные темы не лезу, если там уже есть несколько ответов. Наверняка есть правильные. P.S. Мы куда-то ушли от основной темы далеко в сторону. Так что с книгами-то делать будем? Сдавать в макулатуру? Сразу жечь, чтобы остановить эту чуму? Или еще какие варианты?
0
|
|||||
| 05.05.2024, 14:48 [ТС] | ||
|
- вот моя сцена (вид сверху). Вот машинка (иномарка или ГАЗ). Мне надо чтобы она проехала вот по этой улице а потом свернула сюда. Вращение колес и все остальное должно вести себя корректно (знаю что движок это умеет). Да, понимаю, маршрут задаю/обеспечиваю я И что, такой юзер глуп? Я так не считаю. "Отсутствует формулировка"? Нет, присутствует, хотя конечно совсем не в том виде чтобы начинать писать код. Но юзер совсем не обязан "раскладывать по полочкам" и влезать в каждую мелочь, его дело оплатить работу и вести себя прилично. Так чего же Вы "не поняли"?
0
|
||
|
2469 / 1615 / 741
Регистрация: 17.03.2022
Сообщений: 5,262
|
||
| 05.05.2024, 15:19 | ||
|
1
|
||
| 06.05.2024, 13:22 [ТС] | ||
Тогда надо понимать "цену вопроса", что это, скорее всего, небольшая подзадача, возникшая по ходу дела, решение ожидается в течение 2-3 дней. В такой ситуации нанимать "доформулирующего" явно неуместно. Еще хуже если таковой найдется, тогда "мы с вами" (скажем так) будем не нужны и потеряем заказчика, а может и репутацию. Такие предложения называются "просить мамину сисю"
0
|
||
|
2469 / 1615 / 741
Регистрация: 17.03.2022
Сообщений: 5,262
|
|||
| 06.05.2024, 13:43 | |||
|
Так что в обсуждаемой теме вы успешно демонстрируете то, что получается, если подобными познаниями пренебречь: из вас уже шесть дней вместо требуемых 2-3 никто из пока сохранивших энтузиазм участников не может извлечь внятную постановку задачи.
2
|
|||
| 06.05.2024, 15:10 [ТС] | |||||
Объясняли типа
![]() Школьную физику помню, с движком работаю не первый год (пусть не все время но от случая к случаю). Я специально привел этот пример чтобы показать: со знаниями здесь практически у всех все в полном порядке, их предостаточно. А вот решений почему-то не видно. В чем дело?Да, и я не против что Вы - "более знающий", на здоровье. Но, блин, интересно, почему? Что же такого Вы знаете?
0
|
|||||
|
2469 / 1615 / 741
Регистрация: 17.03.2022
Сообщений: 5,262
|
|||
| 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,020
|
|||
| 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
|
|||
|
Модератор
3140 / 2288 / 469
Регистрация: 26.03.2015
Сообщений: 8,900
|
||
| 05.06.2024, 17:17 | ||
|
p.s. Книгу Страуструпа Вы читали?
0
|
||
| 05.06.2024, 17:17 | |
|
Насколько вообще важен алиас в адресной строке URL вместо id и т.п Массив структур: определить общее число книг в библиотеке, наличие книг по автору, наличие книг по названию Насколько плоха и насколько хороша такая сборка? Ваше мнение Насколько плоха и насколько хороша такая сборка? Ваше мнение Насколько опасны вирусы, насколько они могут навредить? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
|
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
|
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701
Купил два термопринтера QR701.
На сэлф-тесте написано:
Language: PC936 (GB18030).
Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
|
|
Создание формы заимствованного документа
Maks 03.08.2026
Задача:
Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также
табличная часть со следующими реквизитами:
- Расчетный счет покупателя. . .
|
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача:
В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
|
Почему SEO не начинается с ключевых слов: что проверить до написания текстов
Neotwalker 01.08.2026
Когда владельцу сайта предлагают заняться SEO, первым шагом часто становится сбор запросов и написание текстов.
Логика кажется понятной:
1. Находим ключевые слова.
2. Добавляем их на. . .
|
Знание — сила: Доктрина интенциональности знаний, углубление в формулу
Hrethgir 01.08.2026
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11957&stc=1&d=1785567302
Знаменитый афоризм Фрэнсиса Бэкона «Знание — сила» (Scientia potentia est) в массовой культуре принято понимать. . .
|