Как стать автором
Обновить

Комментарии 47

Хотел пошутить «Хабр не место для жалоб», а потом мне взгрустнулось. Почему? Да потому что добрая половина книг про программирование (если не больше) мечется от сложной теоретической академичности к алгоритму «введи это, введи то, опа — оно работает», как в примере выше. Наверно, нормально можно изучить только на практике. Плюс всегда есть сложность, что на написание книги и её издание зачастую уходят годы, а за это время уже многое может поменяться.

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

Судя по этим страницам, книга скорее не сложная, а просто ни о чем не рассказывает

Меня вообще умиляют вот эти "открой то, кликни сюда, почешись вот здесь и готово". Зачем человеку знать что и для чего он делает, зачем ему понимать как это работает, пфф. Это же надо уметь объяснять, структурировать информацию и делать прочие сложные штуки. Вместо этого влепим недогайд. Чтобы потом люди боялись шаг в сторону ступить, а то ведь будет не по гайду, а как будет - нипанятна, сложна...

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

Меня вообще умиляют вот эти «открой то, кликни сюда, почешись вот здесь и готово». Зачем человеку знать что и для чего он делает, зачем ему понимать как это работает, пфф

Да ладно бы ещё все эти «кликни здесь, введи это» сработали. Но в большинстве случаев у читателя что то идёт не так — начиная от изменения адреса страницы, до отсутствия какой то утилиты или библиотеки.
От таких книг больше вреда

Это вы еще не видели книги по PHP в 2000-2010... с кучей дыр и тп. Примерного с того времени не прочитал ни одной книги по коду. Есть документация, статьи, примеры и тп. Достаточно. Книги не успевают за кодом, а тут просто попытка попасть в рынок думаю.

вообще серия 'для чайников', это тот еще жанр, помню в гуглплее от нечегоделать листал список книг которые можно купить, так там были перлы в стиле 'андройд 4.1 для чайников' (при актуальной на тот момент 8 версии) и тоже с ценником в 2-4тыр… за бл… электронную книгу, которая, судя по скринам — просто мануал в стиле 'учимся устанавливать обои в цветочек'
Главное выпустить несколько таких книг — Android 4, Android 5 и т.д., тогда можно брить чайников несколько раз) Хотя их не жалко, лох чайник не мамонт — он не вымрет.

Не соглашусь, что прям все - я начинал путь в программировании с "C++ для чайников" и, будучи, 12-и летним пацаном, читал её с огромным интересом. И по содержанию претензий особых нет - работа с памятью, типами и даже указателями и ссылками там изложена достаточно хорошо. Проблемы с изложением начались на векторах, но к тому времени читатель уже научился искать информацию самостоятельно :)

Зачем писать книги? Сделать свою обучающую платформу гораздо выгодней.

Интересное предложение. Как бы Вы эту платформу описали?

Интерактивная платформа. Набор уроков по выбранному ЯП. Каждый урок это: короткое видео по теме + текстовое описание + задание, которое надо сделать. При этом надо, чтобы «компилятор» принимал только уже пройденные темы. Всё в одном окне. 100 уроков хватит с головой для базового знакомства с любым ЯП.
Для базового знакомства обычно достаточно cheatsheet, если это не особо хитрый язык.
Думаю, что cheatsheet это уже для опытных программистов, которым нужны особенности реализации конкретного ЯП. А если человек только учится программировать, выбрав для этого какой-то ЯП, то тогда, книги и курсы — самое то.
  1. Почему именно видео? Чем плоха простая компьютерная графика (анимация, например)?

  2. Что за «компилятор»? Вы имеете в виду возможность запуска интерпретатора?

  3. Курс должен быть реализацией некоторой методики, а методику кто должен составлять? Программист? Или специальный обученный специалист (например, по психологии)?

  4. Помниться, была такая книжка по Дел(ь)фи Сергея Орлика с реконструкцией внутренних структур. Может быть, нужна какая-то подобная изюминка? Чтобы как-то системно постигать язык программирования.

