<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:posterous="http://posterous.com/help/rss/1.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:media="http://search.yahoo.com/mrss/">
  <channel>
    <title>Dan Larsen's posterous</title>
    <link>http://blog.techba.se</link>
    <description>my random ramblings about anything</description>
    <generator>posterous.com</generator>
    <link href="http://posterous.com/api/sup_update#8330ab3bd" type="application/json" xmlns="http://www.w3.org/2005/Atom" rel="http://api.friendfeed.com/2008/03#sup"/>
    <atom:link href="http://blog.techba.se/rss.xml" rel="self"/>
    <atom:link href="http://posterous.superfeedr.com" rel="hub"/>
    <item>
      <pubDate>Tue, 02 Feb 2010 20:02:05 -0800</pubDate>
      <title>Dead Apple Aluminum Wireless Keyboard?</title>
      <link>http://blog.techba.se/dead-apple-aluminum-wireless-keyboard</link>
      <guid>http://blog.techba.se/dead-apple-aluminum-wireless-keyboard</guid>
      <description>
        <![CDATA[<p>
	Weirdest thing: <br />My Apple aluminum wireless keyboard suddenly stopped working. <br />It flashed the green light continously for about 10 seconds, then died totally and didn't work after that. <p /> Of course I tried changing batteries and everything else I could think of... Including Googling the problem ;-) <br />Finally I got geeky and started checking solderings... nothing... no problems... <p /> Since that, the keyboard has just been lying around... <br />Until! I read this facebook note: <a href="http://www.facebook.com/note.php?note_id=59651387321">http://www.facebook.com/note.php?note_id=59651387321</a> <br />With disbelief, I found a piece of tinfoil, rolled it lightly and dropped it into the keyboard, then the batteries... <p /> I pushed the on/off button and.... GREEN LIGHT FLASHING!!! <br />The keyboard is now working! <p /> I don't know a lot about circuits, but this is just stupid! <br />But hey! It's works! I'm happy :-) <p /> Hope this ends up helping others too! :-)
	
</p>

<p><a href="http://blog.techba.se/dead-apple-aluminum-wireless-keyboard">Permalink</a> 

	| <a href="http://blog.techba.se/dead-apple-aluminum-wireless-keyboard#comment">Leave a comment&nbsp;&nbsp;&raquo;</a>

