<?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>Erics Tech Blog &#187; books</title>
	<atom:link href="http://eric.lubow.org/tag/books/feed/" rel="self" type="application/rss+xml" />
	<link>http://eric.lubow.org</link>
	<description>Thoughts, musings, and other idealistic (sometimes useful) systems and development hoopla.</description>
	<lastBuildDate>Fri, 18 Nov 2011 14:56:45 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.4</generator>
		<item>
		<title>MySQL for Python</title>
		<link>http://eric.lubow.org/2010/book-reviews/mysql-for-python/</link>
		<comments>http://eric.lubow.org/2010/book-reviews/mysql-for-python/#comments</comments>
		<pubDate>Mon, 27 Dec 2010 07:10:22 +0000</pubDate>
		<dc:creator>eric</dc:creator>
				<category><![CDATA[Book Reviews]]></category>
		<category><![CDATA[books]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://eric.lubow.org/?p=812</guid>
		<description><![CDATA[I am always for using the right tool for the right job. A lot of time, that tool is Python. I have always had trouble finding solid documentation on using MySQL with Python. There was generally enough to get by, but the more the merrier. Enter MySQL for Python by Albert Lukaszewski. As I mention [...]]]></description>
			<content:encoded><![CDATA[<p>I am always for using the right tool for the right job.  A lot of time, that tool is Python.  I have always had trouble finding solid documentation on using MySQL with Python.  There was generally enough to get by, but the more the merrier.  Enter MySQL for Python by Albert Lukaszewski. <span id="more-812"></span> <div id="attachment_813" class="wp-caption alignright" style="width: 110px"><a href="http://eric.lubow.org/wp-content/uploads/2010/12/mysql_for_python.jpg"><img src="http://eric.lubow.org/wp-content/uploads/2010/12/mysql_for_python.jpg" alt="MySQL for Python Cover" title="MySQL for Python Cover" width="100" height="129" class="size-full wp-image-813" /></a><p class="wp-caption-text">MySQL for Python</p></div></p>
<p>As I mention in most of my reviews, on the of the things I love about Packt Publishing books is that they typically follow the same pattern: installation, teaching, project, summary.  And my favorite piece is the mini projects given at the end of each chapter.  It&#8217;s a little reality check for the reader reminding them that everything that they are doing has a real life application.</p>
<p>So skipping the installation chapter and jumping right in to the teaching, there is a lot of discussion about how to do the common stuff that one does in MySQL through Python.  If you have a lot of experience with MySQL, then this is a handy reference.  I also really like the fact that scattered throughout the book is information on becoming a better programmer (like tradeoffs on memory efficiency vs. performance).</p>
<p>Chapter 4 contained information about exception handling.  Just like previous chapters, the amount of information on the handling of warnings and exceptions exceeds the boundaries of just MySQL in Python.  This was a great review for any Python programmer.  No need for further discussion as this chapter is available from Packt Publishing <a href="https://www.packtpub.com/sites/default/files/0189OS-Chapter-4-Exception-Handling.pdf">here</a>.</p>
<p>The next few chapters deal with data manipulation in Python.  This includes INSERTs, UPDATEs, DELETEs, etc.  Chapter 8 specifically deals with user management in MySQL.  This is a great skill to have regardless of the interface that you are using to tie into MySQL.  Most programmers neglect the concept of administration and leave it to the DBAs or the SysAdmins. Albert takes the reader through some admin exercises including user management, backup and recovery, and accessing the MySQL meta information like <em>information_schema</em> tables.  There was also discussion about the various storage engines which was unexpected.</p>
<p>Bouncing backwards a little was a lesson on the string and aggregation functions built into MySQL.  A lot of these capabilities are usually handled programatically and not off-loaded to the database like it should be.  Again, this is a great refresher (or even initial) lesson for any programmer who spends a lot of time building and maintaining complex queries.</p>
<p>Overall this book was another great teaching tool put forth by the folks at Packt.  The audience is definitely not at the beginner Python programmer, but an intermediate level developer would have no issues understanding everything.  You can find this book either at <a href="http://www.amazon.com/MySQL-Python-Albert-Lukaszewski/dp/1849510180">Amazon</a> or directly from <a href="https://www.packtpub.com/mysql-for-python-database-access-made-easy/book">Packt Publishing</a>.</p>


<p>Related posts:<ol><li><a href='http://eric.lubow.org/2010/book-reviews/mod-security-2-5-by-magnus-mischel/' rel='bookmark' title='Mod-Security 2.5 by Magnus Mischel'>Mod-Security 2.5 by Magnus Mischel</a></li>
<li><a href='http://eric.lubow.org/2009/python/python-multiprocessing-pools-and-mysql/' rel='bookmark' title='Python Multiprocessing Pools and MySQL'>Python Multiprocessing Pools and MySQL</a></li>
<li><a href='http://eric.lubow.org/2007/book-reviews/building-telephony-systems-with-asterisk/' rel='bookmark' title='Building Telephony Systems With Asterisk'>Building Telephony Systems With Asterisk</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://eric.lubow.org/2010/book-reviews/mysql-for-python/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mod-Security 2.5 by Magnus Mischel</title>
		<link>http://eric.lubow.org/2010/book-reviews/mod-security-2-5-by-magnus-mischel/</link>
		<comments>http://eric.lubow.org/2010/book-reviews/mod-security-2-5-by-magnus-mischel/#comments</comments>
		<pubDate>Mon, 11 Jan 2010 10:30:05 +0000</pubDate>
		<dc:creator>eric</dc:creator>
				<category><![CDATA[Book Reviews]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[books]]></category>
		<category><![CDATA[mod_security]]></category>

		<guid isPermaLink="false">http://eric.lubow.org/?p=509</guid>
		<description><![CDATA[Being a SysAdmin (as most of you who read this blog regularly know), I love to look at logs to solve problems. If there is an issue, the first thing I always do is look at the logs to see what went wrong. Even when I am writing programs, I build debugging in from the [...]]]></description>
			<content:encoded><![CDATA[<p>Being a SysAdmin (as most of you who read this blog regularly know), I love to look at logs to solve problems.  If there is an issue, the first thing I always do is look at the logs to see what went wrong.  Even when I am writing programs, I build debugging in from the beginning to make sure I know what&#8217;s going on at all times (especially when something goes wrong). <span id="more-509"></span> <div id="attachment_510" class="wp-caption alignright" style="width: 160px"><a href="http://eric.lubow.org/wp-content/uploads/2010/01/mod_security_cover.jpg"><img src="http://eric.lubow.org/wp-content/uploads/2010/01/mod_security_cover-150x150.jpg" alt="Mod Security 2.5 Cover" title="Mod Security 2.5" width="150" height="150" class="size-thumbnail wp-image-510" /></a><p class="wp-caption-text">Mod Security 2.5</p></div></p>
<p>One of my favorite things about mod_security is that (amongst other things), it provides logging where none was provided.  In fact, there is a whole chapter dedicated to it (chapter 4 on audit logging).  And thus the first chapter I went to (just for fun).  So I started flipping back and forth between chapters 2 (writing rules) and 4 (audit logging) to create my ruleset.  I quickly realized that it was going to be a pain to do it that way.  So I sucked it up and started reading the book.  I normally hate doing that because typically technical books read like watching paint dry, but this one read fairly easily.  I also happen to really like the type face conventions used by Packt Publishing to make examples separate from text separate from whatever else needs to stand out.</p>
<p>I skimmed chapter 1 because I not only have built programs including Apache modules in my time, but I have also setup mod_security 1 before.  This is why I was so excited to dive into this book since it has been a while and I wanted to see what has changed in mod_security over the years.</p>
<p>Right into chapter 2, I wrote a few logging rules and some protection from SQL injection.  And then I tried out the recipe to stop all visitors from the US from accessing the web site.  Needless to say that worked, so I apologize for the few min of downtime you all may have experienced.</p>
<p>Chapter 3 was inevitably about performance.  This is always a concern amongst admins.  Most of your fears are assuaged by chart after comparison chart of how Apache works under the load of <em>httperf</em> along with a few experience based suggestions on how to reduce Apache&#8217;s memory footprint and other helpful items.  It even tails off with optimizing how you employ regular expressions.</p>
<p>Now chapter 4 again, audit logging.  The logs themselves have quite a bit of information in them.  Although they can be read, it can be pretty tedious.  The mod_security console discussed in the book makes this a lot easier.</p>
<p>Virtual patching is an interesting concept that allows for the ability to apply a patch for a vulnerability without one being supplied by the vendor.  There are a few examples, including the Twitter worm of 2009 of where it can be practically applicable.  It is covered pretty extensively in chapter 5.</p>
<p>Chapter 6 is actually the meat of the book.  It is where the commonly used recipes are.  In fact, I have added more than a few of these recipe to some of the various web servers I run.</p>
<p>As a admin, one is usually concerned with security.  Let&#8217;s face it, why else would you be looking into mod_security?  If you are into host security, then have a look at chapter 7 about using chroot jails.  There is a section discussing where this is appropriate and if it is, how to implement it without having to put Apache fully in a chroot jail.</p>
<p>Just like any tool with an archaic interface for rules (like the original days of SELinux or configuring Nagios), there inevitably comes GUI tools. Remo is one of those tools.  One of the coolest things about Remo (in my opinion) is that its written in Rails and can therefore be run using either Webrick or another Rails engine (like Phusion Passenger in Apache or Mongrel).  If you don&#8217;t want to dive too heavily into the Apache config files, then give Remo a shot.</p>
<p>The book finishes up by showing an fairly detailed example ruleset for a live web application.  And really, who doesn&#8217;t have one of those (live web application).</p>
<p>Other than the one major editing flaw of labeling chapter 5 as chapter 9, the book was excellent.  Not only would I recommend this book to other SAs, I already have.  Besides being very readable, there are many recipes in this book that are immediately applicable and easily implemented.  Mod_security has a fairly low barrier to entry and the simplicity in this book proves it.  With the type of data and the amount of data being stored in web applications these days, extra security is a must.  </p>
<p>You can purchase the book from <a href="http://www.amazon.com/exec/obidos/tg/detail/-/1847194745">Amazon</a> or find other locations through <a href="http://www.packtpub.com/modsecurity-2-5/book">Packt Publishing</a>.</p>


<p>Related posts:<ol><li><a href='http://eric.lubow.org/2009/book-reviews/modsecurity-2-5-review-coming/' rel='bookmark' title='Modsecurity 2.5 Review Coming'>Modsecurity 2.5 Review Coming</a></li>
<li><a href='http://eric.lubow.org/2010/book-reviews/mysql-for-python/' rel='bookmark' title='MySQL for Python'>MySQL for Python</a></li>
<li><a href='http://eric.lubow.org/2007/book-reviews/building-telephony-systems-with-asterisk/' rel='bookmark' title='Building Telephony Systems With Asterisk'>Building Telephony Systems With Asterisk</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://eric.lubow.org/2010/book-reviews/mod-security-2-5-by-magnus-mischel/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Modsecurity 2.5 Review Coming</title>
		<link>http://eric.lubow.org/2009/book-reviews/modsecurity-2-5-review-coming/</link>
		<comments>http://eric.lubow.org/2009/book-reviews/modsecurity-2-5-review-coming/#comments</comments>
		<pubDate>Sun, 22 Nov 2009 11:00:12 +0000</pubDate>
		<dc:creator>eric</dc:creator>
				<category><![CDATA[Book Reviews]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[books]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://eric.lubow.org/?p=420</guid>
		<description><![CDATA[The folks over at Packt Publishing are kind enough to send me out an advance copy of the upcoming Modsecurity book by Magnus Mischel. I have written about mod security before, but really haven&#8217;t had a chance to look into it recently. I am anxious to see where its advanced to in version 2.5. If [...]]]></description>
			<content:encoded><![CDATA[<p>The folks over at <a href="http://www.packtpub.com/">Packt Publishing</a> are kind enough to send me out an advance copy of the upcoming <a href="http://www.packtpub.com/modsecurity-2-5/book">Modsecurity book</a> by <a href="http://www.packtpub.com/author_view_profile/id/373">Magnus Mischel</a>.  I have written about mod security <a href="http://eric.lubow.org/2007/engarde/configuring-mod_security-for-engarde-secure-linux/">before</a>, but really haven&#8217;t had a chance to look into it recently.  I am anxious to see where its advanced to in version 2.5.</p>
<p>If you don&#8217;t know anything about <a href="http://www.modsecurity.org/">mod_security</a>, I encourage you to read up on it in the interim.</p>
<p>Stay tuned for the review.</p>


<p>Related posts:<ol><li><a href='http://eric.lubow.org/2010/book-reviews/mod-security-2-5-by-magnus-mischel/' rel='bookmark' title='Mod-Security 2.5 by Magnus Mischel'>Mod-Security 2.5 by Magnus Mischel</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://eric.lubow.org/2009/book-reviews/modsecurity-2-5-review-coming/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

