<?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>Mason Mark (.com) &#187; code</title>
	<atom:link href="http://masonmark.com/category/code/feed/" rel="self" type="application/rss+xml" />
	<link>http://masonmark.com</link>
	<description></description>
	<lastBuildDate>Sat, 31 Jul 2010 17:15:13 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>mother fuck textmate to hell</title>
		<link>http://masonmark.com/2010/05/mother-fuck-textmate-to-hell/</link>
		<comments>http://masonmark.com/2010/05/mother-fuck-textmate-to-hell/#comments</comments>
		<pubDate>Tue, 11 May 2010 07:00:59 +0000</pubDate>
		<dc:creator>Mason</dc:creator>
				<category><![CDATA[code]]></category>
		<category><![CDATA[mac]]></category>

		<guid isPermaLink="false">http://masonmark.com/?p=170</guid>
		<description><![CDATA[Speaking of cunt-pus shitware[0], we have textmate. I fucking hate textmate.

Obviously, a text editor that can&#8217;t be used[1] to type text in the main languages I use is useless[2].
Well, boo fucking hoo and cry me a river right? Lots of things[3] are useless; there&#8217;s no need waste energy hating on them, though, right?
Generally, that is [...]]]></description>
			<content:encoded><![CDATA[<p>Speaking of cunt-pus shitware[0], we have textmate. I fucking hate textmate.</p>
<p><img style="display: block; margin-left: auto; margin-right: auto;" src="http://masonmark.com/wp-content/uploads/2010/05/ur_idetor_is_teh_suck.jpg" border="0" alt="ur_idetor_is_teh_suck.jpg" width="340" height="219" /></p>
<p>Obviously, a text editor that can&#8217;t be used[1] to <strong>type text</strong> in the main languages I use is useless[2].</p>
<p>Well, <strong>boo fucking hoo</strong> and cry me a river right? Lots of things[3] are useless; there&#8217;s no need waste energy hating on them, though, right?</p>
<p>Generally, that is indeed the case. But textmate is a metastasizing virulent black hole of suck. It absorbs all this useful energy, the productive output of all these hackers making bundles and add-ons, absorbing it all down into the glistening gelatinous mass of its putrid guts.</p>
<p>So textmate not only sucks a shopsack full of dicks, but it <strong>makes all these other would-be useful tools suck, too</strong>.</p>
<p>None of this means that I don&#8217;t sniff at the vapors of textmate 2 with a considerable amount of interest. It just means textmate fucking sucks.</p>
<blockquote>
<p><strong>UPDATE: </strong>OK, I get it, I <strong>get</strong> it. Many of you <strong>loves you some fuckin textmate</strong>, and don&#8217;t care about typing in Japanese. And, somehow, you also found my blog. <strong>OK.</strong> Instead of <strong>emailing me</strong> about it, what I suggest you do is <strong>find Dr. Nickatina</strong>. He&#8217;ll give you your medicine, take you to the Bay Bridge, and instruct you on how to proceed from there. Thanks.</p>
</blockquote>
<p>&#8212;</p>
<p>[0]: ok, nobody was actually speaking of that, but I earned the right to a rant by climbing a hill and singing the praises of Arq the other day</p>
<p>[1]: there&#8217;s a <a href="http://blog.macromates.com/2006/faking-cjk-support/">CJK plug-in</a>, but it doesn&#8217;t make textmate conform to any reasonable interpretation of the phrase &#8220;it can be used to type Japanese&#8221; (or the phrase &#8220;it doesn&#8217;t suck&#8221; for that matter, harhar get it)</p>
<p>[2]: to <strong>ME</strong>, duh</p>
<p>[3]: most things?</p>
<p> </p>
]]></content:encoded>
			<wfw:commentRss>http://masonmark.com/2010/05/mother-fuck-textmate-to-hell/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>the best IMAP client in human history sure sucks</title>
		<link>http://masonmark.com/2010/01/the-best-imap-client-in-human-history-sure-sucks/</link>
		<comments>http://masonmark.com/2010/01/the-best-imap-client-in-human-history-sure-sucks/#comments</comments>
		<pubDate>Sun, 17 Jan 2010 09:12:15 +0000</pubDate>
		<dc:creator>Mason</dc:creator>
				<category><![CDATA[code]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[tech]]></category>

		<guid isPermaLink="false">http://masonmark.com/?p=117</guid>
		<description><![CDATA[Brent Simmons posted something interesting today: &#8220;Email init&#8220;. The gist of the idea is that we[1] need a really good IMAP client; no such thing exists; so fuck it, let&#8217;s make one. 
The bummer is that The Community has to build it, which is always a slightly dubious prospect. But once in a while, that [...]]]></description>
			<content:encoded><![CDATA[<p>Brent Simmons posted something interesting today: &#8220;<a href="http://inessential.com/2010/01/16/email_init">Email init</a>&#8220;. The gist of the idea is that we[1] need a <b>really good IMAP client</b>; no such thing exists; so fuck it, let&#8217;s <b>make one</b>. </p>
<p>The bummer is that The Community has to build it, which is always a slightly dubious prospect. But once in a while, that works out.</p>
<p>There&#8217;s just no economic justification for the <b>investment</b> (of money/effort) required to re-engineer a complex application that is, after all, <b>a core part of every modern OS</b>. That&#8217;s why we haven&#8217;t seen, and almost certainly won&#8217;t see, a commercial solution. (I personally would buy Brent&#8217;s mythical $500 IMAP client, in a heartbeat. But that only makes about three of us.)</p>
<p>I&#8217;ve been on a <b>technology pilgrimage</b> to IMAP mecca since around 1997. (Actually, a bit before, but memories get hazy &#8212; the best carbon-dating I can do is remember how excited I was about Ethan&#8217;s pitch for a Newton OS IMAP client, and the Newton got Steved in &#8216;97.)</p>
<p>Nowadays (and for the past several years), if you aren&#8217;t using IMAP for your email, then you&#8217;re doing it wrong. But the pilgrimage continues, because while things are much better than before IMAP was widely implemented, none of the email clients have really nailed it yet.</p>
<p>Over the years, I think I&#8217;ve at least <b>launched</b> every single IMAP client developed for Mac, Windows, Linux, and Palm OS (lol I&#8217;m serious), and fiddled around a bit further with most of them. Off the top of my head: Mulberry, mutt, Eudhorfa, Outlook Express, Entourage, Outlook, pine, Outlook full turd, Opera, Mail.app, Thunderbird and friends, Windows Live or Whatever The Fuck It Is Called, Chatter, PowerMail, Outspring Mail, &#8230; well, the list is too long to even fit on the top of my head.</p>
<p>But ugh, they all <b>suck</b>. In different ways of course. And everybody has slightly different needs. For me, absolute minimum requirements include: </p>
<ul>
<li>reliable offline mode </li>
<li>Japanese compatibility and UTF-8 support</li>
<li>indexed search</li>
<li>rule-based triggering of custom processes</li>
<li>multiple identities (addresses/servers)</li>
<li>SSL/TLS support</li>
</ul>
<p>Even this short-ass list, sadly, isn&#8217;t satisfied by most existing clients.</p>
<p>Throw in some other requirements, like:</p>
<ul>
<li>good UI</li>
<li>tree-display threaded view</li>
<li>high performance</li>
<li>custom IMAP flag support</li>
<li>so-called &#8220;smart mailboxes&#8221; (i.e., canned searches)</li>
<li>decent scriptability/automation support</li>
<li>attachment removal (leaving the message on the server)</li>
</ul>
<p>&#8230;and you are left with <b>ZERO EMAIL CLIENTS</b>. Not one client in existence satisfies all of those. For me, the one which comes closest is (sigh) Mail.app. It does most of those things, but is has some very major problems. Serious bugs. A crappy threaded view. It can handle my 60,000-message personal/business archive, but not that plus the 500,000 or so messages of archived mailing list mail (had to move those to gmail, which also sucks). With a bunch of accounts, it sometimes takes over ten minutes to quit cleanly (on an 8-core &#8216;09 Mac Pro), but reacts badly to being force-quit. And on and on, blah blah blah. </p>
<p>And this application is, on balance and IMNSHO, <b>the best IMAP client in human history</b>. But I yearn for something better. As far as software goes, this is probably my deepest and most long-standing wish.</p>
<p>So, do I want Brent&#8217;s Magical Pony IMAP.app? <b>Fuck yeah!</b> Fuck yeah.</p>
<p>But is this the rare project that The Community can actually pull off? Well&#8230; I mean, frankly I doubt it, but there&#8217;s at least some hope. Brent is a well-known and well-respected dude, so out of the gate the project has more momentum behind it than normal. As I write this, the mailing list has 171 messages posted to it, after existing for only 12 hours.</p>
<p>I would love to work on this, too. I mean <b>LOVE</b> it. Writing code, I mean. But I recently did this scary analysis where the cumulative behind-schedule-ness of all my active projects is something like <b>four years</b>[2]. So will I really be able to? Uhm&#8230; I uh,&#8230; I dunno. I assume most of the folks getting all hyped up about this idea are in a similar position. But I hope so.</p>
<p>And there it is: the reason I have a bit of hope for this project is that <b>most of the people who actually really need a superpower IMAP client are people who can contribute something to making it real</b>. </p>
<p>So will we? I guess we&#8217;ll probably know in about a year.</p>
<p>
&#8211;</p>
<p>[1]: we the email power-user subset of Mac users, that is; mainly businesspeople who rely on email</p>
<p>[2]: Yeah, I have thirteen actives that are between two and fourteen months behind initial schedule. And that&#8217;s only <b>work</b> projects&#8211;I am not including personal projects like my Hasbro Baby&#8217;s First Open Source Release that I hoped to ship in 2004, or cancelled projects like the distributed native-Cocoa issue tracking app some of you wasted an hour listening to me rave about in 2008. (And, ahem, that&#8217;s not to say I am a total slacker, either; I did finish a <b>few</b> projects in 2009, a couple of which may have even been on time.)</p>
]]></content:encoded>
			<wfw:commentRss>http://masonmark.com/2010/01/the-best-imap-client-in-human-history-sure-sucks/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dreamweaver f00kin ®00lz, ∂00∂</title>
		<link>http://masonmark.com/2009/05/dreamweaver-f00kin-%c2%ae00lz-%e2%88%8200%e2%88%82/</link>
		<comments>http://masonmark.com/2009/05/dreamweaver-f00kin-%c2%ae00lz-%e2%88%8200%e2%88%82/#comments</comments>
		<pubDate>Mon, 18 May 2009 06:54:09 +0000</pubDate>
		<dc:creator>Mason</dc:creator>
				<category><![CDATA[code]]></category>

		<guid isPermaLink="false">http://masonmark.com/?p=83</guid>
		<description><![CDATA[A few years ago, friend of mine worked on a large specialty retail web site, which had been built-up over the years by people using Dreamweaver. This week, as I was helping to retrofit a legacy (as in EUC, SJIS, Dreamweaver, Flash) web site here in Tokyo and bring it into the modern (as in [...]]]></description>
			<content:encoded><![CDATA[<p>A few years ago, friend of mine worked on a large specialty retail web site, which had been built-up over the years by people using <b>Dreamweaver</b>. This week, as I was helping to retrofit a legacy (as in EUC, SJIS, Dreamweaver, Flash) web site here in Tokyo and bring it into the modern (as in Unicode, revision control, machine validation, and not-Flash) world, I was inspired to dig up a snippet of <b>truly amazing Dreamweaver-generated code</b>.</p>
<p>This code was live on the retailer&#8217;s production e-commerce server circa 2005. It&#8217;s a great demonstration of why you should <strong>ALWAYS</strong> use Dreamweaver for <strong>ANY</strong> web authoring that you do.</p>
<p>&#x3C;blockquote&#x3E;<br />
&nbsp; &#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp;&nbsp; &#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;left&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;left&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;center&#8221;&#x3E;</p>
<p><span id="more-83"></span></p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;left&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;left&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;h3&#x3E;&#x3C;font color=&#8221;#666633&#8243;&#x3E;<br />
Katadyn (PUR) Hiker Water<br />
Filter<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;/font&#x3E;&#x3C;/h3&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;left&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;p&#x3E;<br />
The highest rated micro<br />
filter Ideal for light<br />
weight backpacking. The<br />
highest rated filter for<br />
ease-of-use. Safe:<br />
Eliminates Giardia,<br />
Cryptosporidium and most<br />
bacteria. Easy:<br />
Guaranteed not to clog<br />
for 1 year! Efficient:<br />
Lightweight compact<br />
microfilter with high<br />
water output per stroke.<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp; &#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;left&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;left&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&#x3C;/blockquote&#x3E;<br />
&#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp; &#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp;&nbsp; &#x3C;div align=&#8221;left&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;left&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;h3&#x3E;&#x3C;/h3&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp; &#x3C;/div&#x3E;<br />
&#x3C;/div&#x3E;<br />
&#x3C;blockquote&#x3E;<br />
&nbsp; &#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp;&nbsp; &#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;left&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp; &#x3C;/div&#x3E;<br />
&#x3C;/blockquote&#x3E;<br />
&#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp; &#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp;&nbsp; &#x3C;div align=&#8221;left&#8221;&#x3E;<br />
&nbsp;&nbsp; &#x3C;/div&#x3E;<br />
&nbsp; &#x3C;/div&#x3E;<br />
&#x3C;/div&#x3E;<br />
&#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp; &#x3C;div align=&#8221;center&#8221;&#x3E;<br />
&nbsp; &#x3C;/div&#x3E;<br />
&#x3C;/div&#x3E;</p>
]]></content:encoded>
			<wfw:commentRss>http://masonmark.com/2009/05/dreamweaver-f00kin-%c2%ae00lz-%e2%88%8200%e2%88%82/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OCSNG i18n Support: Â�Â¾Â�</title>
		<link>http://masonmark.com/2009/03/ocsng-i18n-support-a%ef%bf%bda%c2%bea%ef%bf%bd/</link>
		<comments>http://masonmark.com/2009/03/ocsng-i18n-support-a%ef%bf%bda%c2%bea%ef%bf%bd/#comments</comments>
		<pubDate>Thu, 19 Mar 2009 08:53:35 +0000</pubDate>
		<dc:creator>Mason</dc:creator>
				<category><![CDATA[code]]></category>

		<guid isPermaLink="false">http://masonmark.com/?p=71</guid>
		<description><![CDATA[OCSNG generates garbage mojibake data from Japanese Windows XP client PCs. The PC entries in the database end up with fields like &#8220;Description: Â’Â†Â‘ÂºÂ@Â’Ã®Â“Ã±&#8221;. NG, indeed.
1.) Is the problem in the Windows OCSNG agent, or:
2.) Is the problem in the UNIX OCSNG server, or:
3.) Both?
So, let us begin the delightful process of debugging multibyte foreign [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.ocsinventory-ng.org/">OCSNG</a> generates garbage mojibake data from Japanese Windows XP client PCs. The PC entries in the database end up with fields like &#8220;Description: Â’Â†Â‘ÂºÂ@Â’Ã®Â“Ã±&#8221;. <a href="http://www.google.co.jp/search?hl=ja&#038;q=ng">NG</a>, indeed.</p>
<p>1.) Is the problem in the <b>Windows OCSNG agent</b>, or:<br />
2.) Is the problem in the <b>UNIX OCSNG server</b>, or:<br />
3.) Both?</p>
<p>So, let us begin the delightful process of debugging multibyte foreign language bugs in unsupported open-source software! Um, yee haw?</p>
<p><span id="more-71"></span></p>
<p>A cursory google finds a useful thread wherein <a href="http://forums.ocsinventory-ng.org/viewtopic.php?id=603">some Russians were having a similar issue</a>, and then some ppl chimed in with Japanese as well. A proj admin, hunal, said on 2007-7-17 that &#8220;full utf8 support is in the roadmap&#8221; but months later ppl were still having the probs. INTERESTING: thread contains potential server-side patch.</p>
<p><strong>IMPORTANT</strong>: it looks like OCSNG creates its database in MySQL which is not in UTF-8!!!! Tremendously foul. (<b>Update:</b> Now I have looked at the SQL, and it simply doesn&#8217;t specify any encoding&#8230; which with MySQL means it is <a href="http://www.google.com/search?client=safari&#038;rls=en-us&#038;q=mysql+text+encoding&#038;ie=UTF-8&#038;oe=UTF-8">pretty arbitrary what encoding gets used</a>. I would have assumed that OCSNG, agent software that collects local system info from a huge number of legacy Windows machines and then uploads the data to a remote server, would be one of the most paranoid applications with regard to text encoding issues&#8230; but I would be very wrong.) That means, we probably have to recreate the database along with any fix we do. (I mean, since we only have test data in it so far, that would probably be easiest&#8230;)</p>
<p>Hmm, it would be good to check into the background of this issue and see who suffers from it, and what if anything is being done about it:</p>
<p>• 2007-05: jjroot <a href="http://forums.ocsinventory-ng.org/viewtopic.php?id=64">reports the issue</a>, and some things they did, including recompile MySQL (really? blecch!), in a post that reads like a deranged patent application (&#8221;2. Method of fixing event that agent of Windows vomits with UTF-8&#8243; LOL). They are also interested in getting the OCS web GUI to display correct Japanese, but I don&#8217;t care about that, as I&#8217;m using the really-pretty-fucking-awesome <a href="http://glpi-project.org/?lang=en">GLPI</a> for my admin frontend, and I just want OCS to populate the database with correct non-fucked-up data (i.e., UTF8 text). I don&#8217;t care where we fix it &#8212; fine with me if we get the &#8220;vomit&#8221; data from the Windows agent, if we can convert it to UTF-8 before writing it to the db. I hope? Anyway the answer in this thread was &#8220;yah we know we will try to fix it ASAP but probably won&#8217;t since it is hard&#8221;. (But come on, how hard could it really be??)</p>
<p>• 2007-05: Problems <a href="http://forums.ocsinventory-ng.org/viewtopic.php?id=316">with Chinese clients</a>, too (of course). </p>
<p>• 2007-10: A user <a href="http://forums.ocsinventory-ng.org/viewtopic.php?id=1196">reports this issue in the forum</a>. Another user chimes in, me too.</p>
<p>• 2008-01: User <a href="http://forums.ocsinventory-ng.org/viewtopic.php?id=1607">asks what is up with UTF-8 support</a>, but no answer. </p>
<p>• 2008-01: More <a href="http://forums.ocsinventory-ng.org/viewtopic.php?id=2754">Chinese problems</a>. No solutions, though.</p>
<p>• 2008-03-27: a user has this problem, and hunal <a href="http://forums.ocsinventory-ng.org/viewtopic.php?id=1979">replies again that UTF8 support is in the roadmap</a>.</p>
<p>• 2008-11: This issue is <a href="http://forums.ocsinventory-ng.org/viewtopic.php?id=1228">reported</a>, and the user is referred to the Russian thread above. Waiting for new version.</p>
<p><b>OK, so what have we learned?</b> Well, that the problem is widespread, has been known about for a long time, and not fixed. When I peek at the <a href="http://www.ocsinventory-ng.org/index.php?page=roadmap">road map</a>, it is not encouraging at all. There is nothing about fixing this in the agent, only &#8220;[GUI] Unicode usage&#8221; hoped for for 1.2 (currently it is at 1.02RC3). </p>
<p>The GUI for OCS is pretty abysmal, anyway, and the smart people I know use GLPI to admin their IT fleets, and OCS just for the agent features.</p>
<p>So now, we are faced with that typical open-source conundrum:</p>
<p>Do we <b>a.) try to hack this crap and kludge a solution together</b>, or <b>b.) throw it in the trash and write our own solution from scratch</b>?</p>
<p>As usual, option B is the much more enticing, but A is probably the right solution when being paid for the work. But&#8230; but&#8230; <strong>good god, man, this thing is written in fucking perl! </strong> <b>Nooooooooooo&#8230;&#8230;</b></p>
<p>More as the situation develops&#8230;</p>
<p><i>(Yes, that&#8217;s right. I wrote this whole tantalizing piece that you found on Google, and after reading the summary you were all like, &#8220;Oh,right on dude, this guy&#8217;s gonna have the fix for this heinous problem we&#8217;re having, cool,&#8221; and then now you got here, to the bottom of the post, and you&#8217;re all like, &#8220;<b>What</b> man, after all that reading, you are just giving up for the day and going home? Hey, <b>fuck you</b>, man!! What an asshole!&#8221;)</i></p>
]]></content:encoded>
			<wfw:commentRss>http://masonmark.com/2009/03/ocsng-i18n-support-a%ef%bf%bda%c2%bea%ef%bf%bd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>2.0</title>
		<link>http://masonmark.com/2008/05/20/</link>
		<comments>http://masonmark.com/2008/05/20/#comments</comments>
		<pubDate>Tue, 13 May 2008 02:39:59 +0000</pubDate>
		<dc:creator>Mason</dc:creator>
				<category><![CDATA[code]]></category>

		<guid isPermaLink="false">http://masonmark.com/?p=34</guid>
		<description><![CDATA[Well, we finally released  this crap, whew. I haven&#8217;t worked that hard since I was like, in my 20s and shit.
]]></description>
			<content:encoded><![CDATA[<p>Well, we finally <a href="http://nakahara-informatics.com/press/igetmobile2.0/">released</a> <a href="http://www.nakahara-informatics.com/igetmobile/"> this crap</a>, whew. I haven&#8217;t worked that hard since I was like, in my 20s and shit.</p>
]]></content:encoded>
			<wfw:commentRss>http://masonmark.com/2008/05/20/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
