<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress.com" -->
<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/"
	>

<channel>
	<title>indexes &amp;laquo; WordPress.com Tag Feed</title>
	<link>http://en.wordpress.com/tag/indexes/</link>
	<description>Feed of posts on WordPress.com tagged "indexes"</description>
	<pubDate>Sun, 27 Dec 2009 17:24:46 +0000</pubDate>

	<generator>http://en.wordpress.com/tags/</generator>
	<language>en</language>

<item>
<title><![CDATA[LAMP Programming For Professionals]]></title>
<link>http://sharanamshah.wordpress.com/2009/12/27/lamp-programming-for-professionals/</link>
<pubDate>Sun, 27 Dec 2009 07:31:16 +0000</pubDate>
<dc:creator>sharanamshah</dc:creator>
<guid>http://sharanamshah.wordpress.com/2009/12/27/lamp-programming-for-professionals/</guid>
<description><![CDATA[LAMP Programming For Professionals    Designed for beginners, intermediate and professional develope]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><div class="wp-caption alignnone" style="width: 400px"><a href="http://www.sharanamshah.com/index.php/Books-authored-by-Sharanam-Shah/Shroff-Publishers-and-Distributors-Pvt.-Ltd./LAMP-Programming-For-Professionals.html"><img title="LAMP Programming For Professionals" src="http://www.sharanamshah.com/images/stories/books/LAMP.JPG" alt="LAMP Programming For Professionals" width="390" height="514" /></a><p class="wp-caption-text">LAMP Programming For Professionals</p></div>
<p>  </p>
<p>Designed for beginners, intermediate and professional developers, this book provides genuine domain knowledge to learn web based, application development, using<strong>Apache</strong> as the Web server, <strong>PHP</strong> as the programming language, <strong>MySQL</strong> as the data store, all mounted on the <strong>Linux</strong> OS. It delves deeply into the core of the MySQL and PHP providing a sound understanding of both.</p>
<p>This book also demonstrates a step-by-step guide to developing a few <strong>Web</strong>applications [using <strong>PHP 6 </strong>&#38; <strong>MySQL 5.4 </strong>under<strong> Apache 2.2</strong>] which re-enforces all the learning that takes place throughout the book. </p>
<p>This book uses the learning by doing pattern with a lot of ready-to-use examples. This pattern has proven to be the best approach for learning a new technology. Most [if not all] of the concepts that you will find in this book are demonstrated using well described and easy to understand examples, yet sophisticated enough to demonstrate LAMP Programming in a real-world context.</p>
<p>Additionally, a special chapter covering the virtual installation of <strong>Linux</strong> is included. This provides an opportunity to create a <strong>Virtual LAMP Framework</strong> on MS Windows. </p>
<p><strong>What You&#8217;ll Learn?</strong> </p>
<p>Installing and Setting Up LAMP<br />
Working with the MySQL Database <br />
Working with the PHP programming language<br />
o    Basics &#8211; Variables, Operators, Control Structures, Functions<br />
o    Regular Expression [PCRE]<br />
o    Using MySQL<strong>nd</strong>, the new native driver<br />
o    Using MySQL, MySQLi and PDO extensions<br />
o    Cookies and Sessions<br />
o    <strong>O</strong>bject <strong>O</strong>riented <strong>P</strong>rogramming<br />
o    Debugging And Error Handling<br />
o    Web Services Using <strong>SOAP<br />
</strong>Building Web Based Applications<br />
o    Contact Management System<br />
o    Uses jQuery and Ajax<br />
o    Uses SendMail to dispatch reminder emails for birthdays and anniversaries<br />
o    RSS Widget<br />
o    Uses <strong>MagpieRSS</strong> [RSS <strong>parser</strong> for PHP]<br />
o    Uses <strong>JavaScript</strong> to provide <strong>Drag</strong> <strong>and</strong> <strong>Drop</strong> functionality<br />
o    Newsletter Delivery System<br />
o    Uses <strong>SendMail</strong> to dispatch newsletter<br />
o    An Automatic Email Dispatcher <br />
o    Uses <strong>CronJob</strong> to schedule email dispatch<br />
o    Uses <strong>SendMail</strong> to dispatch emails<br />
o    Using The <strong>M</strong>odel <strong>V</strong>iew <strong>C</strong>ontroller Architecture<br />
Setting Up Linux On A Virtual Machine Over MS Windows <br />
Using phpMyAdmin &#8211; A Web based MySQL Administration tool</p>
<p><strong><span style="font-family:Verdana;font-size:x-small;">ISBN 10:</span></strong><span style="font-family:Verdana;font-size:x-small;"> </span><span style="font-family:Verdana;font-size:x-small;">81-8404-843-8</span></p>
<p><span style="font-family:Verdana;font-size:x-small;"><strong>ISBN 13:</strong> </span><span style="font-family:Verdana;font-size:x-small;">978-81-8404-843-8</span><br />
<strong><span style="font-family:Verdana;font-size:x-small;">Edition:</span></strong><span style="font-family:Verdana;font-size:x-small;"> First</span><br />
<strong><span style="font-size:x-small;"><span style="font-family:Verdana;">Downloads</span></span></strong></p>
<p><a title="LAMP Programming For Professionals" href="http://www.sharanamshah.com/index.php/Books-authored-by-Sharanam-Shah/Shroff-Publishers-and-Distributors-Pvt.-Ltd./LAMP-Programming-For-Professionals.html#"><strong><span style="font-size:x-small;"><span style="font-family:Verdana;"><span style="text-decoration:underline;">Sample Chapter</span></span></span></strong></a> <span style="font-family:Verdana;font-size:x-small;">                                                     </span><a title="LAMP Programming For Professionals" href="http://www.sharanamshah.com/index.php/Books-authored-by-Sharanam-Shah/Shroff-Publishers-and-Distributors-Pvt.-Ltd./LAMP-Programming-For-Professionals.html#"><span style="text-decoration:underline;"><strong><span style="font-family:Verdana;font-size:x-small;">TOC</span></strong></span></a></p>
<p><strong>THE TOPICS COVERED IN THE BOOK</strong></p>
<p><strong>All About The L.A.M.P. Framework<br />
</strong>Introduction to Linux, Apache, MySQL and PHP. How the L.A.M.P. framework works.<br />
<strong><br />
Setting Up The L.A.M.P. Environment<br />
</strong>Installing Cent OS, Apache, PHP and MySQL. Configuring the Development Environment.<br />
<strong><br />
Understanding The MySQL Database<br />
</strong>Db Storage Engines, Db Administration, SQL Elements, Table Creation, Working With Table Data, Tables And Its Structure, Operators And Regular Expression, Grouping Data, Joins, Views, Functions, Data Constraints, Subquery, Union, Indexes, Stored Procedures, Transactions, Cursors<br />
<strong><br />
Understanding The PHP Language<br />
</strong>Mixing PHP And HTML, Variables And Operators, Control Structures, Functions, Regular Expressions, Working With Database using MySQL, MySQLi and PDO, Cookies, Sessions, Object Oriented Programming, Debugging And Error Handling, Web Services Using SOAP<br />
<strong><br />
Application Development<br />
</strong>Contact Management, RSS Widget, Newsletter Delivery System, Automatic Email Dispatcher, Programming Using The Model View Controller Architecture    <br />
<strong><br />
Linux On Virtual Machine<br />
</strong>Installing CentOS On Sun VirtualBox<br />
<strong><br />
Appendix<br />
</strong>phpMyAdmin &#8211; A web based MySQL Db Administration tool</p>
<p><strong>CONTENTS OF THE CD-ROM</strong></p>
<p>Setup files for Apache Web Server 2<strong>.</strong>2<strong>.</strong>13<br />
MySQL 5<strong>.</strong>4<br />
PHP 6<strong>.</strong>0 [Development Snapshot]<br />
ICU 4<strong>.</strong>2<strong>.</strong>1<br />
PHP 5<strong>.</strong>3 [Stable Release]<br />
phpMyAdmin 3<strong>.</strong>2<strong>.</strong>2<br />
Video Footage covering LAMP Installation<br />
Source code for the examples covered in this book<span id="_marker"> <span id="_marker"> </span></span><span class="Apple-style-span" style="widows:2;text-transform:none;text-indent:0;border-collapse:separate;font:medium 'Times New Roman';white-space:normal;orphans:2;letter-spacing:normal;color:#000000;word-spacing:0;"><span class="Apple-style-span" style="text-align:justify;line-height:14px;border-collapse:collapse;font-family:Tahoma, Verdana, sans-serif;font-size:12px;"> </span></span></p>
<p><span class="Apple-style-span" style="widows:2;text-transform:none;text-indent:0;border-collapse:separate;font:medium 'Times New Roman';white-space:normal;orphans:2;letter-spacing:normal;color:#000000;word-spacing:0;"><span class="Apple-style-span" style="text-align:justify;line-height:14px;border-collapse:collapse;font-family:Tahoma, Verdana, sans-serif;font-size:12px;"></span></span></p>
<p style="text-align:justify;margin-top:0;margin-bottom:5px;"><span style="line-height:18px;color:black;"><strong><span style="font-family:Verdana;font-size:x-small;">THE TOPICS COVERED IN THE BOOK</span></strong></span></p>
<p class="MsoNormal" style="text-align:justify;line-height:18px;margin-top:0;margin-bottom:5px;"><span style="line-height:19px;font-family:Verdana;font-size:10pt;"><br />
</span></p>
<p><span style="line-height:19px;font-family:Verdana;font-size:10pt;"><span style="line-height:19px;font-family:Tahoma, sans-serif;color:black;font-size:10pt;"><span style="line-height:19px;font-family:Tahoma, sans-serif;color:black;font-size:10pt;"><span style="line-height:19px;font-family:Tahoma, sans-serif;"><strong>All About The L.A.M.P. Framework<br />
</strong><span style="line-height:19px;font-family:Tahoma, sans-serif;color:black;">Introduction to Linux, Apache, MySQL and PHP. How the L.A.M.P. framework works.<br />
</span><strong><br />
Setting Up The L.A.M.P. Environment<br />
</strong><span style="line-height:19px;font-family:Tahoma, sans-serif;color:black;">Installing Cent OS, Apache, PHP and MySQL. Configuring the Development Environment.<br />
</span><strong><br />
Understanding The MySQL Database<br />
</strong><span style="line-height:19px;font-family:Tahoma, sans-serif;color:black;">Db Storage Engines, Db Administration, SQL Elements, Table Creation, Working With Table Data, Tables And Its Structure, Operators And Regular Expression, Grouping Data, Joins, Views, Functions, Data Constraints, Subquery, Union, Indexes, Stored Procedures, Transactions, Cursors<br />
</span><strong><br />
Understanding The PHP Language<br />
</strong><span style="line-height:19px;font-family:Tahoma, sans-serif;color:black;">Mixing PHP And HTML, Variables And Operators, Control Structures, Functions, Regular Expressions, Working With Database using MySQL, MySQLi and PDO, Cookies, Sessions, Object Oriented Programming, Debugging And Error Handling, Web Services Using SOAP<br />
</span><span style="line-height:19px;font-family:Tahoma, sans-serif;color:black;"><strong><br />
Application Development<br />
</strong></span><span style="line-height:19px;font-family:Tahoma, sans-serif;color:black;">Contact Management, RSS Widget, Newsletter Delivery System, Automatic Email Dispatcher, Programming Using The Model View Controller Architecture   <span class="Apple-converted-space"> </span><br />
</span><strong><br />
Linux On Virtual Machine<br />
</strong><span style="line-height:19px;font-family:Tahoma, sans-serif;color:black;">Installing CentOS On Sun VirtualBox<br />
</span><strong><br />
Appendix<br />
</strong><span style="line-height:19px;font-family:Tahoma, sans-serif;color:black;">phpMyAdmin &#8211; A web based MySQL Db Administration tool<br />
</span></span></span></span><span style="line-height:19px;font-family:Verdana;font-size:10pt;"><br />
</span></span></p>
<p class="MsoNormal" style="text-align:justify;line-height:18px;margin-top:0;margin-bottom:5px;"><span style="line-height:18px;color:black;"><strong><span style="font-family:Verdana;font-size:x-small;">CONTENTS OF THE CD-ROM</span></strong></span></p>
<p><span style="line-height:19px;font-family:Verdana;font-size:10pt;"><span style="line-height:19px;font-family:Tahoma, sans-serif;color:black;font-size:10pt;"><span style="line-height:19px;font-family:Tahoma, sans-serif;color:black;font-size:10pt;"><span style="line-height:19px;font-family:Tahoma, sans-serif;"><span style="line-height:19px;font-family:Tahoma, sans-serif;color:black;">Setup files for Apache Web Server 2<strong>.</strong>2<strong>.</strong>13<br />
</span><span style="line-height:19px;font-family:Tahoma, sans-serif;color:black;">MySQL 5<strong>.</strong>4<br />
</span><span style="line-height:19px;font-family:Tahoma, sans-serif;color:black;">PHP 6<strong>.</strong>0 [Development Snapshot]<br />
</span><span style="line-height:19px;font-family:Tahoma, sans-serif;color:black;">ICU 4<strong>.</strong>2<strong>.</strong>1<br />
</span><span style="line-height:19px;font-family:Tahoma, sans-serif;color:black;">PHP 5<strong>.</strong>3 [Stable Release]<br />
</span><span style="line-height:19px;font-family:Tahoma, sans-serif;color:black;">phpMyAdmin 3<strong>.</strong>2<strong>.</strong>2<br />
</span><span style="line-height:19px;font-family:Tahoma, sans-serif;color:black;">Video Footage covering LAMP Installation<br />
</span><span style="line-height:19px;font-family:Tahoma, sans-serif;color:black;">Source code for the examples covered in this book</span></span></span></span></span></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[EUR/USD Current Price: 1.4849 ]]></title>
<link>http://asx200.wordpress.com/2009/12/21/eurusd-current-price-1-4849/</link>
<pubDate>Mon, 21 Dec 2009 11:22:27 +0000</pubDate>
<dc:creator>asx200</dc:creator>
<guid>http://asx200.wordpress.com/2009/12/21/eurusd-current-price-1-4849/</guid>
<description><![CDATA[(CFD.net.au &#8211; Contract for Difference, Share, Forex, ETFs, Commodities Traders) &#8211; 20 SMA]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>(<a href="http://cfd.net.au/home/">CFD.net.au &#8211; Contract for Difference, Share, Forex, ETFs, Commodities Traders</a>) &#8211; </p>
<p>20 SMA has turned strongly bearish, thus bigger time frames show indicators a bit exhausted to the downside, suggesting some upside corrective movement to come in the next hours that could reach 1.4910 without harming current bearish trend.</p>
<p>“Break under 1.4840 will deny upside corrective<!--more--> ve movements and accelerate the fall, with movements likely following local <a href="http://cfd.net.au/home/topic/indexes">indexes</a> and <a href="http://cfd.net.au/home/topic/gold">gold</a>,” said</p>
<p>Valeria Bednarik, <a href="http://cfd.net.au/home/topic/collaborator">collaborator</a> at FXstreet.com</p>
<p>.</p>
<p><a href="http://cfd.net.au/home/topic/support">Support</a> levels: 1.4840 1.4810 1.4760. <a href="http://cfd.net.au/home/topic/resistance">Resistance</a> levels: 1.4880 1.4910 1.4945.</p>
<p>Source: <a href="http://cfd.net.au/home/article/eurusd-current-price-14849-20091027-16765.html">EUR/USD Current Price: 1.4849 </a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Index Update]]></title>
<link>http://yiws.wordpress.com/2009/12/12/index-update/</link>
<pubDate>Sun, 13 Dec 2009 05:07:39 +0000</pubDate>
<dc:creator>kkpodesky</dc:creator>
<guid>http://yiws.wordpress.com/2009/12/12/index-update/</guid>
<description><![CDATA[All Indexes Have been Finished and Updated as of Dec.12/09]]></description>
<content:encoded><![CDATA[All Indexes Have been Finished and Updated as of Dec.12/09]]></content:encoded>
</item>
<item>
<title><![CDATA[I shall simply say good luck ( gotta read to the end)]]></title>
<link>http://akoptiontrader.com/2009/12/10/i-shall-simply-say-good-luck-gotta-read-to-the-end/</link>
<pubDate>Fri, 11 Dec 2009 06:36:52 +0000</pubDate>
<dc:creator>akoptiontrader</dc:creator>
<guid>http://akoptiontrader.com/2009/12/10/i-shall-simply-say-good-luck-gotta-read-to-the-end/</guid>
<description><![CDATA[As text-book as yesterday&#8217;s supports held, ditto today for resistance. I watched the open rubb]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>As text-book as yesterday&#8217;s supports held, ditto today for resistance. I watched the open rubbing my hands waiting for a spot to short this rally that I was sure was going to fail mightily. I chose the SPY as my vehicle of choice for an intra day trade, and finally when it set up on the 5 min. chart I was in, right around 9:45. I should&#8217;ve waited for one more candle, but I was pretty confident of the move. Then we stalled and began to fall. I thought for sure we would fill that gap and then some, even possibly take out yesterday&#8217;s support. Much to my chagrin, we did not. In fact at 10:20 we started moving up, for what I thought was a breath and then took out most of the down move, and my small gains with it. We ended up grinding the rest of the day and I ended up a little below even and still in my &#8220;day trade&#8221;. Why did I stay in? Well we didn&#8217;t hit my stop, at 110.95, and man o man these charts still look pretty bearish to this northern chartist. So I made the decision to hold overnight, so I am short several positions that are grinding me out right now. I need a good solid move one way or the other and I am still leaning to the downside.</p>
<p>The reason I went short was due to the wte initial claims, the UUP the VIX and the eur/usd. As this mkt. rallied, these did not react as they should, in fact, they reacted the exact opposite as I would&#8217;ve expected. So I did not think this move up had legs, and I was right. But I waited for a decent entry and had to give up a good portion of the move. Well, we have more news tomorrow, and maybe I should be hoping for good news, then the mkt. will drop and I can get out of my shorts with at least some small profit. Quit being a baby AKOT and let&#8217;s look at some charts: Okay, but first speaking of babies&#8230;&#8230;</p>
<p><span style='text-align:center; display: block;'><object width='425' height='350'><param name='movie' value='http://www.youtube.com/v/U8Ev5HgGACg&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' /><param name='allowfullscreen' value='true' /><param name='wmode' value='transparent' /><embed src='http://www.youtube.com/v/U8Ev5HgGACg&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' type='application/x-shockwave-flash' allowfullscreen='true' width='425' height='350' wmode='transparent'></embed></object></span></p>
<p><a href="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10eur_dow.png"><img class="alignnone size-full wp-image-2291" title="09-12-10eur_dow" src="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10eur_dow.png" alt="" width="655" height="495" /></a></p>
<p>Let&#8217;s start with the eur/usd since I was just chatting about it. As this falls, so does the mkt. The top chart is the DOW the bottom is the eur/usd. You can see that the eur/usd has started dropping, yet the DOW has yet to follow suit.</p>
<p><a href="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10eurusd.png"><img class="alignnone size-full wp-image-2290" title="09-12-10eurusd" src="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10eurusd.png" alt="" width="654" height="452" /></a></p>
<p>Currently the eur/usd has stalled out on support I have been showing for a few days, the 1.4717. However, now it has formed a bearish wedge / flag. I will be looking for another big burst down out of this wedge.</p>
<p><a href="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10vix60.png"><img class="alignnone size-full wp-image-2289" title="09-12-10vix60" src="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10vix60.png" alt="" width="655" height="453" /></a></p>
<p>The VIX 60 min. chart shows this current up trend. We took out the gap and the rallied right back above it at the close. A strong break of this trend line will be sentiment change signal. However, this thing opened the day down .80 and pretty much rallied all day from then one, with one blip.</p>
<p><a href="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10dow.png"><img class="alignnone size-full wp-image-2280" title="09-12-10dow" src="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10dow.png" alt="" width="655" height="458" /></a></p>
<p>Here is a very pretty resistance touch and pullback. Never nudged a line on this chart. It is screaming breakout, but to which side is the question. You know my thoughts.</p>
<p><a href="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10spx.png"><img class="alignnone size-full wp-image-2286" title="09-12-10spx" src="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10spx.png" alt="" width="655" height="458" /></a></p>
<p>Not as picture perfect as the DOW, but the SPX gaps up, rallies close to resistance and sells off 50% of the move. Looking at just this chart, I would expect a move / gap down tomorrow and a re-test or even break of the red support line. V has been down three days in a row.</p>
<p><a href="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10nas_001.png"><img class="alignnone size-full wp-image-2282" title="09-12-10nas_001" src="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10nas_001.png" alt="" width="655" height="470" /></a></p>
<p>I want to point out this divergence in the NASDAQ. It is not brutally apparent but it is there. Again, another great reversal candle on resistance seems to signal reversal, but reversal candles are a dime a dozen right now.</p>
<p><a href="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10qqqq_001.png"><img class="alignnone size-full wp-image-2284" title="09-12-10qqqq_001" src="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10qqqq_001.png" alt="" width="655" height="467" /></a></p>
<p>So, with the previous chart in mind, check out the QQQQ. Divergences all over the place, and the current one is the longest baddest of them all. Taken in context with another tombstone doji, perhaps it is time to start dropping. But if you look at 12/1 we had a similar, not quite as bearish candle, and moved sideways 3 days before dropping. I really don&#8217;t want that right now, this sideways action is brutal.</p>
<p><a href="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10uup.png"><img class="alignnone size-full wp-image-2288" title="09-12-10uup" src="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10uup.png" alt="" width="655" height="454" /></a></p>
<p>I should&#8217;ve put this up there with the eur/usd, but I am too lazy to move it right now. As I type this, I just notice that looks like a bullish flag right there. Interesting, and on support. This looks like another pop up signal to me.</p>
<p><a href="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10rut.png"><img class="alignnone size-full wp-image-2285" title="09-12-10rut" src="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10rut.png" alt="" width="655" height="459" /></a></p>
<p>Man I got my charts all out of whack tonight. The RUT has made a second double top or a double top squared as I like to call it. Followed by today&#8217;s bearish engulfing candle and the RSI finally curling down, we could surely see some selling here. The 20 ma is moving up into the 50 and that is more bullish than bearish, so watch that.</p>
<p><a href="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10bc.png"><img class="alignnone size-full wp-image-2279" title="09-12-10bc" src="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10bc.png" alt="" width="654" height="473" /></a></p>
<p>Here is one of my Chart.ly / twitter charts from a couple days ago. It looks like it is working and still playable for a small short trade. Be cautious at support, but if the RSI is still above the 20 line, It may break support.</p>
<p><a href="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10liz.png"><img class="alignnone size-full wp-image-2281" title="09-12-10liz" src="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10liz.png" alt="" width="655" height="454" /></a></p>
<p>I thought LIZ may want to test that 200 ma again, and it appears that it may be headed there. I think it would be better if the RSI had come up a little more to give us more room to the downside, but still playable.</p>
<p><a href="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10anf.png"><img class="alignnone size-full wp-image-2278" title="09-12-10anf" src="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10anf.png" alt="" width="655" height="457" /></a></p>
<p>This could be affected by retail numbers tomorrow, but it is bouncing off support and the RSI is oversold, so if the numbers are good or okay, this has technical reasons to rally from here. But bad numbers and we could see a break of support and a move to the $32 area.</p>
<p><a href="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10utx.png"><img class="alignnone size-full wp-image-2287" title="09-12-10utx" src="http://akoptiontrader.wordpress.com/files/2009/12/09-12-10utx.png" alt="" width="654" height="471" /></a></p>
<p>Overall in up trend, but a hammer followed by a tombstone doji today, resistance at the 20 ma and trend line and the RSI crashing could lead to a test / break of support.</p>
<p>In closing: More econ news tomorrow, and we are now on the new futures contracts with one week before 3f. I don&#8217;t think it will take much to push us over the edge ( like wte initial claims numbers today, yeh that worked real great AKOT!) Well I have to share what I truly think, and believe me I put my $$ where my blog is, and this week, other than TOL, it has been a little painful. I will post more charts on Chart.ly / twitter tonight, it is faster, easier and overall more efficient.</p>
<p>So trade well and prosper my friends. And I will leave you with my favorite line from the Star Trek movie: Old Spock to young Spock: &#8220;Since my customary farewell would seem oddly self-serving, I shall simply say good luck.&#8221;</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[LIS 520 notes - 12/8/09]]></title>
<link>http://iporter.wordpress.com/2009/12/08/lis-520-notes-12809/</link>
<pubDate>Tue, 08 Dec 2009 18:05:07 +0000</pubDate>
<dc:creator>ijp</dc:creator>
<guid>http://iporter.wordpress.com/2009/12/08/lis-520-notes-12809/</guid>
<description><![CDATA[Searching used to be hard. Now it&#8217;s not. Profound words. databases used to be a series of shel]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Searching used to be hard. Now it&#8217;s not. Profound words.</p>
<p>databases used to be a series of shelves full of paper that held bibliographic indexes like PsychInfo.</p>
<p>Within a resource, searching took place in indexes, tables of contents, directories, etc.</p>
<p>Browsing was an important part of searching in physical materials.</p>
<p><!--more--></p>
<p>Browsing remains a sticking point in the digital environment.</p>
<p>Metadata: traditional &#8211; title, author, subject indicator, possibly controlled vocab, maybe not though</p>
<p>You could only search simple metadata and you could only search it by word or first letter.</p>
<p>The technologies of searching before the Internet encouraged browsing. Once you got into a catalog or even the stacks of a library, browsing was very beneficial.</p>
<p>Digital Searching:</p>
<p>searching by metadata, but there is a great deal more and you can search full text</p>
<p>free text/keyword searching</p>
<p>still within structure</p>
<p>expanded notion of what that structure is</p>
<p>document representation may incorporate document itself, plus metadata</p>
<ul>
<li>in past document surrogate was a physical card or a very short bit of text in a huge paper bibliographic index</li>
<li>now document surrogate is the document itself plus metadata</li>
</ul>
<p>rotated index -  concordance &#8211; you search a word and you get four words on either side of the word</p>
<p>precoordinate subject headings in a postcoordinate way</p>
<p>meta-search engines &#8211; an engine that searches other search engines</p>
<p>Most people think searching is really easy because of Google.</p>
<p>Web searching</p>
<p>central problem of any search is language ambiguity</p>
<p>synonymy: (faculty? teachers? educators? mentors? guides? professors? instructors?)</p>
<p>Polysemy: (&#8220;pitch&#8221; &#8220;shoe&#8221; &#8220;china&#8221; &#8220;bush&#8221;) &#8211; words that have many disparate meanings</p>
<p>known item searches:</p>
<ul>
<li>search <em><strong>most specific pieces</strong></em> you&#8217;re most sure of, that will uniquely find that and nothing else, where most likely to find it</li>
<li>by fragments of author, title, source, etc.</li>
<li>search the smallest possible database that you can</li>
</ul>
<p>Kinds of searching:</p>
<p>determine Major concepts/aspects of topic, in order of importance and specificity</p>
<p>search most specific first</p>
<p>use controlled vocabulary and pearl growing</p>
<p>keywords when necessary</p>
<p>For a topic: everything ever written is a <strong>high recall search</strong></p>
<p><strong>High precision search &#8211; you only want a few things that are exactly what you want</strong></p>
<p>other tricks: search antonyms and smallest database possible</p>
<p>Factors of search effectiveness:</p>
<p>amount and volume of content of the object of retrieval</p>
<ul>
<li>low: dictionary entry, library catalog record</li>
<li>high: google, amazon within-a-book search</li>
</ul>
<p>amount and level of metadata available for that object:</p>
<ul>
<li>low: Google</li>
<li>high: dictionary entry, library catalog record</li>
</ul>
<p>Inherent or imposed structure of object available for retrieval:</p>
<ul>
<li>low: Amazon WTB</li>
<li>high: catalog record, dictionary entry</li>
</ul>
<p>When you want info on a general topic, used metadata and structured objects.</p>
<p>When you want a very specific thing, and you have a search string that it is very specific, you want lots of content.</p>
<p>conceptual/linguistic ambiguity of domain:</p>
<ul>
<li>low: anything subject-specific</li>
<li>high: everything else</li>
</ul>
<p>Science has lower ambiguity in search terms</p>
<p>Humanities and social science has much more ambiguity in search terms</p>
<p>Joe Janes example for a good search tool: Ebay.</p>
<p>First comes content, then comes metadata along with the structure of the content, then metadata is structured, because metadata must be structured if there is too much of it</p>
<p>You have to have access points and mechanisms for finding something.</p>
<p>Searching has become so commonplace in the last 10 to 15 years.</p>
<p>&#8220;Knowledge is power &#8211; that is crap. Finding Knowledge is power.&#8221; &#8211; Joe Janes</p>
<p>&#8220;Search changes the way we think&#8221; Janes</p>
<p>&#8220;We are different because of Google&#8221; Janes</p>
<p>Research and scholarship is different.</p>
<p>&#8220;You have a more intimate relationship with information&#8221; Janes</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[How to speed up Index creation in Oracle database]]></title>
<link>http://oraclefunda.wordpress.com/2009/12/02/how-to-speed-up-index-creation-in-oracle-database/</link>
<pubDate>Wed, 02 Dec 2009 18:48:55 +0000</pubDate>
<dc:creator>aalapsharma</dc:creator>
<guid>http://oraclefunda.wordpress.com/2009/12/02/how-to-speed-up-index-creation-in-oracle-database/</guid>
<description><![CDATA[Imagine a situation where you have to create an index on a table having 1 billion records. It might ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Imagine a situation where you have to create an index on a table having 1 billion records. It might take approximately 4-5 hours to create the index. But there are ways to fasten this process. Following are some of the tips that will help you to create indexes faster than the normal time. </p>
<p><strong>Tip#1 &#8211; PARALLEL:<br />
</strong>While creating index oracle must first collect the symbolic key/ROWID pairs with a full-table scan. When you specify Parallel option to the create index script oracle will perform a full table scan in parallel threads based on the number of CPUs, table partitioning and disk configuration and hence will reduce index creation time.</p>
<p>Following will work fine on a server that has 4 CPUs:</p>
<p>create index indx_t_doc on t_document(doc_id,doc_type) parallel 3;<br />
<strong> </strong></p>
<p><strong>Tip#2 &#8211; NOLOGGING: </strong><br />
The NOLOGGING keyword in create index command will restrict the database from generating large redo logs and will create minimal redo log. This will improve the performance of Create index command.</p>
<p>create index indx_t_doc on t_document(doc_id,doc_type) PARALLEL 3 NOLOGGING;<br />
<strong> </strong></p>
<p><strong>Tip#3 &#8211; COMPRESS:<br />
</strong>The COMPRESS option will enable key compression. It eliminates repeated occurrence of key column values and may substantially reduce storage. Use integer to specify the prefix length (number of prefix columns to compress).<br />
For unique indexes, the valid range of prefix length values is from 1 to the number of key columns minus 1. The default prefix length is the number of key columns minus 1.</p>
<p>For nonunique indexes, the valid range of prefix length values is from 1 to the number of key columns. The default prefix length is the number of key columns.</p>
<p>create index indx_t_doc on t_document(doc_id,doc_type) PARALLEL 3 NOLOGGING COMPRESS;</p>
<p>Follow these simple tips and save your time.</p>
<p>Happy Indexing <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Indexes]]></title>
<link>http://yiws.wordpress.com/2009/11/29/indexes/</link>
<pubDate>Mon, 30 Nov 2009 04:48:30 +0000</pubDate>
<dc:creator>kkpodesky</dc:creator>
<guid>http://yiws.wordpress.com/2009/11/29/indexes/</guid>
<description><![CDATA[Today I worked on the Indexes for the Website. As of right now there are 3: Manga Novel Anime/OVA I ]]></description>
<content:encoded><![CDATA[Today I worked on the Indexes for the Website. As of right now there are 3: Manga Novel Anime/OVA I ]]></content:encoded>
</item>
<item>
<title><![CDATA[Why is SQL Azure and Index Fragmentation a Bad Combination?]]></title>
<link>http://sqlfascination.com/2009/11/25/why-is-sql-azure-and-index-fragmentation-a-bad-combination/</link>
<pubDate>Wed, 25 Nov 2009 22:20:10 +0000</pubDate>
<dc:creator>andrewhogg</dc:creator>
<guid>http://sqlfascination.com/2009/11/25/why-is-sql-azure-and-index-fragmentation-a-bad-combination/</guid>
<description><![CDATA[I&#8217;ve been thinking through and experimenting a bit more with some of the concepts in SQL Azure]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>I&#8217;ve been thinking through and experimenting a bit more with some of the concepts in SQL Azure &#8211; specifically I was considering the impact of fragmentation on both the storage (in terms of the storage limit) as well as the maintenance. This is not a new issue, DBA&#8217;s face fragmentation regularly and can deal with it in a variety of ways, but with SQL Azure the problem looks magnified by a lack of tools and working space. Whilst looking into this, I then realised that there is an unfortunate consequence of not knowing how much data space your index is actually using.</p>
<p>Each table in SQL Azure has to have a clustered index if data is going to be inserted into it and clustered indexes can suffer from fragmentation if chosen poorly. The combination of SQL Azure and the time-honoured fragmentation provides three consequences about in, fragmentation:</p>
<ul>
<li>will occur and you have no way in which to measure it due to the lack of DMV support.</li>
<li>will create wasted space within your space allocation limit.</li>
<li>will reduce your performance.</li>
</ul>
<p>You could work it out if you knew how much space you had actually used vs. what the size of the data held is, but we are unable to measure either of those values. If you have chosen the data compression option on the index then even those values would not give you a fragmentation ratio.</p>
<p>This leaves us with a situation in which you can not know how much you are fragmented, meaning:</p>
<ul>
<li>You schedule a regular index rebuild.</li>
<li>Hope SQL Azure performs index rebuilds for you.</li>
</ul>
<p>I&#8217;m not aware of SQL Azure doing this for you &#8211; and you do not have SQL Agent facilities either.</p>
<p>So this seems very wrong, the concept of SQL Azure is to take away a lot of the implementation details and hassle from the subscriber &#8211; DR and failover is handled etc. But there looks to be as gap in which certain items such as fragmentation is falling &#8211; I have not seen any documentation saying SQL Azure handles it (but there could be some hidden somewhere and I hope there is!) and neither are you given the right tools in which to program and handle it yourself.</p>
<p>What happens when you hit that size limit?</p>
<pre><span style="color:#ff0000;">Msg 40544, Level 20, State 5, Line 1 The database has reached its size quota. Partition or delete data, drop indexes, or consult the documentation for possible resolutions. Code: 524289 </span></pre>
<p>That took a lot of time to get to, (SQL Azure is not fast), but was generated using a simple example that would also demonstrate fragmentation.</p>
<pre><span style="color:#0000ff;">Create Table</span> fragtest ( id <span style="color:#0000ff;">uniqueidentifier primary key clustered</span>,
padding <span style="color:#0000ff;">char</span>(3000)
) </pre>
<p>Very simple stuff, deliberately using a clustered key on a GUID to cause a decent level of fragmentation, and also using the padding fixed with character field to ensure 2 rows per page only, maximising the page splits.</p>
<pre><span style="color:#0000ff;">insert into</span> fragtest <span style="color:#0000ff;">values</span> (<span style="color:#ff00ff;">newid</span>(), <span style="color:#ff00ff;">replicate</span>(<span style="color:#ff0000;">'a'</span>,1000))
go 200000</pre>
<p>Because of the randomness of the newid() function, the level of fragmentation is not predictable but will certainly occur &#8211; in my test I hit the wall on 196,403 records and failed with an out of space message.</p>
<p>Given the 2 rows per page and the number of rows, with ~0% fragmentation the data should be able ~767Mb &#8211; that is considerably short of 1 Gb &#8211; so there is a significant level of fragmentation in there wasting space, about 23% of it. If you include the 2k per page being wasted by the awkward row size then the actual raw data stored is roughly ~60% of the overall size allowing for row overheads etc.</p>
<p>So there are two important points from this contrived example:</p>
<ul>
<li>You can lose significant space from bad design.</li>
<li>Doing this backs you into a corner that you will not be able to get out of &#8211; this is the worst part.</li>
</ul>
<p>How are you cornered? well, try work out how to get out of the situation and defrag the clustered index / free up the space, you could:</p>
<ul>
<li>Attempt an index rebuild.</li>
<li>Try to rebuild it with SORT_IN_TEMP.</li>
<li>Drop the index.</li>
<li>Delete data.</li>
</ul>
<p>The first three fail, the SORT_IN_TEMP is not supported and would not of rescued the situation either since you have no working space in which to write the newly sorted rows prior to removing the old ones.  So do you really want to delete data? I don&#8217;t think we can consider that an option for now.</p>
<p>This all seems like a &#8216;rock&#8217; and a &#8216;hard place&#8217;; whilst SQL Azure can support these data quantities,  it seems prudent that you never consider actually going close to them at all &#8211; and that you equally are going to find it difficult to understand if you are close to them, since there is no way of measuring the fragmentation. The alternative is that you manually rebuild indexes on a regular basis to control fragmentation, but then enough free space is going to have to be left to allow you to rebuild your largest index without running out of space &#8211; reducing your data capacity significantly.</p>
<p>The corner is not entirely closed off, the way out of the corner would be to create another SQL Azure database within my account and select the data from database1.fragtest to database2.fragtest and then drop the original table and transfer it back &#8211; not ideal but it would work in an emergency.</p>
<p>I think the key is to design to make sure you do not have to face this issue; keep your data quantities very much under the SQL Azure size limits, and watch for the potential of tables being larger than the remaining space and preventing an re-indexing from occurring.</p>
<p>Interested to know your thoughts on this one, and what other consequences of being close to the limit will come out.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[I've got an index!]]></title>
<link>http://gordonzola.net/2009/11/19/ive-got-an-index/</link>
<pubDate>Thu, 19 Nov 2009 02:53:07 +0000</pubDate>
<dc:creator>gordonedgar</dc:creator>
<guid>http://gordonzola.net/2009/11/19/ive-got-an-index/</guid>
<description><![CDATA[Long before I ever thought about writing a book I was fascinated by indexes. I realize now that I ha]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Long before I ever thought about writing a book I was fascinated by indexes. I realize now that I have always wanted to read a history of indexes: how themes are chosen, the hidden politics of indexing, unsung heroic indexers etc.  Is there one out there?  </p>
<p>Of course this realization was spawned by the fact that I just found out that I’m getting an index.  I know it makes sense, I just hadn’t thought about it!  To me this is much more exciting that the cover finally being chosen.</p>
<p>I mean, check out this snippet:</p>
<p><i><br />
Reagan, Ronald, 82–83, 96–98, 189–190, 195–196<br />
Reblochon, 92<br />
recombinant bovine growth hormone (rBGH), 26, 74, 84–87, 94<br />
Red Hawk, 134, 180, 184<br />
rednecks, 41–42<br />
Redwood Hill Farm, 44, 55–56, 88, 141, 151<br />
rennet, 5, 93–96<br />
</i></p>
<p>That is a better advertisement for <a href="http://www.chelseagreen.com/bookstore/item/cheesemonger/"> the book </a> than anything I can come up with.  My only regret is that I didn’t somehow incorporate <a href="http://www.youtube.com/watch?v=V2krmvOCBJI">The Rezillos</a> into the manuscript.  That would have made this little index cross section even better.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[howto: AllowOverride ExpiredByType]]></title>
<link>http://kasolutions.wordpress.com/2009/11/17/howto-allowoverride-expiredbytype/</link>
<pubDate>Tue, 17 Nov 2009 06:00:08 +0000</pubDate>
<dc:creator>aneeska</dc:creator>
<guid>http://kasolutions.wordpress.com/2009/11/17/howto-allowoverride-expiredbytype/</guid>
<description><![CDATA[There&#8217;s no such option! There is &#8211; technically &#8211; but not quite. Background: I want]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>There&#8217;s no such option! There is &#8211; technically &#8211; but not quite. </p>
<p><strong>Background:</strong><br />
	I wanted to override certain aspects of the apache server using &#8216;.htaccess&#8217; file, like ExpiredByType &#8211; for adding Expiry headers to files that are requested from the server &#8211; and SetOutputFilter &#8211; to send files gzip comoressed from server.</p>
<p>	Here&#8217;s I what I wanted:</p>
<p>	Add an expiry of one month from the time of access to the following File Types -<br />
		gif<br />
		javascript<br />
		jpeg<br />
		ico<br />
		css</p>
<p>	Enable gzip compression for the following type of docs<br />
		html<br />
		css<br />
		javascript</p>
<p>Putting the above rules in &#8220;httpd.conf&#8221; worked fine. But when the same was put in &#8220;.htaccess&#8221;, these rules were ignored.</p>
<p><strong>Reason:</strong></p>
<p>In order for the server to use the settings from &#8220;.htaccess&#8221; file, the following condition need to be met:<br />
	- AllowOverride should be set to some thing other than &#8220;None&#8221;</p>
<p>To add Expiry header, the following conditions should be met:<br />
	- expires_module should be enabled in apache config file<br />
	- &#8220;ExpiresActive On&#8221; rule should be set</p>
<p><strong>Solution:</strong></p>
<p>AllowOverride take 3 types of arguements:<br />
	1. All				- all directives in .htaccess context are allowed<br />
	2. None				- .htaccess file is ignored by server<br />
	3.<br />
		This can be one among the following<br />
		a. AuthConfig<br />
		b. FileInfo		- for Gzip compression<br />
		c. Indexes		- for stamping expiry header<br />
		d. Limit</p>
<p>So the final httpd.conf should have the following lines:</p>
<p>	LoadModule expires_module modules/mod_expires.so<br />
	AllowOverride FileInfo Indexes</p>
<p>In .htaccess file, the following rules are added:</p>
<p>	#Add Expire header to the file types listed above<br />
	ExpiresActive On<br />
	ExpiresDefault &#8220;access plus 1 month&#8221;<br />
	ExpiresByType image/gif A2592000<br />
	ExpiresByType text/javascript A2592000<br />
	ExpiresByType image/jpeg A2592000<br />
	ExpiresByType image/ico A2592000<br />
	ExpiresByType text/css A2592000</p>
<p>	#enable gzip compression<br />
	SetOutputFilter DEFLATE<br />
	AddOutputFilterByType DEFLATE text/html text/css text/javascript text/plain</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[One thing Sarah Palin &amp; I have in common]]></title>
<link>http://arthurgoldwag.wordpress.com/2009/11/13/one-thing-sarah-palin-i-have-in-common/</link>
<pubDate>Fri, 13 Nov 2009 20:50:27 +0000</pubDate>
<dc:creator>arthurgoldwag</dc:creator>
<guid>http://arthurgoldwag.wordpress.com/2009/11/13/one-thing-sarah-palin-i-have-in-common/</guid>
<description><![CDATA[From GAWKER&#8217;s 10 Juicy items in the sneak peaks of Sarah Palin&#8217;s historical-fiction memo]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>From <a href="http://gawker.com/5403851/sarah-palins-historical-fiction-memoir-10-juicy-items-from-the-sneak-peeks">GAWKER&#8217;s </a>10 Juicy items in the sneak peaks of Sarah Palin&#8217;s historical-fiction memoir (#10) :</p>
<blockquote><p>
<strong>No Flipping to the Back.</strong> Second-most conspicuous absence: an index, which Halperin says is &#8220;subtle revenge on the party&#8217;s Washington establishment, whose members tend to flip to the back pages and scan for their own names.&#8221; This is possible, but I&#8217;m much more inclined to believe that her editors plumb forgot that this peculiar, vapid woman they were working with is an actual politician, who actually interacts with important people, and slipped into Chicken Noodle Soup for the Soul mode by accident.</p></blockquote>
<p><a href="http://andrewsullivan.theatlantic.com/the_daily_dish/2009/11/why-no-index.html">Andrew Sullivan</a> takes note and links to Samuel P. Jacobs at the <a href="http://www.thedailybeast.com/blogs-and-stories/2009-11-12/the-missing-pages-in-palins-book/">Daily Beast </a>, who develops the &#8220;vengeance&#8221; theme at greater length and offers a more probable explanation:</p>
<blockquote><p>One answer: time. It takes two to three weeks to put together a good index, says Peter Osnos, the founder of Public Affairs, who has published Bill Clinton, Vernon Jordan, Scott McClellan, and nearly every other Washington macher over the years. Cutting an index can mean the difference between getting a book into stores well before Thanksgiving or missing the holiday sales season altogether. Speed is at an even greater premium now, in the age of e-books and instant downloads on the Kindle. And of course, skipping the index means fewer pages—and fewer dollars spent to bring the book to market. “Every penny counts,” Osnos said.</p></blockquote>
<p>See my post <a href="http://arthurgoldwag.wordpress.com/2009/09/17/negative-reviews-and-indexes/">Negative Reviews and Indexes</a> if you want to see why I relate. </p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Inconsistent Date Literal Parameterization Behaviour]]></title>
<link>http://sqlfascination.com/2009/11/12/inconsistent-date-literal-parameterization-behaviour/</link>
<pubDate>Thu, 12 Nov 2009 22:20:12 +0000</pubDate>
<dc:creator>andrewhogg</dc:creator>
<guid>http://sqlfascination.com/2009/11/12/inconsistent-date-literal-parameterization-behaviour/</guid>
<description><![CDATA[I have mentioned query parameterization before and the process by which SQL extracts literal values ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>I have mentioned query parameterization before and the process by which SQL extracts literal values from a query and re-writes the query in effect to use parameters to get a query plan cache hit, which negates the need to recompile the plan costing both time and CPU. There are a lot of good articles and book chapters that cover the topic.</p>
<p>What has confused me for a while is witnessing date literals within a query being parameterized on one query and not on another, even though both databases have parameterization set to &#8216;Simple&#8217; mode. When a date literal is not parameterized the chances of getting a query plan cache hit is obviously very low which has performance impacts. The problem to date has been that I had been unable to ascertain the commonality and requirements that allowed the query to get parameterized and when it just kept the literal. I was paying too much attention to the query and as it turns out not enough to the table.</p>
<p>Well, after a number of hours getting to know the brick wall very well I finally tracked it down, and oddly it had nothing to do with the query I was submitting, but I could reproduce reliably by using an unrelated non-clustered index, which is confusing to say the least and I can not yet think of any reason why, is it a bug or just &#8217;Weird and Odd&#8217;.</p>
<p>The following steps reproduce the issue in both SQL Server 2005 and 2008.</p>
<p>Create a database, default settings, nothing specific, then the second step is to create our test table, a simple structure is suffice.</p>
<pre><span style="color:#0000ff;">CREATE</span> <span style="color:#0000ff;">TABLE</span> [dbo].[paramtest](  [id] [int] <span style="color:#0000ff;">IDENTITY</span>(1,1)<span style="color:#808080;"> NOT NULL</span>, [somedate] [datetime] <span style="color:#808080;">NOT NULL</span>, [somefield] [varchar](50) <span style="color:#0000ff;">COLLATE</span> SQL_Latin1_General_CP1_CI_AS <span style="color:#808080;">NULL</span>,
 <span style="color:#0000ff;">CONSTRAINT</span> [PK_paramtest] <span style="color:#0000ff;">PRIMARY</span> <span style="color:#0000ff;">KEY</span> <span style="color:#0000ff;">CLUSTERED</span>
(
 [id] <span style="color:#0000ff;">ASC</span>
)<span style="color:#0000ff;">WITH</span> (IGNORE_DUP_KEY = <span style="color:#0000ff;">OFF</span>) <span style="color:#0000ff;">ON</span> [PRIMARY]
) <span style="color:#0000ff;">ON</span> [PRIMARY]</pre>
<p>We need some data to work against just to make sure we are selecting results, and we can insert these trivially as follows: </p>
<pre><span style="color:#0000ff;">insert </span><span style="color:#0000ff;">into</span> [paramtest] <span style="color:#0000ff;">values</span> (<span style="color:#ff00ff;">getdate</span>(),<span style="color:#0000ff;">'a'</span>)
go 10000</pre>
<p>So we now have 10k rows within the table, and a clustered primary index on the identity column.</p>
<p>The test starts with freeing up the procedure cache, and then running the select statement, the datetime I used was roughly in the middle of the range of values I had inserted but is not a deciding factor in the query plan results.</p>
<pre><span style="color:#0000ff;">dbcc</span> freeproccache <span style="color:#0000ff;">select </span>* <span style="color:#0000ff;">from</span> paramtest <span style="color:#0000ff;">where</span> somedate &#62;<span style="color:#ff0000;"> '2009-11-12 21:14:50.000'</span></pre>
<p>Using a standard query plan cache extraction query the specific line of the xml plan we are interested in is the SQL Statement.</p>
<pre><span style="color:#ff0000;">&#60;StmtSimple StatementText="(@1 varchar(8000))SELECT * FROM [paramtest] WHERE [somedate]&#62;@1" StatementId="1" StatementCompId="1" StatementType="SELECT" StatementSubTreeCost="0.0379857" StatementEstRows="3831.48" StatementOptmLevel="TRIVIAL"&#62;</span></pre>
<p>From it you can see the literal varchar value was extracted as @1 with a type of varchar(8000) and the query altered to use this parameter &#8211; this is exactly the behaviour we would expect from parameter sniffing.</p>
<p>Next step is to create a non-clustered index on the varchar &#8217;somefield&#8217; &#8211; completely unrelated to the date literal being used, and should have no impact on the query at all.</p>
<pre><span style="color:#0000ff;">CREATE </span><span style="color:#0000ff;">NONCLUSTERED</span> <span style="color:#0000ff;">INDEX</span> [ix_test] <span style="color:#0000ff;">ON</span> [dbo].[paramtest] ([somefield] <span style="color:#0000ff;">ASC</span>
)<span style="color:#0000ff;">WITH</span> (SORT_IN_TEMPDB = <span style="color:#0000ff;">OFF</span>, DROP_EXISTING = <span style="color:#0000ff;">OFF</span>, IGNORE_DUP_KEY = <span style="color:#0000ff;">OFF</span>, ONLINE = <span style="color:#0000ff;">OFF</span>) <span style="color:#0000ff;">ON</span> [PRIMARY]</pre>
<p>Free the procedure cache up again and rerun the query</p>
<pre><span style="color:#0000ff;">dbcc</span> freeproccache <span style="color:#0000ff;">select </span>* <span style="color:#0000ff;">from</span> paramtest <span style="color:#0000ff;">where</span> somedate &#62; <span style="color:#ff0000;">'2009-11-12 21:14:50.000'</span></pre>
<p>Extract the query plan again from the cache, but this time it is noticable different, the parameterisation has not occurred. The literal has</p>
<pre><span style="color:#ff0000;">&#60;StmtSimple StatementText="select * from paramtest  where somedate &#62; '2009-11-12 21:14:50.000'" StatementId="1" StatementCompId="1" StatementType="SELECT" /&#62;</span></pre>
<p> To revert to the old plan, drop the index and clear the cache again, then run the query once more.</p>
<pre><span style="color:#0000ff;">DROP INDEX</span> [ix_test] <span style="color:#0000ff;">ON</span> [dbo].[paramtest] <span style="color:#0000ff;">WITH</span> (ONLINE = <span style="color:#0000ff;">OFF</span>)</pre>
<p>Then clear the cache again and run the query</p>
<pre><span style="color:#0000ff;">select</span> * <span style="color:#0000ff;">from</span> paramtest <span style="color:#0000ff;">where</span> somedate &#62; <span style="color:#ff0000;">'2009-11-12 21:14:50.000'</span></pre>
<p>And we are back to being parameterized.</p>
<p>So the application of a single non-clustered index on a separate field to the one being queried is preventing the simple parameterization mode from parameter sniffing the date literal &#8211; this makes absolutely no sense, and you can play around with it a lot more knowing what it causing the effect on the query plan. Even placing the additional non-clustered index on the identity field, which already has a clustered index results in the parameterization failing. If this behaviour is be design, then it makes for an interesting design or limitation on the parameterization.</p>
<p>As soon as the database is in &#8216;Forced&#8217; parameterization mode, the literal was converted each time, so this looks specific to simple mode, but is not explainable, just demonstratable.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Advantages of stored procedures, triggers, indexes]]></title>
<link>http://scvinodkumar.wordpress.com/2009/11/10/advantages-of-stored-procedures-triggers-indexes/</link>
<pubDate>Tue, 10 Nov 2009 12:37:21 +0000</pubDate>
<dc:creator>Chandra Sekar Vinod Kumar</dc:creator>
<guid>http://scvinodkumar.wordpress.com/2009/11/10/advantages-of-stored-procedures-triggers-indexes/</guid>
<description><![CDATA[A stored procedure is a set of SQL commands that can be compiled and stored in the server. Once this]]></description>
<content:encoded><![CDATA[A stored procedure is a set of SQL commands that can be compiled and stored in the server. Once this]]></content:encoded>
</item>
<item>
<title><![CDATA[S&amp;P500 Futures Review 11/09/09]]></title>
<link>http://ocm2010.wordpress.com/2009/11/09/sp500-futures-review-110909/</link>
<pubDate>Tue, 10 Nov 2009 03:25:59 +0000</pubDate>
<dc:creator>ocm2010</dc:creator>
<guid>http://ocm2010.wordpress.com/2009/11/09/sp500-futures-review-110909/</guid>
<description><![CDATA[We are expecting some serious volatility moves in the future. No need to post the VIX today, the SP ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>We are expecting some serious volatility moves in the future. No need to post the VIX today, the SP charts speak for themselves.<br />
</p>
<p>Send us your email for updates as the trades are placed. ocm2010@gmail.com</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Apache: how to disable directory listing]]></title>
<link>http://mohammednv.wordpress.com/2009/11/08/apache-how-to-disable-directory-listing/</link>
<pubDate>Sun, 08 Nov 2009 07:50:38 +0000</pubDate>
<dc:creator>Mohammed</dc:creator>
<guid>http://mohammednv.wordpress.com/2009/11/08/apache-how-to-disable-directory-listing/</guid>
<description><![CDATA[Disable directory listing using httpd.conf: * Open your httpd.conf and look for &#8220;Options Index]]></description>
<content:encoded><![CDATA[Disable directory listing using httpd.conf: * Open your httpd.conf and look for &#8220;Options Index]]></content:encoded>
</item>
<item>
<title><![CDATA[Can a Covering NC Index be Tipped?]]></title>
<link>http://sqlfascination.com/2009/11/07/can-a-covering-nc-index-be-tipped/</link>
<pubDate>Sat, 07 Nov 2009 17:56:03 +0000</pubDate>
<dc:creator>andrewhogg</dc:creator>
<guid>http://sqlfascination.com/2009/11/07/can-a-covering-nc-index-be-tipped/</guid>
<description><![CDATA[Non-clustered indexes normally have a &#8216;tipping point&#8217;, which is the point at which the q]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Non-clustered indexes normally have a &#8216;tipping point&#8217;, which is the point at which the query engine decides to change strategies from seeking the index with a nested loop operator back to a seek on the underlying table or choosing to just scan the underlying table and ignore the index. <a href="http://www.sqlskills.com/blogs/kimberly/">Kimberley Tripp </a>wrote a great article about <a href="http://www.sqlskills.com/BLOGS/KIMBERLY/category/The-Tipping-Point.aspx">&#8216;The Tipping Point</a>&#8216; , and the guidance is at about the 25-33% the query engine will change strategies.</p>
<p>If the non-clustered index is a covering index (it contains all the fields within the query) the query engine does not take the same decision &#8211; it makes sense that if any change in strategy occurs, it would have to be at a far higher figure, and as we are about to see, it will not take that decision and tip.</p>
<p>To test what strategy the engine would use I created a test situation of 2 separate tables, with different page counts, due to the padding column forcing the second table to use far more pages (5953 pages vs 9233)</p>
<pre><span style="color:#0000ff;">CREATE TABLE</span> [dbo].[tblIxTest1]( [PersonnelID] [int] <span style="color:#0000ff;">IDENTITY</span>(1,1)<span style="color:#808080;"> NOT NULL</span>, [FirstName] [char](30) <span style="color:#808080;">NULL</span>, [LastName] [char](30) <span style="color:#808080;">NULL</span>,
   [Department] [char](30) <span style="color:#808080;">NULL</span>, [SomePadding] [char](10) <span style="color:#808080;">NULL</span>
) <span style="color:#0000ff;">ON </span>[PRIMARY]</pre>
<p>And,</p>
<pre><span style="color:#0000ff;">CREATE TABLE</span> [dbo].[tblIxTest2]( [PersonnelID] [int] <span style="color:#0000ff;">IDENTITY</span>(1,1) <span style="color:#808080;">NOT NULL</span>, [FirstName] [char](30) <span style="color:#808080;">NULL</span>, [LastName] [char](30) <span style="color:#808080;">NULL</span>,
   [Department] [char](30) <span style="color:#808080;">NULL</span>, [SomePadding] [char](1000) <span style="color:#808080;">NULL</span>
) <span style="color:#0000ff;">ON</span> [PRIMARY]</pre>
<p>Next step was to insert some data, I needed random data to be able to ensure the index was not unbalanced in some way, so I broke out my useful little random string generation function. I should mention how to create this, a SQL function will not directly support the inclusion of a Rand() call within them, any attempt to do this results in the error:</p>
<pre><span style="color:#ff0000;">Msg 443, Level 16, State 1, Procedure test, Line 13
Invalid use of a side-effecting operator 'rand' within a function.</span></pre>
<p>However, there is nothing stopping a view from using this, and the function from using the view to get around the limitation: </p>
<pre><span style="color:#0000ff;">Create View</span> [dbo].[RandomHelper] <span style="color:#0000ff;">as Select</span> <span style="color:#ff00ff;">Rand</span>() <span style="color:#0000ff;">as</span> r</pre>
<p>And then the function can be generated to use this, it is not necessarily the most efficient random string generation function, but it works nicely.</p>
<pre><span style="color:#0000ff;">CREATE FUNCTION</span> [dbo].[RandomString] (@Length <span style="color:#0000ff;">int</span>) <span style="color:#0000ff;">RETURNS varchar</span>(100)
<span style="color:#0000ff;">WITH EXECUTE AS CALLER
AS
BEGIN
</span>  <span style="color:#0000ff;">DECLARE</span> @Result <span style="color:#0000ff;">Varchar</span>(100)
  <span style="color:#0000ff;">SET</span> @Result = <span style="color:#ff0000;">''
</span>  <span style="color:#0000ff;">DECLARE</span> @Counter <span style="color:#0000ff;">int</span>
  <span style="color:#0000ff;">SET</span> @Counter = 0
  <span style="color:#0000ff;">WHILE</span> @Counter &#60;= @Length
  <span style="color:#0000ff;">BEGIN</span>
     <span style="color:#0000ff;">SET </span>@Result = @Result + <span style="color:#0000ff;">Char</span>(<span style="color:#ff00ff;">Ceiling</span>((<span style="color:#0000ff;">select</span> R <span style="color:#0000ff;">from</span> randomhelper) * 26) + 64)       
     <span style="color:#0000ff;">SET </span>@Counter = @Counter + 1   <span style="color:#0000ff;">END</span>
  <span style="color:#0000ff;">RETURN</span>(@Result)
<span style="color:#0000ff;">END</span></pre>
<p>This now allows me to generate random data and insert it into the tables to get a nice data distribution, and this was run for both of the tables.</p>
<pre><span style="color:#0000ff;">insert into </span>tblIxTest1 <span style="color:#0000ff;">values</span> (dbo.RandomString(20),dbo.RandomString(20),dbo.RandomString(20),<span style="color:#ff0000;">''</span>)
<span style="color:#0000ff;">go </span>1000000</pre>
<p>Two NC indexes are now needed, one for each table and both are identical and cover just the FirstName and PersonnelID fields within the table.</p>
<pre><span style="color:#0000ff;">CREATE NONCLUSTERED INDEX</span> [IX_Test1] <span style="color:#0000ff;">ON</span> [dbo].[tblIxTest1] ( [FirstName] <span style="color:#0000ff;">ASC</span>, [PersonnelID] <span style="color:#0000ff;">ASC</span>
)<span style="color:#0000ff;">WITH</span> (<span style="color:#0000ff;">STATISTICS_NORECOMPUTE</span>  = <span style="color:#0000ff;">OFF</span>, <span style="color:#0000ff;">SORT_IN_TEMPDB</span> = <span style="color:#0000ff;">OFF</span>, <span style="color:#0000ff;">IGNORE_DUP_KEY</span> = <span style="color:#0000ff;">OFF</span>, <span style="color:#0000ff;">DROP_EXISTING</span> = <span style="color:#0000ff;">OFF</span>, <span style="color:#0000ff;">ONLINE</span> = <span style="color:#0000ff;">OFF</span>, <span style="color:#0000ff;">ALLOW_ROW_LOCKS</span>  = <span style="color:#0000ff;">ON</span>, <span style="color:#0000ff;">ALLOW_PAGE_LOCKS</span>  = <span style="color:#0000ff;">ON</span>) <span style="color:#0000ff;">ON</span> [PRIMARY]
GO
<span style="color:#0000ff;">CREATE NONCLUSTERED INDEX</span> [IX_Test2] <span style="color:#0000ff;">ON</span> [dbo].[tblIxTest2] ( [FirstName] <span style="color:#0000ff;">ASC</span>, [PersonnelID] <span style="color:#0000ff;">ASC</span>
)<span style="color:#0000ff;">WITH</span> (<span style="color:#0000ff;">STATISTICS_NORECOMPUTE</span>  = <span style="color:#0000ff;">OFF</span>, <span style="color:#0000ff;">SORT_IN_TEMPDB</span> = <span style="color:#0000ff;">OFF</span>, <span style="color:#0000ff;">IGNORE_DUP_KEY</span> = <span style="color:#0000ff;">OFF</span>, <span style="color:#0000ff;">DROP_EXISTING</span> = <span style="color:#0000ff;">OFF</span>, <span style="color:#0000ff;">ONLINE</span> = <span style="color:#0000ff;">OFF</span>, <span style="color:#0000ff;">ALLOW_ROW_LOCKS</span>  = <span style="color:#0000ff;">ON</span>,<span style="color:#0000ff;"> ALLOW_PAGE_LOCKS</span>  = <span style="color:#0000ff;">ON</span>) <span style="color:#0000ff;">ON</span> [PRIMARY]
GO</pre>
<p>The setup is complete and it is pretty easy to now show the NC covering index is not going to tip, the most extreme where clause is where I am allowing every record to be returned:</p>
<pre><span style="color:#0000ff;">select</span> personnelid , firstname <span style="color:#0000ff;">from</span> tblixtest1 <span style="color:#0000ff;">where</span> firstname &#62;= 'a' <span style="color:#0000ff;">and</span> firstname &#60;= <span style="color:#ff0000;">'zzzzzzzzzzzzzzzzzzzzz'</span></pre>
<p>This still produces a query plan with a seek strategy, regardless of which of my two tables it was executed on:</p>
<pre>select personnelid , firstname from tblixtest1  where firstname &#62;= 'a' and firstname &#60;= 'zzzzzzzzzzzzzzzzzzzzz'  
    &#124;--Index Seek(OBJECT:([FilteredIndexTest].[dbo].[tblIxTest1].[IX_Test1]), SEEK:([FilteredIndexTest].[dbo].[tblIxTest1].[FirstName] &#62;= [@1] AND [FilteredIndexTest].[dbo].[tblIxTest1].[FirstName] &#60;= [@2]) ORDERED FORWARD)</pre>
<p>If we just select the entire table, unsurprisingly at that point it chooses to perform an index scan.</p>
<pre><span style="color:#0000ff;">select</span> personnelid , firstname <span style="color:#0000ff;">from </span>tblixtest1</pre>
<p>Results in the following plan:</p>
<pre>select personnelid , firstname from tblixtest1   &#124;--Index Scan(OBJECT:([FilteredIndexTest].[dbo].[tblIxTest1].[IX_Test1])) </pre>
<p>The row counts on both queries were identical at 1 million. Slightly more interesting is that if I use a Like clause instead of a direct string evaluation, the behaviour alters slightly when selecting all the values:</p>
<pre><span style="color:#0000ff;">select </span>personnelid , firstname <span style="color:#0000ff;">from </span>tblixtest1 <span style="color:#0000ff;">where</span> firstname like '<span style="color:#ff0000;">[a-z]%</span>'</pre>
<p>Gives the query plan:</p>
<pre>select personnelid , firstname from tblixtest1  where firstname like '[a-z]%'  
   &#124;--Index Scan(OBJECT:([FilteredIndexTest].[dbo].[tblIxTest1].[IX_Test1]),  WHERE:([FilteredIndexTest].[dbo].[tblIxTest1].[FirstName] like '[a-z]%'))</pre>
<p>So the query engine is potentially making an optimisation that it knows the like clause covers 100% and adopts an automatic scan, but it is not really very clear why it has this optimisation path. If the like clause changes to [a-y] then it reverts back to a seek, so it looks specific to covering all the values within the like statement. If a between statement is used, it remains a seek regardless.</p>
<p>So the result is that a Non-clustered covering index is very unlikely to tip, you either have to not give it a where clause, or use a like statement across all the values available, it will steadfastly refuse to seek and choose the scan.</p>
<p>Why?</p>
<p>Well the I/O cost of the operation remains the same, it has to read every page in the table and it considered the cost of traversing the B-Tree negligible, so the difference between seek and scan is not very great. Running the seek based query and scan based query in the same batch the relative percentages are 48% vs 52% &#8211; that is the scan scoring 52% even though they read the same number of rows.</p>
<p>Outputting the IO statistics when they are run side by side shows the same number of pages being read, but the seek is clearly being favoured and is slightly faster as far as SQL is concerned &#8211; it is quite weird to consider a seek of an entire index is more efficient than a scan of the index.</p>
<pre>(1000000 row(s) affected)
Table 'tblIxTest1'. Scan count 1, logical reads 5995, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
(1000000 row(s) affected)
Table 'tblIxTest1'. Scan count 1, logical reads 5995, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.</pre>
<p>So if you come across a covering index in a query plan that is scanning, it would be worth investigating as to whether it is intended. The chances are more likely the index field order is not supporting the predicates being used, than engine has chosen to tip the index like it would for the non-covering non-clustered indexes.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[A back-of-the-book index to images of ancient Greek vases]]></title>
<link>http://tburmeister.wordpress.com/2009/10/31/a-back-of-the-book-index-to-images-of-ancient-greek-vases/</link>
<pubDate>Sat, 31 Oct 2009 22:08:37 +0000</pubDate>
<dc:creator>Tricia</dc:creator>
<guid>http://tburmeister.wordpress.com/2009/10/31/a-back-of-the-book-index-to-images-of-ancient-greek-vases/</guid>
<description><![CDATA[Before I dive into this, here’s my experimental image index that is discussed in this post. You can ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Before I dive into this, here’s <a href="http://tburmeister.wordpress.com/portfolio/experimental-back-of-the-book-image-index/">my experimental image index</a> that is discussed in this post.  You can see some sample pages from the text using <a href="http://www.amazon.com/History-Greek-Vases-John-Boardman/dp/0500285934/ref=sr_1_1?ie=UTF8&#38;s=books&#38;qid=1257025995&#38;sr=8-1">Amazon&#8217;s &#8220;look inside&#8221; feature</a>. </p>
<p><strong>Background</strong><br />
Over the summer I took a class on indexing and abstracting.  As part of my final project, I indexed some of the images of Greek vases in the book <em>The History of Greek Vases</em>, by John Boardman (London: Thames &#38; Hudson Ltd, 2001). It seems kind of quaint to produce a back-of-the-book image index; maybe that&#8217;s just because I&#8217;m too steeped in digital stuff.  Indexes are crucial for print materials, and I know it would have been useful to my art historical research to have the subjects, vase types etc. indexed.  However, this probably isn&#8217;t the most practical of endeavors. Any good index to the text would probably index image captions, or the locators would at least get you close enough that you could find that one image you remembered that showed Perseus with a detached Gorgon head in hand.  This exercise was more just to see what would happen if indexed multiple attributes but proceeded as if I were just creating a traditional subject index to a text.  What would the index look like?  What would the cross-references be like, and how would the image index differ from an index to the text?   </p>
<p><strong>Method and Meanderings</strong><br />
I didn&#8217;t index drawings, maps, or photographs of sections of vases; I focused on images depicting vases in their entirety, and on the descriptive information about them that was included in captions. The locators in my index are for page numbers, although each image was numbered in the text. It just seemed easier to navigate to a page than to an image number. </p>
<p>When deciding what aspects of the images to index, I took inspiration from the access points used by the <a href="http://www.beazley.ox.ac.uk/pottery/default.htm">Beazley Archive at Oxford University</a>. Some of the elements by which one can search the <a href="http://www.beazley.ox.ac.uk/xdb/ASP/default.asp">Beazley pottery database</a> are: </p>
<ul>
<li>Fabric</li>
<li>Technique </li>
<li>Shape name</li>
<li>Date range</li>
<li>Inscription type </li>
<li>Inscription</li>
<li>Artist name</li>
<li>Scholar name </li>
<li>Decoration description</li>
<li>Collection name</li>
<li>Publication name</li>
</ul>
<p>There are even more than that, and it&#8217;s pretty impressive.  Not all of these categories would be useful for my purposes (a back-of-the-book image index), but several of them (inscription type and vase shape name, for example) are especially useful for various types of art historical research in this field. </p>
<p>I looked at the VRA Core 4.0 metadata schema and noted which of its elements might correspond to those used by the Beazley Archive. The Beazley&#8217;s “fabric” element combines VRA&#8217;s “cultural context” and “style/period” elements. “Technique” corresponds to VRA&#8217;s “material” and “technique”. VRA does have an element for “inscriptions”, but it&#8217;s not clear to me if the &#8220;type&#8221; attribute for the &#8220;text&#8221; sub-element could be used to indicate the type of inscription (e.g. epoisen or egraphsen signatures).  I was mainly using VRA Core as a point of reference, to get an idea of the types of attributes generally deemed important in creating descriptive metadata for images. (at the time, I didn&#8217;t know about <em>Cataloging Cultural Objects</em>, but since VRA Core is based on it I don&#8217;t see that as a big deal). I also considered the facets of AAT, and what they indicate about elements that can be combined (e.g. style and period). </p>
<p>The attributes I finally chose to index were: </p>
<ul>
<li>artist name</li>
<li>vase shape</li>
<li>technique</li>
<li>decoration</li>
<li>inscription</li>
<li>subject (both &#8220;things&#8221; depicted (e.g. warriors) and mythological figures (e.g. Achilles))</li>
</ul>
<p>I don&#8217;t think any of the vases in my sample set ended up having inscriptions.  I chose to index only these six elements because I had a limited amount of time to devote to this.  If I was indexing images in an online setting I would definitely want to use more access points.</p>
<p>It was difficult to differentiate between imagery that could be both a subject and a decorative element. Many of the vases I was indexing were decorated with rows of animals in a repeating pattern. This is a common motif, so I needed to decide on a policy for how to index it. At first I was making very specific subheadings indicating the type of vase on which the pattern was appearing, but then I realized that this was creating too much work, and it probably wouldn&#8217;t be all that useful. It was also starting to conflate the “fabric” and “technique” elements with the “subject”, and I wanted to keep them separate in hopes of having a less chaotic index. </p>
<p>So, for a vase that had a motif of lions in a row, I decided to just give the locator after the heading (“lions, 30-31”). However, if there was a vase with a lion in any other, non-decorative context, I made a more specific subheading (“lions – being hunted, 20”). I worried that it would be confusing to have some locators listed after the heading, and then a subheading with more locators. So I decided that if any subheadings were required, I would instead list the decorative appearances of the subject with the subheading “as decorative element”. Hopefully more examples will make this clearer: </p>
<p>Sphinxes were only used as decorative elements in the vases I indexed. So the entry for sphinxes is: </p>
<p>sphinxes, 20, 33, 41, 45, 46 </p>
<p>Lions were used as decorative elements on some of the vases, but sometimes they were part of the narrative scene. So my entry for lions is: </p>
<p>lions<br />
&#160;&#160;being hunted, 20, 23, 30-31<br />
&#160;&#160;as decorative element, 29, 33 </p>
<p><strong>Problems / Discussion</strong><br />
Many of my locators appear multiple times within the same entry for a couple of reasons.  First is the fact that one page could contain multiple images of different vases with the same subject matter, technique, or fabric.  Second: most vases have multiple sections of varying imagery. I may have been indexing too deeply, but I thought that failing to index all the different aspects of the subjects depicted would be akin to giving the researcher a list of undifferentiated locators. A good example of this is the heading for “warriors”. Since I was creating a heading for “hares – being hunted by warriors” it made sense to have “warriors – hunting hares” instead of just listing all the pages for warriors. Why not give the user as much information as possible?  Additionally, my entry for “hares” has duplicate locators because in one section of the same vase (on page 33) the hares are a decorative motif, and in another section they are part of a narrative scene in which warriors are hunting them. (confused yet?!) </p>
<p>As mentioned above, deciding to index both &#8220;subject&#8221; and &#8220;decorative elements&#8221; caused problems for me when the two were hard to differentiate. I wanted my imaginary user to be able to use the index to find lion freizes and not have to go through a bunch of locators just to find irrelevant images of lions NOT in freizes.  But then again, I always expect too much of my information resources. </p>
<p>In hindsight, I think my index would be more useful if I had created separate indexes for each attribute I was indexing.  But there are pros and cons to having the index divided by facets instead of in one long alphabetical sequence. One of the books I examined had one index for mythological figures and one for objects that are commonly attributed to specific gods/goddesses (I thought this was awesome). The book I was indexing had three separate indexes: (1) Artists, Groups, and Wares; (2) Mythological and Divine figures; and (3) General (three indexes in a mere 3 pages!). Though it makes sense to divide the index this way, it could lead to confusion if it spanned more than 3 pages. A user could be looking for Odysseus in the wrong index and not know it unless each page was very clearly marked with a header (I think I remember committing this error as an undergraduate). Another benefit to having one long alphabetical index is that it didn&#8217;t force me to always differentiate between the aforementioned troublesome decorative elements and subjects, which overlap so often on the same pot.</p>
<p>In real life, it would probably be best to keep the index as simple as possible, only providing sub-headings when the list of locators for certain topic/shape/artist got excessively long.  Nevertheless, if my methods in this exercise could be used on a larger scale, the index would be very useful.  Of course that&#8217;s unrealistic because of how time-consuming it is, and how &#8220;everything is online&#8221; now.  Back-of-the-book image indexes aren&#8217;t unheard of, though.  I inspected the indexes in the back of Boardman&#8217;s book and another book on Greek art. One of them only listed very general topics (“women” or “fighting scenes”). The other gave some sparse subheadings (and I think this one was the better index overall, though neither of them had any “see” references!).  </p>
<p><strong>Conclusion</strong><br />
Indexing a set of images in a book is a good way to become familiar with the basic issues of image description and index construction.  It requires decisions that appear simple on the surface, but force you to carefully consider the nature of your subject and the needs of your potential users.  You&#8217;re forced to make decisions about what to index, how deeply to index, and how to best express what you&#8217;re indexing&#8230;and those are all just as important in the online environment.  So this is a good exercise for a rainy day when you need a rest from computer eye strain.</p>
<p>Also, I think it would be interesting to survey scholarly texts in any image-focused field and try to get an idea of how people deal with images in back-of-the-book indexes.  Projects for the future!</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[script all indexes except primary key]]></title>
<link>http://arsenalb.wordpress.com/2009/10/29/script-all-indexes-except-primary-key/</link>
<pubDate>Thu, 29 Oct 2009 11:40:35 +0000</pubDate>
<dc:creator>Sql Server Collection</dc:creator>
<guid>http://arsenalb.wordpress.com/2009/10/29/script-all-indexes-except-primary-key/</guid>
<description><![CDATA[&#8211; Get all existing indexes, but NOT the primary keys DECLARE cIX CURSOR FOR SELECT OBJECT_NAME]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>&#8211; Get all existing indexes, but NOT the primary keys<br />
DECLARE cIX CURSOR FOR<br />
SELECT OBJECT_NAME(SI.Object_ID), SI.Object_ID, SI.Name, SI.Index_ID,<br />
FG.name<br />
FROM sys.indexes SI<br />
left outer join sys.filegroups FG<br />
on SI.data_space_id = FG.data_space_id<br />
WHERE OBJECTPROPERTY(SI.Object_ID, &#8216;IsUserTable&#8217;) = 1<br />
and SI.Name is not null<br />
and SI.is_primary_key = 0 and SI.is_unique_constraint = 0<br />
AND INDEXPROPERTY(SI.Object_ID, SI.Name, &#8216;IsStatistics&#8217;) = 0<br />
ORDER BY OBJECT_NAME(SI.Object_ID), SI.Index_ID</p>
<p>DECLARE @IxTable sysname<br />
DECLARE @IxTableID INT<br />
DECLARE @IxName sysname<br />
DECLARE @FGName sysname<br />
DECLARE @IxID INT</p>
<p>&#8211; Loop through all indexes<br />
OPEN cIX<br />
FETCH NEXT FROM cIX INTO @IxTable, @IxTableID, @IxName, @IxID, @FGName<br />
WHILE (@@FETCH_STATUS = 0)<br />
BEGIN<br />
DECLARE @IXSQL NVARCHAR(4000)<br />
SET @IXSQL = &#8216;CREATE &#8216;</p>
<p>&#8211; Check if the index is unique<br />
IF (INDEXPROPERTY(@IxTableID, @IxName, &#8216;IsUnique&#8217;) = 1)<br />
SET @IXSQL = @IXSQL + &#8216;UNIQUE &#8216;<br />
&#8211; Check if the index is clustered<br />
IF (INDEXPROPERTY(@IxTableID, @IxName, &#8216;IsClustered&#8217;) = 1)<br />
SET @IXSQL = @IXSQL + &#8216;CLUSTERED &#8216;</p>
<p>SET @IXSQL = @IXSQL + &#8216;INDEX &#8216; + @IxName + &#8216; ON &#8216; + @IxTable + &#8216;(&#8216;</p>
<p>&#8211; Get all columns of the index<br />
DECLARE cIxColumn CURSOR FOR<br />
SELECT SC.Name<br />
FROM sys.index_columns IC<br />
JOIN sys.columns SC ON IC.Object_ID = SC.Object_ID AND IC.Column_ID = SC.Column_ID<br />
WHERE IC.Object_ID = @IxTableID AND Index_ID = @IxID<br />
ORDER BY IC.key_ordinal</p>
<p>DECLARE @IxColumn sysname<br />
DECLARE @IxFirstColumn BIT SET @IxFirstColumn = 1</p>
<p>&#8211; Loop throug all columns of the index and append them to the CREATE statement<br />
OPEN cIxColumn<br />
FETCH NEXT FROM cIxColumn INTO @IxColumn<br />
WHILE (@@FETCH_STATUS = 0)<br />
BEGIN<br />
IF (@IxFirstColumn = 1)<br />
SET @IxFirstColumn = 0<br />
ELSE<br />
SET @IXSQL = @IXSQL + &#8216;, &#8216;</p>
<p>SET @IXSQL = @IXSQL + @IxColumn</p>
<p>FETCH NEXT FROM cIxColumn INTO @IxColumn<br />
END<br />
CLOSE cIxColumn<br />
DEALLOCATE cIxColumn</p>
<p>SET @IXSQL = @IXSQL + &#8216;)&#8217; + &#8216;on &#8216;+ @FGName<br />
&#8211; Print out the CREATE statement for the index<br />
PRINT @IXSQL<br />
PRINT &#8216;GO&#8217;</p>
<p>FETCH NEXT FROM cIX INTO @IxTable, @IxTableID, @IxName, @IxID, @FGName<br />
END</p>
<p>CLOSE cIX<br />
DEALLOCATE cIX</p>
<p><a href="http://www.sqlservercentral.com/scripts/Miscellaneous/31893/" target="_blank">http://www.sqlservercentral.com/scripts/Miscellaneous/31893/</a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[About NARIC: What Journals Do We Index?]]></title>
<link>http://naricspotlight.wordpress.com/2009/10/20/about-naric-what-journals-do-we-index/</link>
<pubDate>Tue, 20 Oct 2009 20:21:26 +0000</pubDate>
<dc:creator>naricspotlight</dc:creator>
<guid>http://naricspotlight.wordpress.com/2009/10/20/about-naric-what-journals-do-we-index/</guid>
<description><![CDATA[Each year, we review our portfolio of journal subscriptions to make sure we&#8217;re covering the be]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Each year, we review our portfolio of journal subscriptions to make sure we&#8217;re covering the best publications in the industry. We currently subscribe to 65 journals, through both electronic and traditional (paper) subscriptions. A complete list of our current subscriptions is available at <a href="http://www.naric.com/research/rehab/portfolio.cfm" target="_self">http://www.naric.com/research/rehab/portfolio.cfm</a>.</p>
<p>In more than 30 years of collection development, we have indexed articles from more than 100 journals. You can browse through REHABDATA by journal title at <a href="http://www.naric.com/research/rehab/journal.cfm" target="_self">http://www.naric.com/research/rehab/journal.cfm</a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[dbta.com: New Additions to the DBA Bookshelf]]></title>
<link>http://enggtech.wordpress.com/2009/10/16/dbta-com-new-additions-to-the-dba-bookshelf/</link>
<pubDate>Fri, 16 Oct 2009 02:49:48 +0000</pubDate>
<dc:creator>Visitor Blogs</dc:creator>
<guid>http://enggtech.wordpress.com/2009/10/16/dbta-com-new-additions-to-the-dba-bookshelf/</guid>
<description><![CDATA[SQL Injection Attacks and Defense by Justin Clarke. Microsoft SQL Server 2008 Reporting Services Unl]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><em>SQL Injection Attacks and Defense</em> by Justin Clarke.</p>
<p><em>Microsoft SQL Server 2008 Reporting Services Unleashed</em> (SAMS Publishing).</p>
<p><em>Oracle Essbase 9 Implementation Guide</em> (Packt).</p>
<p>Kevvie Fowler&#8217;s comprehensive tome, <em>SQL Server Forensic Analysis</em> (Addison Wesley). <a href="http://www.applicationforensics.com/">www.applicationforensics.com</a>.</p>
<p>Fowler’s other Web site is Ring Zero (<a href="http://www.ringzero.ca/">www.ringzero.ca</a>)</p>
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr valign="top">
<td style="padding-left:0;">
<div><a title="Download &#34;Chapter 1. Introduction to Databases&#34;" href="http://my.safaribooksonline.com/9780321533203?tocview=true#"><img style="margin-right:3px;" title="Download &#34;Chapter 1. Introduction to Databases&#34;" src="http://my.safaribooksonline.com/static/200910-2127-my/images/acrosm.gif" alt="Download &#34;Chapter 1. Introduction to Databases&#34;" /></a><a title="Chapter 1. Introduction to Databases" href="http://my.safaribooksonline.com/9780321533203/ch01">Chapter 1. Introduction to Databases</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Running Chapter 1 Sample Scripts" href="http://my.safaribooksonline.com/9780321533203/ch01lev1sec1">Running Chapter 1 Sample Scripts</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Databases Explained" href="http://my.safaribooksonline.com/9780321533203/ch01lev1sec2">Databases Explained</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="How Databases Are Used" href="http://my.safaribooksonline.com/9780321533203/ch01lev1sec3">How Databases Are Used</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Databases and COTS Applications" href="http://my.safaribooksonline.com/9780321533203/ch01lev1sec4">Databases and COTS Applications</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Database Structure" href="http://my.safaribooksonline.com/9780321533203/ch01lev1sec5">Database Structure</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Structured Query Language (SQL)" href="http://my.safaribooksonline.com/9780321533203/ch01lev1sec6">Structured Query Language (SQL)</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Database Transactions" href="http://my.safaribooksonline.com/9780321533203/ch01lev1sec7">Database Transactions</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="The ACID Model" href="http://my.safaribooksonline.com/9780321533203/ch01lev1sec8">The ACID Model</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Referential Integrity" href="http://my.safaribooksonline.com/9780321533203/ch01lev1sec9">Referential Integrity</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Summary" href="http://my.safaribooksonline.com/9780321533203/ch01lev1sec10">Summary</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:0;">
<div><a title="Download &#34;Chapter 2. SQL Server Fundamentals&#34;" href="http://my.safaribooksonline.com/9780321533203?tocview=true#"><img style="margin-right:3px;" title="Download &#34;Chapter 2. SQL Server Fundamentals&#34;" src="http://my.safaribooksonline.com/static/200910-2127-my/images/acrosm.gif" alt="Download &#34;Chapter 2. SQL Server Fundamentals&#34;" /></a><a title="Chapter 2. SQL Server Fundamentals" href="http://my.safaribooksonline.com/9780321533203/ch02">Chapter 2. SQL Server Fundamentals</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="History of SQL Server" href="http://my.safaribooksonline.com/9780321533203/ch02lev1sec1">History of SQL Server</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SQL Server Versions and Editions" href="http://my.safaribooksonline.com/9780321533203/ch02lev1sec2">SQL Server Versions and Editions</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Architecture" href="http://my.safaribooksonline.com/9780321533203/ch02lev1sec3">Architecture</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SQL Server Connections" href="http://my.safaribooksonline.com/9780321533203/ch02lev1sec4">SQL Server Connections</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Context Switching" href="http://my.safaribooksonline.com/9780321533203/ch02lev1sec5">Context Switching</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SQL Server Databases" href="http://my.safaribooksonline.com/9780321533203/ch02lev1sec6">SQL Server Databases</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Data Storage" href="http://my.safaribooksonline.com/9780321533203/ch02lev1sec7">Data Storage</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Memory Management" href="http://my.safaribooksonline.com/9780321533203/ch02lev1sec8">Memory Management</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Security" href="http://my.safaribooksonline.com/9780321533203/ch02lev1sec9">Security</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Permissions" href="http://my.safaribooksonline.com/9780321533203/ch02lev1sec10">Permissions</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Encryption" href="http://my.safaribooksonline.com/9780321533203/ch02lev1sec11">Encryption</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Dynamic Management and Database Console Commands" href="http://my.safaribooksonline.com/9780321533203/ch02lev1sec12">Dynamic Management and Database Console Commands</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Logging" href="http://my.safaribooksonline.com/9780321533203/ch02lev1sec13">Logging</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SQL Server Agent" href="http://my.safaribooksonline.com/9780321533203/ch02lev1sec14">SQL Server Agent</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Summary" href="http://my.safaribooksonline.com/9780321533203/ch02lev1sec15">Summary</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:0;">
<div><a title="Download &#34;Chapter 3. SQL Server Forensics&#34;" href="http://my.safaribooksonline.com/9780321533203?tocview=true#"><img style="margin-right:3px;" title="Download &#34;Chapter 3. SQL Server Forensics&#34;" src="http://my.safaribooksonline.com/static/200910-2127-my/images/acrosm.gif" alt="Download &#34;Chapter 3. SQL Server Forensics&#34;" /></a><a title="Chapter 3. SQL Server Forensics" href="http://my.safaribooksonline.com/9780321533203/ch03">Chapter 3. SQL Server Forensics</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="The Road to SQL Server Forensics" href="http://my.safaribooksonline.com/9780321533203/ch03lev1sec1">The Road to SQL Server Forensics</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SQL Server Forensics" href="http://my.safaribooksonline.com/9780321533203/ch03lev1sec2">SQL Server Forensics</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SQL Server Forensic Methodology" href="http://my.safaribooksonline.com/9780321533203/ch03lev1sec3">SQL Server Forensic Methodology</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Summary" href="http://my.safaribooksonline.com/9780321533203/ch03lev1sec4">Summary</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:0;">
<div><a title="Download &#34;Chapter 4. SQL Server Artifacts&#34;" href="http://my.safaribooksonline.com/9780321533203?tocview=true#"><img style="margin-right:3px;" title="Download &#34;Chapter 4. SQL Server Artifacts&#34;" src="http://my.safaribooksonline.com/static/200910-2127-my/images/acrosm.gif" alt="Download &#34;Chapter 4. SQL Server Artifacts&#34;" /></a><a title="Chapter 4. SQL Server Artifacts" href="http://my.safaribooksonline.com/9780321533203/ch04">Chapter 4. SQL Server Artifacts</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SQL Server Artifacts" href="http://my.safaribooksonline.com/9780321533203/ch04lev1sec1">SQL Server Artifacts</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Resident SQL Server Artifacts" href="http://my.safaribooksonline.com/9780321533203/ch04lev1sec2">Resident SQL Server Artifacts</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Nonresident SQL Server Artifacts" href="http://my.safaribooksonline.com/9780321533203/ch04lev1sec3">Nonresident SQL Server Artifacts</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Artifact Summary" href="http://my.safaribooksonline.com/9780321533203/ch04lev1sec4">Artifact Summary</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Summary" href="http://my.safaribooksonline.com/9780321533203/ch04lev1sec5">Summary</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:0;">
<div><a title="Download &#34;Chapter 5. SQL Server Investigation Preparedness&#34;" href="http://my.safaribooksonline.com/9780321533203?tocview=true#"><img style="margin-right:3px;" title="Download &#34;Chapter 5. SQL Server Investigation Preparedness&#34;" src="http://my.safaribooksonline.com/static/200910-2127-my/images/acrosm.gif" alt="Download &#34;Chapter 5. SQL Server Investigation Preparedness&#34;" /></a><a title="Chapter 5. SQL Server Investigation Preparedness" href="http://my.safaribooksonline.com/9780321533203/ch05">Chapter 5. SQL Server Investigation Preparedness</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SQL Server Investigation Preparedness Overview" href="http://my.safaribooksonline.com/9780321533203/ch05lev1sec1">SQL Server Investigation Preparedness Overview</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Configuring Your Forensics Workstation for a SQL Server Investigation" href="http://my.safaribooksonline.com/9780321533203/ch05lev1sec2">Configuring Your Forensics Workstation for a SQL Server Investigation</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Creating a SQL Server Forensics Incident Response Toolkit" href="http://my.safaribooksonline.com/9780321533203/ch05lev1sec3">Creating a SQL Server Forensics Incident Response Toolkit</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Summary" href="http://my.safaribooksonline.com/9780321533203/ch05lev1sec4">Summary</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:0;">
<div><a title="Download &#34;Chapter 6. Incident Verification&#34;" href="http://my.safaribooksonline.com/9780321533203?tocview=true#"><img style="margin-right:3px;" title="Download &#34;Chapter 6. Incident Verification&#34;" src="http://my.safaribooksonline.com/static/200910-2127-my/images/acrosm.gif" alt="Download &#34;Chapter 6. Incident Verification&#34;" /></a><a title="Chapter 6. Incident Verification" href="http://my.safaribooksonline.com/9780321533203/ch06">Chapter 6. Incident Verification</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Running Chapter 6 Sample Scripts" href="http://my.safaribooksonline.com/9780321533203/ch06lev1sec1">Running Chapter 6 Sample Scripts</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Incident Verification Explained" href="http://my.safaribooksonline.com/9780321533203/ch06lev1sec2">Incident Verification Explained</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="What Not to Do When Investigating a Live SQL Server" href="http://my.safaribooksonline.com/9780321533203/ch06lev1sec3">What Not to Do When Investigating a Live SQL Server</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Responding to an Incident" href="http://my.safaribooksonline.com/9780321533203/ch06lev1sec4">Responding to an Incident</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Identifying the SQL Server Instance Name" href="http://my.safaribooksonline.com/9780321533203/ch06lev1sec5">Identifying the SQL Server Instance Name</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Connecting to a Victim System" href="http://my.safaribooksonline.com/9780321533203/ch06lev1sec6">Connecting to a Victim System</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Disconnecting from the Victim System" href="http://my.safaribooksonline.com/9780321533203/ch06lev1sec7">Disconnecting from the Victim System</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Identifying Signs of an Intrusion" href="http://my.safaribooksonline.com/9780321533203/ch06lev1sec8">Identifying Signs of an Intrusion</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Submitting Preliminary Findings" href="http://my.safaribooksonline.com/9780321533203/ch06lev1sec9">Submitting Preliminary Findings</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Summary" href="http://my.safaribooksonline.com/9780321533203/ch06lev1sec10">Summary</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:0;">
<div><a title="Download &#34;Chapter 7. Artifact Collection&#34;" href="http://my.safaribooksonline.com/9780321533203?tocview=true#"><img style="margin-right:3px;" title="Download &#34;Chapter 7. Artifact Collection&#34;" src="http://my.safaribooksonline.com/static/200910-2127-my/images/acrosm.gif" alt="Download &#34;Chapter 7. Artifact Collection&#34;" /></a><a title="Chapter 7. Artifact Collection" href="http://my.safaribooksonline.com/9780321533203/ch07">Chapter 7. Artifact Collection</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Focus on Ad Hoc Collection" href="http://my.safaribooksonline.com/9780321533203/ch07lev1sec1">Focus on Ad Hoc Collection</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Running the Sample Scripts" href="http://my.safaribooksonline.com/9780321533203/ch07lev1sec2">Running the Sample Scripts</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Maintaining the Integrity of Collected Data" href="http://my.safaribooksonline.com/9780321533203/ch07lev1sec3">Maintaining the Integrity of Collected Data</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Automated Artifact Collection via Windows Forensic Toolchest" href="http://my.safaribooksonline.com/9780321533203/ch07lev1sec4">Automated Artifact Collection via Windows Forensic Toolchest</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Identifying the Victim’s SQL Server Version" href="http://my.safaribooksonline.com/9780321533203/ch07lev1sec5">Identifying the Victim&#8217;s SQL Server Version</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Ad Hoc Artifact Collection" href="http://my.safaribooksonline.com/9780321533203/ch07lev1sec6">Ad Hoc Artifact Collection</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Collecting Volatile SQL Server Artifacts" href="http://my.safaribooksonline.com/9780321533203/ch07lev1sec7">Collecting Volatile SQL Server Artifacts</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Collecting Nonvolatile SQL Server Artifacts" href="http://my.safaribooksonline.com/9780321533203/ch07lev1sec8">Collecting Nonvolatile SQL Server Artifacts</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Summary" href="http://my.safaribooksonline.com/9780321533203/ch07lev1sec9">Summary</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:0;">
<div><a title="Download &#34;Chapter 8. Artifact Analysis I&#34;" href="http://my.safaribooksonline.com/9780321533203?tocview=true#"><img style="margin-right:3px;" title="Download &#34;Chapter 8. Artifact Analysis I&#34;" src="http://my.safaribooksonline.com/static/200910-2127-my/images/acrosm.gif" alt="Download &#34;Chapter 8. Artifact Analysis I&#34;" /></a><a title="Chapter 8. Artifact Analysis I" href="http://my.safaribooksonline.com/9780321533203/ch08">Chapter 8. Artifact Analysis I</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Working Along with Chapter 8 Examples" href="http://my.safaribooksonline.com/9780321533203/ch08lev1sec1">Working Along with Chapter 8 Examples</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Pre-analysis Activities" href="http://my.safaribooksonline.com/9780321533203/ch08lev1sec2">Pre-analysis Activities</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Authentication and Authorization" href="http://my.safaribooksonline.com/9780321533203/ch08lev1sec3">Authentication and Authorization</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Configuration and Versioning" href="http://my.safaribooksonline.com/9780321533203/ch08lev1sec4">Configuration and Versioning</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Summary" href="http://my.safaribooksonline.com/9780321533203/ch08lev1sec5">Summary</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:0;">
<div><a title="Download &#34;Chapter 9. Artifact Analysis II&#34;" href="http://my.safaribooksonline.com/9780321533203?tocview=true#"><img style="margin-right:3px;" title="Download &#34;Chapter 9. Artifact Analysis II&#34;" src="http://my.safaribooksonline.com/static/200910-2127-my/images/acrosm.gif" alt="Download &#34;Chapter 9. Artifact Analysis II&#34;" /></a><a title="Chapter 9. Artifact Analysis II" href="http://my.safaribooksonline.com/9780321533203/ch09">Chapter 9. Artifact Analysis II</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Working Along with Chapter 9 Examples" href="http://my.safaribooksonline.com/9780321533203/ch09lev1sec1">Working Along with Chapter 9 Examples</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Pre-analysis Activities" href="http://my.safaribooksonline.com/9780321533203/ch09lev1sec2">Pre-analysis Activities</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Activity Reconstruction" href="http://my.safaribooksonline.com/9780321533203/ch09lev1sec3">Activity Reconstruction</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Data Recovery" href="http://my.safaribooksonline.com/9780321533203/ch09lev1sec4">Data Recovery</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Summary" href="http://my.safaribooksonline.com/9780321533203/ch09lev1sec5">Summary</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:0;">
<div><a title="Download &#34;Chapter 10. SQL Server Rootkits&#34;" href="http://my.safaribooksonline.com/9780321533203?tocview=true#"><img style="margin-right:3px;" title="Download &#34;Chapter 10. SQL Server Rootkits&#34;" src="http://my.safaribooksonline.com/static/200910-2127-my/images/acrosm.gif" alt="Download &#34;Chapter 10. SQL Server Rootkits&#34;" /></a><a title="Chapter 10. SQL Server Rootkits" href="http://my.safaribooksonline.com/9780321533203/ch10">Chapter 10. SQL Server Rootkits</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Traditional Rootkits" href="http://my.safaribooksonline.com/9780321533203/ch10lev1sec1">Traditional Rootkits</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SQL Server Rootkits: The New Threat" href="http://my.safaribooksonline.com/9780321533203/ch10lev1sec2">SQL Server Rootkits: The New Threat</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Generations of SQL Server Rootkits" href="http://my.safaribooksonline.com/9780321533203/ch10lev1sec3">Generations of SQL Server Rootkits</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="First-Generation SQL Server Rootkits" href="http://my.safaribooksonline.com/9780321533203/ch10lev1sec4">First-Generation SQL Server Rootkits</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="How Rootkits Can Affect a SQL Server Investigation" href="http://my.safaribooksonline.com/9780321533203/ch10lev1sec5">How Rootkits Can Affect a SQL Server Investigation</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Detecting Database Rootkits" href="http://my.safaribooksonline.com/9780321533203/ch10lev1sec6">Detecting Database Rootkits</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="When to Check for Database Rootkits" href="http://my.safaribooksonline.com/9780321533203/ch10lev1sec7">When to Check for Database Rootkits</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="What to Do if You Find a Rootkit" href="http://my.safaribooksonline.com/9780321533203/ch10lev1sec8">What to Do if You Find a Rootkit</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Summary" href="http://my.safaribooksonline.com/9780321533203/ch10lev1sec9">Summary</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:0;">
<div><a title="Download &#34;Chapter 11. SQL Server Forensic Investigation Scenario&#34;" href="http://my.safaribooksonline.com/9780321533203?tocview=true#"><img style="margin-right:3px;" title="Download &#34;Chapter 11. SQL Server Forensic Investigation Scenario&#34;" src="http://my.safaribooksonline.com/static/200910-2127-my/images/acrosm.gif" alt="Download &#34;Chapter 11. SQL Server Forensic Investigation Scenario&#34;" /></a><a title="Chapter 11. SQL Server Forensic Investigation Scenario" href="http://my.safaribooksonline.com/9780321533203/ch11">Chapter 11. SQL Server Forensic Investigation Scenario</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Scenario Overview" href="http://my.safaribooksonline.com/9780321533203/ch11lev1sec1">Scenario Overview</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Importing Sample Artifacts" href="http://my.safaribooksonline.com/9780321533203/ch11lev1sec2">Importing Sample Artifacts</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Investigation Synopsis" href="http://my.safaribooksonline.com/9780321533203/ch11lev1sec3">Investigation Synopsis</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Incident Verification" href="http://my.safaribooksonline.com/9780321533203/ch11lev1sec4">Incident Verification</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Artifact Collection" href="http://my.safaribooksonline.com/9780321533203/ch11lev1sec5">Artifact Collection</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Artifact Analysis" href="http://my.safaribooksonline.com/9780321533203/ch11lev1sec6">Artifact Analysis</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Activity Reconstruction" href="http://my.safaribooksonline.com/9780321533203/ch11lev1sec7">Activity Reconstruction</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="Investigation Summary" href="http://my.safaribooksonline.com/9780321533203/ch11lev1sec8">Investigation Summary</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:0;">
<div><a title="Download &#34;Appendix A. Installing SQL Server 2005 Express Edition with Advanced Services on Windows&#34;" href="http://my.safaribooksonline.com/9780321533203?tocview=true#"><img style="margin-right:3px;" title="Download &#34;Appendix A. Installing SQL Server 2005 Express Edition with Advanced Services on Windows&#34;" src="http://my.safaribooksonline.com/static/200910-2127-my/images/acrosm.gif" alt="Download &#34;Appendix A. Installing SQL Server 2005 Express Edition with Advanced Services on Windows&#34;" /></a><a title="Appendix A. Installing SQL Server 2005 Express Edition with Advanced Services on Windows" href="http://my.safaribooksonline.com/9780321533203/app01">Appendix A. Installing SQL Server 2005 Express Edition with Advanced Services on Windows</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:0;">
<div><a title="Download &#34;Appendix B. SQL Server Incident Response Scripts&#34;" href="http://my.safaribooksonline.com/9780321533203?tocview=true#"><img style="margin-right:3px;" title="Download &#34;Appendix B. SQL Server Incident Response Scripts&#34;" src="http://my.safaribooksonline.com/static/200910-2127-my/images/acrosm.gif" alt="Download &#34;Appendix B. SQL Server Incident Response Scripts&#34;" /></a><a title="Appendix B. SQL Server Incident Response Scripts" href="http://my.safaribooksonline.com/9780321533203/app02">Appendix B. SQL Server Incident Response Scripts</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SSFA_DataCache.sql" href="http://my.safaribooksonline.com/9780321533203/app02lev1sec1">SSFA_DataCache.sql</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SSFA_ClockHands.sql" href="http://my.safaribooksonline.com/9780321533203/app02lev1sec2">SSFA_ClockHands.sql</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SSFA_PlanCache.sql" href="http://my.safaribooksonline.com/9780321533203/app02lev1sec3">SSFA_PlanCache.sql</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SSFA_RecentStatements.sql" href="http://my.safaribooksonline.com/9780321533203/app02lev1sec4">SSFA_RecentStatements.sql</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SSFA_Connections.sql" href="http://my.safaribooksonline.com/9780321533203/app02lev1sec5">SSFA_Connections.sql</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SSFA_Sessions.sql" href="http://my.safaribooksonline.com/9780321533203/app02lev1sec6">SSFA_Sessions.sql</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SSFA_TLOG.sql" href="http://my.safaribooksonline.com/9780321533203/app02lev1sec7">SSFA_TLOG.sql</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SSFA_DBObjects.sql" href="http://my.safaribooksonline.com/9780321533203/app02lev1sec8">SSFA_DBObjects.sql</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SSFA_Logins.sql" href="http://my.safaribooksonline.com/9780321533203/app02lev1sec9">SSFA_Logins.sql</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SSFA_Databases.sql" href="http://my.safaribooksonline.com/9780321533203/app02lev1sec10">SSFA_Databases.sql</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SSFA_DbUsers.sql" href="http://my.safaribooksonline.com/9780321533203/app02lev1sec11">SSFA_DbUsers.sql</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SSFA_Triggers.sql" href="http://my.safaribooksonline.com/9780321533203/app02lev1sec12">SSFA_Triggers.sql</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SSFA_Jobs.sql" href="http://my.safaribooksonline.com/9780321533203/app02lev1sec13">SSFA_Jobs.sql</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SSFA_JobHistory.sql" href="http://my.safaribooksonline.com/9780321533203/app02lev1sec14">SSFA_JobHistory.sql</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SSFA_Configurations.sql" href="http://my.safaribooksonline.com/9780321533203/app02lev1sec15">SSFA_Configurations.sql</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SSFA_CLR.sql" href="http://my.safaribooksonline.com/9780321533203/app02lev1sec16">SSFA_CLR.sql</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SSFA_Schemas.sql" href="http://my.safaribooksonline.com/9780321533203/app02lev1sec17">SSFA_Schemas.sql</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SSFA_EndPoints.sql" href="http://my.safaribooksonline.com/9780321533203/app02lev1sec18">SSFA_EndPoints.sql</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SSFA_DbSrvInfo.sql" href="http://my.safaribooksonline.com/9780321533203/app02lev1sec19">SSFA_DbSrvInfo.sql</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SSFA_AutoEXEC.sql" href="http://my.safaribooksonline.com/9780321533203/app02lev1sec20">SSFA_AutoEXEC.sql</a></div>
</td>
</tr>
<tr valign="top">
<td style="padding-left:30px;">
<div><a title="SSFA_TimeConfig.sql" href="http://my.safaribooksonline.com/9780321533203/app02lev1sec21">SSFA_TimeConfig.sql</a></div>
</td>
</tr>
</tbody>
</table>
<p><a href="http://www.dbta.com/Articles/Columns/DBA-Corner/New-Additions-to-the-DBA-Bookshelf-56613.aspx">dbta.com: New Additions to the DBA Bookshelf</a>.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[In Praise of the Index ]]></title>
<link>http://lindagodfrey.wordpress.com/2009/10/16/in-praise-of-the-index/</link>
<pubDate>Fri, 16 Oct 2009 01:49:24 +0000</pubDate>
<dc:creator>lindagodfrey</dc:creator>
<guid>http://lindagodfrey.wordpress.com/2009/10/16/in-praise-of-the-index/</guid>
<description><![CDATA[I just finished my 11th (to be) published non-fiction book, and the good news is that I didn&#8217;t]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>I just finished my 11th (to be) published non-fiction book, and the good news is that I didn&#8217;t have to make an index for it.</p>
<p>The bad news is that I didn&#8217;t have to make an index for it.</p>
<div class="wp-caption alignleft" style="width: 488px"><img title="index" src="http://i146.photobucket.com/albums/r247/lindagodfrey/indexncollage001.gif" alt="My Strange Wisconsin index" width="478" height="639" /><p class="wp-caption-text">My Strange Wisconsin index</p></div>
<p>My dirty little secret: I like making indexes. The old way. With a pencil and index cards. I know there are software programs for this, but I agree with the Chicago Manual of Style when it states that a computer-made index &#8220;cannot in any way substitute for a real index prepared with the aid of human intelligence.&#8221; (Thankfully, degrees of human intelligence are evidently not an issue.)</p>
<p>The crux of it is that indexing requires a sifting process to decide exactly what is pertinent to the subject at hand, and that process is at least partly subjective . If a book is about strange creatures, &#8220;phantom pigs&#8221; is probably a pertinent entry, but its exact  location in the obscure Welsh hamlet of Pentrefoelas may not be considered index-worthy. At least I didn&#8217;t think so when I prepared the index for <a href="http://www.amazon.com/Hunting-American-Werewolf-Linda-Godfrey/dp/1931599661">Hunting the American Werewolf</a>. A software program set for  proper nouns might have beeped to differ.</p>
<p>Besides, I find the process relaxing. You get the galley in the mail and look at how the pages have shaken out and how the designer has arranged things. That&#8217;s always enlightening. Then starting at page one, you write the words you choose on the indexcards, alphabetizing each. And don&#8217;t forget the page numbers.  Several packs of cards will be required for most books targeted above kindergarten level. And that Chicago Manual of Style will be invaluable for the picky parts.</p>
<p>Along the way you pick out any lingering typos that can still be fixed without disrupting design flow. A favorite beverage and snack is mandatory. The only tedious part is the data entry after you reach The End, but you could also enter as you go.</p>
<p>I&#8217;ve done this for five books &#8212; the others provided professional indexers at their cost &#8211; and this last one is part of a series with detailed chapter entries up front. But an index is normally a lovely and necessary thing to any researcher (or purchasing librarian &#8212; I&#8217;ve been one), and in my opinion no NF book should suffer the indignity of an indexless rear end.</p>
<p>I will add that I would never sign a contract for a book that required ME to pony up for a professional indexer. It would be like paying someone else to pet my dog or do my crossword puzzles. Genre NF advances are meager enough as it is.</p>
<p>And in the end, literally, a non-fiction tome without an index is just, er, book-naked.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Feedback Welcome]]></title>
<link>http://slclibrarynews.wordpress.com/2009/10/15/feedback-welcome/</link>
<pubDate>Thu, 15 Oct 2009 15:05:28 +0000</pubDate>
<dc:creator>gploski</dc:creator>
<guid>http://slclibrarynews.wordpress.com/2009/10/15/feedback-welcome/</guid>
<description><![CDATA[We are always looking for the next great idea and we think you have it! A Suggestion Box has been in]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>We are always looking for the next great idea and we think you have it!</p>
<p>A <em>Suggestion Box</em> has been installed in the library and now the only thing it needs is your ideas.</p>
<p><strong>Where?</strong></p>
<ul>
<li>Look to your right when you walk in. It is mounted on the wall next to the <em>New Books Board</em>.</li>
</ul>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Novel Index]]></title>
<link>http://yiws.wordpress.com/2009/10/12/list-of-yaoi-novel-titles/</link>
<pubDate>Tue, 13 Oct 2009 04:45:48 +0000</pubDate>
<dc:creator>kkpodesky</dc:creator>
<guid>http://yiws.wordpress.com/2009/10/12/list-of-yaoi-novel-titles/</guid>
<description><![CDATA[The Novels on this Website in Alphabetical Order.]]></description>
<content:encoded><![CDATA[The Novels on this Website in Alphabetical Order.]]></content:encoded>
</item>

</channel>
</rss>
