Похоже, вы новичок на сайте.
Чтобы быстрее понять, о чём здесь идёт речь, советую почитать:
что такое виджеты,
чем они хороши
и каковы их перспективы.
Это сообщение показывается только один раз. Такие же ссылки вы можете найти в правой колонке, в блоке "Рекомендую прочесть"
Янв 29

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

Т. Сегаран, «Программируем коллективный разум».

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

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

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

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

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

После прочтения «Программируем…» мне захотелось поглубже вникнуть в нейронные сети и я купил
С. Толкачев, «Нейронное программирование диалоговых систем».

Осилил её до конца (благо, тоненькая), но исключительно чтобы получить моральное право оставить негативный отзыв.

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

Отсюда вопрос: можете порекомендовать толковую книжку по нейронным сетям?

Share Button

Июл 9

Уф, наконец-то осилил «Рефакторинг» Мартина Фаулера.

Обычно я читаю в книге каждую строчку, включая введение, примечания и заключение, потому что если автор что-то написал, значит посчитал это важным. Но если бы поступил так с «Рефакторингом», закончил бы где-то к сентябрю: уж очень обстоятельно Фаулер описывает каждую мелочь. К счастью, где-то после середины я понял, что это справочник, а не учебник, поэтому нужно читать описание рефакторинга, мотивировку, и только если что-то показалось непонятным, углубляться в технику и разбор примеров. В результате вторую половину книги добил за неделю.

Впечатление.
Книжка, безусловно, полезная, но не для начинающих: теорию ООП и паттерны GoF желательно уже знать. Позволяет немного лучше понять, что происходит в голове крутых программистов. Если пропускать занудные куски, читается очень легко. Кое-какие огрехи в переводе всё-таки есть, но впечатление почти живого общения с умными людьми они не портят. Например, очень забавно наблюдать как Фаулер и Кент Бек (являющийся одним из соавторов) подшучивают друг над другом, в том числе в коде примеров. :)

Я стараюсь по очереди читать книги из разных областей. Эта была про разработку ПО, поэтому на очереди либо что-то про управление/мышление, либо научно-популярное. Кстати, вам было бы интересно, если бы я писал рецензии на научпоп в этот блог?

Share Button

Апр 27

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

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

В этом посте я приведу небольшие рецензии на несколько технических книжек.

С. Макконнелл, «Совершенный код. Мастер-класс»
Тотальный и безусловный мастрид для человека, который хочет называть себя разработчиком. Эту книгу папы-программисты должны читать на ночь детям программистам. Идет очень легко, даром что толстая: хороший перевод, приятный язык. Единственный минус — сложно носить с собой в метро (у меня она занимала всю сумку).
Там есть все: от того, как называть переменные, до организации процесса разработки. Всё рассказано подробно и приближенно к практике, есть огромное количество ссылок на материалы для дальнейшего изучения. В общем, эту книгу я крайне рекомендую.


Э. Хант, Д. Томас, «Программист-прагматик. Путь от подмастерья к мастеру»
Это такой «Макконнелл для ленивых». Она гораздо меньше и часть материала повторяется. Писалась, похоже, раньше, поэтому часть упоминаемых в ней технологий устврели.
Если «Совершенный код» вас уж очень пугает размером, попробуйте её. Если СК прочли, не тратьте время.

Э. Гамма, Р. Хелм, Р. Джонсон, Дж. Влиссидес, «Приемы объектно-ориентированного проектирования. Паттерны проектирования»
Классика. Если вы хотите вставлять в резюме слово «паттерны», обязательно её прочтите, а то потом не сможете рассказать, чем декоратор отличается от заместителя, и будете выглядеть глупо.
Книжка мне показалась тяжелой: в неё надо «въезжать» и думать
почти на каждой странице. Зато потом всё в голове выстраивается в очень красивую картину, стоящую затраченных усилий.
При изучении паттернов основная проблема — они быстро забываются. Поэтому, чтобы закрепить знания, когда прочли про какой-то паттерн, подумайте, как его можно было бы применить на практике в ваших проектах.


Крэг Ларман, «Применение UML 2.0 и шаблонов проектирования»
Очень просветляющая книга. Несмотря на название, она не только про UML и паттерны (кстати, паттерны — не те, что у GoF, а более общие, GRASP). Как исследовать предметную область, как выделять её объекты и переносить их в код, как организовать процесс проектирования и разработки — все там.
Написана приятно, я прочел на одном дыхании (хотя кое-кто из коллег этого впечатления не разделяет), утыкав страницы разноцветными закладками.
Советую её каждому, кто хочет спроектировать и разработать что-то сложнее гостевой книги.

Марк Арнольд, Джефф Д. Алмейда, Клинт Миллер, «Администрирование Apache»
Единственная книга на русском по администрированию веб-серверов, которую я нашел в продаже (сейчас, похоже, и она пропала). И это её главное достоинство, дальше идут недостатки: отвратительный перевод, устаревший материал (она про Apache 1.3).
Сейчас читаю, идет тяжело. Конечно, она дает более-менее целостное представление о веб-сервере, которое трудно получить чтением мануалов, но сил для этого приходится тратить много.


В моем списке для чтения еще много позиций, так что продолжение следует.

А какие книги для разработчиков можете порекомендовать вы?

Share Button