</p>]]>
      </description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/233301/DanTwitter.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/eMCb7rqMgN</posterous:profileUrl>
        <posterous:firstName>Dan</posterous:firstName>
        <posterous:lastName>Larsen</posterous:lastName>
        <posterous:nickName>morphar</posterous:nickName>
        <posterous:displayName>Dan Larsen</posterous:displayName>
      </posterous:author>
    </item>
    <item>
      <pubDate>Wed, 27 Jan 2010 16:17:00 -0800</pubDate>
      <title>Facebook application development</title>
      <link>http://blog.techba.se/facebook-application-development-1</link>
      <guid>http://blog.techba.se/facebook-application-development-1</guid>
      <description>
        <![CDATA[<p>
	<p>After finishing the development of my 2nd Facebook application, I though it was to time to share some knowledge... <p /> Both applications I have developed, is coded using FBML, therefore some of the following may only apply to FBML-based applications. <p /> First of: I have discovered a hidden Facebook philosophy... <br />I have not heard any Facebook person speak this out loud, but while you develop an application, you will slowly discover the pracital truthness of it's existence, throughout every little aspect of the Facebook system... <p /> The philosophy: <br />Everything WILL fail at one point. Some things will fail totally, some partly and yet some will never be fixed... <p /> I have never come across such a perfect integration of <a href="http://en.wikipedia.org/wiki/Murphy%27s%5Flaw" title="Murphy's law on Wikipedia" target="_blank">Murphy's law</a> <p /> Let me just give you a coule of examples: <p /> 1) Facebook caches any image, that you use inside the application. <br />This is generally a good thing, that takes some load off your servers. <br />The problem arises, the moment you want to update some of the images. <br />Facebook's API has a function, for requesting an image cache flush. <br />While this generally works fine, it can fail - and when it fails... It will not let of the cache... AT ALL! <br />This leads to the following decision situation: <br /> - rename the image and update all of your code <br /> - or hope for the best... <p /> 2) Facebook translations seems like the perfect solution for translations. <br />You create some tags and the texts pops up in the translations interface.... niiiice! <br />Unfortunately, Facebook reads, cleans and rewrites your (x)HTML/(x)FBML, which often result in errornous texts - which of course pops up in the translations interface! <br />This of course also means, a not-translated text sometimes shows up in your application... <br />As if this is not enough, when you request the deletion of the transaltions, the texts may not pop back up in the interface. <br />A perfect example of this, is the translation for the Applications name and description... <p /> 3) I thought I would just give a final example, that shows how far these problems strecthes... <br />If you want to advertise your application on Facebook, you will discover it basically works like Google AdWords... <br />But... yet again... WYSINWYG - It's impossible to determine when you get 1.000 impressions or 1.000.000 impressions! <br />I have an ad, that one day got 141.000 impressions and another day &lt;4.000 impressions... Even though I made sure to change max bid according to their suggestions! <p /> A couple of areas I could have written about too: <br />Posting on the application users wall, when they are offline... <br />Using FQL (Facebook's SQL-like interface to their data) - I had to design a retrying FQL requester!!! <br />Asking for permissions from the user - NO! you can not ask for something you are already allowed to do, though Facebook explicitly says so... <br />And so on and so on and so on... <p /> Well... My point with this?... I don't know... "BE WARNED" maybe?</p>
	
</p>

<p><a href="http://blog.techba.se/facebook-application-development-1">Permalink</a> 

	| <a href="http://blog.techba.se/facebook-application-development-1#comment">Leave a comment&nbsp;&nbsp;&raquo;</a>

</p>]]>
      </description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/233301/DanTwitter.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/eMCb7rqMgN</posterous:profileUrl>
        <posterous:firstName>Dan</posterous:firstName>
        <posterous:lastName>Larsen</posterous:lastName>
        <posterous:nickName>morphar</posterous:nickName>
        <posterous:displayName>Dan Larsen</posterous:displayName>
      </posterous:author>
    </item>
    <item>
      <pubDate>Sat, 28 Nov 2009 03:14:00 -0800</pubDate>
      <title>Solving the SPAM issues - once and for all!</title>
      <link>http://blog.techba.se/solving-the-spam-issues-once-and-for-all</link>
      <guid>http://blog.techba.se/solving-the-spam-issues-once-and-for-all</guid>
      <description>
        <![CDATA[<p>
	<p>I can't be the only one, that is fed up with SPAM?!?!</p>
<p>I have an e-mail address dating back to 1999!&nbsp;<a href="https://www.dk-hostmaster.dk/index.php?id=42&amp;query=relax.dk" title="relax.dk on dk-hostmaster" target="_blank">look it up</a>, if you don't believe me :-)</p>
<p>This causes me to get &gt;99% SPAM or so!</p>
<p>Why don't I just get a new e-mail address? I have used the address for all kinds of sites, contact information, company info, etc... I wouldn't know where to begin, if I were to let everybody know that my e-mail changed.</p>
<p>I have started the process by handing out a new address, but the e-mails actually gets sent to the former mailbox.</p>
<p>Why? Well... some websites don't even let you provide a new address...... :-S</p>
<p>&nbsp;</p>
<p>Anyways... To the solution:</p>
<p>It's actually not that hard, and some has already tried it half-assed (i.e. Microsoft).</p>
<p>&nbsp;</p>
<p><em><strong>The real power lies in simplicity!</strong></em></p>
<p>Basically there are 2 kinds of mail-servers: <strong>senders</strong> and <strong>receivers</strong>...</p>
<p>These mail-servers talks to DNS (<strong>D</strong>omain <strong>N</strong>ame <strong>S</strong>ervice) servers, to know where mail for any given domain goes.</p>
<p><em><strong>This is the problem:</strong></em> I can write a seriously simple script, to send e-mails to almost any receiving mail-server, postulating I am sending the e-mail from whomever I like it to believe (I could be <a href="mailto:steve@apple.com">steve@apple.com</a>).</p>
<p>Most receiving mail servers today has a SPAM filter - so what? If I am a bit careful, it will still get through - even worse: who cares if 2 out of 10 doesn't?&nbsp;1 billion SPAM e-mails, will still get you a very nice profit (I have heard), even if "only" 827 million mails gets through...</p>
<p>This is due to the fact, that there are MANY people out there, with not enough knowledge to seperate SPAM from the rest and actually buys the &euro;#%"#@.</p>
<p>&nbsp;</p>
<p><strong><em>The simple solution:</em> </strong>Stop accepting mails from servers (and computers, botnets, mobilephones, etc), that hasn't been pre-approved as a sender for a given domain!</p>
<p>We have DNS servers, lets put in another line: <em>server a.b.c.d and v.x.y.z is allowed to send mails from techba.se&nbsp;</em></p>
<p>Now we can start changing the mail flow over 2 steps:</p>
<p>&nbsp;</p>
<ol>
<li>Stop accepting mails from computers that aren't pre-approved in the DNS - if the domain has pre-approved computers</li>
<li>Stop accepting mails from computers that arent' pre-approved in the DNS</li>
</ol>
<p />
<div>Of course some will think, that it would make everything incredibly hard and cumbersome, not to mention raise the administration amount...</div>
<div>... I have a shit-load of domains, that all has mail records, that would need to be changed once in while...</div>
<div>I wouldn't mind though... I would gladly spend 1/20th - 1/10th of the time, that I get from almost not having to deal with SPAM!</div>
<p>&nbsp;</p>
<p>Most forget, that we today spend hours and hours setting up SPAM filters and systems, that almost never works anyways.</p>
<p>I have set up my own SPAM filter - it works pretty well, which means: it catches ~98% of the SPAM.</p>
<p>But... Sometimes it thinks a perfectly fine e-mail is SPAM - this is the biggest of my problems! I have to look through ALL (~1500/day) of my SPAM, if I want to be sure I don't loose any mails...</p>
<p>That is not a good enough solution!.. Actually that is not even making it much less of a problem!..</p>
<p>&nbsp;</p>
<p><strong>Come on people! Let's change the world of e-mail, once and for all! :-)</strong></p>
	
</p>

<p><a href="http://blog.techba.se/solving-the-spam-issues-once-and-for-all">Permalink</a> 

	| <a href="http://blog.techba.se/solving-the-spam-issues-once-and-for-all#comment">Leave a comment&nbsp;&nbsp;&raquo;</a>

</p>]]>
      </description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/233301/DanTwitter.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/eMCb7rqMgN</posterous:profileUrl>
        <posterous:firstName>Dan</posterous:firstName>
        <posterous:lastName>Larsen</posterous:lastName>
        <posterous:nickName>morphar</posterous:nickName>
        <posterous:displayName>Dan Larsen</posterous:displayName>
      </posterous:author>
    </item>
    <item>
      <pubDate>Wed, 18 Nov 2009 01:34:00 -0800</pubDate>
      <title>Cost of Clouds vs Dedicated Servers</title>
      <link>http://blog.techba.se/cost-of-clouds-vs-dedicated-servers</link>
      <guid>http://blog.techba.se/cost-of-clouds-vs-dedicated-servers</guid>
      <description>
        <![CDATA[<p>
	<div>Yesterday, one of my clients, needed me to advice them on which servers to pick, for a project that needs scaling cabilities.</div>
<div>In that connection, I wanted a better overview of some of the providers out there.</div>
<div>I haven't included expensive managed solutions like Rackspace's dedicated servers, as these don't fit in this category (they are managed).</div>
<div>The reason for this comparison, was to get a less know factor into the equation, when deciding whether to choose a dedicated server or a cloud server.</div>
<p />
<div>The question that I wanted answered was: "What is the comparable price, for self-managed servers?".</div>
<p />
<div>Some of the cloud companies are professionally vaque in describing, what they are giving you.</div>
<div>To make things even more difficult to compare, in reality they aren't even giving you the same product.</div>
<div>Amazon allocates CPU for you, while Rackspace Cloud limits you if necessary.</div>
<div>This <em>can</em>&nbsp;make a Rackspace Cloud machine VERY much faster, as it will have acces to something like dual quad core 2GHz CPUs.</div>
<div>What makes this an uninteresting fact for me - actually close to a negative point, is that you can run a test a 100 times at one point, but the result is completely useless, as you can not tell, if this will hold at a later point of time.</div>
<p />
<div>Amazon allocates a certain amount of EC2 Compute Units (ECU), which they describe as:</div>
<div><em>One EC2 Compute Unit (ECU) provides the equivalent CPU capacity of a 1.0-1.2 GHz 2007 Opteron or 2007 Xeon processor.</em></div>
<p />
<div>If this isn't vaque enough for you, then try out this description from Rackspace:</div>
<div>
<div><em>Each cloud server has 2 quad core processors that are at least 2Ghz+. The 256MB plan will get 1/64 of the CPU allocation, the 512MB plan will get 1/32 of the CPU allocation, and the 1GB plan will get 1/16 of the CPU allocation. The 2GB plan will get 1/ 8 CPU, the 4GB plan will get 1/4, the 8GB plan will get 1/2, and the 15.5GB plan will get all CPU allocation in the server.</em></div>
<div>Which fortunately is comparably vaque to Amazons description, as the calculation gives you 1+GHz&nbsp;pr. 1GB RAM :-P</div>
<p />
<div>The worst of them all, I am sad to say, is definitely Media Temple.</div>
<div>I have had servers hosted at Media Temple several times.</div>
<div>The service is good, customer support fine and pricing reasonable - but... They are the vaquest "cloud" hosting service of them all.</div>
<div>The only way, I could do some comparison, was by checking out their "nitro" product, finding out, what that server was physically, then assume the "dedicated virtual" servers was running on the same hardware. Finally I calculated the CPU like Rackspace Cloud does - by dividing.</div>
<p />
<div>There is a lot of different factors, not calculated into this little experiment, like:</div>
<div><ol>
<li>Which hard drives, how many and how much capcity</li>
<li>Backed up or not</li>
<li>How many CPU cores</li>
<li>Connection to the internet - but: clouds generally has massive connection, while dedicated are more diverse</li>
<li>General hardware: server-grade or not? I.e. consumer CPUs or server-grade? etc.</li>
</ol></div>
<p />
<div>Also, traffic is an important factor - especially for the cloud services, as these are "pay-as-you-go".</div>
<div>I chose to calculate 200GB of traffic into the price.</div>
<div>The traffic is spread as: 25% traffic from client to server, 75% from server to client.</div>
<p />
<div>Anyways... Here it is! The pretty little chart, that roughly gives an idea, of the cost for 1GHz CPU + 1GB RAM + 200GB data pr. month.</div>
<div>There are a different amount of point pr. provider - these are different configurations.</div>
<div>Amazon and Rackspace Cloud has an amazingly consistent price!</div>
</div>
<p />
<p><div class='p_embed p_image_embed'>
<img alt="Screen_shot_2009-11-18_at_09" height="299" src="http://getfile9.posterous.com/getfile/files.posterous.com/morphar/4SLg7GpXbrL3PFXlXQlTGhk97gGBG8GmzNfmoKsvVPxPkmKXzWDi1i3kVvzZ/Screen_shot_2009-11-18_at_09.4.png" width="361" />
</div>
</p>
<p />
<div>Just a couple of final reminders:</div>
<p />
<div>Most of us already knew, that clouds were more expensive, than dedicated servers.</div>
<div>But this gives an idea of how much.</div>
<p />
<div>Cloud servers are not directly comparable to dedicated servers, as dedicated servers has ALL resources allocated for you.</div>
<div>Cloud servers is influenced by being managed by virtualization softwaree, sharing resources with a lot of other servers, sometimes not having real disks, etc.</div>
<p />
<div>The upside of cloud servers is, that you can start / stop them at any time, dedicated servers is usually paid pr. month or more + it can take days before it's up.</div>
<div>It's always a good thing, to have your servers physically close - with clouds you can start i.e. 100 servers for 2 days and then shut them down again, while maintaining all of the goodness of physical closeness, if your other servers are in the cloud.</div>
<p />
<div>Hope this helps a couple of decission makers! :-)</div>
	
</p>

<p><a href="http://blog.techba.se/cost-of-clouds-vs-dedicated-servers">Permalink</a> 

	| <a href="http://blog.techba.se/cost-of-clouds-vs-dedicated-servers#comment">Leave a comment&nbsp;&nbsp;&raquo;</a>

</p>]]>
      </description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/233301/DanTwitter.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/eMCb7rqMgN</posterous:profileUrl>
        <posterous:firstName>Dan</posterous:firstName>
        <posterous:lastName>Larsen</posterous:lastName>
        <posterous:nickName>morphar</posterous:nickName>
        <posterous:displayName>Dan Larsen</posterous:displayName>
      </posterous:author>
      <media:content type="image/png" height="299" width="361" url="http://getfile9.posterous.com/getfile/files.posterous.com/morphar/4SLg7GpXbrL3PFXlXQlTGhk97gGBG8GmzNfmoKsvVPxPkmKXzWDi1i3kVvzZ/Screen_shot_2009-11-18_at_09.4.png">
        <media:thumbnail height="299" width="361" url="http://getfile9.posterous.com/getfile/files.posterous.com/morphar/4SLg7GpXbrL3PFXlXQlTGhk97gGBG8GmzNfmoKsvVPxPkmKXzWDi1i3kVvzZ/Screen_shot_2009-11-18_at_09.4.png"/>
      </media:content>
    </item>
    <item>
      <pubDate>Sat, 14 Nov 2009 05:14:51 -0800</pubDate>
      <title>CO2 neutralitet eller elendig matematik? (danish)</title>
      <link>http://blog.techba.se/co2-neutralitet-eller-elendig-matematik-danis</link>
      <guid>http://blog.techba.se/co2-neutralitet-eller-elendig-matematik-danis</guid>
      <description>
        <![CDATA[<p>
	<p>Hver gang jeg h&oslash;rer udtrykket "CO2 neutralitet", er der noget i mig, der f&aring;r lyst til at r&aring;be og skrige: "VRANGL&AElig;RE!!!"...</p>
<p>Lad mig lige g&oslash;re det klart med det samme: <strong><em>jeg bekymrer mig om vores planet og dens klima!</em></strong></p>
<p>Men n&aring;r jeg ser initiativer som denne:&nbsp;<a href="http://www.ingenco2.dk/">CO2 neutralt website</a>, der lokker med s&aelig;tninger som: "Hjemmesider med god samvittighed" - ja, s&aring; er der noget, jeg ikke helt kan f&aring; til at stemme...</p>
<p>Dette er betydningen af neutral, i f&oslash;lge <a href="http://www.ordbogen.com/opslag.php?word=neutral&amp;dict=auto#ddno">ordbogen.com</a>:</p>
<p><em>som hverken skader eller gavner</em></p>
<p>&nbsp;</p>
<p>S&aring;... P&aring;standen er alts&aring;, at man kan k&oslash;be sig til, at CO2 udledningen for dit website, fuldst&aelig;ndigt oph&oslash;rer med at eksistere...</p>
<p>Dette er naturligvist&nbsp;<strong><span style="text-decoration: underline;">IKKE</span></strong> sandt!</p>
<p>Udleder du 1 ton CO2, er der udledt 1 ton CO2.</p>
<p>Hvis du samtidigt forhindrer andre i at udlede 1 ton CO2 - ja, s&aring; er der stadig udledt 1 ton CO2.</p>
<p>&nbsp;</p>
<p>Jeg var personligt involveret, den gang vi naivt troede, det gjorde en forskel, at opk&oslash;be og annullere CO2 kvoter...</p>
<p>I dag er jeg ret overbevist om, at man nok skal finde de CO2 kvoter man har behov for... Afrika skulle v&aelig;re et godt marked - de bruger dem ikke alligevel...</p>
<p>Hvilket bare g&oslash;r p&aring;standen om neutralitet v&aelig;rre - resultatet vil v&aelig;re 1 ton udledt CO2 + 1 ton udledt CO2 - dine penge!</p>
<p>&nbsp;</p>
<p>Uanset ovenst&aring;ende, er p&aring;standen "CO2 neutralitet" et falsum!</p>
<p>Den eneste m&aring;de at nedbringe CO2 udledningen er: <strong><em>sk&aelig;r ned p&aring; din udledning!</em></strong></p>
<p>&nbsp;</p>
<p>Hvis du virkelig bekymrer dig om CO2 udledning, i forbindelse med dit website, skulle du snakke med din foretrukne n&oslash;rd om Cloud computing!</p>
<p>Fordelene ved Cloud computing er bl.a. deling af resourcer, dermed et lavere samlet forbrug, dermed lavere CO2 udledning.</p>
<p>&nbsp;</p>
<p>Hvis du er interesseret i at l&aelig;re mere, er her et par links (p&aring; engelsk):</p>
<p>&nbsp;</p>
<p><a href="http://aws.amazon.com/ec2/">Amazon EC2 (Cloud Computing)</a></p>
<p>
<p><a href="http://andrewhitchcock.org/?post=305">Cloud Computing's Green Benefits</a>&nbsp;&lt;- nogle virkeligt interessante udregninger af normal server brug i forhold til cloud computing</p>
</p>
<p>&nbsp;</p>
<p><em>Hvis der er interesse for det, vil jeg gerne skrive en mere dybdeg&aring;ende artikel, om hvad der g&oslash;r den store CO2 forskel ved Cloud Computing.</em></p>
	
</p>

<p><a href="http://blog.techba.se/co2-neutralitet-eller-elendig-matematik-danis">Permalink</a> 

	| <a href="http://blog.techba.se/co2-neutralitet-eller-elendig-matematik-danis#comment">Leave a comment&nbsp;&nbsp;&raquo;</a>

</p>]]>
      </description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/233301/DanTwitter.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/eMCb7rqMgN</posterous:profileUrl>
        <posterous:firstName>Dan</posterous:firstName>
        <posterous:lastName>Larsen</posterous:lastName>
        <posterous:nickName>morphar</posterous:nickName>
        <posterous:displayName>Dan Larsen</posterous:displayName>
      </posterous:author>
    </item>
    <item>
      <pubDate>Fri, 13 Nov 2009 01:47:00 -0800</pubDate>
      <title>Google at it again! Go! Google Go...</title>
      <link>http://blog.techba.se/google-at-it-again-go-google</link>
      <guid>http://blog.techba.se/google-at-it-again-go-google</guid>
      <description>
        <![CDATA[<p>
	<p>An article about my initial experince with Google's new programming language <a href="http://golang.org/">"Go"</a>! <p /> This is probably a subject for the more nerdy of us ;-) <p /> Google has finally had it, with centuries old programming languages and their cumbersome ways! <p /> Anybody working with the technically side of the online industry, will know the names of at least the 10+ programming, scripting or markup languages. <br />Some of the more common are: <br />HTML, xHTML, CSS, PHP, ASP, JSP, Python, Ruby, Java, JavaScript, ActionScript, ECMAScript, C, C++, C#, Visual Basic, Bash, etc... <br />While some of the less common or less known are: <br />Lisp, Erlang, LUA, SmallTalk, Java (oops! dreaming...), Tcl, etc... <p /> Then there is technologies, protocols and standard/typical ways of doing things, which then gets a name... Like AJAX... <p /> Well... It looks like Google wants to clean up a bit... <br />So why not create a new programming language?!?! :-P <p /> It's actually one of their "Innovation Time Off" a.k.a. "20% projects", but it's being evaluated along other technologies, for use in new systems and setups. <p /> <span style="font-size: medium;"><span style="text-decoration: underline;"><strong>So... What is it? </strong></span></span><br />It's kind of a new programming language, but not really, but then again... :-P <br />It's a compiled language. The compiler is written in C, some C code can be linked with Go programs, making the language a little hard to define. <br />I think you can say, that Go is a new C++. <p /> <span style="font-size: medium;"><strong><span style="text-decoration: underline;">But why?.. </span></strong></span><br /><em>WE NEED IT! </em><br />As they state on their site (<a href="http://golang.org/">http://golang.org/</a>), we are using centuries old programming language, not designed to do what we need today. <p /> Most languages has been "updated", hacked, expanded, call it what you like, to do what we need... <br />But doing what we need, is not the same as doing it good or easy. <p /> I have created a higly scalable multiserver program in C/C++, where the servers know about each other - the core of the code, is very complicated, is held in many files and probably has a bug or two I haven't discovered yet. <br />With Googles Go language, I could have written it all in 1 (ONE!) file!!! <br />It would almost be hard to introduce a bug! <p /> <span style="font-size: medium;"><strong><span style="text-decoration: underline;">But how is that possible? </span></strong></span><br />Well... When working with multiple threads or forks, a lot of network connections, a bunch of files and a memory cache layer... You are in for a ride... <br />There is SO many things that can go run - so many things, that needs to be handled correctly, so many things that needs locks! <p /> What Google has done with Go, is to encapsulate a lot! of these tasks. <br />More specifically, they have sncapsulated the parts that are hardest and yet most used. <p /> When you need to have inter-process communication, you establish a channel and communicate! <br />In C/C++ this is done through either socket communication with all it's glory and weirdness - or through shared memory queues or variables, needing locks and unlocks on everything... <br />The last time, I wrote code for message queue, inter-process communication, I ended up with 500+ lines of code (if I remember correctly). <br />The basics of this, would in Go be a couple of lines of code, and with good error handling etc., it would probably be in the 10s!!! <p /> But... Even better yet, is the threading handling... In Go a parallel process is called... a go process :-) <br />Whenever yo need to run a parallel process, you just write that! <br />What is interesting, is what happens in the background! <p /> Go handles thread creation for you, but even better: it handles running you code in these threads! <br />Every system has a thread limit (and a fork limit), which limits you to a set amount of truly parallel processes. <br />But parallel processing acts as everything else on a computer - it waits... it waits A LOT! Mostly on resources being free'd and accessible. <p /> I'll try to describe this, by giving a quick overview of an example webserver: <br />If you run a thread pr. connection AND lowers the default allocated memory pr. thread, you would normally get about 6-7000 threads on a typical webserver. <br />This means you can handle 6-7000 connections every second, as long as you can deliver the content within a second... <p /> That a lot... If you have small commercial site, that tells a little about your company etc... <br />But let's say, you had a video delivery system... <br />If

YouTube were running on a single server, with this kind of setup, only 6-7000 people would be served over a minut or so. <br />6-7000 clients would connect, the same amount of threads would start - but then... the threads would spend most of it's time, just waiting for all kinds of things, like response from the client, when it has received a packet of data, etc. <p /> So... When you create this kind of you server, you would look into letting one thread handle more than 1 client. <p /> Go does this for you! <br />It even selects the thread to execute the code, based on whether it is in a blocking mode or not! <p /> To make things even more beautiful, it encapsulates the network communication in the same way! <p /> I mean it very seriously, when I claim, I would be able to melt down the core of my current C/C++ project to less than a 1/10th of the current, just by rewriting it in Go!!! <p /> <span style="font-size: medium;"><strong><span style="text-decoration: underline;">So... Why don't I? </span></strong></span><br />There is 2 simple reason: <br />1) Google discourage live use, just yet... <br />2) Go doesn't have a MySQL connector <p /> To sum up, why I believe Go will be my preferred language in a year or two: <br />* Unlike Java, Erlang and the likes, it is a compiled language! (no buggy VMs!!!!) <br />* It encapsultes most of the absolutely most difficult stuff like threads, inter-process communication and network communication <br />* It's a new language for new problems, aiming at doing high load, online server stuff the right way, easily! <br />* It rides on the back of C, removing the needs for a completely rewritten compiler, etc. <br />* It's kinda C/C++, but less difficult - i.e. it has garbage collection, nicer pointers handling, etc.* Because it's the only compiled language, aiming at the online server market <p /> I just want to make 1 thing extremely clear: <br />Go is a compiled language! <br />Like C/C++ you need a compiler on a (one) machine... <br />When you are done coding, compiling, testing - you just copy the final program to other machines! <br />You can cross-compile for other systems! <p /> A lot of people, loves the "write once, run everywhere" of Java... I hate it! <br />It's a big fat lie! <br />There's like a million Java VMs (Virtual Machines) out there! <br />If you want to run your code on any machine, you need a VM for that OS and CPU. <br />When you have installed that - you need to test your code on that machine!!! <br />"But shouldn't it just run?" - Yeah... but it don't! <br />There is a different set of capabilities and incapabilities pr. OS+CPU and a different set of bugs. <br />If you have Java VM xxx.xx.01 on one machine and Java V; xxx.xx.02 on another... You need to test! Trust me! <p /> I'd rather spend some extra time, coding and compiling for a couple of platforms, than testing and getting hit by weird bugs in live systems! <p /> I hope this will entice others to give Go a go!.. <br />I think it will be worth your time, to at least get into what this is all about...</p>
	