1. Да, видео или анимация — совершенно не важно, главное визуальная и звуковая информация, так человеку будет намного легче вникать в тему. А потом уже и текст, чтобы глазами можно было быстро искать какие-то детали темы.
2. Ну да, конкретно для Python должен быть строенный интерпретатор. Причем по возможности он должен работать «узко» — только в пределах данной темы + предыдущие темы. Тогда обучение будет идти по нарастающей, чтобы нечаянные «лайфхаки» не нарушали логику обучения.
3. Да, конечно, должна быть методика, но достаточно сделать «от простого к сложному», как преподают в учебных заведениях. Думаю, что разумный программист справится с этим достаточно успешно. Главное, чтобы человеку «с нуля» было все понятно и просто. Чтобы информация подавалась пошагово и только та, которая необходима на данном уроке.
4. Не знаком с этой книгой. Основная цель — это дать человеку, только немного знакомому с программированием простой способ познать данный ЯП. Еще может быть два-три больших этапа: сначала обо всем без нюансов (чтобы почувствовать общий подход, принятый в этой технологии, стать джуном), потом с вариантами реализации (для мидла), для сеньора делать уже может и не надо (а может и надо).
Ну а изюминкой может стать приятный UI/UX — простой и современный одновременно.
Да, видео или анимация — совершенно не важно, главное визуальная и звуковая информация, так человеку будет намного легче вникать в тему.

Я один в упор не могу такое воспринимать? Ужас же, особенно для программирования, это же не изучение дизайна или чего то подобного (хотя и там как по мне текст с иллюстрациями удобнее.
не один, у меня разжижение мозга начинается когда из 25 минутного видео суть в 2х минутах ближе к концу, а тебе надо тыкать в таймлайн пытаясь угадать где…
а уж чтото скопипастить из видео… если нигде больше это не написано… ууу
Причем чем больше опыт, тем больше это бесит, я уже даже книжки читать не могу без раздражения, когда начинается вода 'берем переменную, переменная это… блаблабла 5 страниц' — а книжка вообще про кубер и тебе надо роутинг настраивать
у меня разжижение мозга начинается когда из 25 минутного видео суть в 2х минутах ближе к концу, а тебе надо тыкать в таймлайн пытаясь угадать где
Да, даже хорошую идею можно превратить в ужасную, если преследовать цель не обучение человека, а чтобы он рекламы побольше посмотрел.
а уж чтото скопипастить из видео… если нигде больше это не написано… ууу
Именно поэтому должно быть короткое видео + текст. А пример кода из текста чтобы можно было скопировать.
Причем чем больше опыт, тем больше это бесит
Согласен, я больше держал в голове что-то типа «Python для чайников». Вот сделать универсальный курс для опытных разработчиков намного сложнее, так как не понятен бекграунд каждого из них. Но если взять наиболее распространенные случаи, то можно сделать пару+тройку курсов типа «Python для джавистов», «Python для плюсовиков» и т.д., где будут описаны только отличия двух ЯП.
Да, даже хорошую идею можно превратить в ужасную, если преследовать цель не обучение человека, а чтобы он рекламы побольше посмотрел.

98% видео по языкам и технологиям именно такие
Это даже не цель, достаточно посмотреть какихнить блогеров, особенно забугорных по любой теме, типа 'строим скворечник'
из 30 минут — 20 будет рассуждение -какие хорошие птички, 5 минут почему мы выбрали дерево, а не пластик… и 5 минут — изготовление скворечника

Я конеч понимаю что я старенький и такой формат для меня чужд… но вот да!
Именно поэтому должно быть короткое видео + текст

«Жаль только — жить в эту пору прекрасную уж не придется — ни мне, ни тебе» ©
из 30 минут — 20 будет рассуждение -какие хорошие птички, 5 минут почему мы выбрали дерево, а не пластик… и 5 минут — изготовление скворечника

В тексте такое тоже распространено, просто в тексте можно быстро глазами это пробежать и выкинуть.
просто в тексте можно быстро глазами это пробежать и выкинуть.

именно!
«Жаль только — жить в эту пору прекрасную уж не придется — ни мне, ни тебе» ©
Не, ну мы же должны быть идеалистами, а иначе зачем вот это всё…
мой опыт подсказывает что надо быть реалистами
у меня был начальник — противник бекапов, потому что 'все наши сотрудники ответственные, никто ничего не сломает', 'ограничивать доступ не нужно — это все понимают, никто не накосячит'
ну и чё, через два года отправили drop table в продовую базу в табличку на 200Тб перепутав её с тестовой
и такого очень много… можно долго обсуждать как надо делать книжки, а в реальности и в профи книгах полно воды и тупых ошибок (вроде опечаток в коде или откровенно деприкейтед кода (кирпич с размаху в сторону гугла и его офиц.документацию)… или вообще неверно написанного кода который совершенно случайно работает из-за фазы луны
мой опыт подсказывает что надо быть реалистами… у меня был начальник — противник бекапов
Так он как раз и не был идеалистом. Идеализм это — стараться делать как можно лучше, а подход «мир и так хорош, авось пронесет» — это уже про что-то другое. Хотя в жизни на самом деле трудно различать эти две вещи.
Так он как раз и не был идеалистом. Идеализм это — стараться делать как можно лучше

именно так!
он делал так чтобы код был как можно более меньше, оборудование загружено меньше, усилий на написание и поддержку было ниже
в итоге у нас не было проверки некоторых ошибок, просто потому 'а не нужно косячить', а код который сработает раз в 100 лет и то врятли — в проде не нужен, он там память занимает

разве не идеализм?
Если и идеализм, то выборочный какой-то. Здесь сделаем идеально, поэтому подстраховываться в других местах и не будем. Идеализм + наивизм? )) Надо спросить кого-то хорошо знающего философию…

