<?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>subprocess &#187; IT</title>
	<atom:link href="http://subprocess.net/category/it/feed/" rel="self" type="application/rss+xml" />
	<link>http://subprocess.net</link>
	<description>linux geek/dad</description>
	<lastBuildDate>Wed, 28 Apr 2010 15:12:23 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>______ programming language sucks!</title>
		<link>http://subprocess.net/2008/05/01/______-programming-language-sucks/</link>
		<comments>http://subprocess.net/2008/05/01/______-programming-language-sucks/#comments</comments>
		<pubDate>Fri, 02 May 2008 05:03:05 +0000</pubDate>
		<dc:creator>thepet</dc:creator>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[geek]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://subprocess.net/2008/05/01/______-programming-language-sucks/</guid>
		<description><![CDATA[Fill in the blank.  I promise you it sucks.
PHP sucks.
Perl sucks.
Java sucks.
Ruby sucks.
Ruby on Rails especially sucks.
.NET sucks.
C++ sucks.
Python sucks.
While I do get quite a kick out of picking on my boss&#8217;s favorite, perl, I do recognize that each language sucks and each language doesn&#8217;t suck.  Personally, you&#8217;ll probably never see me start a project [...]]]></description>
			<content:encoded><![CDATA[<p>Fill in the blank.  I promise you it sucks.</p>
<p><a href="http://www.google.com/search?hl=en&amp;q=php+sucks&amp;btnG=Google+Search" target="_blank">PHP sucks</a>.</p>
<p><a href="http://www.google.com/search?hl=en&amp;safe=off&amp;q=perl+sucks&amp;btnG=Search" target="_blank">Perl sucks</a>.</p>
<p><a href="http://www.google.com/search?hl=en&amp;safe=off&amp;q=java+sucks&amp;btnG=Search" target="_blank">Java sucks</a>.</p>
<p><a href="http://www.google.com/search?hl=en&amp;safe=off&amp;q=ruby+sucks&amp;btnG=Search" target="_blank">Ruby sucks</a>.</p>
<p><a href="http://www.google.com/search?hl=en&amp;safe=off&amp;q=ruby+on+rails+sucks&amp;btnG=Search" target="_blank">Ruby on Rails especially sucks</a>.</p>
<p><a href="http://www.google.com/search?hl=en&amp;safe=off&amp;q=.net+sucks&amp;btnG=Search" target="_blank">.NET sucks</a>.</p>
<p><a href="http://www.google.com/search?hl=en&amp;safe=off&amp;q=c%2B%2B+sucks&amp;btnG=Search" target="_blank">C++ sucks</a>.</p>
<p><a href="http://www.google.com/search?hl=en&amp;safe=off&amp;q=python+sucks&amp;btnG=Search" target="_blank">Python sucks</a>.</p>
<p>While I do get quite a kick out of picking on my boss&#8217;s favorite, perl, I do recognize that each language sucks and each language doesn&#8217;t suck.  Personally, you&#8217;ll probably never see me start a project in perl, c++ or anything Microsoft only.  Mostly because there&#8217;s too big of a learning curve in it for me.  I definitely favor PHP for most projects, but that&#8217;s soley because of familiarity.  I could see myself choosing Java/Python/Ruby for some specific task over PHP.  And Ruby on Rails just works in ways my brain refuses to think, it&#8217;s like trying to teach myself a new way to breathe.</p>
<p>So my personal favorite is PHP.  I like that I can code up things in a flurry of creativity.  If one night I&#8217;m feeling especially inspired I can crank something out fast as a proof of concept.  Unfortunately for me, my interest vastly drops after I prove the concept and the proof of concept code is often used as the real code.  So the ability to code &#8220;bad code&#8221; in PHP is both a good and a bad thing to me.  I mean&#8230; I even wrote <a href="http://tweetwords.com" target="_blank">TweetWords</a> while mostly drunk.  Even though the code worked and didn&#8217;t have any glaring issues&#8230; it was ugly and hard to extend and maintain.  That underwent a 75% rewrite to get most of the drunken design out of it and has been being improved weekly by my friend Ben and me.</p>
<p>So I know PHP well, I write a lot of spontaneous crap in it, and PHP is used in many open source web projects.  This is why I tend to lean on it so much.  And everything perl can do PHP can do, which is why I&#8217;d never start a project in perl.  And I  understand that some of the reasons why I like PHP are the reasons others hate PHP.  Oh well.</p>
<p>So what is the right language to use?  All of them.</p>
<p>You have to look at your situation and choose the proper language for the job.  Some important factors off the top of my head are:</p>
<ol>
<li>Who is going to be writing it and what are they strong in?</li>
<li>How complicated is it?</li>
<li>How important is the ability to scale it?</li>
</ol>
<p>I&#8217;ve seen extremely simple concepts implemented with massively complex designs and frameworks.  They took 100 times longer to implement than they should have taken and any modifications to them took extra time too.</p>
<p>I&#8217;ve also seen more complicated concepts attempted to be done with too basic designs.  They failed to scale and were a pain to modify and extend.</p>
<p>So pick the language that is right for the situation.  And don&#8217;t be afraid to venture outside your comfort zone, you&#8217;ll never improve or learn anything new.</p>
<p>And lastly, here&#8217;s a handy chart using google and monster data.</p>
<p><a href="http://subprocess.net/wp-content/uploads/2008/05/suckschart.png" title="suckschart.png"><img src="http://subprocess.net/wp-content/uploads/2008/05/suckschart.png" alt="suckschart.png" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://subprocess.net/2008/05/01/______-programming-language-sucks/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>IT and Ethics.</title>
		<link>http://subprocess.net/2008/03/18/it-and-ethics/</link>
		<comments>http://subprocess.net/2008/03/18/it-and-ethics/#comments</comments>
		<pubDate>Tue, 18 Mar 2008 21:30:24 +0000</pubDate>
		<dc:creator>thepet</dc:creator>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[geek]]></category>

		<guid isPermaLink="false">http://subprocess.net/2008/03/18/it-and-ethics/</guid>
		<description><![CDATA[Call it what you will: Black hat, bad, abusive, evil, wrong, illegal.  There are many things that are greatly looked down upon in the online world of the internets.  Some things are outright illegal, and others just annoying.  In my 10 or so years of being in IT I&#8217;ve only had to [...]]]></description>
			<content:encoded><![CDATA[<p>Call it what you will: Black hat, bad, abusive, evil, wrong, illegal.  There are many things that are greatly looked down upon in the online world of the internets.  Some things are outright illegal, and others just annoying.  In my 10 or so years of being in IT I&#8217;ve only had to outright refuse one request from an employer.  I was fortunate in that the combination of my prior performance/attitude outweighed the importance of the requested action.  On many other occasions I&#8217;ve won at talking the company out of the action or modifying the request so that it met my standards.</p>
<p><span id="more-14"></span>You&#8217;d think that the actions that are outright illegal wouldn&#8217;t come up often&#8230; but one specific request comes up very often, especially in small businesses.</p>
<p>Manager: &#8220;Please install photoshop on Chuck&#8217;s computer.&#8221;<br />
You: &#8220;We don&#8217;t have any more licenses for photoshop.&#8221;<br />
Manager: &#8220;It&#8217;s important that he has it, install it anyway.  We&#8217;ll get a PO started to get a new license asap.&#8221;</p>
<p>And you <strong><em>know</em></strong> that PO never gets started.  So what do you do?  Let it slide and install software illegally?</p>
<p>Other non-illegal things can come up too.  The most common one for me is bulk email.  You get sent an email template and a mysterious list of email addresses and are told to send it to all on the list.  The email has no information about why they are on the list and has no clear and visible means of opting-out of future emails.  I always stress really hard that all bulk emails should be <a href="http://www.ftc.gov/bcp/conline/pubs/buspubs/canspam.shtm" target="_blank">can-spam act</a> compliant.  Particularly in these areas:</p>
<ol>
<li>Double opt-in lists <strong>ONLY</strong>.  No buying lists.  No collecting random email addresses from lists at trade shows.  Only use double opt-in.</li>
<li>Provide a very clear and visible message explaining why they just received the email.</li>
<li>Provide a very clear and very easy to use method for opting-out of future emails.</li>
<li>Process your bounces!</li>
</ol>
<p>But often most/all of these demands are responded with, &#8220;No, we don&#8217;t need that.  Just send the bulk email out.&#8221;</p>
<p>I&#8217;ve also been requested to scrape content from sites and publish it as our own.  I&#8217;ve been asked to write a denial of service tool.  I don&#8217;t know where all these ideas come from, but somehow such requests do come up in small companies.</p>
<p>So where do you draw the line?  When is putting your job at risk worth saying &#8220;no&#8221; to something that&#8217;s not illegal but isn&#8217;t ethical either?  I have given in on several occasions and not followed my standards 100%.  And in retrospect I still believe I&#8217;d do it again if I were in the same situation.</p>
<p>I don&#8217;t know what my criteria is for when it&#8217;s OK to compromise your standards&#8230;  I don&#8217;t think I could adequately put it in to words.  It greatly depends on what you&#8217;re being asked of and where you are in your life.  Fortunately it doesn&#8217;t come up often at all.  With the more experience you have and the more trust your employer has in you, it comes up even less often.  If your employee trusts you, and values your opinion, then it&#8217;s a lot easier to come to a compromise where you&#8217;re happy with the action and they&#8217;re happy with the action.</p>
<p>When trying to argue for doing the action in an ethical way, the greatest  argument I have found is image.  Sending bulk email to random lists of random email addresses without proper opt-out rules or bounce handling is similar to a certain governor who preaches cleaning up all the dirt getting caught being involved in a prostitute ring.  Well, maybe not to that extent, but send enough bulk email in this way and it could really taint the company&#8217;s name.   This argument can be used with just about any request to do something in an unethical way.</p>
<p>Other arguments greatly depend on the task requested.  Perhaps mention that you could be included in the spamhaus blacklist.  Then almost no email server will give you the time of day, even for corporate emails.  Or bring up a horror story of Microsoft auditing your small business because they got an &#8220;anonymous&#8221; tip that they were breaking license agreements.</p>
<p>So, what do you do when you&#8217;re asked to do some IT related task that doesn&#8217;t meet your ethical standards?</p>
]]></content:encoded>
			<wfw:commentRss>http://subprocess.net/2008/03/18/it-and-ethics/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