</p>

<p><a href="http://blog.techba.se/google-at-it-again-go-google">Permalink</a> 

	| <a href="http://blog.techba.se/google-at-it-again-go-google#comment">Leave a comment&nbsp;&nbsp;&raquo;</a>

</p>]]>
      </description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/233301/DanTwitter.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/eMCb7rqMgN</posterous:profileUrl>
        <posterous:firstName>Dan</posterous:firstName>
        <posterous:lastName>Larsen</posterous:lastName>
        <posterous:nickName>morphar</posterous:nickName>
        <posterous:displayName>Dan Larsen</posterous:displayName>
      </posterous:author>
    </item>
    <item>
      <pubDate>Fri, 13 Nov 2009 00:17:10 -0800</pubDate>
      <title>Microsoft granted a patent on 30 year old UNIX technology!..?!.. :-?</title>
      <link>http://blog.techba.se/microsoft-granted-a-patent-on-30-year-old-uni</link>
      <guid>http://blog.techba.se/microsoft-granted-a-patent-on-30-year-old-uni</guid>
      <description>
        <![CDATA[<p>
	<p>Microsoft was granted a patent, that basically describes the UNIX program sudo!</p>
<p>It's like patenting the grinding of coffee beans, before pouring hot water over them!</p>
<p>For those who don't know much about UNIX/Linux:</p>
<p>root: UNIX/Linux administrator</p>
<p>sudo: a small program, which purpose is to let "normal" users act as root, by "becomming" root or execute commands as root - of course root must grant you access to use the program!..</p>
<p>So... It seems Microsoft was granted a patent, that describes something that *NIX users has known and used for 29 years!!!!</p>
<p>Am I the only one, who just wants to denounce the authority of the US patents system? I mean... If somebody says to you: "you are violating our patent", I really just want to respond with: "what's that... pad-end? What is it? AND WHAT THE #@!&amp;% ARE YOU ACTUALLY ACCUSING ME OF!?!?! VIOLATING??!?!"... And so on... you get my drift :-P</p>
<p>&nbsp;</p>
<p>Read more:</p>
<p><a href="http://urlba.se/91" title="Groklaw article">Groklaw article</a></p>
<p><a href="http://urlba.se/92">Wikipedia article on sudo</a></p>
<p>&nbsp;</p>
	
</p>

<p><a href="http://blog.techba.se/microsoft-granted-a-patent-on-30-year-old-uni">Permalink</a> 

	| <a href="http://blog.techba.se/microsoft-granted-a-patent-on-30-year-old-uni#comment">Leave a comment&nbsp;&nbsp;&raquo;</a>

</p>]]>
      </description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/233301/DanTwitter.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/eMCb7rqMgN</posterous:profileUrl>
        <posterous:firstName>Dan</posterous:firstName>
        <posterous:lastName>Larsen</posterous:lastName>
        <posterous:nickName>morphar</posterous:nickName>
        <posterous:displayName>Dan Larsen</posterous:displayName>
      </posterous:author>
    </item>
    <item>
      <pubDate>Mon, 19 Oct 2009 12:45:00 -0700</pubDate>
      <title>The new 112 sticker on the police cars...</title>
      <link>http://blog.techba.se/the-new-112-sticker-on-the-police-cars</link>
      <guid>http://blog.techba.se/the-new-112-sticker-on-the-police-cars</guid>
      <description>
        <![CDATA[<p>
	<p>Have you seen this yet:</p>
<p><div class='p_embed p_image_embed'>
<img alt="112" height="210" src="http://getfile3.posterous.com/getfile/files.posterous.com/morphar/837pI8ptLsjNPFkiyWqdtzLLoV3gZVijXXrkmu9OGOSsun4HbfuAyx70FBHv/112.png" width="462" />
</div>
</p>
<p>Well... It's one of two new stickers, that some police cars have in denmark... <p />  From a distance it looks a bit different... <br />It makes me wonder, when somebody will do this:</p>
<p><div class='p_embed p_image_embed'>
<img alt="112_ca" height="210" src="http://getfile9.posterous.com/getfile/files.posterous.com/morphar/tewgGach7qrWF03rBcMtJpLBX11EPba7G7NjjQquiZz4Wkf2P3m8dPTzz3SO/112_ca.png" width="462" />
</div>
</p>
<p>:-D</p>
	
</p>

<p><a href="http://blog.techba.se/the-new-112-sticker-on-the-police-cars">Permalink</a> 

	| <a href="http://blog.techba.se/the-new-112-sticker-on-the-police-cars#comment">Leave a comment&nbsp;&nbsp;&raquo;</a>

</p>]]>
      </description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/233301/DanTwitter.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/eMCb7rqMgN</posterous:profileUrl>
        <posterous:firstName>Dan</posterous:firstName>
        <posterous:lastName>Larsen</posterous:lastName>
        <posterous:nickName>morphar</posterous:nickName>
        <posterous:displayName>Dan Larsen</posterous:displayName>
      </posterous:author>
      <media:content type="image/png" height="210" width="462" url="http://getfile3.posterous.com/getfile/files.posterous.com/morphar/837pI8ptLsjNPFkiyWqdtzLLoV3gZVijXXrkmu9OGOSsun4HbfuAyx70FBHv/112.png">
        <media:thumbnail height="210" width="462" url="http://getfile3.posterous.com/getfile/files.posterous.com/morphar/837pI8ptLsjNPFkiyWqdtzLLoV3gZVijXXrkmu9OGOSsun4HbfuAyx70FBHv/112.png"/>
      </media:content>
      <media:content type="image/png" height="210" width="462" url="http://getfile9.posterous.com/getfile/files.posterous.com/morphar/tewgGach7qrWF03rBcMtJpLBX11EPba7G7NjjQquiZz4Wkf2P3m8dPTzz3SO/112_ca.png">
        <media:thumbnail height="210" width="462" url="http://getfile9.posterous.com/getfile/files.posterous.com/morphar/tewgGach7qrWF03rBcMtJpLBX11EPba7G7NjjQquiZz4Wkf2P3m8dPTzz3SO/112_ca.png"/>
      </media:content>
    </item>
    <item>
      <pubDate>Fri, 16 Oct 2009 03:42:00 -0700</pubDate>
      <title>Would you please shut up Jenny Boriss!!!</title>
      <link>http://blog.techba.se/would-you-please-shut-up-jenny-boriss</link>
      <guid>http://blog.techba.se/would-you-please-shut-up-jenny-boriss</guid>
      <description>
        <![CDATA[<p>
	<p>Is it just me, or is the IT world becoming a kindergarten?!?!?!</p>
<p>Mozilla really don't want their Firefox browser, to be number 4 out of 5 on Microsoft's list of available browsers, during the Windows Installation procedure...</p>
<div>When o' when, did it come to this?</div>
<div>Anybody have a problem with me favorising Arial over Helvetica in my blog's CSS?</div>
<p />
<div>Read the entire story, over at <a href="http://urlba.se/8j" title="Apple gets best spot in EU browser 'ballot screen,' Mozilla says" target="_blank">Computerworld</a>.</div>
<p>&nbsp;</p>
	
</p>

<p><a href="http://blog.techba.se/would-you-please-shut-up-jenny-boriss">Permalink</a> 

	| <a href="http://blog.techba.se/would-you-please-shut-up-jenny-boriss#comment">Leave a comment&nbsp;&nbsp;&raquo;</a>

</p>]]>
      </description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/233301/DanTwitter.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/eMCb7rqMgN</posterous:profileUrl>
        <posterous:firstName>Dan</posterous:firstName>
        <posterous:lastName>Larsen</posterous:lastName>
        <posterous:nickName>morphar</posterous:nickName>
        <posterous:displayName>Dan Larsen</posterous:displayName>
      </posterous:author>
    </item>
    <item>
      <pubDate>Mon, 12 Oct 2009 15:24:33 -0700</pubDate>
      <title>Patents revisited...</title>
      <link>http://blog.techba.se/patents-revisited-0</link>
      <guid>http://blog.techba.se/patents-revisited-0</guid>
      <description>
        <![CDATA[<p>
	<p>O.k...&nbsp;<a href="http://urlba.se/8c" title="Facebook ensnared in two social networking patent disputes" target="_blank">Here we go again</a>...</p>
<p>Just had to add this link.</p>
<p>Facebook is being sued for patent infringements...</p>
<p>They have created a social network!!!</p>
<p>Oh! Aaaand... You can decide who can view your profile!!! Those bastards!..</p>
<p>&nbsp;</p>
<p>That's it!.. I'm filing for a patent called: "a structured way of bothering, annoying and pestering people"...</p>
<p>Then... I'm gonna sue any patent office I can find! :-D</p>
	
</p>

<p><a href="http://blog.techba.se/patents-revisited-0">Permalink</a> 

	| <a href="http://blog.techba.se/patents-revisited-0#comment">Leave a comment&nbsp;&nbsp;&raquo;</a>

</p>]]>
      </description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/233301/DanTwitter.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/eMCb7rqMgN</posterous:profileUrl>
        <posterous:firstName>Dan</posterous:firstName>
        <posterous:lastName>Larsen</posterous:lastName>
        <posterous:nickName>morphar</posterous:nickName>
        <posterous:displayName>Dan Larsen</posterous:displayName>
      </posterous:author>
    </item>
    <item>
      <pubDate>Sat, 10 Oct 2009 02:55:00 -0700</pubDate>
      <title>Patents explained...</title>
      <link>http://blog.techba.se/patents-explained</link>
      <guid>http://blog.techba.se/patents-explained</guid>
      <description>
        <![CDATA[<p>
	
<div>
<p>Hmmm....</p>
<p>&nbsp;</p>
<p>I just&nbsp;<a href="http://urlba.se/8a" title="Eolas sues corporate giants over Web technology" target="_blank">read this cnet story</a>&nbsp;about&nbsp;Eolas suing Microsoft, amongst others, for using what appears to be "AJAX"...</p>
<p>&nbsp;</p>
<p><strong>What the f@#%!</strong></p>
<p>&nbsp;</p>
<p>Let me try to explain US patents, as I have come to understand them recently...</p>
<p>I will try to do this using an analogy:</p>
<p>You are building a house...</p>
<p>Somebody sees this and while you are away, takes a shit in your toilet, while documenting it thoroughly...</p>
<p>And from now on... You'll have to pay this jerk, every time you have to take a shit...</p>
<p>After all... He can prove, he was the first one to take a shit in your toilet!!!</p>
<p>&nbsp;</p>
<p><strong>Seriously!</strong></p>
<p>This is what the entire Eoala vs. Microsoft and other are all about!</p>
<p>Microsoft build a browser, with some function and enterpreters (i.e. you can shit in it and flush).</p>
<p>Then some idiot comes along and proves that it works... Now he wants Microsoft to for it!?!?!?</p>
<p>&nbsp;</p>
<p>What beats me the most, though... Is that this can happen in the US... I mean... They're the once that makes it o.k. to shoot someone who invades your private property... Think about it!..</p>
<p>Shouldn't it be o.k. for Microsoft to shoot somebody here???</p>
<p>&nbsp;</p>
<p>Well enough about that... Just had to get this out of my head! ;-)</p>
</div>
<p>&nbsp;</p>
	
</p>

<p><a href="http://blog.techba.se/patents-explained">Permalink</a> 

	| <a href="http://blog.techba.se/patents-explained#comment">Leave a comment&nbsp;&nbsp;&raquo;</a>

</p>]]>
      </description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/233301/DanTwitter.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/eMCb7rqMgN</posterous:profileUrl>
        <posterous:firstName>Dan</posterous:firstName>
        <posterous:lastName>Larsen</posterous:lastName>
        <posterous:nickName>morphar</posterous:nickName>
        <posterous:displayName>Dan Larsen</posterous:displayName>
      </posterous:author>
    </item>
    <item>
      <pubDate>Tue, 30 Jun 2009 05:24:00 -0700</pubDate>
      <title>Welcome to morphar's blog</title>
      <link>http://blog.techba.se/welcome-to-morphars-blog-0</link>
      <guid>http://blog.techba.se/welcome-to-morphars-blog-0</guid>
      <description>
        <![CDATA[<p>
	<p><span style="font-size: small;">Well... I thought it was about time, that I got started on my personal blog...So... Here it is! :-)</span></p>
<p><span style="font-size: small;">I plan on blogging about, whatever my brain decides to keep returning to.</span></p>
<p><span style="font-size: small;">So... Sometimes it will be tech stuff, sometimes it will be music, movies, etc...</span></p>
<p><span style="font-size: small;">I hope this will contribute to a few laughs or a solution to some problem...</span></p>
<p><span style="font-size: small;"><br /></span></p>
<p><span style="font-size: small;">Hope you enjoy!</span></p>
<p><span style="font-size: small;">Please comment, if you have any thoughts you would like to share ;-)</span></p>
<p><span style="font-size: small;"><br /></span></p>
<p><span style="font-size: small;">Best regards</span></p>
<p><span style="font-size: small;">Dan Larsen</span></p>
	
</p>

<p><a href="http://blog.techba.se/welcome-to-morphars-blog-0">Permalink</a> 

	| <a href="http://blog.techba.se/welcome-to-morphars-blog-0#comment">Leave a comment&nbsp;&nbsp;&raquo;</a>

</p>]]>
      </description>
      <posterous:author>
        <posterous:userImage>http://files.posterous.com/user_profile_pics/233301/DanTwitter.jpg</posterous:userImage>
        <posterous:profileUrl>http://posterous.com/users/eMCb7rqMgN</posterous:profileUrl>
        <posterous:firstName>Dan</posterous:firstName>
        <posterous:lastName>Larsen</posterous:lastName>
        <posterous:nickName>morphar</posterous:nickName>
        <posterous:displayName>Dan Larsen</posterous:displayName>
      </posterous:author>
    </item>
  </channel>
</rss>
