<?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>Tech on C&#38;P &#187; Uncategorized</title>
	<atom:link href="http://tech.chickenandporn.com/category/uncategorized/feed/" rel="self" type="application/rss+xml" />
	<link>http://tech.chickenandporn.com</link>
	<description>The Tech Part of my World</description>
	<lastBuildDate>Sat, 04 Feb 2012 01:07:52 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Inaccuracy may Inhibit</title>
		<link>http://tech.chickenandporn.com/2012/01/09/inaccuracy-may-inhibit/</link>
		<comments>http://tech.chickenandporn.com/2012/01/09/inaccuracy-may-inhibit/#comments</comments>
		<pubDate>Mon, 09 Jan 2012 23:21:53 +0000</pubDate>
		<dc:creator>allanc</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tech.chickenandporn.com/?p=1699</guid>
		<description><![CDATA[Consider the effect of inaccuracy on Engineers when posing a task or asking a question.  It may reveal why you&#8217;re not getting what you expect. Engineers are sticklers for detail &#8212; indeed, they&#8217;re so often held feet-to-fire for the finer details their managers don&#8217;t know, cannot fully comprehend, or simply don&#8217;t care. Many&#8217;s the engineer [...]]]></description>
			<content:encoded><![CDATA[<p>Consider the effect of inaccuracy on Engineers when posing a task or asking a question.  It may reveal why you&#8217;re not getting what you expect.</p>
<p><span id="more-1699"></span></p>
<p>Engineers are sticklers for detail &#8212; indeed, they&#8217;re so often held feet-to-fire for the finer details their managers don&#8217;t know, cannot fully comprehend, or simply don&#8217;t care.</p>
<p>Many&#8217;s the engineer who is pressed for an estimate, gives one (with or without variance indicators), under- or over-estimates, and is taken to task for the bad prediction.  Similar to asking a detective &#8220;when will you solve this crime?&#8221;, some engineering work cannot be predicted, and if the engineer explains it as a &#8220;Poisson distribution&#8221;, his manager assumes &#8220;poisson&#8221; is profanity.</p>
<p>Some engineers no longer even try to estimate: it&#8217;s more efficient to be wrong, and punished, without wasting the effort.</p>
<p>Often, missing details, and discovery thereof, drive the inaccuracy.  I recall one at USL saying &#8220;less than two years&#8221;, then offering to improve the prediction within a few weeks when the manager relented and gave some details.  The manager thought he was helping by asking broad questions with few details to &#8220;get a ballpark figure&#8221; whereas the Engineer can see how the answer ranges from 2 hours to 2 years depending on environment alone.</p>
<p>&#8230;and then there&#8217;s the aspect of promises.  Engineers don&#8217;t promise anything but quality.  They don&#8217;t commit to a delivery, they offer their firm attempts to succeed, understanding that the delivery might be met of some features are later dropped.  They don&#8217;t answer questions unless the answer is a relatively good degree of accuracy &#8212; or unless pressed feet-to-fire for an answer that will come back and bite them later.</p>
<p>Lying, or inaccuracy approaching lying, is not done.  It WILL bite them later.</p>
<p>Being asked for answers to exceedingly vague questions will result in non-answers or answers with equally vague details.  Being asked to rough up or down significantly will be met with long decisions as to which way to go.  If an Engineer is billing, and the effort is below a certain minimum, I have known some to simply not bill for such insignificant work.</p>
<p>Quantizing is inaccuracy.   &#8230; an hour, a half-day, a full day, these are simply varying quanta.  Rounding up too far will yield to rounding down to zero.</p>
<p>Increasing inaccuracy increases the chance that either zeros will be quoted, or nothing responded at all: easier to not answer and be wrong than spend hours answering and still be inaccurate to the point of unprofessional.</p>
<p>&nbsp;</p>
<p>So what expectation is there that a timesheet in terms of half-days will ever be accurate, and not bite the Engineer later?  &#8221;did you really spend 1/2 day on the project you billed me for?&#8221;</p>
<p>Don&#8217;t impose inaccuracy on an engineer; accept the answers, record them, and if you want inaccurate or more vague results, round them yourself.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.chickenandporn.com/2012/01/09/inaccuracy-may-inhibit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why SOPA and PIPA are incapable of helping, while still dangerous</title>
		<link>http://tech.chickenandporn.com/2012/01/05/why-sopa-and-pipa-are-incapable-of-helping-while-still-dangerous/</link>
		<comments>http://tech.chickenandporn.com/2012/01/05/why-sopa-and-pipa-are-incapable-of-helping-while-still-dangerous/#comments</comments>
		<pubDate>Thu, 05 Jan 2012 20:34:31 +0000</pubDate>
		<dc:creator>allanc</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[opinion]]></category>

		<guid isPermaLink="false">http://tech.chickenandporn.com/?p=1683</guid>
		<description><![CDATA[SOPA and PIPA are two attempted bills in the US that seek to stop online piracy.  These two acts are incapable of actually stopping piracy, yet remain fully capable of an &#8220;internet death-penalty&#8221; against innocent sites. Consider arriving in a strange, new city during the era of prohibition.  In order to find stores, markets, and local [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.google.com/search?q=SOPA">SOPA</a> and <a href="http://www.google.com/search?q=PIPA">PIPA</a> are two attempted bills in the US that seek to stop online piracy.  These two acts are incapable of actually stopping piracy, yet remain fully capable of an &#8220;internet death-penalty&#8221; against innocent sites.</p>
<p>Consider arriving in a strange, new city during the era of prohibition.  In order to find stores, markets, and local associates, you pick up two telephone guides.  Remember the White Pages and Yellow Pages?  Consider those as your resources, except that your phonebooks update instantly.</p>
<p>You&#8217;re able to look up your friend Mike, who has invited you to dinner.  His address is in the white pages, telling you &#8220;Mike Smith: 123 Main St&#8221;, and you know how to get there.  Mike lives above a tailoring shop, and has a market nearby, which you&#8217;re able to find to buy some beef enroute to dinner.</p>
<p>What about a bottle of wine?  That would be nice, but it&#8217;s prohibition, everything with any alcohol is illegal.</p>
<p>On the way to Mike&#8217;s, beef in-hand (a couple of excellent steaks), you notice that the tailor shop below him is closed, yet many people keep entering and leaving.  That&#8217;s odd.  Mike is happy to see you when you get to his door, and he makes a great dinner; he suggests doing so again next week.</p>
<p>Next week, Pork&#8217;s on the menu, but you have to look up the market again.  You wrote down the name (Joey&#8217;s Eastside Butcher) and your whitepages tell you where it is.  Mike tells you on the phone to be careful, police have detected that the Tailor shop is a Speak-Easy, and is illegal.  As a lawful citizen, despite that you&#8217;d like a drink occasionally, you tend to stay away from that sort of place anyhow.</p>
<p>Off to the butcher&#8217;s, but wait&#8230; where&#8217;s Mike&#8217;s place?  The whitepages no longer list his building at all.  From your always-updated whitepages, Mike&#8217;s entire building is gone.  You ask a friend, they have one that doesn&#8217;t update as quickly, and it shows that last week, Mike&#8217;s address was 123 Main St.  yeah, that&#8217;s right.  Another friend has a version of whitepages from Germany, and although in a different language, it does show the local city, and it agrees: Mike&#8217;s address is still 123 Main St.  Good thing you wrote down Mike&#8217;s phone number itself rather than his name, or you&#8217;d lose all contact with Mike.  You should get yourself a German phonebook, or use one that doesn&#8217;t delete entries, just adds them.</p>
<p>Arriving at Mike&#8217;s building, you notice that the Speak-Easy is doing a brisk trade.  It hasn&#8217;t been shut down!  The police haven&#8217;t lifted a finger, just &#8220;hid&#8221; it by removing Mike&#8217;s building from the whitepages.  Everyone who goes there often knows exactly where it is; if they haven&#8217;t, they&#8217;ve written down the phone number already, or have it on speed-dial.</p>
<p>This is how these new bills work: they don&#8217;t stop crime, they simply allow it to become unlisted quickly, without any recourse, any due-process.  They just make it harder to find, quickly.  The internet whitepages is called &#8220;DNS&#8221;, and is controlled by many different countries.  DNS updates take up to 72 hours to occur, and even after that time, the services are still open.  Anyone using these services knows where to find them without having to look them up, but if they need to, they can use alternative listings to find the same address.  The piracy isn&#8217;t even affected, it continues unabated, but common people are affected: new arrivals at a website or an interest group, and those who have to find their websites when they move (which happens about as frequently as people change homes)</p>
<p>Worse, with some allusion to Brazil, and perhaps to some implementations of photo-radar speed-traps, there&#8217;s no double-checking of errors, no due-process.  Due to an error, not only is a building, and all it&#8217;s businesses gone, while they are barely making it through the recession.  I&#8217;m sure the people who think this is a good idea are not the small businesses and private citizens who can vanish immediately due to error.  &#8230; and we know the Department of Homeland Security makes no mistakes.</p>
<p>Would you give the &#8220;Internet Kill Switch&#8221; to the TSA?</p>
<p>Criminals will simply go to other countries&#8217; DNS, or just use the numbers, leaving only the lawful to be the victims of bad legislation and the zealots who support it.</p>
<p>Crime should be stopped by actually stopping crime, not by making it and its innocent neighbours into unlisted addresses.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.chickenandporn.com/2012/01/05/why-sopa-and-pipa-are-incapable-of-helping-while-still-dangerous/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iPhone 4s and iPhone4 Physical Case Differences</title>
		<link>http://tech.chickenandporn.com/2011/12/27/iphone-4s-and-iphone4-physical-case-differences/</link>
		<comments>http://tech.chickenandporn.com/2011/12/27/iphone-4s-and-iphone4-physical-case-differences/#comments</comments>
		<pubDate>Tue, 27 Dec 2011 22:46:45 +0000</pubDate>
		<dc:creator>allanc</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://tech.chickenandporn.com/?p=1670</guid>
		<description><![CDATA[After some false-starts on iPhone cases (burned off my previous one, and i kinda don&#8217;t miss it), I wanted to post a quick note pointing others to a detailed description of some key differences. iCollectGadgets shows a few great photos, but the key is in the following two (with permission, I&#8217;m willing to host a [...]]]></description>
			<content:encoded><![CDATA[<p>After some false-starts on iPhone cases (burned off my previous one, and i kinda don&#8217;t miss it), I wanted to post a quick note pointing others to a detailed description of some key differences.</p>
<p><a href="https://icollectgadget.wordpress.com/2011/10/09/how-to-choose-cases-for-iphone-4s-and-iphone-4/">iCollectGadgets</a> shows a few great photos, but the key is in the following two (with permission, I&#8217;m willing to host a copy of these on my site to reduce any bandwidth-stealing):</p>
<p>Button Alignment:<br />
<img src="http://icollectgadget.files.wordpress.com/2011/10/av1withline.jpg"></p>
<p>Earbud 3.5mm Socket:<br />
<img src="http://icollectgadget.files.wordpress.com/2011/10/av21.jpg"></p>
<p>I would strongly recommend checking out the <a href="https://icollectgadget.wordpress.com/2011/10/09/how-to-choose-cases-for-iphone-4s-and-iphone-4/">original</a> site: <a href="https://icollectgadget.wordpress.com/2011/10/09/how-to-choose-cases-for-iphone-4s-and-iphone-4/">https://icollectgadget.wordpress.com/2011/10/09/how-to-choose-cases-for-iphone-4s-and-iphone-4/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.chickenandporn.com/2011/12/27/iphone-4s-and-iphone4-physical-case-differences/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Battery Life: non-optimal</title>
		<link>http://tech.chickenandporn.com/2011/12/20/battery-life-non-optimal/</link>
		<comments>http://tech.chickenandporn.com/2011/12/20/battery-life-non-optimal/#comments</comments>
		<pubDate>Tue, 20 Dec 2011 16:51:09 +0000</pubDate>
		<dc:creator>allanc</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tech.chickenandporn.com/?p=1092</guid>
		<description><![CDATA[Teo phones taken from chargers this morning at 8:00: the latest HTC Android, and an iPhone 4, not a 4S. The iOS device has all manner of 3G, wifi, location services activated, the HTC perhaps the same. IPhone is 80% battery, HTC is 57%. Sure, optimal conditions rate the content the other way, but we [...]]]></description>
			<content:encoded><![CDATA[<p>Teo phones taken from chargers this morning at 8:00: the latest HTC Android, and an iPhone 4, not a 4S. The iOS device has all manner of 3G, wifi, location services activated, the HTC perhaps the same.</p>
<p>IPhone is 80% battery, HTC is 57%. Sure, optimal conditions rate the content the other way, but we all know our wifi access points will hit 300 feet / 100meters range in an optimal situation: real life differs, and for my usage, HTC with MAYBE the same services active is burning battery twice as quickly.</p>
<p>Not sure Android is winning yet.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.chickenandporn.com/2011/12/20/battery-life-non-optimal/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ConfirmEdit Nailed my WikiMedia</title>
		<link>http://tech.chickenandporn.com/2011/12/14/confirmedit-nailed-my-wikimedia/</link>
		<comments>http://tech.chickenandporn.com/2011/12/14/confirmedit-nailed-my-wikimedia/#comments</comments>
		<pubDate>Thu, 15 Dec 2011 04:48:47 +0000</pubDate>
		<dc:creator>allanc</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tech.chickenandporn.com/?p=1663</guid>
		<description><![CDATA[So I suddenly saw this: Fatal error: Call to undefined method WebRequest::getIP() in extensions/ConfirmEdit/Captcha.php on line 202 Apparently, this is due to rev 106097, which replaced wfGetIP() with a wgRequest-&#62;getIP() that doesn&#8217;t exist. Maybe it&#8217;s in Yesterday&#8217;s version of WikiMedia only. My fix: cd extensions/ConfirmEdit svn update -r 106096 I&#8217;m putting this blog entry so [...]]]></description>
			<content:encoded><![CDATA[<p>So I suddenly saw this:</p>
<p><code>Fatal error: Call to undefined method WebRequest::getIP() in extensions/ConfirmEdit/Captcha.php on line 202</code></p>
<p>Apparently, this is due to <a href="http://www.gossamer-threads.com/lists/wiki/mediawiki-cvs/263296">rev 106097</a>, which replaced <code>wfGetIP()</code> with a <code>wgRequest-&gt;getIP()</code> that doesn&#8217;t exist.  Maybe it&#8217;s in Yesterday&#8217;s version of WikiMedia only.  <img src='http://tech.chickenandporn.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
<p>My fix:<br />
<code>cd extensions/ConfirmEdit</code><br />
<code>svn update -r 106096</code></p>
<p>I&#8217;m putting this blog entry so that others may see it and make use of it.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.chickenandporn.com/2011/12/14/confirmedit-nailed-my-wikimedia/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>NTP Diagnostic</title>
		<link>http://tech.chickenandporn.com/2011/11/01/ntp-diagnostic/</link>
		<comments>http://tech.chickenandporn.com/2011/11/01/ntp-diagnostic/#comments</comments>
		<pubDate>Tue, 01 Nov 2011 20:40:32 +0000</pubDate>
		<dc:creator>allanc</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tech.chickenandporn.com/?p=1040</guid>
		<description><![CDATA[I&#8217;ve been working quite a bit recently with NTP, so I wanted to record some notes. I&#8217;ve found that when the NTP server is fewer than 4x reached, then it will not choose a source. When it chooses a source, a local source might cause it to flag itself as &#8220;unreliable&#8221; (leap flag with a [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been working quite a bit recently with NTP, so I wanted to record some notes.</p>
<p>I&#8217;ve found that when the NTP server is fewer than 4x reached, then it will not choose a source.  When it chooses a source, a local source might cause it to flag itself as &#8220;unreliable&#8221; (leap flag with a bad result).  That or a poor stratum (less than client&#8217;s fudged 127.127.1.0) is causing a client to ignore a source.</p>
<p>In our case, we saw an SNTP reject on <a href="https://support.ntp.org/bugs/show_bug.cgi?id=585">status == 3</a> (see sntp/main.c::read_packet : &#8220;if (failed || data-&gt;status == 3&#8243;); this &#8220;status&#8221; is actually the <a href="http://www.meinberg.de/english/info/ntp-packet.htm">Leap Indicator</a> being 0%11 ( == 3), which was re-instated in <a href="http://www.rfc-editor.org/rfc/rfc2030.txt">RFC-2030</a> (superseding RFC-958) as an alarm condition (when the last second plus the next second are leap-seconds).</p>
<p>The client is flagging 0&#215;2001 and 0&#215;6001 quite frequently; this is clearly <a href="http://www.ntp.org/ntpfaq/NTP-s-algo-kernel.htm">PLL/FLL</a> changeovers, implying that it often sees a &#8220;weak&#8221; source, perhaps one that jitters too often, and swaps <a href="http://www.google.com/codesearch?q=STA_MODE">mode</a>.</p>
<p>I&#8217;ll add to this over time if I see additional factors.  As always &#8212; ALWAYS &#8212; &#8220;ntpq -c opeers&#8221; (in whatever form is permitted by your OS) is the best first-step, although &#8220;readvar&#8221; is also a good first step.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.chickenandporn.com/2011/11/01/ntp-diagnostic/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DateFormats and Smart People</title>
		<link>http://tech.chickenandporn.com/2011/06/21/dateformats-and-smart-people/</link>
		<comments>http://tech.chickenandporn.com/2011/06/21/dateformats-and-smart-people/#comments</comments>
		<pubDate>Tue, 21 Jun 2011 05:20:38 +0000</pubDate>
		<dc:creator>allanc</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tech.chickenandporn.com/?p=1025</guid>
		<description><![CDATA[For ~19 years, I&#8217;ve pushed international date formats; date formatting is a strange detail that seems to be so significant to me. Someone (&#8220;lion&#8221;) whose industry knowledge I strongly respect, and who has an attitude of &#8220;what will XXX do for me today?&#8221; (ie not flippantly changing direction on things without clear benefit) admitted to [...]]]></description>
			<content:encoded><![CDATA[<p>For ~19 years, I&#8217;ve pushed international date formats; date formatting is a strange detail that seems to be so significant to me.</p>
<p>Someone (&#8220;lion&#8221;) whose industry knowledge I strongly respect, and who has an attitude of &#8220;what will XXX do for me today?&#8221; (ie not flippantly changing direction on things without clear benefit) admitted to switching to international date format.</p>
<p>Why is that so cool to me?</p>
<ul>
<li>it validates my position, but may not yet validate the stubbornness with which I&#8217;ve pursued this</li>
<li>confirms the benefits are not merely in my biased opinion</li>
<li>it&#8217;s easier for me personally <img src='http://tech.chickenandporn.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />    (it&#8217;s all about me)</li>
</ul>
<p>In this case the benefits of <a href="http://en.wikipedia.org/wiki/ISO_8601">ISO-8601</a> format (the basis for <a href="http://www.w3.org/TR/NOTE-datetime">W3C</a>, <a href="http://tools.ietf.org/html/rfc3339">RFC-3339</a>, used by tools such as <a href="http://www.w3.org/TR/xmlschema-2/#isoformats">XML</a> recommended datatypes) of yyyy-mm-dd being unambiguously understood in other countries, and sorting where least expected (filenames of presentations and revisions of tech pubs) due to its friendliness with sort algorithms no more complex than strcmp(), these benefits have made it easier to find the earliest/latest/newest versions of documents where dozens of similar content may exist.</p>
<p>I still argue that:</p>
<ol>
<li>Locale is not Language: Just because I&#8217;m in China, I may not speak Chinese (and which China?  Which Chinese?)</li>
<li>Locale is not format: in Canada, we use date formats dd/mm/yy, dd-mmm-yy, and yymmdd &#8212; so which one?</li>
<li>Language is not format: en_CA is similar to en_US, but 2/3/4 is a different date than you think</li>
<li>There are more cities than Timezones: if you&#8217;re choosing a timezone, choose a timezone, not a city, unless it helps to suggest the actual timezone</li>
<li>Don&#8217;t accidentally get into politcs: Wales and London are not so United of Kingdom; if you don&#8217;t offer &#8220;Cardiff&#8221; and &#8220;Bristol&#8221; as cities, then allow the user to choose their timezone without claiming to be British (or is that &#8220;English&#8221;?).  If you don&#8217;t understand that, spend a week in Wales.</li>
</ol>
<p>RFC822 and RFC-2822 force foreign countries to know English day-names and Month names (not hard, but entrypoint for error) and require non-trivial parsers, but some developers just don&#8217;t seem to consider that there might be an easier way.</p>
<p>Tools that follow java.util.Date or PHP date formats or make assumptions based on /etc/tz values, they&#8217;ll continue to limit their users&#8217; choices, further limiting their users&#8217; end-users&#8217; choices.  Think about what constraints you&#8217;re doing.  &#8220;Rome wasn&#8217;t built in a day&#8221;, &#8220;you can&#8217;t turn a supertanker&#8221;, &#8220;can&#8217;t change China&#8221; &#8211; you don&#8217;t have to try to change the world, just don&#8217;t participate in the constraint.</p>
<p>Hey, it&#8217;s nice to be right on occasion.   Unfortunately, I still need to choose Japan or China as locales in order to get usable dates.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.chickenandporn.com/2011/06/21/dateformats-and-smart-people/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SNMP: Brocade: How to read Link Reset by SNMP</title>
		<link>http://tech.chickenandporn.com/2011/06/07/snmp-brocade-how-to-read-link-reset-by-snmp/</link>
		<comments>http://tech.chickenandporn.com/2011/06/07/snmp-brocade-how-to-read-link-reset-by-snmp/#comments</comments>
		<pubDate>Tue, 07 Jun 2011 17:49:00 +0000</pubDate>
		<dc:creator>allanc</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tech.chickenandporn.com/?p=1010</guid>
		<description><![CDATA[My company&#8217;s flagship product collects in-depth content via SNMP. Outside of random port resets and some bit-shifting, switches usually give us their information accurately matching the port metrics they show in a portstatshow. snmpget -v1 -c {community} {switch IP} 1.3.6.1.3.94.4.5.1.33.{portIndex &#8211; 1} for example: port 91, switch 192.168.1.1, community BatM4n: snmpget -v1 -c BatM4n 192.168.1.1 [...]]]></description>
			<content:encoded><![CDATA[<p>My company&#8217;s flagship product collects in-depth content via SNMP.  Outside of random port resets and some bit-shifting, switches usually give us their information accurately matching the port metrics they show in a portstatshow.</p>
<p>      snmpget -v1 -c {community}  {switch IP} 1.3.6.1.3.94.4.5.1.33.{portIndex &#8211; 1}</p>
<p>for example: port 91, switch 192.168.1.1, community BatM4n:</p>
<p>      snmpget -v1 -c BatM4n  192.168.1.1  1.3.6.1.3.94.4.5.1.33.90</p>
<p>Successive checks of this value can show the deltas that VW is reporting.</p>
<p>I&#8217;m using the following:</p>
<ul>
<li><a href="http://community.brocade.com/docs/DOC-1733">http://community.brocade.com/docs/DOC-1733</a> for MIB download</li>
<li>FE_RFC2837.mib defined a mismatch as fcFeMIB.fcFeMIBObjects.fcFeError.fcFxPortErrorTable.fcFxPortErrorEntry.fcFxPortLinkResetIns</li>
<li>FA.mib defines the corrected value as FA.experimental.fcmgmt.statSet.connUnitPortStatTable.connUnitPortStatEntry.RxLinkReset.{port}</li>
<li>~.TxLinkReset.{port} is available as 1.3.6.1.3.94.4.5.1.34.{portIndex &#8211; 1}</li>
<li><a href="http://www.filibeto.org/sun/lib/nonsun/brocade/manuals/6.2.0/53_1001156_01_MIB_v620.pdf">http://www.filibeto.org/sun/lib/nonsun/brocade/manuals/6.2.0/53_1001156_01_MIB_v620.pdf</a></li>
</ul>
<p>Meanwhile, <a href="http://www.oidview.com/mibs/9/CISCO-FC-FE-MIB.html">OIDView</a> is a great tool if you&#8217;re not used to using &#8220;vi&#8221; as your MIB browser.  In this case, it would have helped me find the values (rather then &#8220;/&#8221; to search), but I&#8217;d still need to choose the correct MIB to start with.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.chickenandporn.com/2011/06/07/snmp-brocade-how-to-read-link-reset-by-snmp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Skype Wake-On-LAN Control Proxy</title>
		<link>http://tech.chickenandporn.com/2011/06/06/skype-wake-on-lan-control-proxy/</link>
		<comments>http://tech.chickenandporn.com/2011/06/06/skype-wake-on-lan-control-proxy/#comments</comments>
		<pubDate>Mon, 06 Jun 2011 18:26:33 +0000</pubDate>
		<dc:creator>allanc</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tech.chickenandporn.com/?p=1000</guid>
		<description><![CDATA[It would be great to command a Skype status message from my meetings. I get meetings through the day; sometimes, I&#8217;m the guy presenting a gotomeeting (which is a great tool), during which times I have to hide the constant stream from the Skype window. The bad part of that is that I cannot see [...]]]></description>
			<content:encoded><![CDATA[<p>It would be great to command a Skype status message from my meetings.</p>
<p>I get meetings through the day; sometimes, I&#8217;m the guy presenting a gotomeeting (which is a great tool), during which times I have to hide the constant stream from the Skype window.  The bad part of that is that I cannot see chatter from coworkers&#8230; well, that&#8217;s not the bad part.  The bad part is that when they send me messages, they assume I see them.</p>
<p>How can I remind them that I cannot see the messages?  (should I care?)</p>
<p>One idea is to link the showing of my screen to a status that says &#8220;I&#8217;m ignoring Skype right now&#8221;; for which I looked at <a href="http://developer.skype.com/resources/public_api_ref.zip">the Skype API</a>.  There&#8217;s scant detail, and the easiest (lightest way) seems to be an Applescript remote-executor.  An rexec() proxy?</p>
<ol>
<li>wakes-on-LAN using a UDP to a known port, from which the service starts, and timesout 5 minutes after idle?  (this was a standard feature of inetd-run UDP ONC/RPC)</li>
<li>reads UDP-based command with PKI to confirm permissions (ie &#8220;here, take this cookie&#8221;)</li>
<li>sends the request to Skype (whitelist of accepted commands?) and sends the response back.  The response might be too big for UDP out-of-order delivery</li>
</ol>
<p>The net effect is a few days&#8217; work (OK, a few hours, but try to get that in a single calendar day) I could tell my coworkers that I really am ignoring them.  &#8230;or I can let them figure it out, because I work with really smart people (they tend to be smart about non-details, no sarcasm here, they really are very smart)</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.chickenandporn.com/2011/06/06/skype-wake-on-lan-control-proxy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Timeout added to CoreUtils, I Don&#8217;t Need to Maintain it :)</title>
		<link>http://tech.chickenandporn.com/2011/02/09/timeout-added-to-coreutils-i-dont-need-to-maintain-it/</link>
		<comments>http://tech.chickenandporn.com/2011/02/09/timeout-added-to-coreutils-i-dont-need-to-maintain-it/#comments</comments>
		<pubDate>Wed, 09 Feb 2011 23:25:01 +0000</pubDate>
		<dc:creator>allanc</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tech.chickenandporn.com/?p=954</guid>
		<description><![CDATA[I just found that a tool I use often has been added to CoreUtils so now I don&#8217;t need to carry my version around. For years, I&#8217;ve used a version of a program called variously &#8220;limitedrun&#8221; or &#8220;timeout&#8221; in order to run servers so I can self-test against them. An example is my work on [...]]]></description>
			<content:encoded><![CDATA[<p>I just found that a tool I use often has been added to CoreUtils so now I don&#8217;t need to carry my version around.</p>
<p>For years, I&#8217;ve used a version of a program called variously &#8220;limitedrun&#8221; or &#8220;timeout&#8221; in order to run servers so I can self-test against them.  An example is my work on Apache (minimal) and <a href="http://tech.chickenandporn.com/tag/Nagios/">Nagios</a> (lots, especially testing <a href="http://wiki.nagios.org/index.php/LDAP-Configured_Nagios">Nagios-LDAP</a>).  If the autotest failed, which meant that the script would immediately stop, the service would not be stopped by the cleanup commands, so the shell would not complete, and the self-test would appear to hang.</p>
<p>Instead, I used a limited-run facility to add the logic &#8220;well, if you ran for 30 seconds without being shutdown, the test must have failed, so &#8230; BLAM snuff it!&#8221;&#8230; which would allow the self-test to completed and report the failure.  A passing self-test would gracefully shutdown the services used.</p>
<p>I think on my work on <a href="http://www.nagios.org/">Nagios</a>, it&#8217;s even called &#8220;timeout&#8221;.</p>
<p>At <a href="http://bashcurescancer.com/timeout-new-coreutils-command.html">v7.0-beta</a>, CoreUtils gained <a href="http://www.gnu.org/software/coreutils/manual/html_node/timeout-invocation.html">timeout</a>, which I haven&#8217;t checked for compatibility in featureset (not hard, few features in mine) but now I can use that rather than keep packing mine around (the issue is when I added to it: I had to go and update every project that had a copy, or I needed my custom RPM on every testbox).</p>
<p>Less work for me!  More standardized!  Colour me happy <img src='http://tech.chickenandporn.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://tech.chickenandporn.com/2011/02/09/timeout-added-to-coreutils-i-dont-need-to-maintain-it/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Spoofing Licensing</title>
		<link>http://tech.chickenandporn.com/2011/01/28/spoofing-licensing/</link>
		<comments>http://tech.chickenandporn.com/2011/01/28/spoofing-licensing/#comments</comments>
		<pubDate>Fri, 28 Jan 2011 19:37:11 +0000</pubDate>
		<dc:creator>allanc</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tech.chickenandporn.com/?p=949</guid>
		<description><![CDATA[Clearly, if a tool relies on fork()/exec() or System.Exec() an OS tool to determine data that affects licensing/control, spoofing that application to return predictable data is the easiest way to mislead the licensing subsystem. This is the same as shimming a DLL or Shared-Object library. My grasp of the obvious is so exceptional &#8212; and [...]]]></description>
			<content:encoded><![CDATA[<p>Clearly, if a tool relies on fork()/exec() or System.Exec() an OS tool to determine data that affects licensing/control, spoofing that application to return predictable data is the easiest way to mislead the licensing subsystem.</p>
<p>This is the same as shimming a DLL or Shared-Object library.</p>
<p>My grasp of the obvious is so exceptional &#8212; and this method so easy &#8212; that I felt this was worth mentioning.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.chickenandporn.com/2011/01/28/spoofing-licensing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Exchange: Save Sent Mail in a Different Mailbox: imapsync</title>
		<link>http://tech.chickenandporn.com/2011/01/25/exchange-save-sent-mail-in-a-different-mailbox-imapsync/</link>
		<comments>http://tech.chickenandporn.com/2011/01/25/exchange-save-sent-mail-in-a-different-mailbox-imapsync/#comments</comments>
		<pubDate>Tue, 25 Jan 2011 07:14:29 +0000</pubDate>
		<dc:creator>allanc</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tech.chickenandporn.com/?p=942</guid>
		<description><![CDATA[My company uses Exchange &#8212; and it&#8217;s not bad, considering that it brings in the SyncML (I think) technology that Gmail also has &#8212; if only it had the rest of what Gmail has, but I can understand if we&#8217;re not moving to avoid thrashing about. The problem is that when I send mail, I [...]]]></description>
			<content:encoded><![CDATA[<p>My company uses Exchange &#8212; and it&#8217;s not bad, considering that it brings in the SyncML (I think) technology that Gmail also has &#8212; if only it had the rest of what Gmail has, but I can understand if we&#8217;re not moving to avoid thrashing about.</p>
<p>The problem is that when I send mail, I wand to receive a copy, I don&#8217;t want a bcc:, but Entourage (the only Exchange client for a laptop that doesn&#8217;t die) only allows saving a copy in the &#8220;Sent Items&#8221; folder.  I know, it&#8217;s simple enough to copy stuff around, but hey, I can get a cronjob to do that&#8230;</p>
<ol>
<li>create a file (with restrictive permissions) containing only the password:<br />
&#8212; /home/scott/imapsync-pw-exchange &#8212;<br />
<code>tiger</code><br />
&#8212;</p>
<p>In my example, user &#8220;scott&#8221; has password &#8220;tiger&#8221;.  Bonus points if know where that user/pass comes from <img src='http://tech.chickenandporn.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />
</li>
<li>drop a cron.hourly consisting of:<br />
&#8212; /etc/cron.hourly/scott-exchange-sync &#8212;</p>
<pre><code>imapsync \
  --host1 exchange.example.com  --port1 993 --authmech1 PLAIN \
  --host2 exchange.example.com  --port2 993 --authmech2 PLAIN \
  --user1 scott --ssl1 --passfile1 /home/scott/imapsync-pw-exchange \
  --user2 scott --ssl2 --passfile2 /home/scott/imapsync-pw-exchange \
  --folder 'Sent Items' --regextrans2 's/Sent Items/INBOX/g' </code></pre>
<p>&#8212;</p>
<p>(or, better, <code>crontab -e</code> yourself a cron job that fires on 5-minute accuracy)</li>
<li>profit!!!1!one!! &#8230; oh wait&#8230; uh&#8230; sit and relax.</li>
</ol>
<p>The trick here is that we&#8217;re using <a href="http://www.linux-france.org/prj/imapsync/">imapsync</a> to connect to our own server twice, as two clients, to sync the &#8220;Sent Items&#8221; folder.  Yes, those two sections of parameters are exactly the same (except for s/1/2/ &#8212; and use the same password file) on purpose.  The &#8220;regextrans2&#8243; tells it that we want to &#8220;translate&#8221; one folder to another (that may exist).  Note that we&#8217;re deleting and expunging the moved files to avoid dupes.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.chickenandporn.com/2011/01/25/exchange-save-sent-mail-in-a-different-mailbox-imapsync/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Microsoft Cannot Understand Its Own Updater?</title>
		<link>http://tech.chickenandporn.com/2011/01/07/microsoft-cannot-understand-its-own-updater/</link>
		<comments>http://tech.chickenandporn.com/2011/01/07/microsoft-cannot-understand-its-own-updater/#comments</comments>
		<pubDate>Fri, 07 Jan 2011 18:10:49 +0000</pubDate>
		<dc:creator>allanc</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tech.chickenandporn.com/?p=933</guid>
		<description><![CDATA[Why can&#8217;t Microsoft&#8217;s updater realize that it&#8217;s the app it wants me to shut down? Besides locking the MDS and slowing down a Mac, is there any real engineering put into this product by Microsoft? Oh, and why is Microsoft affecting Safari? That seems fishy&#8230;]]></description>
			<content:encoded><![CDATA[<p><a href="http://tech.chickenandporn.com/files/2011/01/Screen-shot-2011-01-07-at-10.05.34.png"><img src="http://tech.chickenandporn.com/files/2011/01/Screen-shot-2011-01-07-at-10.05.34.png" alt="" title="Microsoft Updater Cannot Figure Itself Out" width="554" height="291" class="alignnone size-full wp-image-934" /></a></p>
<p>Why can&#8217;t Microsoft&#8217;s updater realize that it&#8217;s the app it wants me to shut down?</p>
<p>Besides locking the MDS and slowing down a Mac, is there any real engineering put into this product by Microsoft?</p>
<p>Oh, and why is Microsoft affecting Safari?  That seems fishy&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.chickenandporn.com/2011/01/07/microsoft-cannot-understand-its-own-updater/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bufferpools and RAM Commit/Deliver</title>
		<link>http://tech.chickenandporn.com/2010/12/15/bufferpools-and-ram-commitdeliver/</link>
		<comments>http://tech.chickenandporn.com/2010/12/15/bufferpools-and-ram-commitdeliver/#comments</comments>
		<pubDate>Wed, 15 Dec 2010 22:09:52 +0000</pubDate>
		<dc:creator>allanc</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tech.chickenandporn.com/?p=876</guid>
		<description><![CDATA[Bufferpool config is an often overlooked issue due to the rarity in which it nails you, but it can be important in those rare cases. a Bufferpool is simply a resource limitation on a collection of RAM &#8212; typically this is a buffer, ie in-RAM space, it cannot be swapped-out because it represents in-flight transactions, [...]]]></description>
			<content:encoded><![CDATA[<p>Bufferpool config is an often overlooked issue due to the rarity in which it nails you, but it can be important in those rare cases.</p>
<p>a Bufferpool is simply a resource limitation on a collection of RAM &#8212; typically this is a buffer, ie in-RAM space, it cannot be swapped-out because it represents in-flight transactions, uncommitted pages, or pre-fetched content that will be needed very soon.</p>
<p>a Commit is the RAM that is offered to a process &#8212; in glibc, this can default to 2G.  This doesn&#8217;t say that every process automatically consumes 2G of RAM, but that the Kernel offers up to 2G to the process.  Recall that due to sparse garbage in RAM pages, RAM offered to a process is NEVER reaped by the system back to the common pool.</p>
<p>A Commit can be dangerous when the OS over-commits RAM in a long-lived environment: if up to 100G is offered on a system with only 32G, you can see how if many threads grow their demand for RAM, the system will swap out some processes to meet demand.  This is a typical action in a multiuser system with swap active (NOTE: Motorola tuned their commits on smartphones because on diskless systems, there&#8217;s obviously no swap)</p>
<p>In a long-lived database process, if the bufferpool is a commit, then it will soon grow to maximum commit.  It can never be swapped out unless the database has bursty use-cases and has no active sessions for long periods.  The bufferpools configured may be in addition to the heap space taken up by the process itself (in un-pooled resource space).  The database itself may limit bufferpools, but consume a number of GB over the configured bufferpool space.</p>
<p>The other applications on the system also can demand up to their committed RAM &#8212; why limit one process while letting the others run amok on your server?</p>
<p>On long-lived systems, committed RAM becomes allocated and consumed RAM.  Bufferpools need to be configured, and RAM usage monitored (or at least traps/exceptions raised when a critical DB starts swapping, an indication that review is critically needed)</p>
<p>Bufferpools and Commit/Demand discrepancies are silent but deadly killers, like the sharks and heart-disease of the resource-management domain.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.chickenandporn.com/2010/12/15/bufferpools-and-ram-commitdeliver/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Twice is a Bug</title>
		<link>http://tech.chickenandporn.com/2010/11/21/twice-is-a-bug/</link>
		<comments>http://tech.chickenandporn.com/2010/11/21/twice-is-a-bug/#comments</comments>
		<pubDate>Sun, 21 Nov 2010 00:23:38 +0000</pubDate>
		<dc:creator>allanc</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tech.chickenandporn.com/?p=866</guid>
		<description><![CDATA[If a problem happens once, it&#8217;s (un)lucky: things just happen, some things are very rare, and fixing them is not economically viable. If it happens twice, it&#8217;s a bug, be it hardware, software, or meatware (users / processes). Dishonourable mention for the bugs that rarely happen, but require a 5-alarm firedrill to diagnose, and makes [...]]]></description>
			<content:encoded><![CDATA[<p>If a problem happens once, it&#8217;s (un)lucky: things just happen, some things are very rare, and fixing them is not economically viable.</p>
<p>If it happens twice, it&#8217;s a bug, be it hardware, software, or meatware (users / processes).</p>
<p>Dishonourable mention for the bugs that rarely happen, but require a 5-alarm firedrill to diagnose, and makes a company look really, really bad <img src='http://tech.chickenandporn.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
<p>If you consider it, even the Software Architect who never talks to customers until their environment is very stable, he&#8217;d have to agree: if something happens twice, even if I&#8217;m a genius and it never happens to me, it must be more possible than alignment of the planets, so should be considered.  If users keep doing the same problem, maybe they have other habits than what I have, and maybe should be considered worthy of helping rather than ignoring.</p>
<p>If the glorified calculators on our desks are more capable of checking for that error, then why aren&#8217;t they?  (That&#8217;s a key tenet behind the Smallfoot project: use the software to do what software&#8217;s good at).</p>
<p>I just saw a bug in a release of our product, I think it&#8217;s handled in some of the work on the later major revision, but I&#8217;m not sure.  I don&#8217;t want to file until I know, as that wastes developer resources to tell me I&#8217;m an idiot (I&#8217;ve been an idiot many times, but developer resources are quite valuable in my books).  I don&#8217;t want to forget to check, but damn, there&#8217;s a lot of stuff that happens in my workday, and my memory is fairly sketchy (poor-quality meatware).</p>
<p>Maybe it&#8217;ll happen a third time.  Thrice is definitely a bug.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.chickenandporn.com/2010/11/21/twice-is-a-bug/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>NetFlix Outside USA: AppleTV VPN</title>
		<link>http://tech.chickenandporn.com/2010/11/17/netflix-outside-usa-appletv-vpn/</link>
		<comments>http://tech.chickenandporn.com/2010/11/17/netflix-outside-usa-appletv-vpn/#comments</comments>
		<pubDate>Wed, 17 Nov 2010 19:27:22 +0000</pubDate>
		<dc:creator>allanc</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tech.chickenandporn.com/?p=719</guid>
		<description><![CDATA[Put a VPN on your AppleTV to make it connect from an apparently-USA IP address to get full access to your Netflix subscription. This is what I said as a solution to the problem of traveling in other countries, taking your new AppleTV with you (let&#8217;s not ask why you&#8217;d pack that over, say, a [...]]]></description>
			<content:encoded><![CDATA[<p>Put a VPN on your AppleTV to make it connect from an apparently-USA IP address to get full access to your Netflix subscription.</p>
<p>This is what I said as a solution to the problem of traveling in other countries, taking your new AppleTV with you (let&#8217;s not ask why you&#8217;d pack that over, say, a helmet, or a SCUBA reg), and accessing the full line of USA Netflix content.  This is all with the intention of getting access to the USA content on Netflix (with a proper, USA paid subscription) while traveling.</p>
<p>So I said &#8220;put a VPN on your AppleTV, and connect through there to stream content&#8221;.  This also requires that the system you&#8217;re streaming through has sufficient bandwidth to both send and receive a copy of the streamed packets.  I would not recommend streaming from a residential gateway on the end of a cablemodem, for example, because of the asymmetric inbalance in upstream/downstream data rates and latencies.</p>
<p>So we&#8217;re mostly following the <a href="http://firecore.zendesk.com/entries/313334-pre-install-requirements">FireCore Newbie Procedure</a>:</p>
<ol>
<li>Download the <a href="http://dl.firecore.com/atvb/PwnageTool_4.1.2.dmg">latest Pwnage</a> (v4.1.2)</li>
<li>Download a compatible <a href="http://appldnld.apple.com/AppleTV/061-8940.20100926.Tvtnz/AppleTV2,1_4.1_8M89_Restore.ipsw">AppleTV version 2 image</a> (v4.1 4M89)</li>
<li>Create a jailbroken image, which should offer ssh access</li>
<li>Use ssh to configure the stripped-down OSX on the AppleTV to connect VPN</li>
</ol>
<p>This is very much like streaming the UK BBC Player to watch soccer outside the UK &#8212; because when you travel, you want/need/must have access to your soccer.  Yes, I&#8217;m talking about you, Cannoli.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.chickenandporn.com/2010/11/17/netflix-outside-usa-appletv-vpn/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What&#8217;s On Your Mac?</title>
		<link>http://tech.chickenandporn.com/2010/10/31/whats-on-your-mac/</link>
		<comments>http://tech.chickenandporn.com/2010/10/31/whats-on-your-mac/#comments</comments>
		<pubDate>Sun, 31 Oct 2010 21:29:28 +0000</pubDate>
		<dc:creator>allanc</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tech.chickenandporn.com/?p=756</guid>
		<description><![CDATA[I just did a RAM upgrade on a Macbook Pro i5; it was trivial: 10 small screws, the back plate came off, and everything replaceable is immediately accessible. Now I need to install tools on this new box; what&#8217;s on your Mac? (cost) Entourage, MS/Word, MS/Excel: not by choice, and it slows down the Mac [...]]]></description>
			<content:encoded><![CDATA[<p>I just did a RAM upgrade on a Macbook Pro i5; it was trivial: 10 small screws, the back plate came off, and everything replaceable is immediately accessible.</p>
<p>Now I need to install tools on this new box; what&#8217;s on your Mac?</p>
<ul>
<li>(cost) Entourage, MS/Word, MS/Excel: not by choice, and it slows down the Mac whenever they&#8217;re running</li>
<li>(free) MailDrop to work with SFDC from Mail.App and Entourage</li>
<li>(free) Skype with a workplace account</li>
<li>(free) Click-to-Flash &#8211; to avoid wasting cycles on unnecessary flash-based webcrap</li>
<li>(free) Adium (to IM non-work accounts &#8212; might not need it)</li>
<li>(free) CoRD &#8211; for RDC so long as I choose a US language/keyboard</li>
<li>(free) GoToMeeting</li>
<li>(free) sfCubed &#8211; SFDC Sync &#8212; might not need</li>
<li>(free with&#8230;) xCode</li>
<li>(free with&#8230;) TomTom Home &#8211; maintain my PND</li>
<li>(free) Visual Hub &#8211; might not need on this box</li>
<li>(free) VLC</li>
<li>(cost) VMWare Fusion (VirtualBox instead?)</li>
<li>(free with&#8230;) VZAccess Manager</li>
<li>(free) iPhone Configuration Utility &#8211; to share configs to other users rather than config on their phones</li>
</ul>
<p>As you can see, everything but the Microsoft stuff and the VMWare is free or comes with the Mac.  No Antivirus, the OS is strong enough as it is.  Backup is done by the OS.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.chickenandporn.com/2010/10/31/whats-on-your-mac/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Advert Tag</title>
		<link>http://tech.chickenandporn.com/2010/09/10/the-advert-tag/</link>
		<comments>http://tech.chickenandporn.com/2010/09/10/the-advert-tag/#comments</comments>
		<pubDate>Fri, 10 Sep 2010 20:49:49 +0000</pubDate>
		<dc:creator>allanc</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tech.chickenandporn.com/?p=421</guid>
		<description><![CDATA[We need a tag to map out advertisement content to improve search compatibility. Either that, or ads should not be shown to User-Agent = search engine. The problem is that the search text is tainting the accuracy of the search due to inaccurate actual content. For example, search for &#8220;Automator&#8221; and &#8220;GoToMeeting&#8221;, and you&#8217;ll find [...]]]></description>
			<content:encoded><![CDATA[<p>We need a tag to map out advertisement content to improve search compatibility.</p>
<p>Either that, or ads should not be shown to User-Agent = search engine.</p>
<p>The problem is that the search text is tainting the accuracy of the search due to inaccurate actual content.  For example, search for &#8220;Automator&#8221; and &#8220;GoToMeeting&#8221;, and you&#8217;ll find plenty of articles about Apple Automator, but the GoToMeeting content is just ads, it&#8217;s not in the usable meat of the page.</p>
<p>If the search engine was able to understand what parts of the page are the advertisements, and remove that from the search, it would improve accuracy of search results.  This should also improve SEO for the page, since the affinity of the page to key terms can be more easily gleaned without the distraction of advert-related content that has less to do with the core of the article (for example, GoToMeeting is only barely related to LockerGnome talking about Automator)</p>
<p>So how do we go about doing that?</p>
<p>And how can we do this without reducing the effectiveness of the ads?  (disclaimer: I do believe that advert-supported content enriches the web, even if I find it such a nuisance to have 60% of the screen taken up by blinking moving unrelated content)</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.chickenandporn.com/2010/09/10/the-advert-tag/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Microsoft Still Impacting Me (Entourage)</title>
		<link>http://tech.chickenandporn.com/2010/09/09/microsoft-still-impacting-me-entourage/</link>
		<comments>http://tech.chickenandporn.com/2010/09/09/microsoft-still-impacting-me-entourage/#comments</comments>
		<pubDate>Thu, 09 Sep 2010 01:04:02 +0000</pubDate>
		<dc:creator>allanc</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tech.chickenandporn.com/?p=419</guid>
		<description><![CDATA[So I burned through three of the latest-greatest Dells last year, and it&#8217;s allowed me to use my own Mac and drag my feet about changing away. You&#8217;d think I&#8217;d be safe, but Microsoft is still able to slow me down. Entourage. Let&#8217;s talk about implicit lock-in. Yeah, that&#8217;s right.. when you use a product [...]]]></description>
			<content:encoded><![CDATA[<p>So I burned through three of the latest-greatest Dells last year, and it&#8217;s allowed me to use my own Mac and drag my feet about changing away.  You&#8217;d think I&#8217;d be safe, but Microsoft is still able to slow me down.</p>
<p><a href="http://en.wikipedia.org/wiki/Microsoft_Entourage">Entourage</a>.</p>
<p>Let&#8217;s talk about implicit lock-in.  Yeah, that&#8217;s right.. when you use a product across an organizaiton, it can become &#8220;the norm&#8221;, failures and all.  Just as Mac people are surprised at how often Windows people get locked up and have to reboot (admittedly less often in Windows 7), it&#8217;s also amazing how companies &#8220;need doc&#8221;, and &#8220;need powerpoint&#8221; and now &#8220;need docx&#8221;.  For the same reason, if you cannot read a tnef extension on an email, and accept a calendar invite received in email, you&#8217;re toast.</p>
<p>Let&#8217;s ignore the fact that calendar entries should be handled by calendar servers, and shouldn&#8217;t require your mail client to be open/running just to transfer calendar invites to your calendar &#8212; that would be a silly tangent.</p>
<p>So even though I have weeks between reboots, I still need to have <a href="http://en.wikipedia.org/wiki/Microsoft_Entourage">Microsoft Entourage</a> running to process calendar entries.</p>
<p>&#8230; and when that Entourage sucks up all the <a href="http://en.wikipedia.org/wiki/Magnetic_core_memory">core</a> memory and starts swapping like Godzilla (he was known to swap core), the world slows down.</p>
<p>&#8230; and when the world slows down, the GUI cannot create a <a href="http://www.wikihow.com/Force-Quit-an-Application-in-Mac-OS-X">&#8220;Force Quit&#8221;</a> dialog box to kill the offending RAM-hog.</p>
<p>My reboot time is 3 minutes; my boss on the phone didn&#8217;t even realize.  (FWIW, <a href="http://www.apple.com/macosx/what-is-macosx/mail-ical-address-book.html">Mail.app</a> is seriously heavy on RAM, and seems to fight with Entourage over MDS)</p>
<p>This should be a lesson to me: don&#8217;t leave <a href="http://en.wikipedia.org/wiki/Microsoft_Entourage">Entourage</a> running overnight.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.chickenandporn.com/2010/09/09/microsoft-still-impacting-me-entourage/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PPTP on iPhone: Changes iPhone3 to iPhone4</title>
		<link>http://tech.chickenandporn.com/2010/08/31/pptp-on-iphone-changes-iphone3-to-iphone4/</link>
		<comments>http://tech.chickenandporn.com/2010/08/31/pptp-on-iphone-changes-iphone3-to-iphone4/#comments</comments>
		<pubDate>Tue, 31 Aug 2010 18:42:43 +0000</pubDate>
		<dc:creator>allanc</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://tech.chickenandporn.com/?p=411</guid>
		<description><![CDATA[A while ago, I configured PPTP so that my friends in China&#8217;s firewalled world could get their Facebook and Twitter fix. &#8230; cuz, we all know we need that constant poke-poke-poke. The config I had was very much like &#8220;Tim&#8221; wrote on Shared Know How on Sept 28, 2008 &#8212; in fact, it&#8217;s a very [...]]]></description>
			<content:encoded><![CDATA[<p>A while ago, I configured PPTP so that my friends in China&#8217;s firewalled world could get their Facebook and Twitter fix.  &#8230; cuz, we all know we need that constant poke-poke-poke.</p>
<p>The config I had was very much like &#8220;Tim&#8221; wrote on <a href="http://www.sharedknowhow.com/2008/09/linux-vpn-server-installation-for-use-with-iphone/#more-30">Shared Know How</a> on Sept 28, 2008 &#8212; in fact, it&#8217;s a very basic, standard config, it&#8217;s a bit difficult not to wander onto it by accident (although Tim&#8217;s article is quite useful to paint the solution and validate that &#8220;yes, it does work&#8221; &#8212; and validation is not to be understated).</p>
<p>The iPhone4 didn&#8217;t connect to that setup anymore, and there was very little indication why:<br />
<code>Aug 31 19:28:20 usloft1645 pppd[9875]: Connect: ppp0  /dev/pts/1<br />
Aug 31 19:28:20 usloft1645 pppd[9875]: Unsupported protocol 'IPv6 Control Protovol' (0x8057) received<br />
Aug 31 19:28:20 usloft1645 pppd[9875]: MPPE required but peer negotiation failed<br />
Aug 31 19:28:20 usloft1645 pppd[9875]: Connection terminated.<br />
Aug 31 19:28:20 usloft1645 pppd[9875]: Connect time 0.0 minutes.</code></p>
<p>So lacking any real diagnostic methods, I began randomizing on the configs around MPPE.  Damned if it wasn&#8217;t as easy as just dropping the requirement for MPPE:</p>
<p>(/etc/ppp/options.pptp)<br />
<code>name pptpd<br />
refuse-pap<br />
refuse-chap<br />
refuse-mschap<br />
require-mschap-v2<br />
#require-mppe-128     -- works with iPhone1-3, fails with iPhone4<br />
ms-dns 192.168.0.1<br />
proxyarp<br />
lock<br />
nobsdcomp<br />
novj<br />
novjccomp<br />
nologfd<br />
</code></p>
<p>I&#8217;ll need to clean up this entry a bit, but that&#8217;s the change so far, and it&#8217;s connecting.  I&#8217;ll see too if I can find compatibility setting to get MPPE back, since this drops out payload-protection on a VPN which users may assume is usually secure from prying <del datetime="2010-08-31T18:33:30+00:00">governments</del> eyes.</p>
<p>In Summary, the working config right now is:</p>
<p>(/etc/ppp/chap-secrets)<br />
(where &#8220;username1&#8243; is actually a user&#8217;s username, and &#8220;password1&#8243; is his/her plaintext password, but &#8220;*&#8221; is actually an asterisk)<br />
<code>username1 * password1 *    # some comment ...<br />
username2 * password2 *<br />
...<br />
</code></p>
<p>(/etc/ppp/options.pptp as above)</p>
<p>(/etc/pptpd.conf)<br />
<code>option /etc/ppp/options.pptpd<br />
localip 192.168.0.1<br />
remoteip 192.168.0.128-191<br />
debug<br />
</code></p>
<p>(/etc/ppp/ip-up.local)<br />
<code># a bit heavy-handed, but gets named listening on the internal interface faster<br />
rndc reload<br />
</code></p>
<p>This last file is a bit unusual; I found that although BIND is configured (named.conf) with the 192.168.0.1 interface to provide recursion and service, it would stop listening on the PPP link when the last connection closed:</p>
<p><code>Aug 31 19:42:54 usloft1645 pptpd[9915]: CTRL: Client 24.18.213.241 control connection finished<br />
Aug 31 19:48:30 usloft1645 named[20202]: no longer listening on 192.168.0.1#53<br />
</code></p>
<p>This heavy-handed smack in ip-up.local causes it to listen on the 192.168.0.1 ppp0 interface again:<br />
<code>Aug 31 19:28:50 usloft1645 pppd[9916]: Connect: ppp0  /dev/pts/1<br />
Aug 31 19:28:50 usloft1645 kernel: PPP Deflate Compression module registered<br />
...<br />
Aug 31 19:28:50 usloft1645 pppd[9916]: local  IP address 192.168.0.1<br />
Aug 31 19:28:50 usloft1645 pppd[9916]: remote IP address 192.168.0.128<br />
Aug 31 19:28:50 usloft1645 named[20202]: loading configuration from '/etc/named.conf'<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.chickenandporn.com/2010/08/31/pptp-on-iphone-changes-iphone3-to-iphone4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

