<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Juxta Services, Inc.</title>
	
	<link>http://www.juxtaservices.com</link>
	<description>Where Technology Comes Together</description>
	<lastBuildDate>Tue, 04 Dec 2012 22:20:15 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.4.2</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/juxtaservices" /><feedburner:info uri="juxtaservices" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Outsourcing Super Scope</title>
		<link>http://feedproxy.google.com/~r/juxtaservices/~3/vYrb9adGsLk/</link>
		<comments>http://www.juxtaservices.com/philosophy/outsourcing-super-scope/#comments</comments>
		<pubDate>Thu, 29 Sep 2011 07:39:48 +0000</pubDate>
		<dc:creator>Bryce</dc:creator>
				<category><![CDATA[Management]]></category>
		<category><![CDATA[Philosophy]]></category>
		<category><![CDATA[Outsourcing]]></category>

		<guid isPermaLink="false">http://www.juxtaservices.com/?p=277</guid>
		<description><![CDATA[As a kid, I grew up playing Atari and the original NES and can recall the evolution of gaming from joysticks and paddle knobs to controllers and the short lived PowerGlove. Until a lyrical reference I heard recently however, I had forgotten all about the Nintendo Super Scope, which is a shame, because it was [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.juxtaservices.com/wp-content/uploads/2011/09/super-scope.jpg"><img class="aligncenter size-full wp-image-278" title="Nintendo Super Scope" src="http://www.juxtaservices.com/wp-content/uploads/2011/09/super-scope.jpg" alt="" width="368" height="276"/></a>As a kid, I grew up playing Atari and the original NES and can recall the evolution of gaming from joysticks and <a href="http://en.wikipedia.org/wiki/Paddle_%28game_controller%29" target="_blank">paddle knobs</a> to controllers and the short lived <a href="http://en.wikipedia.org/wiki/Power_Glove" target="_blank">PowerGlove</a>. Until a lyrical reference I heard recently however, I had forgotten all about the <a href="http://en.wikipedia.org/wiki/Super_Scope" target="_blank">Nintendo Super Scope</a>, which is a shame, because it was quite the piece of innovation in it&#8217;s time, especially considering what it had to work with (cathode ray tube TV&#8217;s and &#8220;cutting edge&#8221; infrared).</p>
<p>Through the Super Scope&#8217;s undersized, molded plastic eyepiece, epic tunnel vision was possible. It&#8217;s narrow view port allowed for focus on only the most important aspects of a challenge such as blasting evil blue moles or oblitering incoming missiles. All the while remaining &#8216;undistracted&#8217; by surrounding the visuals. Through that little window of infrared doom, it almost seemed as if the problem at hand was minuscule and isolated, when in fact, a larger invasion swiftly approached in the periphery.</p>
<p>Such was the case, I realized, with regards to an outsourcing &#8220;incident&#8221; from my not so recent past. I had the (what has turned out to be incredibly insightful) opportunity to inherit a project several months back, who&#8217;s initial stratagem involved a heavy reliance on outsourcing both the core architectural design and the development work to an external team. For the sake of complete anonymity, let&#8217;s say they were from &#8220;Indiana&#8221; and had a timezone offset of over 12 hours. There had been a relationship with the oursourcing firm for about a year, through the utilization of a single developer on  projects with very limited scope. Consensus on the developer&#8217;s output was one of optimistic satisfaction, so there was no reason to believe that expanding the outsourced resources being provided by this firm would yield any different outcome.In fact, it seemed as though it was the silver bullet of HR that was going to kill the werewolf of stagnant recruiting that prevented the needle from really moving forward.</p>
<p>Well, I inherited management of the project after approximately 4 months, and soon discovered that all was not as originally hoped for. Something was indeed rotten in Denmark. It became apparent that literally none of the work that had been performed by the outsourced team could be retained, and that in order to attempt a salvage on what remained of the timeline, their services must be terminated immediately. So  it was done, yet just like that cursed &#8220;infrared on CRT <a href="http://joespakeblog.com/2012/05/07/interesting-social-media-and-tech-links-for-week-ending-may-7-2012/" target="_blank">technology</a>&#8220;, it goaded me that the shots just didn&#8217;t seem to hit where I knew the scope was aimed. I set about therefore, conducting a thorough retrospective to determine where it all went so wrong. As part of my inquiry, I reached out to some associates whom I knew had been successful at tech outsourcing in the past in order to contrast what made our experiences so different. The following is a list of the key components that I THINK caused the miscalibration of the outsourcing Super Scope and what I would absolutely do different in the future:</p>
<ol>
<li>
<strong>Treat the Outsourcing Firm Like the Facilitator That it is &#8211; </strong>If you are gonna send your hard earned cash overseas, make dang sure you get what YOU want out of it, not what they want (Think about it&#8230;.they want indefinite billable hours from the cheapest labor they can find. You want to get what you asked for at the price you expect). In order for that to happen, you need to take control and make sure they understand they are simply remote agents for finding candidates, helping you screen them, and making sure the ones you hire have a place to work with decent equipment, a reliable Internet connection, and reliable power (yes, you better make sure they have backup power because it WILL go out). Basically you need to make sure that the relationship is such that you have full control over who works on your project and that the firm is able to meet certain standards of working environment productivity.</li>
<li>
<strong>Be Intimately Involved In Hiring</strong> <strong>-</strong> This is one of the most important lessons I learned from this experience, and it really speaks to point #1. Outsourced employees must be treated like remote hires. Would you hire someone as an employee to work remotely and hand them a critical role in your project&#8217;s success on just a second hand recommendation? &#8220;Well, no, not when you put it that way!&#8221; That however, Holmes, is just what we did. There was an utter reliance on the outsourced firm to select, hire, enslave, and/or cajole developers to work on our project. We just gave them the head count that we wanted, and from what I can gather based on the quality of their output, they must have opened a window, yelled, &#8220;Who wants to learn Flex today?!&#8221; and then hired the first 5 people to put down their bottles and stagger over. Seriously, it was almost that bad! If I were to outsource again, I would require every potential team member to undergo the same interview process I would if they were on site, which would include a person-to-person interview and interviews involving existing members of my team. It is nothing short of asinine to expect someone else to do that for me and get the fit that I want.</li>
<li>
<strong>Don&#8217;t Ever Outsource The Architecture &#8211; </strong>This is the most critical aspect of the project, so of all things, it should be your bailiwick and make sure it is done right by keeping it in house. I can guarantee if you don&#8217;t, they will fumble the football or cricket ball or whatever it is they are carrying, and it will set you back eons, especially once you try to integrate with any other existing systems or components. The only exception to outsourcing the architecture may be on very simple projects that require little to no design or invention. Ideally you should be able to hand your outsourced team a very specific set of requirements and instructions that includes use cases, screen shots,  user stories, etc.</li>
<li>
<strong>Expect to Tend the Flock -</strong> As soon as you turn the flock loose and head inside for a nap, they will scatter and head for the most ridiculous spot on the ranch&#8230;.or the neighbor&#8217;s ranch. If you are going to outsource, you better be prepared to manage what is going on and have the time and resources to review their deliverables on a regular basis. Again, they must be treated like remote employees so a good rule of thumb would be to take the time you would have to spend managing an in-house employee and add 20-50%, at least initially. Make sure you get daily or bi-daily deliverables and have a chance to review them so that you can promptly squelch any deviations from the desired outcome.</li>
<li>
<strong>Communication is Key &#8211; </strong>It may seem like the words of a clich marriage counselor, but if you can&#8217;t communicate effectively, you won&#8217;t be able to manage effectively. Part of your screening process therefore when working with non-native speakers, has to be targeted at communication skills. Make sure they are able to speak and write effectively. I have found that written communication is by far the easiest on a day to day basis (Skype and other IM tools are free and fast), but there will likely be times when you will need to have conference calls, so make sure you can communicate effectively with all team members.</li>
<li>
<strong>Timezone is Everything -</strong> You should think long and hard before making a hiring decision somewhere that there will result in a large misalignment of in-office hours. The biggest problem with having such a discrepancy, especially if the bulk of your communications are written, is that it takes almost a full day to give/get feedback on questions since you are not in the office at the same time. If  clarification is needed, such as in the case of an especially difficult bug, then this can easily stretch into multiple days, quickly chewing up allotted timelines. I would recommend finding somewhere that has a similar timezone (such as South America &#8211; Brazil, Uruguay, or Argentina), or a firm that will hire employees to work on a schedule that more close matches your in-house team&#8217;s.</li>
<li>
<strong>Outsourcees Are Employees Too</strong> <strong>-</strong> Don&#8217;t forget that just like any successful team member, your outsourced employees have to be treated as an integral part of the team. This means involving them in all the same aspects of the review/reward process that the rest of your employees experience. It is also highly recommended to include in that plan, on-site visits for both you as a manager to visit their facilities, and them as an employee to visit the company headquarters. Many managers and executives shy away from this mantra because of the perceived cost, but when you compare the cost of a trip several times a year plus an outsourced salary, you are still coming out ahead compared to an on-site employee. The name of the game here though has to be productivity and effectiveness, not cost savings, or you may quickly find yourself wasting money on a useless resource, regardless or how &#8220;cheap&#8221; they are to employ.</li>
</ol>
<p>This is by no means an exhaustive list, and of course if you lack the tools to facilitate remote development, such as version control or bug tracking software, you are already doomed to fail (for a good check list to gauge your development process see &#8216;<a href="http://www.joelonsoftware.com/articles/fog0000000043.html">The Joel Test</a>&#8216; by Joel Spolsky). I for one haven&#8217;t given up completely on outsourcing, but the next time it comes around, I will be sure to keep my other eye open as I peer down the Super Scope.</p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.juxtaservices.com/philosophy/outsourcing-super-scope/" target="_blank"><img src="http://www.juxtaservices.com/wp-content/plugins/add-to-facebook-plugin/facebook_share_icon.gif" alt="Share on Facebook" title="Share on Facebook" /></a><a href="http://www.facebook.com/share.php?u=http://www.juxtaservices.com/philosophy/outsourcing-super-scope/" target="_blank" title="Share on Facebook">Share on Facebook</a></p><img src="http://feeds.feedburner.com/~r/juxtaservices/~4/vYrb9adGsLk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.juxtaservices.com/philosophy/outsourcing-super-scope/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.juxtaservices.com/philosophy/outsourcing-super-scope/</feedburner:origLink></item>
		<item>
		<title>Arduino Documentary</title>
		<link>http://feedproxy.google.com/~r/juxtaservices/~3/_b5p4ucoeq4/</link>
		<comments>http://www.juxtaservices.com/new-tech/arduino-documentary/#comments</comments>
		<pubDate>Mon, 31 Jan 2011 04:00:23 +0000</pubDate>
		<dc:creator>Bryce</dc:creator>
				<category><![CDATA[New Hardware]]></category>
		<category><![CDATA[New Tech]]></category>
		<category><![CDATA[arduino]]></category>

		<guid isPermaLink="false">http://www.juxtaservices.com/?p=266</guid>
		<description><![CDATA[I came across this well done piece of film the other day, and thought I would share it. While I realize it&#8217;s probably not appealing to all techies, I have always loved the multi-faceted integration of hardware and software that embedded systems offer. There are currently many more basic processors, microcontrollers, or other types of [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="size-full wp-image-267  aligncenter" title="Arduino" src="http://www.juxtaservices.com/wp-content/uploads/2011/01/arduino.jpeg" alt="" width="225" height="225" /></p>
<p>I came across this  well done piece of film the other day, and thought I would share it. While I realize it&#8217;s probably not appealing to all techies, I have always loved the multi-faceted integration of hardware and software that embedded systems offer. There are currently many more basic processors, microcontrollers, or other types of &#8220;mini computers&#8221; in the world than there are PC&#8217;s or what consumers often think of as a &#8220;computer&#8221;, and that number will certainly continue to soar as products become more automated and complex.</p>
<p>That said, not so many years ago I spent a fair amount of my time in academia dabbling in embedded systems. In fact, the picture above, and the face of amateur embedded electronics was VERY different back then. It was probably an $800-$1000 investment just to get a basic processor and programmable board with I/O. Now, with the prevalence of open source solutions such as the Arduino, you can get similar functionality, and a platform that provides a much easier to master implementation, for closer to $20-25! In my book, that&#8217;s worth a documentary! So, if you have a few minutes, check it out:</p>
<p><a title="Arduino Documentary" href="http://arduinothedocumentary.org/" target="_self">http://arduinothedocumentary.org/</a></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.juxtaservices.com/new-tech/arduino-documentary/" target="_blank"><img src="http://www.juxtaservices.com/wp-content/plugins/add-to-facebook-plugin/facebook_share_icon.gif" alt="Share on Facebook" title="Share on Facebook" /></a><a href="http://www.facebook.com/share.php?u=http://www.juxtaservices.com/new-tech/arduino-documentary/" target="_blank" title="Share on Facebook">Share on Facebook</a></p><img src="http://feeds.feedburner.com/~r/juxtaservices/~4/_b5p4ucoeq4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.juxtaservices.com/new-tech/arduino-documentary/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.juxtaservices.com/new-tech/arduino-documentary/</feedburner:origLink></item>
		<item>
		<title>Going Social</title>
		<link>http://feedproxy.google.com/~r/juxtaservices/~3/EjW9FaD5q3U/</link>
		<comments>http://www.juxtaservices.com/announcements/going-social/#comments</comments>
		<pubDate>Thu, 27 Jan 2011 04:20:42 +0000</pubDate>
		<dc:creator>Bryce</dc:creator>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[Social Networking]]></category>

		<guid isPermaLink="false">http://www.juxtaservices.com/?p=256</guid>
		<description><![CDATA[Hello all. We are very excited about our new site and the new blog. We have lots planned for some awesome tech discussions, how-tos, and killer walk throughs. Part of our mission statement is to give back to the tech community, and the info we hope to share on this blog is a big part [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;"><img class="aligncenter size-full wp-image-257" title="Social Networking" src="http://www.juxtaservices.com/wp-content/uploads/2011/01/social-networking.jpg" alt="" width="308" height="231" />Hello all. We are very excited about our new site and the new blog. We have lots planned for some awesome tech discussions, how-tos, and killer walk throughs. Part of our mission statement is to give back to the tech community, and the info we hope to share on this blog is a big part of that.</p>
<p style="text-align: left;">We have also upgraded our online presence in the social networking world and so if you would prefer to stay in touch with our happenings that way, you can now find us on <a title="Juxta Services on Facebook" href="http://www.facebook.com/pages/Juxta-Services/157270167655826" target="_blank">Facebook</a>, <a title="Juxta Services on LinkedIn" href="http://www.linkedin.com/company/juxta-services-inc." target="_blank">LinkedIn</a>, <a title="Juxta Services on Twitter" href="http://www.twitter.com/juxtaservices" target="_blank">Twitter</a>, or read all new blog posts through our <a title="Juxta Services RSS Feed" href="http://feeds.feedburner.com/juxtaservices" target="_blank">RSS feed</a>. Of course, we always welcome direct feedback through our <a title="Juxta Services Contact Page" href="http://www.juxtaservices.com/contact/" target="_blank">contact page</a>. So, like us, poke us, message us, or just read our feed! We&#8217;re looking forward to <span class="low-red">building better tech</span> with you!</p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.juxtaservices.com/announcements/going-social/" target="_blank"><img src="http://www.juxtaservices.com/wp-content/plugins/add-to-facebook-plugin/facebook_share_icon.gif" alt="Share on Facebook" title="Share on Facebook" /></a><a href="http://www.facebook.com/share.php?u=http://www.juxtaservices.com/announcements/going-social/" target="_blank" title="Share on Facebook">Share on Facebook</a></p><img src="http://feeds.feedburner.com/~r/juxtaservices/~4/EjW9FaD5q3U" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.juxtaservices.com/announcements/going-social/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.juxtaservices.com/announcements/going-social/</feedburner:origLink></item>
		<item>
		<title>Adeona. "Toto, I don’t thinkpad we’re in Kansas anymore."</title>
		<link>http://feedproxy.google.com/~r/juxtaservices/~3/HjA39bX3tKs/</link>
		<comments>http://www.juxtaservices.com/linux/ubuntu/adeona-toto-i-dont-thinkpad-were-in-kansas-anymore/#comments</comments>
		<pubDate>Mon, 21 Jul 2008 03:50:00 +0000</pubDate>
		<dc:creator>Bryce</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[New Software]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://localhost/wordpress/uncategorized/adeona-toto-i-dont-thinkpad-were-in-kansas-anymore/</guid>
		<description><![CDATA[The other day I found a snazzy little software tool for tracking a stolen (or interesting) laptop. I usually don&#8217;t care much about software anymore unless its open source and in this case it is, so guess what?&#8230;I care! Adeona was written by a few students at the University of Washington, which also happens to [...]]]></description>
			<content:encoded><![CDATA[<p>The other day I found a snazzy little software tool for tracking a stolen (or interesting) laptop. I usually don&#8217;t care much about software anymore unless its open source and in this case it is, so guess what?&#8230;I care!</p>
<p><a href="http://adeona.cs.washington.edu/index.html">Adeona</a> was written by a few students at the University of Washington, which also happens to be the birthplace of another of my favorite little apps, <a href="http://bittyrant.cs.washington.edu/">BitTyrant</a> (incidentally both sponsored by one of the same professors there&#8230;Go Arvind!!!). It is a surprisingly simple concept for tracking the previous and current digital whereabouts of a roaming laptop.</p>
<p>Adeona does the usual in reporting IP addresses that have been used to connect to the Internet, but most notable is the fact that it stores all data in the <a href="http://www.opendht.org/">OpenDHT</a> network. Basically, this is a massively distributed online storage system that can be written to over Sun RPC or XML RPC, without the use of a specialize DHT client or an access account. What that means essentially, is that access to the OpenDHT system can be fully anonymous. On top of that, Adeona encrypts all data that is stored inside OpenDHT, so that only the cryptographic credentials provided when setting it up can be used to read the data it stores.</p>
<p>I found the service remarkably simple to setup on my Ubuntu Hoardy install. As mentioned <a href="http://adeona.cs.washington.edu/linuxinstallguide.html">here</a> in the Linux install guide, I just had to untar the source code and compile it. I also had to install the <span style="font-style: italic;">libssl-dev</span> package (OpenSSL development), but this was also indicated in the install procedures. Overall it took less than 5 minutes to get up and running. I then emailed myself a copy of the access credentials and we were off to the races.</p>
<p>I was interested to see what was being reported back by the system and how easy it was to retrieve, so I executed the following command as indicated in the <a href="http://adeona.cs.washington.edu/documents.html">documentation</a>, and here are the results (I have removed my actual external IP. Yea I know the rest are there, but if you really wanted to know where I live, I&#8217;d probably tell you if you asked.):</p>
<blockquote><p>compy:~$ /usr/local/adeona/adeona-retrieve.exe -r /usr/local/adeona/resources/ -l /home/bott/downloads/adeona/results/ -s /usr/local/adeona/adeona-retrievecredentials.ost -n 1<br />
Please enter password for Adeona:<br />
*******************************************************************************<br />
* These results are for informational, research and evaluation purposes only. *<br />
* Do not attempt to recover your lost or stolen laptop yourself.              *<br />
* If you believe your laptop has been stolen, contact the appropriate         *<br />
* law enforcement agency.                                                     *<br />
*******************************************************************************</p>
<p>Searching for most recent 1 update(s) in time period [ 07/18/2008,22:54 (MDT) - NOW ]</p>
<p>Connecting to remote storage server&#8230;<br />
Trying server 1&#8230;please be patient<br />
Succesfully connected to remote storage server</p>
<p>Checking update scheduled on 07/20/2008,22:39 (MDT)<br />
Succesfully retrieved update replica 0<br />
===============================<br />
Retrieved location information:<br />
update time: 07/20/2008,22:39 (MDT)<br />
internal ip: 192.168.1.105<br />
external ip: *.*.*.*<br />
access point: DAYS_INN<br />
Nearby routers:<br />
1 0.902ms 192.168.1.1 (could not resolve)<br />
2 12.265ms 72.8.117.1 (1.117.8.72.dhcp.mstarmetro.net)<br />
3 12.420ms 72.8.79.241 (241.79.8.72.dhcp.mstarmetro.net)<br />
4 12.701ms 72.8.79.26 (V776-cbr02.vw.mstarmetro.net)<br />
5 12.924ms 192.41.84.241 (pub-192-41-84-241.center7.com)<br />
6 13.191ms 63.226.73.73 (slc-edge-10.inet.qwest.net)<br />
7 25.332ms 67.14.32.202 (snj-core-02.inet.qwest.net)<br />
8 25.964ms 205.171.214.46 (sjp-brdr-02.inet.qwest.net)<br />
9 26.452ms 213.248.87.49 (sjo-bb1-link.telia.net)<br />
10 87.022ms 80.91.248.189 (ash-bb1-link.telia.net)<br />
11 163.948ms 213.248.65.209 (ldn-bb2-pos6-0-0.telia.net)<br />
12 177.269ms 80.91.250.148 (hbg-bb1-link.telia.net)<br />
13 200.930ms 80.91.250.133 (bpt-b2-link.telia.net)<br />
14 200.401ms 213.248.79.2 (dante-ic-121273-bpt-b2.c.telia.net)<br />
15 201.348ms 195.111.97.242 (c6513-tengbeth13-3.vh.hbone.hu)<br />
16 202.461ms 195.111.97.102 (sup720-tengbeth2-1.bme.hbone.hu)<br />
17 203.195ms 152.66.0.125 (tge8-1.taz.bme.hu)<br />
18 193.745ms 152.66.0.122 (vlan13.ixion.bme.hu)</p>
<p>===============================</p></blockquote>
<p>What I did find interesting about the results was the DAYS_INN access point registering in the system. I rarely use my wireless and I guess the last time I did was at a Days Inn a couple months ago when I was out of town for a wedding. Although, to be honest, as much family as we have had over this summer, its kinda starting to feel like one around here too&#8230; At any rate, I give Adeona a double thumbs up. Definitely one of the cooler utils I&#8217;ve seen in a while.</p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.juxtaservices.com/linux/ubuntu/adeona-toto-i-dont-thinkpad-were-in-kansas-anymore/" target="_blank"><img src="http://www.juxtaservices.com/wp-content/plugins/add-to-facebook-plugin/facebook_share_icon.gif" alt="Share on Facebook" title="Share on Facebook" /></a><a href="http://www.facebook.com/share.php?u=http://www.juxtaservices.com/linux/ubuntu/adeona-toto-i-dont-thinkpad-were-in-kansas-anymore/" target="_blank" title="Share on Facebook">Share on Facebook</a></p><img src="http://feeds.feedburner.com/~r/juxtaservices/~4/HjA39bX3tKs" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.juxtaservices.com/linux/ubuntu/adeona-toto-i-dont-thinkpad-were-in-kansas-anymore/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.juxtaservices.com/linux/ubuntu/adeona-toto-i-dont-thinkpad-were-in-kansas-anymore/</feedburner:origLink></item>
		<item>
		<title>MagicJackin’ a VM</title>
		<link>http://feedproxy.google.com/~r/juxtaservices/~3/UbdUWNTwq7o/</link>
		<comments>http://www.juxtaservices.com/linux/ubuntu/magicjackin-a-vm/#comments</comments>
		<pubDate>Sat, 28 Jun 2008 00:47:00 +0000</pubDate>
		<dc:creator>Bryce</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[New Hardware]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[Virtualization]]></category>
		<category><![CDATA[VMWare]]></category>
		<category><![CDATA[virtualization]]></category>

		<guid isPermaLink="false">http://localhost/wordpress/uncategorized/magicjackin-a-vm/</guid>
		<description><![CDATA[So we all know how giddy I get over bargains (if not, consider this a news flash), and I found a great one the other day. The father of a buddy of mine whom I was chatting with the other day, told me about this snazzy new VOIP service called MagicJack. Basically IT is USB [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://4.bp.blogspot.com/_PxtOrZRJ54g/SGWeZxhlaEI/AAAAAAAAABs/mTuINC9AEII/s1600-h/magicjack.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"><img id="BLOGGER_PHOTO_ID_5216749909006706754" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_PxtOrZRJ54g/SGWeZxhlaEI/AAAAAAAAABs/mTuINC9AEII/s320/magicjack.jpg" border="0" alt=""/></a></p>
<p>So we all know how giddy I get over bargains (if not, consider this a news flash), and I found a great one the other day. The father of a buddy of mine whom I was chatting with the other day, told me about this snazzy new VOIP service called <a href="http://www.magicjack.com/">MagicJack</a>. Basically IT is USB VOIP adapter that cost me ~$50 for a year&#8217;s worth of service that included the device and free unlimited calling anywhere in the US and Canda (right now the price for an additional year is $20, but I&#8217;ve learned not to buy ahead on service with startup VOIPs). Awesome deal, right?! That&#8217;s what I said too. I mean I am paying almost $20 a month for my current VOIP line at home. The only question for a tuxraider like me was&#8230;how hard would it be to get it working in Linux (I was confident there would be a way to do so)?</p>
<p>Well, after a little bit of probing I discovered that there was no native Linux version of the software&#8230;bummer. But I have had to run a Windows VM for a while now so that I could handle a few odd Windows only tasks, so I figured it would be easy to just throw that puppy onto the VM and be off to the races. &#8216;Twas not to be so easy.</p>
<p>I soon discovered that out of the box, VMWare Server does not have entirely stellar USB service when run inside Linux. It is fine for <a href="http://joespakeblog.com/2012/05/08/flickr-and-pinterest-strike-a-sharing-deal/" target="_blank">sharing</a> a USB disk, but the MagicJack was fightin&#8217; back. So I began to poke around and finally figured out how to get it working inside of a Windows VM on Linux.</p>
<p>Here is my setup:<br />
- Ubuntu 8.04 Hardy Heron Host OS (Should work on any Linux distro just the same)<br />
- VMWareServer 1.0.6 build-91891<br />
- Windows XP VM Guest OS<br />
- MagicJack USB device</p>
<p>The real key to getting this to work was to make sure that the USB device could be shared by the VM and the host machine. Out of the box, my Windows VM could detect it, but it was not able to fully function. Here is what I added to <span style="font-style: italic;">/etc/fstab</span> on the host machine to make it work:</p>
<p><span style="font-style: italic; font-weight: bold;"># USB for vmware/vbox<br />
none /proc/bus/usb usbfs devgid=46,devmode=664 0 0</span></p>
<p>If you are still having problems getting the MagickJack to work on a Windows VM in Ubuntu, I recommend setting the networking on the VM to bridged first and then once it is working set it to NAT.</p>
<p>Now, since I&#8217;m the only one who has called my number, I just need someone else to call me up to make it a bargain worth its salt.</p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.juxtaservices.com/linux/ubuntu/magicjackin-a-vm/" target="_blank"><img src="http://www.juxtaservices.com/wp-content/plugins/add-to-facebook-plugin/facebook_share_icon.gif" alt="Share on Facebook" title="Share on Facebook" /></a><a href="http://www.facebook.com/share.php?u=http://www.juxtaservices.com/linux/ubuntu/magicjackin-a-vm/" target="_blank" title="Share on Facebook">Share on Facebook</a></p><img src="http://feeds.feedburner.com/~r/juxtaservices/~4/UbdUWNTwq7o" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.juxtaservices.com/linux/ubuntu/magicjackin-a-vm/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.juxtaservices.com/linux/ubuntu/magicjackin-a-vm/</feedburner:origLink></item>
		<item>
		<title>iPhone, uPhone, wwwe all Phone</title>
		<link>http://feedproxy.google.com/~r/juxtaservices/~3/uFmxEETwrXQ/</link>
		<comments>http://www.juxtaservices.com/mobile-apps/iphone/iphone-uphone-wwwe-all-phone/#comments</comments>
		<pubDate>Fri, 09 Nov 2007 22:43:00 +0000</pubDate>
		<dc:creator>Bryce</dc:creator>
				<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Mobile Apps]]></category>
		<category><![CDATA[Web Dev]]></category>

		<guid isPermaLink="false">http://localhost/wordpress/uncategorized/iphone-uphone-wwwe-all-phone/</guid>
		<description><![CDATA[Well truth is, I don&#8217;t have an iPhone, but I have friends that do. Yay for me! I happen to have a certain ongoing 4.5 year vendetta/boycott against AT&#38;T for a long string of indifferent offenses against me long ago. I know it sounds like a family feud or something, but if I&#8217;ve ever told [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://4.bp.blogspot.com/_PxtOrZRJ54g/RzTogcQw4HI/AAAAAAAAABk/laPEeCXUlUE/s1600-h/iphone-parallels.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"><img id="BLOGGER_PHOTO_ID_5130981519521800306" style="display: block; margin: 0px auto 10px; text-align: center; cursor: hand;" src="http://4.bp.blogspot.com/_PxtOrZRJ54g/RzTogcQw4HI/AAAAAAAAABk/laPEeCXUlUE/s320/iphone-parallels.jpg" border="0" alt="" /></a></p>
<p>Well truth is, I don&#8217;t have an iPhone, but I have friends that do. Yay for me! I happen to have a certain ongoing 4.5 year vendetta/boycott against AT&amp;T for a long string of indifferent offenses against me long ago. I know it sounds like a family feud or something, but if I&#8217;ve ever told you why I will never shop for food at <a href="http://www.kneadersbakery.com/">Kneaders</a>, you will understand because its along the same lines. And on top of that, I currently have Verizon, which does not allow SIM card phones on its network, so that rules out the option of hacking an iPhone.</p>
<p>Anyways, yesterday, an iPhone totin&#8217; friend of mine came to me with an intriguing question. He happened to have an HTML document that he wanted to view on his iPhone, except for the fact that it was unfortunately sized such that it was very inconvenient to navigate through the iPhone browser. He wanted to be able to access it without a connection to the internet, so he had installed Apache onto his iPhone to be able to serve up the HTML document locally, however there still remained the issue of having to painfully resize each page of the document when viewing it. He had stooped so low that he finally came to me.</p>
<p>My first thought was to utilize some kind of global CSS, but after digging into it, I realized there is no way to do that without having to include the CSS in each file of the document. Not a very sexy solution. As I continued to think about it though, I realized that there must be some way to view the pages through an iframe in a new index page and if necessary, resize the contents of the frame using JavaScript to suit the iPhone medium. My friend had informed me that there was some meta data that could be used to tell the iPhone to resize the contents of a page. So, here&#8217;s what I came up with (with some tweaks he made once it was on his iPhone).</p>
<p><span style="font-weight: bold;"><span style="font-style: italic;">&lt;span style=&#8221;font-size:100%;&#8221;&gt;&lt;html&gt;&lt;head&gt;<br />
&lt;title&gt;Standard Works&lt;/title&gt;<br />
&lt;/head&gt;&lt;body&gt;<br />
&lt;meta name=&#8221;viewport&#8221; content=&#8221;width=320; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;&#8221;&gt;<br />
&lt;iframe name=&#8221;iframeName&#8221; id=&#8221;iframeName&#8221; src=&#8221;realindex.html&#8221; marginwidth=&#8221;0&#8243; marginheight=&#8221;0&#8243; style=&#8221;width: 310px;&#8221;&gt;<br />
&lt;/body&gt;&lt;/span&gt;<br />
</span><br />
</span>It worked like a charm! Chalk another one up for the nerds. This could even be further enhanced to allow it to be dynamically passed a page to prevent sizing issues in any page being browsed. I&#8217;ll let someone who actually has an iPhone tackle that.</p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.juxtaservices.com/mobile-apps/iphone/iphone-uphone-wwwe-all-phone/" target="_blank"><img src="http://www.juxtaservices.com/wp-content/plugins/add-to-facebook-plugin/facebook_share_icon.gif" alt="Share on Facebook" title="Share on Facebook" /></a><a href="http://www.facebook.com/share.php?u=http://www.juxtaservices.com/mobile-apps/iphone/iphone-uphone-wwwe-all-phone/" target="_blank" title="Share on Facebook">Share on Facebook</a></p><img src="http://feeds.feedburner.com/~r/juxtaservices/~4/uFmxEETwrXQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.juxtaservices.com/mobile-apps/iphone/iphone-uphone-wwwe-all-phone/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.juxtaservices.com/mobile-apps/iphone/iphone-uphone-wwwe-all-phone/</feedburner:origLink></item>
		<item>
		<title>MyGeeQL</title>
		<link>http://feedproxy.google.com/~r/juxtaservices/~3/R4QV19cbY2s/</link>
		<comments>http://www.juxtaservices.com/web-dev/mysql/mygeeql/#comments</comments>
		<pubDate>Mon, 29 Oct 2007 03:21:00 +0000</pubDate>
		<dc:creator>Bryce</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[New Software]]></category>
		<category><![CDATA[Web Dev]]></category>
		<category><![CDATA[Google]]></category>

		<guid isPermaLink="false">http://localhost/wordpress/uncategorized/mygeeql/</guid>
		<description><![CDATA[As a young ambitious coder way back in the day, my very first dynamic web page was written in really awkward PHP with MySQL version point something as the back end persistence. I should really try and dig up that code just for old time&#8217;s sake. I&#8217;m sure its still on a 3.5&#8243; &#8220;floppy&#8221; (they [...]]]></description>
			<content:encoded><![CDATA[<p>As a young ambitious coder way back in the day, my very first dynamic web page was written in really awkward <a href="http://www.php.net">PHP</a> with <a href="http://www.mysql.com">MySQL</a> version point something as the back end persistence. I should really try and dig up that code just for old time&#8217;s sake. I&#8217;m sure its still on a 3.5&#8243; &#8220;floppy&#8221; (they can hold thousands of pages of text&#8230;ok, maybe just hundreds) somewhere in my basement. Those were dark days.</p>
<p>Well MySQL has come a long way since then, and I&#8217;d be lying if it said its not my defacto now for web development. In fact, I never had any real complaints about it. By the time I was using it for more enterprise level systems, it had caught up in most ways. With the latest major release, MySQL 5.0, glorious enhancements like stored procedures, triggers, views, and transactions were introduced, creating more serious competition for larger commercial vendors. Well I couldn&#8217;t be more pleased with using it as the back end for an advanced web application. That was, until I found out about <a href="http://code.google.com/p/google-mysql-tools/">google-mysql-tools</a>.</p>
<p>After reading <a href="http://www.computerworld.com.au/index.php/id;1190607457;fp;2;fpid;1">an article</a> the other day that describes a recent announcement that Google will be contributing some of its custom enhancements to the main MySQL code base, I discovered they have already released some fairly slick improvements for utilizing MySQL in a highly available, distributed environment. Since Google is considered by many to be the largest single user of MySQL, and they have successfully solved some rather difficult real-time web issues through their software, I figured this was well worth looking at.</p>
<p>Released as a patch that can be applied to MySQL4 or MySQL5, <a href="http://code.google.com/p/google-mysql-tools/">google-mysql-tools</a> is aptly hosted on the <a href="http://code.google.com/">Google Code</a> website, and it offers some really slick enhancements to MySQL run in Linux using the InnoDB table structure. Some of these include partially synchronous replication between master and slave hosts, mirrored binlogs, replication of transactions, asynchronous background IO threads in InnoDB, and the monitoring of database activity on a per user, per table basis. I will definitely be applying this patch in my next MySQL5 install.</p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.juxtaservices.com/web-dev/mysql/mygeeql/" target="_blank"><img src="http://www.juxtaservices.com/wp-content/plugins/add-to-facebook-plugin/facebook_share_icon.gif" alt="Share on Facebook" title="Share on Facebook" /></a><a href="http://www.facebook.com/share.php?u=http://www.juxtaservices.com/web-dev/mysql/mygeeql/" target="_blank" title="Share on Facebook">Share on Facebook</a></p><img src="http://feeds.feedburner.com/~r/juxtaservices/~4/R4QV19cbY2s" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.juxtaservices.com/web-dev/mysql/mygeeql/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.juxtaservices.com/web-dev/mysql/mygeeql/</feedburner:origLink></item>
		<item>
		<title>The Other Bungee</title>
		<link>http://feedproxy.google.com/~r/juxtaservices/~3/yftQ3e9Nmcs/</link>
		<comments>http://www.juxtaservices.com/new-tech/the-other-bungee/#comments</comments>
		<pubDate>Tue, 03 Jul 2007 03:03:00 +0000</pubDate>
		<dc:creator>Bryce</dc:creator>
				<category><![CDATA[New Software]]></category>
		<category><![CDATA[New Tech]]></category>
		<category><![CDATA[Web Dev]]></category>
		<category><![CDATA[beta]]></category>
		<category><![CDATA[Bungee]]></category>

		<guid isPermaLink="false">http://localhost/wordpress/uncategorized/the-other-bungee/</guid>
		<description><![CDATA[Its hard to deny the impact of Bungie on the lives of technies and teenagers everywhere. The makers of one of the best selling video game series in history have all but defined the first person shooter on the XBOX. Bungie Studios, the makers of the Halo series know how to do it right. But [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://2.bp.blogspot.com/_PxtOrZRJ54g/RonLjoEgh-I/AAAAAAAAABc/YzXB4CXXvwA/s1600-h/bungee.jpeg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"><img id="BLOGGER_PHOTO_ID_5082817467376502754" style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_PxtOrZRJ54g/RonLjoEgh-I/AAAAAAAAABc/YzXB4CXXvwA/s200/bungee.jpeg" border="0" alt="" /></a><br />
Its hard to deny the impact of Bungie on the lives of technies and teenagers everywhere. The makers of one of the best selling video game series in history have all but defined the first person shooter on the XBOX. Bungie Studios, the makers of the Halo series know how to do it right. But look out, there&#8217;s a new kid in town. <a href="http://bungeelabs.com">Bungee Labs</a> (which by the way is not affiliated with Bungee Studios). And we&#8217;re talking about something a lot cooler than video games. I know, its hard to fathom such a thing, but true it is.</p>
<p>I first heard about <a href="http://bungeelabs.com">Bungee Labs</a> through a previous co-worker of mine who is now employed there as a quality assurance engineer. He has been telling me how impressive their service is, and the other day he invited me over to see a product demo. Their flagship product bundle Bungee Connect, which debuted at the recent Web 2.0 conference, provides an entirely browser based IDE and development environment for quickly and efficiently creating web based applications. One of its most impressive features is the ability to automatically import any SOAP or REST web service and utilize its full functionality with a few clicks of the mouse. During the demo, in about 5 minutes, the presenter imported the recently announced eBay shopping API (it was unveiled at eBay live about a month ago), and created a custom implementation of it that provided a search for products and subsequently displayed the images, product descriptions, pricing, etc. for the resulting products.</p>
<p>The most impressive part of demo however, was the fact that the IDE (called Bungee Builder) is built using Bungee Connect. As the demo went on I almost forgot it was running inside of a browser because it functions like a full featured client side application. Bungee promises cross-browser compatibility for Builder and all applications it creates in Firefox, IE, and Safari. Another very innovation part of the Bungee service is the actual business model itself. Use of builder and the application development and deployment cycle is completely free, with charges only occurring according to the amount of site usage.</p>
<p>The service is currently in Beta, so there are certainly more changes to come, but I have to say as a web developer, this is a very exciting piece of technology, and one which I look forward to utilizing.</p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.juxtaservices.com/new-tech/the-other-bungee/" target="_blank"><img src="http://www.juxtaservices.com/wp-content/plugins/add-to-facebook-plugin/facebook_share_icon.gif" alt="Share on Facebook" title="Share on Facebook" /></a><a href="http://www.facebook.com/share.php?u=http://www.juxtaservices.com/new-tech/the-other-bungee/" target="_blank" title="Share on Facebook">Share on Facebook</a></p><img src="http://feeds.feedburner.com/~r/juxtaservices/~4/yftQ3e9Nmcs" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.juxtaservices.com/new-tech/the-other-bungee/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.juxtaservices.com/new-tech/the-other-bungee/</feedburner:origLink></item>
		<item>
		<title>Favicon.ico 404 Errors</title>
		<link>http://feedproxy.google.com/~r/juxtaservices/~3/8NE-MXbkh4U/</link>
		<comments>http://www.juxtaservices.com/web-dev/apache/favicon-ico-404-errors/#comments</comments>
		<pubDate>Mon, 11 Jun 2007 04:44:00 +0000</pubDate>
		<dc:creator>Bryce</dc:creator>
				<category><![CDATA[Apache]]></category>
		<category><![CDATA[Web Dev]]></category>

		<guid isPermaLink="false">http://localhost/wordpress/uncategorized/favicon-ico-404-errors/</guid>
		<description><![CDATA[Upon recently perusing the Apache error/access logs within my sys admin dominion I discovered a massive number of 404 errors occurring. This was evidenced by the accessing of a custom 404 page which is redirected to by another default script if what is requested is not found. Since this page was the result of a [...]]]></description>
			<content:encoded><![CDATA[<p>Upon recently perusing the Apache error/access logs within my sys admin dominion I discovered a massive number of 404 errors occurring. This was evidenced by the accessing of a custom 404 page which is redirected to by another default script if what is requested is not found. Since this page was the result of a redirect, in order to determine what URL was causing it, it was necessary to scan the access log to see what had been requested by the same IP just before the 404 page was accessed, thereby indicating what resource was being requested that was triggering the 404 script. After briefly reviewing the access log, it became evident that the culprit was a request for favicon.ico in the root web folder.</p>
<p>Favicon.ico is the default means of displaying a custom icon in the URL bar of most modern web browsers. Most commercial websites populate this image with their corporate logo for further site recognition and customization. If you go to <a href="http://www.blogger.com">http://www.blogger.com</a>, you will notice that the favicon is the orange blogger &#8220;B&#8221;. Well, apparently most web browser will look for favicon.ico in the root of the web folder of the site being accessed. Because of the custom 404 scheme of the site in question, the lack of this file in said location was causing a 404 to occur. Upon doing a bit of digging, it was discovered that while there was a favicon being used, it was displayed using an alternate JavaScript method (probably for better cross-browser compatibility), and that indeed no favicon.ico file existed in the document root. This was remedied by creating a symlink in the root to the location where the JavaScript solution was pulling the favicon from. This seems to have removed these 404 errors, causing the remaining errors to be more discernible and hopefully easier to address.</p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.juxtaservices.com/web-dev/apache/favicon-ico-404-errors/" target="_blank"><img src="http://www.juxtaservices.com/wp-content/plugins/add-to-facebook-plugin/facebook_share_icon.gif" alt="Share on Facebook" title="Share on Facebook" /></a><a href="http://www.facebook.com/share.php?u=http://www.juxtaservices.com/web-dev/apache/favicon-ico-404-errors/" target="_blank" title="Share on Facebook">Share on Facebook</a></p><img src="http://feeds.feedburner.com/~r/juxtaservices/~4/8NE-MXbkh4U" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.juxtaservices.com/web-dev/apache/favicon-ico-404-errors/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.juxtaservices.com/web-dev/apache/favicon-ico-404-errors/</feedburner:origLink></item>
		<item>
		<title>Dump stderr to stdout</title>
		<link>http://feedproxy.google.com/~r/juxtaservices/~3/R5A_LG1fJwY/</link>
		<comments>http://www.juxtaservices.com/linux/ubuntu/dump-stderr-to-stdout/#comments</comments>
		<pubDate>Wed, 09 May 2007 04:09:00 +0000</pubDate>
		<dc:creator>Bryce</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[Web Dev]]></category>
		<category><![CDATA[command line]]></category>

		<guid isPermaLink="false">http://localhost/wordpress/uncategorized/dump-stderr-to-stdout/</guid>
		<description><![CDATA[I recently discovered the solution to a previously baffling problem I was having with the code deployment tool I have been writing as part of my thesis research. By the way, Doba has graciously allowed me to open source the entire project. You can find it here. Since the project relies on the execution of [...]]]></description>
			<content:encoded><![CDATA[<p>I recently discovered the solution to a previously baffling problem I was having with the code deployment tool I have been writing as part of my thesis research. By the way, Doba has graciously allowed me to open source the entire project. You can find it <a href="http://sourceforge.net/projects/deploid/">here</a>.</p>
<p>Since the project relies on the execution of SVN commands through the use of the <span style="font-style: italic;">exec() </span>function in PHP to perform actions dictated through the web interface, there are alot of <span style="font-style: italic;">exec()</span> calls made in the performance of duty. The output of these commands is generally captured so that it can be displayed back to the user and logged into the system. I was previously baffled however, why sometimes when an SVN error occurred, that it was not returned as output for the function call, but would instead be written to the Apache error log. That was until, upon discussing the issue with a coworker that we stumbled upon the reason. The SVN client was writing the error to stderr instead of stdout! Hello!</p>
<p>In order to solve the error therefore, and thereby prevent myself from having to mow through a bunch of error logs when something failed, I simply had to make sure and pipe stderr to stdout for any svn commands being executed. Here&#8217;s what I appended to the end of the command to make it happen:</p>
<pre>svncommand 2&gt;&amp;1</pre>
<p>Since all of the SVN commands are executed through a central function, adding this pipe for all commands was a cinch. Now any and all errors encountered are properly displayed with the SVN output.</p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://www.juxtaservices.com/linux/ubuntu/dump-stderr-to-stdout/" target="_blank"><img src="http://www.juxtaservices.com/wp-content/plugins/add-to-facebook-plugin/facebook_share_icon.gif" alt="Share on Facebook" title="Share on Facebook" /></a><a href="http://www.facebook.com/share.php?u=http://www.juxtaservices.com/linux/ubuntu/dump-stderr-to-stdout/" target="_blank" title="Share on Facebook">Share on Facebook</a></p><img src="http://feeds.feedburner.com/~r/juxtaservices/~4/R5A_LG1fJwY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.juxtaservices.com/linux/ubuntu/dump-stderr-to-stdout/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.juxtaservices.com/linux/ubuntu/dump-stderr-to-stdout/</feedburner:origLink></item>
	</channel>
</rss>
