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

<channel>
	<title>Alexander Shyrokov&#039;s blog</title>
	<atom:link href="http://sjcomp.com/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://sjcomp.com/blog</link>
	<description>That&#039;s only my opinion, so keep it that way</description>
	<lastBuildDate>Wed, 02 Nov 2011 16:11:45 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>OpenCL introduction</title>
		<link>http://sjcomp.com/blog/2011/11/02/opencl-introduction/</link>
		<comments>http://sjcomp.com/blog/2011/11/02/opencl-introduction/#comments</comments>
		<pubDate>Wed, 02 Nov 2011 16:11:45 +0000</pubDate>
		<dc:creator>Alexander Shyrokov</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://sjcomp.com/blog/?p=650</guid>
		<description><![CDATA[After listening to a talk named &#8220;Fast Parallel Processing Using GPUs for Accelerating Image Processing&#8221; by Tom Reed from NVidia, I looked around to find more information about OpenCL. I recommend looking at the videos from MacResearch group : http://feeds.feedburner.com/opencl. &#160;]]></description>
			<content:encoded><![CDATA[<p>After listening to a talk named <a title="Webcast from STScI" href="https://webcast.stsci.edu/webcast/detail.xhtml?talkid=2746" target="_blank">&#8220;Fast Parallel Processing Using GPUs for Accelerating Image Processing&#8221;</a> by Tom Reed from NVidia, I looked around to find more information about OpenCL. I recommend looking at the <a href="http://www.macresearch.org/opencl_episode1" target="_blank">videos</a> from MacResearch group : <a href="http://feeds.feedburner.com/opencl" target="_blank">http://feeds.feedburner.com/opencl</a>.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://sjcomp.com/blog/2011/11/02/opencl-introduction/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Picking a GoogleVoice phone number</title>
		<link>http://sjcomp.com/blog/2010/12/13/picking-a-googlevoice-phone-number/</link>
		<comments>http://sjcomp.com/blog/2010/12/13/picking-a-googlevoice-phone-number/#comments</comments>
		<pubDate>Mon, 13 Dec 2010 19:48:08 +0000</pubDate>
		<dc:creator>Alexander Shyrokov</dc:creator>
				<category><![CDATA[Automation]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://sjcomp.com/blog/?p=611</guid>
		<description><![CDATA[I decided to use Google Voice service. The first problem I had was to select the phone number I wanted to use. This screen shot shows how one can pick a phone. There is a rudimentary search, but if one wants to have a phone that spells a word or a phrase, then this search [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://sjcomp.com/blog/wp-content/uploads/2010/10/GoogleVoicePick-150x150.jpg" alt="screenshot" title="Picking a phone number on google voice." width="150" height="150" class="alignright size-thumbnail wp-image-614" />I decided to use Google Voice service. The first problem I had was to select the phone number I wanted to use. This screen shot shows how one can pick a phone.</p>
<p>There is a rudimentary search, but if one wants to have a phone that spells a word or a phrase, then this search dialog is not really helpful. You are also given only five phone numbers at a time and you can not filter these numbers. For example, I would like to ask for phone numbers that does not contain 0 or 1 (which do not have letters associated with them).</p>
<p>The brute force approach was to look at the current five phones, select ones that do not have 0s or 1s and paste them into a website that tries to match a phone number with words (I used <a href="http://www.dialabc.com/words/search/index.html">dialabc.com</a>). After repeating the process a few times I realized that it was way to slow&#8230;</p>
<p><img src="http://sjcomp.com/blog/wp-content/uploads/2010/10/GoogleVoiceSikuli1-245x300.jpg" alt="screenshot" title="Sikuli script to get the phones from Google Voice." width="245" height="300" class="alignright size-medium wp-image-627" />Some time ago I cam across <a href="http://sikuli.org/">Sikuli</a> and it seems that this was a job for this software. I quickly wrote a script (using their IDE) that found all radio buttons, selected phones next to them, copied them into Notepad, clicked &#8220;Next 5 &gt;&#8221; button and repeated the procedure. Strangely enough, I did not see a direct way to copy/paste text in Sikuli, and that&#8217;s why I had to use keyboard shortcuts.</p>
<p>Once I got the phone numbers in the text file I wrote a trivial perl script to filter out ones that I wanted and create links to <a href="http://www.dialabc.com/words/search/index.html">dialabc.com</a> that would show what the numbers can spell. The list of links was opened in Firefox using <a href="https://addons.mozilla.org/en-US/firefox/addon/7192/?src=api">Url lister plugin</a>.</p>
<p>At this point all I had to do was to look at a web page with proposed words and if I did not like them I simply closed the tab, which presented me with the next opened tab. This way I was able to review many numbers quickly and pick the one that I liked.</p>
]]></content:encoded>
			<wfw:commentRss>http://sjcomp.com/blog/2010/12/13/picking-a-googlevoice-phone-number/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Data Visualization at the New York Times</title>
		<link>http://sjcomp.com/blog/2010/10/19/data-visualization-at-the-new-york-times/</link>
		<comments>http://sjcomp.com/blog/2010/10/19/data-visualization-at-the-new-york-times/#comments</comments>
		<pubDate>Tue, 19 Oct 2010 15:05:48 +0000</pubDate>
		<dc:creator>Alexander Shyrokov</dc:creator>
				<category><![CDATA[Reviews]]></category>
		<category><![CDATA[Talk]]></category>

		<guid isPermaLink="false">http://sjcomp.com/blog/?p=594</guid>
		<description><![CDATA[I attended a talk by Amanda Cox (webcast) from New York Times. She highlighted some of the work that required data visualization published on New York Times website. Her presentation was done in an unusual style: each point of her talk was illustrated by one or more examples life from the New York Times website. [...]]]></description>
			<content:encoded><![CDATA[<p>I attended a talk by Amanda Cox (<a href="https://webcast.stsci.edu/webcast/detail.xhtml?talkid=2243">webcast</a>) from <a href="http://www.nytimes.com">New York Times</a>. She highlighted some of the work that required data visualization published on New York Times website. Her presentation was done in an unusual style: each point of her talk was illustrated by one or more examples life from the New York Times website. The most memorable points for me were:</p>
<ul>
<li>Good songs have good background singers (<a href="http://www.nytimes.com/interactive/2009/11/06/business/economy/unemployment-lines.html">example</a>). This means that providing background or relevant information can enhance overall data presentation.</li>
<li>Annotation layer is the most important thing that they do (<a href="http://www.nytimes.com/interactive/2009/08/01/arts/dance/20090803-merce-graphic.html">example</a>). This means that providing helpful information along with the visualization helps viewers to understand the information.</li>
<li>Amanda stressed that it is not yet clear how to balance story with an interactive presentations. I would say RPG games are haunted by this problem as well.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://sjcomp.com/blog/2010/10/19/data-visualization-at-the-new-york-times/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&#8220;Presenting data and information&#8221; by Edward Tufte</title>
		<link>http://sjcomp.com/blog/2010/10/01/presenting-data-and-information-by-edward-tufte/</link>
		<comments>http://sjcomp.com/blog/2010/10/01/presenting-data-and-information-by-edward-tufte/#comments</comments>
		<pubDate>Fri, 01 Oct 2010 12:51:18 +0000</pubDate>
		<dc:creator>Alexander Shyrokov</dc:creator>
				<category><![CDATA[Reviews]]></category>
		<category><![CDATA[Talk]]></category>

		<guid isPermaLink="false">http://sjcomp.com/blog/?p=570</guid>
		<description><![CDATA[I attended one day course by Edward Tufte. The course included four and a half hours of lecture and four books by E.T. I found the topic of the class very important and information useful. I did not find the presentation itself to be something very special. It was well done, but not as good [...]]]></description>
			<content:encoded><![CDATA[<p>I attended <a href="http://www.edwardtufte.com/tufte/courses">one day course</a> by <a href="http://www.edwardtufte.com/">Edward Tufte</a>. The course included four and a half hours of lecture and four books by E.T. I found the topic of the class very important and information useful. I did not find the presentation itself to be something very special. It was well done, but not as good as it could have been. After I actually read the books I will be able to comment if the class was adding anything to the books, because most of the class we were looking at some pages of the books. I will leave the discussion of what I think about the &#8220;class teaching method&#8221; to a later post. In this post, I will highlight some of the content of the class, mostly as a memo to myself. Word <em>presentation</em> is used as a loose term that can refer to a a plot, picture or actual presentation slide.</p>
<ul>
<li>It does not matter how a presentation is done, or what methods are used, as long as the presentation is clear. Do not limit yourself by pre specifying the method of the presentation.</li>
<li>Annotate linking lines, because linking lines indicate causality. One needs to differentiate and specify these causalities in order to add meaning to the linking lines.</li>
<li>Boxes around text are always only add clutter. This is part of a general rule: if it does not add to the presentation, get rid of it.</li>
<li>Format should be invisible, content should be prominent.</li>
<li>Simple graphics use a small part of our visual processing capacity. Be aware of it.</li>
<li>Clutter and confusion are a failure of the design, and it is not failure of data or viewers.</li>
<li>Maps are examples of a very good design (no boxes around street names).</li>
<li>Your audience is more like you are than any other group of people (other than your family). This means they are as intelligent as you are.</li>
<li>A better way to do presentation (E.T. claims it saves 1/3 of time): provide super-graphics (high resolution data) before presentation to allow viewers to use their time to think about it, then follow up with a discussion.</li>
<li>Use smallest visual ques to indicate importance. This means that if making a word bold is enough, do not make it a bigger font as well.</li>
<li>Any symbol or mark must convey information. Be aware that an empty space can also be activated (negative space). This is another reason why boxes around text hurt the presentation. They create clutter and activate negative space, while not providing any useful information (text position itself indicates where it is).</li>
<li>Try to present all the data at once. Do not make people flip back and forth between the data plots if it is at all possible.</li>
<li>Order by substance not alphabetically.</li>
<li>Find a good design and copy it.</li>
<li>Provide evidence that testifies to your credibility. Viewers are looking for it, it will make them believe your presentation.</li>
<li>Bring real objects to your presentation. As an example E.T. brought first printed editions of books by <a href="http://en.wikipedia.org/wiki/Euclid%27s_Elements">Euclid</a> (400 years old) and <a href="http://en.wikipedia.org/wiki/Galileo_Galilei">Galileo</a> (also 400 years old).</li>
<li>No matter how beautiful an interface is, it could be better with less of it.</li>
<li>Show up early for your presentations.</li>
<li>Finish your presentation early.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://sjcomp.com/blog/2010/10/01/presenting-data-and-information-by-edward-tufte/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mac experiences, swithcing from Windows7</title>
		<link>http://sjcomp.com/blog/2010/09/30/mac-experiences-swithcing-from-windows7/</link>
		<comments>http://sjcomp.com/blog/2010/09/30/mac-experiences-swithcing-from-windows7/#comments</comments>
		<pubDate>Thu, 30 Sep 2010 14:17:07 +0000</pubDate>
		<dc:creator>Alexander Shyrokov</dc:creator>
				<category><![CDATA[Reviews]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://sjcomp.com/blog/?p=540</guid>
		<description><![CDATA[Due to the circumstances (aka job requirements) I pursue Java development on Mac OS X. I did not have too much experience with macs before, but I always heard that Apple places usability of their products as the very first priority (therefore no multitasking on iPhones). Given such rumors I had very high expectations. So [...]]]></description>
			<content:encoded><![CDATA[<p>Due to the circumstances (aka job requirements) I pursue Java development on Mac OS X. I did not have too much experience with macs before, but I always heard that Apple places usability of their products as the very first priority (therefore no multitasking on iPhones). Given such rumors I had  very high expectations. So here are my impressions.</p>
<p>The very first thing I had to do is to change my password on the first login&#8230; and, of course, I did not know the requirements for the password length. Could you imagine my confusion when I entered the password, repeated it, and after pressing okay button all I see is a shaking window and cleared password fields. Did I enter the second password wrong? Did I do something else wrong? No hints, no messages, just empty password fields. Is there anything else to say?</p>
<p>Once I got in, I wanted to adjust windows on my screens. To my surprise, I can only <a href="http://macphobia.com/resizing-windows-in-mac.macphobia">resize window by dragging the corner</a>. I can not resize by dragging the side of the window, which is very annoying if I want to extend a window to the left, because it is already against the right edge of the screen. I am used to using keyboard shortcuts to position windows on the screen and then use  mouse if I need more adjustments. For windows I am using <a href="http://www.winsplit-revolution.com/">winsplit-revolution</a>. For Mac I found <a href="http://code.google.com/p/shiftit/">ShiftIt</a>, which is not as powerful or configurable as winsplit-revolution, but at least it is also free.</p>
<p>Okay, how do I set a keyboard shortcut to start an application? Not clear at all. Long time users of the Mac suggested to use Spotlight, Quicksilver, and, of course, &#8220;just click it on the Dock&#8230;&#8221;. The fact that I need a third party software for such a task is surprising to me. I ended up using <a href="http://en.wikipedia.org/wiki/Quicksilver_%28software%29">Quicksilver</a>. </p>
<p>Default bindings for Home and End keys were especially alien to me. My first response was to <a href="http://www.erasetotheleft.com/post/mac-os-x-key-bindings/">adjusting key bindings</a>, and <a href="http://www.mozilla.org/unix/customizing.html#keys">customize keys for Firefox</a>, which allowed me to change accelKey to be control key, just as Firefox on Windows (the same applied to Thunderbird). But at the end I went back to defaults and learned the mac way&#8230;</p>
<p>On the bright side I like having shell without a need for cygwin. After using mac for a few month I would say I am 95% as proficient with it as I was with windows (the other 5% being remembering OS specific features such as taking a screen capture, etc.)</p>
]]></content:encoded>
			<wfw:commentRss>http://sjcomp.com/blog/2010/09/30/mac-experiences-swithcing-from-windows7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Code commenting style</title>
		<link>http://sjcomp.com/blog/2010/04/04/code-commenting-style/</link>
		<comments>http://sjcomp.com/blog/2010/04/04/code-commenting-style/#comments</comments>
		<pubDate>Sun, 04 Apr 2010 20:28:42 +0000</pubDate>
		<dc:creator>Alexander Shyrokov</dc:creator>
				<category><![CDATA[Coding]]></category>

		<guid isPermaLink="false">http://sjcomp.com/blog/?p=523</guid>
		<description><![CDATA[After programming for more than ten years I gradually refined my commenting style to a level that I am satisfied with, at least for now. Long story short, this is an example for C++: // This is a comment. Simple and precise. Let me explain why. The general format follows this pattern: 1. Comment character(s), [...]]]></description>
			<content:encoded><![CDATA[<p>After programming for more than ten years I gradually refined my commenting style to a level that I am satisfied with, at least for now. Long story short, this is an example for C++:</p>

<div class="wp_syntax"><div class="code"><pre class="c" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">// This is a comment.</span></pre></div></div>

<p>Simple and precise. Let me explain why. The general format follows this pattern:</p>
<blockquote><p>
1. Comment character(s), such as /*, //, #, %.<br />
2. Space.<br />
3. Comment string, that starts with a capital letter (with rare exceptions).<br />
4. Period.<br />
5. Comment closing character, such as */, &#8211;>
</p></blockquote>
<p>1, 3, and possibly 5 must be present in any comment. Let&#8217;s focus on the parts that can be present or omitted. I include Space before the comment string to differentiate between a comment line and a commented out code:</p>

<div class="wp_syntax"><div class="code"><pre class="c" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">// Use it as follows:</span>
<span style="color: #666666; font-style: italic;">// exec(true);</span>
<span style="color: #666666; font-style: italic;">//exec(yFlag);</span></pre></div></div>

<p>In the example above, the first two lines are comments, because there is a single space before the comment string. The last line is a commented out line of code.</p>
<p>I use capital letter to start a comment and a period after a comment sentence for multiple reasons. First, it forces to make comments from well formed sentences, which can be easier to understand as compared to incomplete sentences. Second, it tells me where a comment sentence starts and ends. For example, if I see a comment line that does not end with a period, then I can assume the next comment line must continue the same sentence. For example:</p>

<div class="wp_syntax"><div class="code"><pre class="c" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">// This is one</span>
<span style="color: #666666; font-style: italic;">// comment sentence.</span></pre></div></div>

<p>To recap. A space before helps separate at a glance comments from commented out code. Following a formal sentence structure (start with a capital letter and finish with a dot) helps to understand the comments better and provides information about where the comments start and end.</p>
]]></content:encoded>
			<wfw:commentRss>http://sjcomp.com/blog/2010/04/04/code-commenting-style/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Government and business</title>
		<link>http://sjcomp.com/blog/2010/03/13/government-and-business/</link>
		<comments>http://sjcomp.com/blog/2010/03/13/government-and-business/#comments</comments>
		<pubDate>Sat, 13 Mar 2010 15:02:26 +0000</pubDate>
		<dc:creator>Alexander Shyrokov</dc:creator>
				<category><![CDATA[web]]></category>
		<category><![CDATA[opinion]]></category>

		<guid isPermaLink="false">http://sjcomp.com/blog/?p=472</guid>
		<description><![CDATA[While looking for a company to work for in Baltimore area, I looked at all local hi-tech companies that have a website. For me it was surprising to see that some companies allocate the central place on their home page to a message &#8220;Minority/woman/veteran operated company!&#8221; I have read Atlas Shrugged so I clearly understand [...]]]></description>
			<content:encoded><![CDATA[<p>While looking for a company to work for in Baltimore area, I looked at all local hi-tech companies that have a website. For me it was surprising to see that some companies allocate the central place on their home page to a message &#8220;Minority/woman/veteran operated company!&#8221; I have read <a href="http://sjcomp.com/blog/2009/09/05/atlas-shrugged-by-ayn-rand/">Atlas Shrugged</a> so I clearly understand why they do it. Nevertheless, the fact that a business puts such a message in the center of attention, instead of its business merits, is disturbing. It is disturbing exactly for the reasons described in <a href="http://sjcomp.com/blog/2009/09/05/atlas-shrugged-by-ayn-rand/">Atlas Shrugged</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://sjcomp.com/blog/2010/03/13/government-and-business/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Windows 7 wakes up unexpectedly</title>
		<link>http://sjcomp.com/blog/2010/03/07/windows-7-wakes-up-unexpectedly/</link>
		<comments>http://sjcomp.com/blog/2010/03/07/windows-7-wakes-up-unexpectedly/#comments</comments>
		<pubDate>Sun, 07 Mar 2010 18:00:52 +0000</pubDate>
		<dc:creator>Alexander Shyrokov</dc:creator>
				<category><![CDATA[admin]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://sjcomp.com/blog/?p=444</guid>
		<description><![CDATA[I noticed that my computer wakes up without an apparent reason. Quick google search led me to the following information: rem Change wake settings. rem Get list of the devices. rem PowerCfg -DEVICEQUERY wake_armed &#62;DeviceList.txt rem I got: rem HID Keyboard Device (002) rem HID-compliant mouse (003) rem Intel(R) 82567LF-2 Gigabit Network Connection rem Disable [...]]]></description>
			<content:encoded><![CDATA[<p>I noticed that my computer wakes up without an apparent reason. Quick google search led me to the <a href="http://social.technet.microsoft.com/Forums/en/w7itproinstall/thread/44d710d1-e8ef-4bb4-ac1a-4e9f0a0af87d">following</a> information:</p>

<div class="wp_syntax"><div class="code"><pre class="dos" style="font-family:monospace;"><span style="color: #808080; font-style: italic;">rem Change wake settings.</span>
<span style="color: #808080; font-style: italic;">rem Get list of the devices.</span>
<span style="color: #808080; font-style: italic;">rem PowerCfg -DEVICEQUERY wake_armed &gt;DeviceList.txt</span>
<span style="color: #808080; font-style: italic;">rem I got:</span>
<span style="color: #808080; font-style: italic;">rem 	HID Keyboard Device (002)</span>
<span style="color: #808080; font-style: italic;">rem 	HID-compliant mouse (003)</span>
<span style="color: #808080; font-style: italic;">rem 	Intel(R) 82567LF-2 Gigabit Network Connection</span>
<span style="color: #808080; font-style: italic;">rem Disable one devices one by one.</span>
PowerCfg -DEVICEDISABLEWAKE &quot;HID Keyboard Device <span style="color: #33cc33;">(</span>002<span style="color: #33cc33;">)</span>&quot;</pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://sjcomp.com/blog/2010/03/07/windows-7-wakes-up-unexpectedly/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PowerPoint cuts off embedded sounds</title>
		<link>http://sjcomp.com/blog/2010/02/12/powerpoint-cuts-off-embedded-sounds/</link>
		<comments>http://sjcomp.com/blog/2010/02/12/powerpoint-cuts-off-embedded-sounds/#comments</comments>
		<pubDate>Sat, 13 Feb 2010 02:36:11 +0000</pubDate>
		<dc:creator>Alexander Shyrokov</dc:creator>
				<category><![CDATA[bugs]]></category>
		<category><![CDATA[bug]]></category>
		<category><![CDATA[slideshow]]></category>
		<category><![CDATA[sound]]></category>

		<guid isPermaLink="false">http://sjcomp.com/blog/?p=438</guid>
		<description><![CDATA[I was making a presentation in PowerPoint 2007 sp1. Yes it does matter what service pack you have, I encountered that animations done in sp1 did not work the same in PowerPoint without the service pack. The long story short, some sound files were not played completely during the slide show, even though preview did [...]]]></description>
			<content:encoded><![CDATA[<p>I was making a presentation in PowerPoint 2007 sp1. Yes it does matter what service pack you have, I encountered that animations done in sp1 did not work the same in PowerPoint without the service pack. The long story short, some sound files were not played completely during the slide show, even though preview did play them completely. After changing actual files with <a href="http://audacity.sf.net/">audacity</a> (trying to make the sound files play correctly), I realized that if the files are not embedded in the presentation they are played just fine. I know there is sp2, but I did not want to update to it before my presentation is over. And in general, <a href="http://openoffice.org/">OpenOffice</a> is waiting for my next presentation.</p>
]]></content:encoded>
			<wfw:commentRss>http://sjcomp.com/blog/2010/02/12/powerpoint-cuts-off-embedded-sounds/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>C++ logger class</title>
		<link>http://sjcomp.com/blog/2010/02/08/c-logger-class/</link>
		<comments>http://sjcomp.com/blog/2010/02/08/c-logger-class/#comments</comments>
		<pubDate>Tue, 09 Feb 2010 02:52:19 +0000</pubDate>
		<dc:creator>Alexander Shyrokov</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Library]]></category>
		<category><![CDATA[Reviews]]></category>

		<guid isPermaLink="false">http://sjcomp.com/blog/?p=430</guid>
		<description><![CDATA[I was looking for a logger implementation for one of my projects. I needed a few features: simultaneous output to a console and a log file, efficiency, and ease of use. Quick google search revealed a few candidates: Apache log4cxx, and Pantheios. Do it yourself articles (example) about home made logging I ignored, because I [...]]]></description>
			<content:encoded><![CDATA[<p>I was looking for a logger implementation for one of my projects. I needed a few features: simultaneous output to a console and a log file, efficiency, and ease of use. Quick google search revealed a few candidates: <a href="http://logging.apache.org/log4cxx/index.html">Apache log4cxx</a>, and <a href="http://www.pantheios.org/">Pantheios</a>. Do it yourself articles (<a href="http://www.drdobbs.com/cpp/201804215">example</a>) about home made logging I ignored, because I have done enough of those (<a href="http://torjo.com/log2/">Boost Logging Library v2</a> is in the same category for me). Given that my primary platform is Windows, log4cxx was dropped, as windows was not <a href="http://www.dreamcubes.com/b2/software-development/28/log4cxx-for-win32-with-vs2005/">directly supported</a>.</p>
<p>Compiling a few examples for pantheios was not difficult, but getting it to do exactly what I planned, which is to have output to a console and a file at the same time, was a little more challenging. The solution was not obvious from the documentation, and sample name mx.1 did not stand out to me as meaning Mixing different back ends. But after searching in <a href="https://sourceforge.net/projects/pantheios/forums">pantheios forums</a> I have found the <a href="https://sourceforge.net/projects/pantheios/forums/forum/475314/topic/2186546">answer to my question</a>.</p>
<p>At the end of the day <a href="http://www.pantheios.org/">Pantheios</a> was my choice. We will see how happy I will be with it after I play with it for a while.</p>
]]></content:encoded>
			<wfw:commentRss>http://sjcomp.com/blog/2010/02/08/c-logger-class/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

