<?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>JJB Blog &#187; technology</title>
	<atom:link href="http://blog.johnjosephbachir.org/tag/technology/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.johnjosephbachir.org</link>
	<description></description>
	<lastBuildDate>Wed, 04 Jan 2012 05:47:01 +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>Why I like Obama better than Clinton</title>
		<link>http://blog.johnjosephbachir.org/2008/03/03/why-i-like-obama-better-than-clinton/</link>
		<comments>http://blog.johnjosephbachir.org/2008/03/03/why-i-like-obama-better-than-clinton/#comments</comments>
		<pubDate>Mon, 03 Mar 2008 07:25:23 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[accessibility]]></category>
		<category><![CDATA[barack]]></category>
		<category><![CDATA[barack obama]]></category>
		<category><![CDATA[barackobama]]></category>
		<category><![CDATA[campaign]]></category>
		<category><![CDATA[clinton]]></category>
		<category><![CDATA[democrat]]></category>
		<category><![CDATA[democratic]]></category>
		<category><![CDATA[finance]]></category>
		<category><![CDATA[hillary]]></category>
		<category><![CDATA[hillaryclinton]]></category>
		<category><![CDATA[lobbyists]]></category>
		<category><![CDATA[obama]]></category>
		<category><![CDATA[primaries]]></category>
		<category><![CDATA[primary]]></category>
		<category><![CDATA[reform]]></category>
		<category><![CDATA[technology]]></category>
		<category><![CDATA[transparency]]></category>

		<guid isPermaLink="false">http://blog.johnjosephbachir.org/2008/03/03/why-i-like-obama-better-than-clinton/</guid>
		<description><![CDATA[I rarely feel strong support for one Democratic candidate over another in the primaries. Heck, I can usually barely get myself to vote for the Democrat in the general election. So what makes me feel so strongly about Obama? Well, there are 3 main reasons: His stance against the war Obama was against the war [...]]]></description>
			<content:encoded><![CDATA[<p>I rarely feel strong support for one Democratic candidate over another in the primaries. Heck, I can usually barely get myself to vote for the Democrat in the general election. So what makes me feel so strongly about Obama?  Well, there are 3 main reasons:</p>
<p><strong>His stance against the war</strong></p>
<p>Obama was against the war before it began, has criticized the war since then, and is now running a campaign centered around ending the war. All the way through he has spoken the plain truth about it: (a) there was no compelling evidence that there were any weapons of mass destruction in Iraq (b) we should have been focusing our military efforts on quelling terrorist networks (c) we need to work on improving our reputation and relationships with other countries and cultures in order to not incite terrorism in the first place.</p>
<p><strong>His meta-policies</strong></p>
<p>Reading Obama and Clinton&#8217;s policies side-by-side, one will discover that they are pretty similar. I happen to think that Obama&#8217;s are presented much more clearly and intelligently on his website, and smack of greater sophistication and detail, but it is arguable that this has more to do with audience targeting than with the quality of the goals and final details of the policies themselves.</p>
<p>What really impresses me about Obama, and sets him apart from Clinton, are his &#8220;meta-policies&#8221;, if you will; his policies and goals <em>about government</em>.</p>
<p>Obama wants to make our government more transparent, more accessible, and more accountable. To this end he has done the following work while in the US Senate:</p>
<ul>
<li>Introduced the <a href="http://en.wikipedia.org/wiki/Federal_Funding_Accountability_and_Transparency_Act_of_2006" title="Federal Funding Accountability and Transparency Act">Federal Funding Accountability and Transparency Act</a>, which requires the full disclosure of all entities or organizations receiving federal funds beginning in fiscal year (FY) 2007 on a website maintained by the Office of Management and Budget (<a href="http://www.usaspending.gov/" title="USA Spending">http://www.usaspending.gov/</a>).</li>
<li>Put together, with Russ Feingold, the <a href="http://en.wikipedia.org/wiki/Honest_Leadership_and_Open_Government_Act" title="Honest Leadership and Open Government Ac">Honest Leadership and Open Government Act</a>, which amends parts of the Lobbying Disclosure Act of 1995. It strengthens public disclosure requirements concerning lobbying activity and funding, places more restrictions on gifts for members of Congress and their staff, and provides for mandatory disclosure of earmarks in expenditure bills.</li>
<li>Introduced the <a href="http://en.wikipedia.org/wiki/Deceptive_Practices_and_Voter_Intimidation_Prevention_Act" title="Deceptive Practices and Voter Intimidation Prevention Act">Deceptive Practices and Voter Intimidation Prevention Act</a>, a bill to criminalize deceptive practices in federal elections, including fraudulent flyers and automated phone calls, as witnessed in the 2006 midterm elections</li>
</ul>
<p><em>(Not all have passed. Click through to see current status of each piece of legislation. Descriptions lifted from Wikipedia and slightly modified.)</em><br />
Now, during his campaign, he has an incredibly impressive set of policies on using technology to improve government transparency and accessibility. I could give you an overview, or I could just direct you to <a href="http://www.lessig.org/blog/2007/11/4barack.html" title="lawrence lessig supports obama">Lawrence Lessig&#8217;s fantastic piece on why he supports Obama</a>, which mostly addresses technology and transparency. In a nutshell: Obama wants to make government information and information as easy to access as <a href="http://yeswecanhas.com" title="YES WE CAN HAS">your favorite blog</a>. On top of that, he has the most sophisticated position on Net Neutrality. (quick definition of Net Neutrality: not allowing the phone/cable company to charge you more to access some websites vs. others, which is what they want to start doing.)</p>
<p>Previously mentioned here: <a href="http://blog.johnjosephbachir.org/2008/02/07/obama-speaking-on-government-accountability-transparency-and-ethics/">this fantastic lecture Obama gave on  government accountability, transparency, and ethics</a>.</p>
<p><strong>His style of politics</strong></p>
<p>Obama has run an extremely long and beautiful grassroots campaign. He has established an extremely impressive network of paid staffers in most (all?) states. He has engaged his supporters using accessible and innovative online tools. He has the <a href="http://blog.johnjosephbachir.org/2008/02/10/comparing-the-taxonomy-of-the-obama-and-clinton-website-issues-menus/">best website</a>, by far.</p>
<p>He has not accepted any lobbyist contributions. (see extensive discussion of this topic <a href="http://blog.johnjosephbachir.org/2008/03/03/what-does-it-means-for-a-campaign-to-accept-money-from-lobbyists/">here</a>).</p>
<p>He has been able to spool up and sustain an enormous, million-dollar-a-day, grassroots fundraising machine.</p>
<blockquote><p>Only 10 percent of Clinton contributors did not donate the legal maximum $2,300 for her primary campaign. In contrast, only three percent of Obama donors gave the maximum. The rest of the cash came from small sums from many more people. (<a href="http://thecaucus.blogs.nytimes.com/2008/02/20/the-democratic-take-from-top-to-bottom/">source</a>)</p></blockquote>
<p>He has completely refrained from what, to my understanding, most people would call &#8220;negative&#8221; campaigning / mud slinging. As of a couple weeks ago, the Clinton campaign can&#8217;t say the same&#8230;</p>
<p>That&#8217;s why Obama is such a different candidate to me. I&#8217;d love to hear what folks out there think about the differences (or lack thereof) between the two candidates, if I am buying into hype, or if I am missing some important points.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnjosephbachir.org/2008/03/03/why-i-like-obama-better-than-clinton/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Barack Obama&#8217;s technology platform</title>
		<link>http://blog.johnjosephbachir.org/2008/02/10/barack-obamas-technology-platform/</link>
		<comments>http://blog.johnjosephbachir.org/2008/02/10/barack-obamas-technology-platform/#comments</comments>
		<pubDate>Sun, 10 Feb 2008 05:43:01 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[barack]]></category>
		<category><![CDATA[barackobama]]></category>
		<category><![CDATA[democrat]]></category>
		<category><![CDATA[democratic]]></category>
		<category><![CDATA[election]]></category>
		<category><![CDATA[netneutrality]]></category>
		<category><![CDATA[obama]]></category>
		<category><![CDATA[politics]]></category>
		<category><![CDATA[president]]></category>
		<category><![CDATA[presidential]]></category>
		<category><![CDATA[primary]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://blog.johnjosephbachir.org/2008/02/10/barack-obamas-technology-platform/</guid>
		<description><![CDATA[One of the areas where Obama impresses me is his technology platform. Not only is he hip on net neutrality and media consolidation, but he has a BIG emphasis on using technology to make the government more accessible and transperant. I was going to compare his platform to Clinton&#8217;s, but as far as I can [...]]]></description>
			<content:encoded><![CDATA[<p>One of the areas where Obama impresses me is his <a href="http://www.barackobama.com/issues/technology/" title="Barack Obama's technology platform">technology platform</a>. Not only is he hip on net neutrality and media consolidation, but he has a BIG emphasis on using technology to make the government more accessible and transperant. I was going to compare his platform to Clinton&#8217;s, but as far as I can tell she does not even have a page about technology policy.</p>
<p>Check out this list of people in technology I respect who also support Obama:</p>
<ul>
<li><a href="http://norvig.com/hiring-president2.html">Peter Norvig</a>, Director of Research, Google<br />
<blockquote><p>He is the most inspirational, he has the integrity to stand up for what is right and admit when he was wrong (a quality that Clinton seems to lack), and he is honest in answering questions where other candidates are political.</p>
<p>Most importantly, Obama is willing and able to work with everyone, not just with his base. Clinton wants to reach out to republicans and others who disagree with her, but the level of animosity that many others have towards her may make it difficult for her to do so. McCain and Romney seem to be intent on playing towards their base, and have not shown how they will reach out. Obama has shown he can do it &#8212; he can be the president that brings the whole country together and leads us in a new direction.</p></blockquote>
</li>
<li><a href="http://gregdek.livejournal.com/22204.html" title="Greg Dekoenigsber's thoughts on Barack Obama">Greg DeKoenigsberg</a>, über geek, Fedora community leader, something or other in Red Hat communications, <a href="http://en.wikipedia.org/wiki/One_Laptop_per_Child" title="one laptop per child">OLPC</a> evangelist<a href="http://gregdek.livejournal.com/22204.html" title="Greg Dekoenigsber's thoughts on Barack Obama"> </a></li>
<li><a href="http://www.lessig.org/blog/2007/11/4barack.html">Lawrence Lessig</a>, intellectual property guru / free culture messiah<br />
<blockquote><p>&#8230; I believe in the policies. Clearly on the big issues &#8212; the war and corruption. Obama has made his career fighting both. But also on the issues closest to me. &#8230; Obama has committed himself to important and importantly balanced positions.</p></blockquote>
</li>
<li><a href="http://blag.xkcd.com/2008/01/28/obama/">The XKCD guy</a>, (makes <a href="http://xkcd.com/150/" title="xkcd balls">this comic</a>)<br />
<blockquote><p>Obama has shown a real commitment to open government. When putting together tech policy &#8230; others might have gone to industry lobbyists. Obama went to Lawrence Lessig, founder of Creative Commons &#8230; and longtime white knight in the struggle with a broken system over internet and copyright policy. Lessig was impressed by Obama’s commitment to open systems — for example, his support of machine-readable government information standards that allow citizens’ groups to monitor what our government is up to. Right now, the only group that can effectively police the government is the government itself, and as a result, it’s corrupt to the core&#8230;</p>
<p>Obama stands against bad governing not only in his support of specific practices like open data standards and basic network neutrality, but in his work against corruption from day one. He’s sponsored legislation to restrict gifts to Congress by industry representatives (which also carried a whole slew of anti-corruption measures that were a breath of fresh air). He’s fought against vote fraud. He’s been pushing for election and lobbying reform from the start, and in his campaign he’s refused to take lobbyist money.</p>
<p>Clinton has done nothing of the sort, and when questioned seems baffled that anyone would have a problem with what is, by any reasonable standard, bribery. I find her basic lack of integrity troubling, and I think as president she would continue fighting to maintain the status quo.</p></blockquote>
</li>
<li><a href="http://www.timwu.org/log/archives/219" title="Tim Wu standing next to life sized cardboard Barack Obama">Tim Wu</a>, intellectual property guru, coined the term &#8220;Net Neutrality&#8221;, professor at Columbia law school</li>
<li><a href="http://www.rants.org/2008/02/20/obama-rama/" title="Karl Fogel">Karl Fogel</a>, software engineer, open source software community leader, copyright reformer<br />
<blockquote><p>Barack Obama is exactly what he seems: terrifically smart, well-intentioned, utterly free of the personal insecurities that drive far too much of the decision-making in the current administration, and eminently electable. He stands a much better chance of winning against McCain than any other Democratic candidate would have. The canard that he’s light on policy simply confuses a primary-season tactic for a general electoral strategy. There’s no point trying to out-wonk Hillary Clinton, but that doesn’t mean he hasn’t done his homework: when the time comes, it’s there in reserve.</p></blockquote>
</li>
<li><a href="http://blog.pmarca.com/2008/03/an-hour-and-a-h.html" title="marc andreessen on why he likes obama">Marc Andreessen</a>, co-founder of Netscape, very successful entrepreneur/investor/visionary, down to earth and fun blogger<br />
<blockquote><p>Smart, normal, curious, not radical, and post-Boomer.If you were asking me to write a capsule description of what I would look for in the next President of the United States, that would be it.</p>
<p>Having met him and then having watched him for the last 12 months run one of the best-executed and cleanest major presidential campaigns in recent memory, I have no doubt that Senator Obama has the judgment, bearing, intellect, and high ethical standards to be an outstanding president &#8212; completely aside from the movement that has formed around him, and in complete contradition to the silly assertions by both the Clinton and McCain campaigns that he&#8217;s somehow not ready.</p></blockquote>
</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnjosephbachir.org/2008/02/10/barack-obamas-technology-platform/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>PHP optimization tricks</title>
		<link>http://blog.johnjosephbachir.org/2006/08/11/php-optimization-tricks/</link>
		<comments>http://blog.johnjosephbachir.org/2006/08/11/php-optimization-tricks/#comments</comments>
		<pubDate>Fri, 11 Aug 2006 05:44:51 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://blog.johnjosephbachir.org/324</guid>
		<description><![CDATA[Here&#8217;s an article I came accross with some interesting PHP optimization tricks. I found the last one, about faster array access, particularly interesting/surprising.]]></description>
			<content:encoded><![CDATA[<p><a href="http://ilia.ws/archives/12-PHP-Optimization-Tricks.html">Here&#8217;s an article</a> I came accross with some interesting PHP optimization tricks. I found the last one, about faster array access, particularly interesting/surprising.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnjosephbachir.org/2006/08/11/php-optimization-tricks/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Mac OS Forge</title>
		<link>http://blog.johnjosephbachir.org/2006/08/10/mac-os-forge/</link>
		<comments>http://blog.johnjosephbachir.org/2006/08/10/mac-os-forge/#comments</comments>
		<pubDate>Fri, 11 Aug 2006 04:10:31 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://blog.johnjosephbachir.org/322</guid>
		<description><![CDATA[This is SO great: Apple has gotten on the cluetrain and deployed Mac OS Forge, a source control and issue tracking system for various open-source Apple projects, including Darwin. This isn&#8217;t just a place to download sourcecode and a one-way bug entry system&#8211; this is a full-blown, vanilla deployment of Trac, sitting on top of [...]]]></description>
			<content:encoded><![CDATA[<p>This is SO great: Apple has gotten on the cluetrain and deployed <a href="http://macosforge.org/">Mac OS Forge</a>, a source control and issue tracking system for various open-source Apple projects, including Darwin. This isn&#8217;t just a place to download sourcecode and a one-way bug entry system&#8211; this is a full-blown, vanilla deployment of <a href="http://trac.edgewall.org/">Trac</a>, sitting on top of an SVN server! This is such great news. I&#8217;m sure Apple will find that they only benefit from this degree of transperancy and interaction with developers.</p>
<p>And as an added treat, we can see that in addition to their two existing open source projects, <a href="http://developer.apple.com/opensource/">darwin</a> and <a href="http://webkit.opendarwin.org/">webkit</a>, they are opening up a few more projects&#8211; a calendering server, launchd, and bonjour. Nice!</p>
<p>At <a href="http://ibiblio.org/">ibiblio</a> I&#8217;m in charge of an <a href="http://source.ibiblio.org/">svn/trac service</a> that we are eventually going to open for business. Everything is set up and we could go forward with it today, but I am patiently waiting for <a href="http://trac.edgewall.org/milestone/0.10">Trac 0.10</a> to be released. It has a smattering of features that will be nice to have when managing several or dozens of projects, such as spam control, web administration, and most importantly, mysql instead of sqlite.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnjosephbachir.org/2006/08/10/mac-os-forge/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The open source development model works, or: why I need to RTFM</title>
		<link>http://blog.johnjosephbachir.org/2006/07/19/the-open-source-development-model-works-or-why-i-need-to-rtfm/</link>
		<comments>http://blog.johnjosephbachir.org/2006/07/19/the-open-source-development-model-works-or-why-i-need-to-rtfm/#comments</comments>
		<pubDate>Thu, 20 Jul 2006 03:05:42 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://blog.johnjosephbachir.org/319</guid>
		<description><![CDATA[When upgrading from MySQL 4 to MySQL 5 on the machine on which the Lyceum blog, Lyceum demo installation, Lyceum wiki, and teachfor.us are hosted, I came across some serious problems. The MySQL daemon would quit unexpectedly, seemingly whenever a query from the demo installation was made, but not any other queries. We checked everything [...]]]></description>
			<content:encoded><![CDATA[<p>When upgrading from MySQL 4 to MySQL 5 on the machine on which the <a href="http://lyceum.ibiblio.org/">Lyceum blog</a>, <a href="http://demo.lyceum.ibiblio.org/">Lyceum demo installation</a>, <a href="http://wiki.lyceum.ibiblio.org/">Lyceum wiki</a>, and <a href="http://teachfor.us/">teachfor.us</a> are hosted, I came across some serious problems. The MySQL daemon would quit unexpectedly, seemingly whenever a query from the demo installation was made, but not any other queries. We checked everything and hunted around the logs and couldn&#8217;t come up with anything, so I <a href="http://bugs.mysql.com/?id=20486">filed a bug with MySQL</a>. The geekier of my readers may be interested in skimming through it.</p>
<p>The day after I filed the ticket, Heikki Tuuri, the creator and maintainer of <a href="http://en.wikipedia.org/wiki/InnoDB">InnoDB</a>, was on the case. He and Valeriy Kravchuk let me know how I could provide them with as much information as possible for them to use to debug the problem. Eventually I ran a table optimize, and that fixed the problem. Also, over at ibiblio, we discovered that /var had been at 100% when I was doing an application upgrade (not the DB upgrade), so I figured that might be part of the problem as well; the index got currupted when being rebuilt.</p>
<p>In spite of my findings, at the end of the the thread, I was informed by Valeriy that because of the datatypes in my table, the only way to do a proper upgrade was to dump the table and then reload it after the upgrade, and she directed me to <a href="http://dev.mysql.com/doc/refman/5.0/en/upgrading-from-4-1.html">this document</a>. I don&#8217;t know if other folks at ibiblio who were working on the upgrade had read this, but I know I hadn&#8217;t.</p>
<p>So I&#8217;m pleased with the responsiveness and community of the developers of MySQL, and I hang my head in shame for not having RTFM.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnjosephbachir.org/2006/07/19/the-open-source-development-model-works-or-why-i-need-to-rtfm/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Lyceum article in Red Hat Magazine article</title>
		<link>http://blog.johnjosephbachir.org/2006/05/17/lyceum-article-in-red-hat-magazine-article/</link>
		<comments>http://blog.johnjosephbachir.org/2006/05/17/lyceum-article-in-red-hat-magazine-article/#comments</comments>
		<pubDate>Thu, 18 May 2006 04:11:10 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://blog.johnjosephbachir.org/303</guid>
		<description><![CDATA[I was asked to write an article about Lyceum in Red Hat Magazine. Here it is!]]></description>
			<content:encoded><![CDATA[<p>I was asked to write an article about Lyceum in Red Hat Magazine. <a href="http://www.redhat.com/magazine/019may06/features/lyceum/">Here it is</a>!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnjosephbachir.org/2006/05/17/lyceum-article-in-red-hat-magazine-article/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Awesome.</title>
		<link>http://blog.johnjosephbachir.org/2006/04/10/awesome-2/</link>
		<comments>http://blog.johnjosephbachir.org/2006/04/10/awesome-2/#comments</comments>
		<pubDate>Tue, 11 Apr 2006 04:49:36 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[funny]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://blog.johnjosephbachir.org/278</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><a class="imagelink" href="http://jjb.blogs.jjb.cc/files/2006/04/pretty_infinite_redirect.png" title="Infinite Redirect"><img id="image277" src="http://jjb.blogs.jjb.cc/files/2006/04/pretty_infinite_redirect-150x150.png" alt="Infinite Redirect" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnjosephbachir.org/2006/04/10/awesome-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Apache 2 follies</title>
		<link>http://blog.johnjosephbachir.org/2006/04/08/apache-2-follies/</link>
		<comments>http://blog.johnjosephbachir.org/2006/04/08/apache-2-follies/#comments</comments>
		<pubDate>Sun, 09 Apr 2006 02:51:24 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://blog.johnjosephbachir.org/276</guid>
		<description><![CDATA[I was trying to get a pretty simple Apache 2 virtual host configuration together and for some reason Apache refused to start up. I tested the configuration with httpd -St and everything was fine. I started httpd with full debug reporting on (-edebug) and got no error messages. But apache would silently fail to start. [...]]]></description>
			<content:encoded><![CDATA[<p>I was trying to get a pretty simple Apache 2 virtual host configuration together and for some reason Apache refused to start up. I tested the configuration with <code>httpd -St</code> and everything was fine. I started httpd with full debug reporting on (<code>-edebug</code>) and got no error messages. But apache would silently fail to start.</p>
<p>My general expectation is that programs will give feedback at the terminal if they fail, so I didn&#8217;t think it was necessary to check Apache&#8217;s logs while debugging configuration problems. But I was out of ideas so I fired up a <code>tail -f /var/log/httpd/error_log</code> and tried again. Sure enough:</p>
<p><code>[Sat Apr 08 16:22:00 2006] [error] (2)No such file or directory: could not open transfer log file /www/hosts/www.domain.com/logs/access_log.<br />
Unable to open logs!</code></p>
<p>The logs directory didn&#8217;t yet exist. I created it and Apache started up just fine. Without it, Apache refused to run!</p>
<p>At first this infuriated me. But then I thought: maybe this is the preferable behavior for server software. It&#8217;s one less variable to worry about &#8212; if my website is up, I know that its logs are working.</p>
<p>Systems folks: what do you think? Should daemons refuse to run if their logs aren&#8217;t working?</p>
<p>Independent of if it runs or not, I think that Apache should give feedback at the console (in addition to the logs) when it isn&#8217;t starting properly. If I had restarted my daemon and gone to lunch, I would never have known that there was a problem!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnjosephbachir.org/2006/04/08/apache-2-follies/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>MySQL Index Types</title>
		<link>http://blog.johnjosephbachir.org/2006/04/06/mysql-index-types/</link>
		<comments>http://blog.johnjosephbachir.org/2006/04/06/mysql-index-types/#comments</comments>
		<pubDate>Thu, 06 Apr 2006 21:04:57 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://blog.johnjosephbachir.org/273</guid>
		<description><![CDATA[The documentation for MySQL index types is hidden in the page on CREATE TABLE Syntax and isn&#8217;t as clear as it could be. Here&#8217;s an overview. (some of this is pretty obvious but I&#8217;m erring on the side of redundancy). KEY and INDEX are synonyms and mean that the colum should be indexed, and do [...]]]></description>
			<content:encoded><![CDATA[<p>The documentation for MySQL index types is hidden in the page on <a href="http://dev.mysql.com/doc/refman/4.1/en/create-table.html">CREATE TABLE Syntax</a> and isn&#8217;t as clear as it could be. Here&#8217;s an overview. (some of this is pretty obvious but I&#8217;m erring on the side of redundancy).</p>
<ul>
<li><code>KEY</code> and <code>INDEX</code> are synonyms and mean that the colum should be indexed, and do NOT require the column to be unique</li>
<li><code>UNIQUE</code> is unique</li>
<li><code>PRIMARY KEY</code>:
<ul>
<li>is an index</li>
<li>implies that all the columns are <code>UNIQUE</code></li>
<li>all columns in the key must be defined as <code>NOT NULL</code></li>
<li>a table can only have one <code>PRIMARY KEY</code></li>
</ul>
</li>
</ul>
<p>Let me know if I&#8217;m missing anything.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnjosephbachir.org/2006/04/06/mysql-index-types/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>How to use RPMs</title>
		<link>http://blog.johnjosephbachir.org/2006/02/25/how-to-use-rpms/</link>
		<comments>http://blog.johnjosephbachir.org/2006/02/25/how-to-use-rpms/#comments</comments>
		<pubDate>Sat, 25 Feb 2006 20:26:33 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://blog.johnjosephbachir.org/264</guid>
		<description><![CDATA[Some info on using RPMs, from some questions I asked fellow ibiblian Jon Mills: pardom my enduring systems ignorance &#8212; where does one get rpms? i know that projects distribute them themselves&#8230; were some or all of the ones you installed provided by red hat? RPMS are voodoo. No, redhat provided none of the rpms [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Some info on using <a href="http://en.wikipedia.org/wiki/RPM_Package_Manager">RPMs</a>, from some questions I asked fellow <a href="http://ibiblio.org/wdg/">ibiblian</a> <a href="http://www.ibiblio.org/jonmills/">Jon Mills</a>:</strong></p>
<blockquote><p>pardom my enduring systems ignorance &#8212; where does one get rpms? i know that projects distribute them themselves&#8230; were some or all of the ones you installed provided by red hat?</p></blockquote>
<p>RPMS are voodoo.  No, redhat provided none of the rpms you asked for.  It&#8217;s difficult to find binary rpms for specific linuxes (except for really popular, non-proprietary ones, or unless the distro provides them).  If you can&#8217;t find a binary rpm, what you do then is to try and find a source rpm, which always looks like <code>&lt;package-name&gt;.src.rpm</code>.  Source rpms let you compile from source, but it compiles it into an rpm, rather than just splattering it all over your filesystem.  You run this command:</p>
<p><code>$ sudo rpmbuild --rebuild --target=`arch` &lt;package-name&gt;.src.rpm</code></p>
<p>It will try to compile and roll the binary rpm for you.  If it fails on a compile dependency, then you try to auto-install that dependency:</p>
<p><code>$ sudo up2date --install &lt;dependency&gt;</code></p>
<p>If that doesn&#8217;t work, then you do this whole process over, except with the aim of just installing the dependency.  So you look for binary or source rpms for the dependency, get it installed, and then go back to where you were.</p>
<p>This usually works pretty well.  The only time you run into trouble is when you&#8217;re trying to install something which supersedes a package which lies within a huge chain of dependencies, such that removing it or upgrading it breaks dozens of other packages.  This is called dependency hell, or RPM HELL.  Upgrading PHP is a good example, because it has hooks into apache, mysql, and a ton of libraries&#8211;you can never just upgrade PHP.</p>
<blockquote><p>for something like subversion, where it has several binaries and also some apache modules&#8211; does the rpm intelligently find the apache install and put the modules somewhere appropriate? do rpms ever actually modify config files for you?</p></blockquote>
<p>The intelligence is in the rpm spec file, which must be written for each specific distro.  That&#8217;s how the rpm knows how to find things.  If all the spec files are well-written, then everything knows where everything else lives, and all is well.</p>
<p>rpms can modify config files, using shell scripts that get executed after the install.  The shell script would be included inside the rpm, and called from the spec file.  A good example is that when you install a linux kernel using rpm, it adds an entry for that kernel in <code>/etc/lilo.conf</code> or <code>/boot/grub.conf</code>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnjosephbachir.org/2006/02/25/how-to-use-rpms/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Effortlessy switching between php4 and php5 for web development</title>
		<link>http://blog.johnjosephbachir.org/2006/02/23/effortlessy-switching-between-php4-and-php5-for-web-development/</link>
		<comments>http://blog.johnjosephbachir.org/2006/02/23/effortlessy-switching-between-php4-and-php5-for-web-development/#comments</comments>
		<pubDate>Thu, 23 Feb 2006 21:55:24 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://blog.johnjosephbachir.org/263</guid>
		<description><![CDATA[I want to test my software on both php4 and php5 quickly and easily. Here&#8217;s the solution I came up with. First, take out everything regarding php out of your main apache config. LoadModule phpX_module ..., AddModule mod_phpX.c, and anything else. Next, make three files in the same directory as your apache config (/etc/httpd/ on [...]]]></description>
			<content:encoded><![CDATA[<p>I want to test my software on both php4 and php5 quickly and easily. Here&#8217;s the solution I came up with.</p>
<p>First, take out everything regarding php out of your main apache config. <code>LoadModule phpX_module ...</code>, <code>AddModule mod_phpX.c</code>, and anything else.</p>
<p>Next, make three files in the same directory as your apache config (<code>/etc/httpd/</code> on OS X):</p>
<p><strong>php4.conf</strong></p>
<pre>LoadModule php4_module        /usr/local/php/libphp4.so
AddModule mod_php4.c
Include /etc/httpd/php_stuff.conf</pre>
<p><strong>php5.conf</strong></p>
<pre>LoadModule php5_module        libexec/httpd/libphp5.so
AddModule mod_php5.c
Include /etc/httpd/php_stuff.conf</pre>
<p><strong>php_stuff.conf</strong></p>
<pre>AddType application/x-httpd-php .php

&lt;IfModule mod_dir.c&gt;
  DirectoryIndex index.html index.php
&lt;/IfModule&gt;</pre>
<p>Now add this line to the bottom of your <code>httpd.conf</code>:</p>
<p><code>Include /etc/httpd/php.conf</code></p>
<p>Now make the following two shell scripts and put them somewhere like <code>~/bin</code>:</p>
<p><strong>p4</strong></p>
<pre>cp /etc/httpd/php4.conf /etc/httpd/php.conf
apachectl graceful</pre>
<p><strong>p5</strong></p>
<pre>cp /etc/httpd/php5.conf /etc/httpd/php.conf
apachectl graceful</pre>
<p>Ta da! Now to switch between php4 and php5, you can just do <code>sudo p4</code> and <code>sudo p5</code>.</p>
<p>It would be nice to even tie this into an applescript with some sort of dock or even menu bar presence&#8230; if anyone has any tips on how this might be done let me know.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnjosephbachir.org/2006/02/23/effortlessy-switching-between-php4-and-php5-for-web-development/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Programmer needed in Austin</title>
		<link>http://blog.johnjosephbachir.org/2006/02/22/programmer-needed-in-austin/</link>
		<comments>http://blog.johnjosephbachir.org/2006/02/22/programmer-needed-in-austin/#comments</comments>
		<pubDate>Wed, 22 Feb 2006 23:13:17 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[business]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://blog.johnjosephbachir.org/261</guid>
		<description><![CDATA[My friend Zane is hiring a programmer in Austin.]]></description>
			<content:encoded><![CDATA[<p>My friend <a href="http://liquid-labs.com/">Zane</a> is <a href="http://austin.craigslist.org/sof/134255882.html">hiring a programmer</a> in Austin.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnjosephbachir.org/2006/02/22/programmer-needed-in-austin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lyceum Public Beta</title>
		<link>http://blog.johnjosephbachir.org/2006/02/17/lyceum-public-beta/</link>
		<comments>http://blog.johnjosephbachir.org/2006/02/17/lyceum-public-beta/#comments</comments>
		<pubDate>Sat, 18 Feb 2006 03:46:22 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[business]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[media]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://blog.johnjosephbachir.org/259</guid>
		<description><![CDATA[In preparation for the formal announcment and code release at the end of this month, the Lyceum team is running a public test intallation of the code. Check it out: Lyceum Public Beta The front page explains everything. Basically, sign up for a blog (or several), write posts, adjust settings, comment on other people&#8217;s blogs, [...]]]></description>
			<content:encoded><![CDATA[<p>In preparation for the formal announcment and code release at the end of this month, the <a href="http://lyceum.ibiblio.org/">Lyceum</a> team is running a public test intallation of the code. Check it out:</p>
<p><a href="http://lyceum-jjb.ibiblio.org/lyceum">Lyceum Public Beta</a></p>
<p>The front page explains everything. Basically, sign up for a blog (or several), write posts, adjust settings, comment on other people&#8217;s blogs, and then send bug reports to <strong>lyceum-bugs AT lists DOT ibiblio DOT org</strong>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnjosephbachir.org/2006/02/17/lyceum-public-beta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Guide to Bash config files</title>
		<link>http://blog.johnjosephbachir.org/2006/01/26/guide-to-bash-config-files/</link>
		<comments>http://blog.johnjosephbachir.org/2006/01/26/guide-to-bash-config-files/#comments</comments>
		<pubDate>Thu, 26 Jan 2006 05:27:19 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://blog.johnjosephbachir.org/?p=244</guid>
		<description><![CDATA[I&#8217;ve put together a guide to Bash config files. Check it out and let me know what you think.]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve put together a guide to <a href="http://en.wikipedia.org/wiki/Bash">Bash</a> config files. <a href="http://wiki.johnjosephbachir.org/Bash_config_files">Check it out</a> and let me know what you think.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnjosephbachir.org/2006/01/26/guide-to-bash-config-files/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to install Trac on RHEL 3</title>
		<link>http://blog.johnjosephbachir.org/2006/01/14/how-to-install-trac-on-rhel-3/</link>
		<comments>http://blog.johnjosephbachir.org/2006/01/14/how-to-install-trac-on-rhel-3/#comments</comments>
		<pubDate>Sat, 14 Jan 2006 14:14:36 +0000</pubDate>
		<dc:creator>John</dc:creator>
				<category><![CDATA[general]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://blog.johnjosephbachir.org/?p=236</guid>
		<description><![CDATA[Trac + RHEL = pain, but this might help. sudo up2date gcc sudo up2date gcc-c++ python 2.4.2 ./configure make make install swig 1.3.27 ./configure --with-python=/usr/local/bin/python make sudo make install sqlite 3.2.8 ./configure --disable-tcl make sudo make install sudo /sbin/ldconfig pysqlite 2.0.5 python setup.py build python setup.py install clearsilver 0.9.14 ./configure make sudo make install cd [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://en.wikipedia.org/wiki/Trac">Trac</a> + <a href="http://en.wikipedia.org/wiki/Red_Hat_Enterprise_Linux">RHEL</a> =  pain, but this might help.</p>
<p><code>sudo up2date gcc<br />
sudo up2date gcc-c++</code></p>
<p><strong>python 2.4.2</strong><br />
<code>./configure<br />
make<br />
make install</code></p>
<p><strong>swig 1.3.27</strong><br />
<code>./configure --with-python=/usr/local/bin/python<br />
make<br />
sudo make install</code></p>
<p><strong>sqlite 3.2.8</strong><br />
<code>./configure --disable-tcl<br />
make<br />
sudo make install<br />
sudo /sbin/ldconfig</code></p>
<p><strong>pysqlite 2.0.5</strong><br />
<code>python setup.py build<br />
python setup.py install</code></p>
<p><strong>clearsilver 0.9.14</strong><br />
<code>./configure<br />
make<br />
sudo make install<br />
cd python<br />
python setup.py build<br />
sudo python setup.py install</code></p>
<p><strong>subversion 1.3.0</strong><br />
<code>./configure PYTHON=/usr/local/bin/python</code>(I don&#8217;t understand this flag either, but that&#8217;s what the docs said to do)<br />
<code>make<br />
sudo make install<br />
make swig-py<br />
sudo make install-swig-py</code></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.johnjosephbachir.org/2006/01/14/how-to-install-trac-on-rhel-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

