<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Yet Another ...</title>
	<atom:link href="http://www.dariuszwalczak.pl/index.php/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.dariuszwalczak.pl</link>
	<description>Developer Blog</description>
	<lastBuildDate>Sun, 18 Oct 2009 20:56:51 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Book review: The Definitive Guide to Django</title>
		<link>http://www.dariuszwalczak.pl/index.php/2009/10/18/book-review-the-definitive-guide-to-django/</link>
		<comments>http://www.dariuszwalczak.pl/index.php/2009/10/18/book-review-the-definitive-guide-to-django/#comments</comments>
		<pubDate>Sun, 18 Oct 2009 20:56:51 +0000</pubDate>
		<dc:creator>darek</dc:creator>
				<category><![CDATA[book review]]></category>
		<category><![CDATA[django]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://www.dariuszwalczak.pl/?p=17</guid>
		<description><![CDATA[Although I am a huge Java fan, about a year ago I started a Django based project, I knew that there has to be a better way to develop web applications (without tons of xml). I was right! I decided to buy a book about this framework. I chose APress position, &#8220;The Definitive Guide to [...]]]></description>
			<content:encoded><![CDATA[<p>Although I am a huge Java fan, about a year ago I started a Django based project, I knew that there has to be a better way to develop web applications (without tons of xml). I was right! I decided to buy a book about this framework. I chose APress position, <a href="http://www.apress.com/book/view/1590597257">&#8220;The Definitive Guide to Django: Web Development Done Right&#8221;</a> because of the authors: Adrian Holovaty and Jacob Kaplan-Moss. Jacob used to work for the Lawrence Journal-World, the newspaper in Lawrence, Kansas where Django was developed.<br />
This is the second edition of this book, it is updated for Django 1.1. Adrian and Jacob say that the goal of this book is to make you a Django expert and I confirm it. What is more important, you don’t have to be an expert before reading it. You should have basic knowledge about programming (e.g. if, while, data structures, lists, hashes, variables, classes and objects). It is helpful to have some experience with web development, but it is not necessary. It is strange but you don’t even have to be a Python programmer &#8211; I wasn’t. If you don’t know syntax, you can learn it while reading this book.<br />
“The Definitive Guide to django…” is also known as “The Django Book” and it is available for free in the Internet, see <a href="http://djangobook.com">http://djangobook.com</a>. Take a look at it, read some chapters and check if it is worth buying. In my opinion it is. You can use online version to find out something during coding but it is much easier to learn and read paper version.<br />
I’ve noticed one flaw, there is no information about unit testing. In my opinion it is very important, because there isn’t any compiler or IDE which shows you problems after for example changing method signature :/ Since you can do unit testing in Python  (<a href="http://docs.python.org/library/unittest.html">unittest</a>)  and Django supports it (<a href="http://docs.djangoproject.com/en/1.0/topics/testing/">&#8220;Testing Django applications&#8221;</a>), authors of the book should take it into consideration and mention about it.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dariuszwalczak.pl/index.php/2009/10/18/book-review-the-definitive-guide-to-django/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Book review: Programming Collective Intelligence</title>
		<link>http://www.dariuszwalczak.pl/index.php/2009/07/14/book-review-programming-collective-intelligence/</link>
		<comments>http://www.dariuszwalczak.pl/index.php/2009/07/14/book-review-programming-collective-intelligence/#comments</comments>
		<pubDate>Tue, 14 Jul 2009 21:43:09 +0000</pubDate>
		<dc:creator>darek</dc:creator>
				<category><![CDATA[book review]]></category>
		<category><![CDATA[collective intelligence]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://www.dariuszwalczak.pl/?p=12</guid>
		<description><![CDATA[Programming Collective Intelligence is a new book from O&#8217;Reilly, which was written by Toby Segaran. The author graduated from MIT and is currently working at Metaweb Technologies. He develops ways to put large public datasets into Freebase, a free online semantic database. You can find more information about him on his blog: http://blog.kiwitobes.com/.
Web 2.0 cannot [...]]]></description>
			<content:encoded><![CDATA[<p><a title="Programming Collective Intelligence" href="http://oreilly.com/catalog/9780596529321/" target="_blank">Programming Collective Intelligence</a> is a new book from <a title="O'Reilly" href="http://oreilly.com/" target="_blank">O&#8217;Reilly</a>, which was written by Toby Segaran. The author graduated from MIT and is currently working at Metaweb Technologies. He develops ways to put large public datasets into Freebase, a free online semantic database. You can find more information about him on his blog: http://blog.kiwitobes.com/.</p>
<p>Web 2.0 cannot exist without Collective Intelligence. The &#8220;giants&#8221; use it everywhere, YouTube recommends similar movies, Last.fm knows what would you like to listen and Flickr which photos are your favorites etc. This technology empowers intelligent search, clustering, building price models and ranking on the web. I cannot imagine modern service without data analysis. That is the reason why it is worth to start read about it.</p>
<p>There are many titles about collective intelligence but recently I have read two, this one and &#8220;Collective Intelligence in Action&#8221;. Both are very pragmatic, but the O&#8217;Railly&#8217;s one is more focused on the merit of the CI. The code listings are much shorter (but examples are written in Python, so that was easy). In general these books comparison is like Java vs. Python. If you would like to build recommendation engine &#8220;in Action&#8221;/Java way, you would have to read a whole book, attach extra jar-s and design dozens of classes. The rapid Python way requires reading only 15 pages and voila, you have got the first recommendations. It is awesome!</p>
<p>So how about the rest of the book, there are still 319 pages! Further chapters say about: discovering groups, searching, ranking, optimization, document filtering, decision trees, price models or genetic algorithms. The book explains how to implement Simulated Annealing, k-Nearest Neighbors, Bayesian Classifier and many more. Take a look at the table of contents<a title="here" href="http://oreilly.com/catalog/9780596529321/preview.html" target="_blank"> here</a>, it does not list all the algorithms but you can find more information there.</p>
<p>Each chapter has about 20-30 pages. You do not have to read them all, you can choose the most important and still know what is going on. Every chapter contains minimum amount of theoretical introduction, for total beginners it might be not enough. I recommend this book for students who had statistics course (not only IT or computing science), it will show you how to use your knowledge in practice – there are many inspiring examples.</p>
<p>For those who do not know Python &#8211; do not be afraid – at the beginning you will find introduction to language syntax. All listings are very short and well described by the author – sometimes line by line. The book also contains necessary information about basic standard libraries responsible for xml processing or web pages downloading.</p>
<p>If you would like to start to learn about collective intelligence I would strongly recommend reading “Programming Collective Intelligence” first, then “Collective Intelligence in Action”. The first one shows how easy it is to implement basic algorithms, the second one would show you how to use existing open source projects related to machine learning.</p>
<p>You can find more about this book on it&#8217;s catalogue page <a title="here" href="http://oreilly.com/catalog/9780596529321" target="_blank">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dariuszwalczak.pl/index.php/2009/07/14/book-review-programming-collective-intelligence/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Book review: 97 Things Every Software Architect Should Know</title>
		<link>http://www.dariuszwalczak.pl/index.php/2009/06/30/book-review-97-things-every-software-architect-should-know/</link>
		<comments>http://www.dariuszwalczak.pl/index.php/2009/06/30/book-review-97-things-every-software-architect-should-know/#comments</comments>
		<pubDate>Mon, 29 Jun 2009 22:21:23 +0000</pubDate>
		<dc:creator>darek</dc:creator>
				<category><![CDATA[book review]]></category>
		<category><![CDATA[architecture]]></category>
		<category><![CDATA[software engineering]]></category>

		<guid isPermaLink="false">http://www.dariuszwalczak.pl/?p=10</guid>
		<description><![CDATA[&#8220;97 Things Every Software Architect Should Know&#8221; is a new title from O’Reilly. It is edited by Richard Monson-Haefel, you might know him from &#8220;Enterprise JavaBeans&#8221;, &#8220;Java Message Services&#8221; or &#8220;J2EE Web Services&#8221;. This time, his book is a set of guidelines collected from about 50 experienced software architects. Among them you can find Google, [...]]]></description>
			<content:encoded><![CDATA[<p>&#8220;97 Things Every Software Architect Should Know&#8221; is a new title from O’Reilly. It is edited by Richard Monson-Haefel, you might know him from &#8220;Enterprise JavaBeans&#8221;, &#8220;Java Message Services&#8221; or &#8220;J2EE Web Services&#8221;. This time, his book is a set of guidelines collected from about 50 experienced software architects. Among them you can find Google, Microsoft, Sun Microsystems employees, authors of books, freelancers etc. My favorites are:<br />
- Michael Nygard – &#8220;wrote: Release It! Design and Deploy Production-Ready Software (Pragmatic Bookshelf)…&#8221;<br />
- Craig Russell – &#8220;is a practicing software architect specializing in object persistence and distributed systems. He currently works as a senior staff engineer at Sun Microsystems.&#8221;<br />
- Mark Ramm – &#8220;is BDFL for TurboGears 2, a python enthusiast, and a generally crazy dude … &#8221;<br />
Each advice is maximum two pages long, with author&#8217;s short biography note at the end. All 97 advices are based on real life experience. Often, there are short stories showing why is it important or how it works. There is even story about the design of F16 jet fighter aircraft! It really helps to remember information.<br />
I like this book because it is very pragmatic. In my opinion the subtitle describes it in a perfect way, which is &#8220;Collective Wisdom from the Experts&#8221;. All advices are based on many years of experience and in my opinion all of them are truly important. Some of them are very obvious, but it is good to read about it one more time. Each chapter is very short so you do not need a lot of time to read it. It is a perfect read for a bus or short break. My favorite hints are:<br />
- &#8220;One Line of Working Code is Worth 500 of specification&#8221;<br />
- &#8220;Commit-and-Run is a Crime&#8221;<br />
- &#8220;Avoid Scheduling Failures&#8221;<br />
If you are looking for a book which says about architecture problems and gives you &#8220;3000-Foot view&#8221; this one is for you. I didn’t like that high level problems, a lot of them should be dedicated to team leaders. I was looking for a book focused on design patterns, best practices and advices for software design, and this one is more about how to lead a group of people. For example, one of these advices says that you are supposed to stand up while talking to developers to increase effectiveness of your communication. I agree, it is important, but it is a book about software architecture not interpersonal communication. Read the titles of the chapters before buying it. It is probably my problem, because I am not an architect, I am rather software developer/designer.<br />
I recommend &#8220;97 Things Every Software Architect Should Know&#8221; to team leaders and high level architects. For those who would like to summarize their knowledge. It is not a tutorial or &#8220;how to&#8221; book. I don&#8217;t recommend it to software developers and designers, you might be bored.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dariuszwalczak.pl/index.php/2009/06/30/book-review-97-things-every-software-architect-should-know/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Book review: Collective Intelligence in Action</title>
		<link>http://www.dariuszwalczak.pl/index.php/2009/06/29/book-review-collective-intelligence-in-action/</link>
		<comments>http://www.dariuszwalczak.pl/index.php/2009/06/29/book-review-collective-intelligence-in-action/#comments</comments>
		<pubDate>Mon, 29 Jun 2009 21:36:33 +0000</pubDate>
		<dc:creator>darek</dc:creator>
				<category><![CDATA[book review]]></category>
		<category><![CDATA[collective intelligence]]></category>
		<category><![CDATA[java]]></category>

		<guid isPermaLink="false">http://www.dariuszwalczak.pl/?p=5</guid>
		<description><![CDATA[I am a member of Poznan Java User Group. We have active book review program with O&#8217;Reilly, APress and Manning. I wrote some reviews and I&#8217;ll post them all, today my first one,  &#8220;Collective Intelligence in Action&#8221;.
Collective intelligence is very popular these days. Thanks to the Internet companies we can use this concept every day. [...]]]></description>
			<content:encoded><![CDATA[<p>I am a member of <a title="Poznan Java User Group" href="http://www.jug.poznan.pl/" target="_blank">Poznan Java User Group</a>. We have active book review program with <a title="O'Reilly" href="http://oreilly.com/" target="_blank">O&#8217;Reilly</a>, <a title="APress" href="http://apress.com/" target="_blank">APress</a> and <a title="Manning" href="http://manning.com/" target="_blank">Manning</a>. I wrote some reviews and I&#8217;ll post them all, today my first one,  <a title="Collective Intelligence in Action" href="http://manning.com/alag/" target="_blank">&#8220;Collective Intelligence in Action&#8221;</a>.</p>
<p>Collective intelligence is very popular these days. Thanks to the Internet companies we can use this concept every day. I have to admit that I am a big fan of &#8220;intelligent&#8221; services. I search news on Digg, I listen to music through the Last.fm player, I use Wikipedia, YouTube, Amazon etc. everyday. I have been wondering many times how these sites work. The curiosity led me to read &#8220;Collective Intelligence in Action&#8221;. After I read it, I was surprised that this book is so practical. Theory is limited to minimum. After reading it, you should be able to add the CI features to the existing sites.</p>
<p>Author, Satnam Alag, has organized his work in a perfect way. Every chapter has an introduction, a summary and very handy references &#8211; I used them many times. All the mathematical concepts and definitions are shown in examples. There are lot of a Java code listings, therefore the basic knowledge of this language might be useful. The theoretical foundations are not necessary. Each chapter can be treated separately, but together they create coherent paper about recommendation system. The author of the code takes care not only about the correctness but also about the efficiency and the scalability.</p>
<p>The fact that Satnam presents a lot of stable and useful open source software is worth of noticing. Projects like Nutch, Lucene or Weka can be easily adapt to our services. The book shows how to do it from programmer&#8217;s point of view (API).</p>
<p>I recommend &#8220;Collective Intelligence in Action&#8221; to the Java developers who would like to know how to build recommendation systems, intelligent search of theirs resources, automatic tagging or network crawling. Book is worth reading even if you do not plan to use CI in your application. Base Web2.0 mechanisms are very easy to implement and do not require a lot of theoretical knowledge, Satnam Alag has proven this in his paper.</p>
<p>I would not recommend this book to data mining or text analysis experts. This is not an academic work, people who are looking for theoretical information about CI could be disappointed.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dariuszwalczak.pl/index.php/2009/06/29/book-review-collective-intelligence-in-action/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