upd
Я один в упор не могу такое воспринимать? Ужас же, особенно для программирования, это же не изучение дизайна или чего то подобного (хотя и там как по мне текст с иллюстрациями удобнее.
Так можно и не смотреть видео, а сразу к тексту перейти. Просто вы уже опытный разработчик и вам нужны только отличия Python от других ЯП, а сами алгоритмы и подходы у вас уже на уровне интуиции вбиты. А когда человек только знакомится с программированием всё намного сложнее. Но я все таки соглашусь с вами — всё зависит от ЦА такого курса. Можно затачивать обучение только для одной категории ЦА, или сделать удобным для разных ЦА.
Да речь не только по программирование, но и про вещи в которых я новичок.

Да. Мне было бы интересно сделать такой интерактивный самоучитель. Попробую такой сделать на досуге.

Python - хороший первый язык программирования

Не согласен категорически.

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

коробка-автомат плохо подходит для обучения вождению.

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

Питон кстати очень неплохой вариант, учитывая что многие 'старички' ратуют за изучение программирования с Паскаля (того самого досовского)
Кирпич в сторону питона только в том что там динамическая типизация, но это отражение веяний отрасли на самом деле и (хоть я и не согласен) и еще вопрос насколько актуально учить программирование сразу с Си и упарываться управлением памяти если в дальнейшем человек никогда вообще эти знания использовать не будет и даже не будет видеть — зачем он это будет учить?

Это в теории хорошо порассуждать, а пофакту вы предлагаете очень высокий барьер входа

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

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

Это смотря кого вы воспитываете.

а кого мы воспитываем? сеньора-рокстара или рядового миддла?

я вот переживаю о том что сейчас зачастую придя на новую работу, со мной работают сеньоры которые с трудом sql знают и вообще в областях сторонних от их основной специализации очень поверхностно плавают… хотя у них и образвание профильное и на сях они чёто там в институте царапали.
==
будующий рокстар сам выучит то что ему нужно, а кто не выучит — никогда таким не станет даже насильно

а кого мы воспитываем? сеньора-рокстара или рядового миддла?

Программиста, насколько я понимаю. Книга же не во вышиванию крестиком

книга для людей вообще далеких от темы,
хотя интересно было бы почитать обзор на чёнить такое и сравнить
www.amazon.com/C-Dummies-Stephen-R-Davis/dp/0470317264

Коробка автомат отлично подходит для обучения вождению. Ездить в поле на механике можно научить даже обезьяну, наверное. Трудно водить по ПДД в потоке, тут механика ничем не поможет, только будет отбирать внимание у загруженного мозга.

P.S. Учился на механике, потом как-то не подворачивались такие машины. Механика в основном встречается в бюджетном сегменте, купить новую машину в нормальной комплектации с механикой довольно сложно.

Коробка автомат отлично подходит для обучения вождению.

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

Профессиональным инструментом невозможно правильно пользоваться не понимая, какие принципы лежат в его основе.

крамольную мысль выскажу — а как вы считаете что 'правильно?' правильно — это когда бизнесу нравится в метрике стоимость/выхлоп, а не 'код написан по феншую' sad but true как говорится

потом есть куча языков созданных чтобы «научился писать непрофессионал»
Вон например SQL — язык создававшийся для людей далеких от программирования вообще, фактически для менеджеров… и (удивительно для меня было) успешно менеджерами и даже операторами используемый как основной интерфейс в некоторых АРМ-ах

Вы кажется не помните как учились или у вас розовые очки. В процессе обучения придется перечитать тонну всякого хлама и найти там алмазы, которые и будут приносить бабки. Нельзя выучить 100% правильного материала банально потому, что без знания где херня все равно ничего не выйдет (именно поэтому не одобряю всякие курсы ДЛЯ НОВИЧКОВ, где дают самую мякотку).

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

Вот именно, начинать нужно с элементарных основ, постепенно наращивая свои знания. Сначала сборщик мусора, потом - ручное управление памятью, но никак не наоборот.

Сначала коробка-автомат, если учимся ездить по городу в потоке; потом добавляем механику, если нужно. А вот если хочется стать спортсменом, то напротив, езда в потоке вам будет только мешать, а значит, ваш выбор - картинг! Вот там вы будете знакомиться с нужными для "профессионала" вещами - передачами, загрузкой осей, пятном контакта и так далее. Езду по городу добавите потом.

А вот фиг его знает. Мои первые попытки в самообучение программированию стопорились на том что меня бесило то что я не понимаю как работают всякие там методы стандартной библиотеки и сам ЯП под капотом. С мертвой точки все сдвинулось когда почитал про C, немного про asm, и полирнул книгой «Код. Тайный язык информатики».
меня бесило то что я не понимаю как работают всякие там методы стандартной библиотеки и сам ЯП под капотом

так вот это и есть субъективность
Я вообще начинал с бейсика и у меня не было вообще никаких мыслей по поводу 'как оно под капотом работает' и уже сильно позже читал книжку по ассемблеру (просто для общего развития, а не с целью понять как ЯП работает)… а в принципе вернулся я к этому только уже в Яве и Питоне когда уровень задач стал переходить в сеньорские, а за си так вообще не решился взяться до сих пор

Интересно, а какого рода книги могли бы иметь смыл писать? Что могло бы быть полезным для новичков? Что могло бы быть полезным для профессионалов? Может быть, нужны какие-то узко направленные вещи? Например, "разработка ... систем на [ЯП]"...

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

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

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

Установка Python... на Linux?)

Такое ощущение, что автор книги ни питон, ни линукс ни разу в руках не держал.

а это не так тривиально как кажется, коненечно для задач этой книги это кажется оверхедом но по факту:
в убунте системный питон может быть не той версии которая вам нужна
— вы легко и просто установите 3.10 если системная 3.8?
— у вас без проблем заработает pip в таком варианте, учитывая что многие либы ставятся apt-get + pip install?
sudo apt install python3.10
sudo apt install pip3.10

А в чем собственно проблема?

Плюс, я уверен, что новичку вообще не важно, какая у него версия питона. Исходя из своего опыта все версии 3.6+ отлично подходят для всех листингов из книг по питону. Ничего специфического там нет.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории