суббота, 9 февраля 2013 г.

Книги. По седам последних месяцев.

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

Python Algorithms: Mastering Basic Algorithms in the Python Language (Expert's Voice in Open Source) 

Как видно из названия, посвящена тому, как правильно реализовывать известные алгоритмы или использовать предоставляемые реализации в standard library. Содержит как и общие вещи, проводя читателя через базовые для алгоритмиста через такие понятия как рекуррентный анализ, математическая индукция, теория графов, так и вполне тонкие конкретизации в духе "как это делать в питоне". Мне очень понравилась. Подойдет как новичку, помогая закрыть пробелы в Computer Science так и человеку, ищущему нирваны в Python. Для питонистов, на мой взгляд, must read.




Hadoop: The Definitive Guide [Kindle Edition]

По сути руководство, описывающие как принципы map reduce, так и hadoop в частности, затрагивает описание и руководство "getting started" для утилит и ПО из вселенной  hadoop. Когда я стал пробовать написать простенькую реализацию своей задачи для hadoop, был весьма смущен количеством конфигурационной работы и конртактами, которые нужно соблюдать. Эта книга поможет как и довольно хорошо научиться програмировать для hadoop, так и пройти порог вхождения с запуском своего первого полезного (а не тестового) приложения hadoop (я имею ввиду запустить свою Job для решения реальной задачи а не из стандартных примеров с сайта). На текущий момент минимальный порог вхожения пройден, но учиться, конечно, нужно многому. С запуском в амазоновском облаке книга не помогает, но зато как всё сделать у себя понять вполне можно.
The Little Book of DATA SCIENCE, 2012 Edition

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

Вроде бы я не питонист... Или уже все-таки да? Не могу ответить на этот вопрос. Однако что мне точно понятно, это то, что я люблю этот язык, умею на нем программировать, очень часто использую для разного рода задач, и не собираюсь от него отказываться. Изучая CS, AI, ML, NLP, работая с Linux я постоянно сталкиваюсь с ним, и эти встечи мне очень приятны. Поэтому я читаю книги, оттачиваю свои навыки на практике, хожу на занятия по Advanced Python, которые ведет Python Core Developer Андрей Светлов. Эту книгу рекомендовать не буду. Она и хороша и устаревшая прилично. Мне была полезна. Но сейчас нужно читать, пожалуй, что то посвежее.


Effective Java (2nd Edition)
Для меня эта книга в компании с Concurrent Programming in Java книга стала Рихтерозаменителем. Просто для мира Java все не так радужно в плане хорошей лиературы. Литературы немало, но она или сильно специфичекая, либо Экель, или вообще, бери и читай стандарт. Если кто то знает нечто хорошее, одновременно и локоничное и фундаментальное, как Jeffrey Richter CLR via C#, буду благодарен за рекомендацию. Но пока для меня именно это лучшее развлекательное чтиво по Java. 

И, продолжаю работать с
Algorithms (4th Edition) , The Algorithm Design Manual . Эти книги не требуют ни рекламы ни моих отзывов. Они стали настольными для меня. В основном я знаю материал, но периодически заглядывая в них постоянно понимаю, что нашел что то новое, пропущенное или недопонятое раньше.

Так же я довольно старательно борюсь с математической безграмотностью, хочется щелкать как орехи и теорию вероятностей и комбинаторику и рекуррентный анализ и прочее, пока у меня есть лишь самые базовые представления об этом всем. Моим наставником в данном вопросе стал замечательный преподаватель и человек, Руслан Чорней. Он преподает дискретку (и не только) в Киево-Могилянской академии. Вот пара его книг, из которых я почерпываю для себя кое-какие полезные вещи:


Так же в рамках этих занятий я почитываю Конкретную Математику (Грэхем, Кнут, Паташник), которая мне очень нравится 


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



Комментариев нет:

Отправить комментарий