<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
    xmlns:admin="http://webns.net/mvcb/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:content="http://purl.org/rss/1.0/modules/content/">

    <channel>
    <title>Planet Erlang</title>
    <link>http://www.planeterlang.org/en/planet/planet</link>
    <description></description>
    <dc:language>en</dc:language>
    <dc:creator>Planet Erlang</dc:creator>
    <dc:rights>Copyright 2010</dc:rights>
    <dc:date>2010-02-09T00:56:40+00:00</dc:date>
    <admin:generatorAgent rdf:resource="http://www.expressionengine.com/" />
    

    <item>
      <title>First week in the new office</title>
      <link>http://www.planeterlang.org/en/planet/article/First_week_in_the_new_office/</link>
      <guid>http://www.planeterlang.org/en/planet/article/First_week_in_the_new_office/</guid>
      <author>Damien Katz</author>
      <description><![CDATA[<p>Last week was our first week in our new office in Old Downtown Oakland. It&#8217;s a really neat area with lots of restaurants and bars, and hardly any murders.</p>

<p>Oh yeah, we&#8217;ve changed our name to Couchio. Our new blog is here <a href="http://couch.io">couch.io</a>.</p>

<p>Our office:<br />
<span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://damienkatz.net/pics/office - 4.jpg"><img alt="office - 4.jpg" src="http://damienkatz.net/pics/office - 4-thumb-400x267.jpg" width="400" height="267" class="mt-image-none" style="" /></a></span></p>

<p>Our office manager Claire:<br />
<span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://damienkatz.net/pics/office - 6.jpg"><img alt="office - 6.jpg" src="http://damienkatz.net/pics/office - 6-thumb-400x472.jpg" width="400" height="472" class="mt-image-none" style="" /></a></span></p>

<p>Chris and Mikeal:<br />
<span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://damienkatz.net/pics/office - 1.jpg"><img alt="office - 1.jpg" src="http://damienkatz.net/pics/office - 1-thumb-400x267.jpg" width="400" height="267" class="mt-image-none" style="" /></a></span></p>

<p>Claire and Jan:<br />
<span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://damienkatz.net/pics/office - 2.jpg"><img alt="office - 2.jpg" src="http://damienkatz.net/pics/office - 2-thumb-400x267.jpg" width="400" height="267" class="mt-image-none" style="" /></a></span></p>

<p>Super Awesome Art by <a href="http://www.juliearmbruster.net/">Julie Armbruster</a>:<br />
<span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://damienkatz.net/pics/office - 3.jpg"><img alt="office - 3.jpg" src="http://damienkatz.net/pics/office - 3-thumb-400x309.jpg" width="400" height="309" class="mt-image-none" style="" /></a></span></p>

<p>Me:<br />
<span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://damienkatz.net/pics/office - 7.jpg"><img alt="office - 7.jpg" src="http://damienkatz.net/pics/office - 7-thumb-400x374.jpg" width="400" height="374" class="mt-image-none" style="" /></a></span></p>

<p>My Office:<br />
<span class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="http://damienkatz.net/pics/office - 5.jpg"><img alt="office - 5.jpg" src="http://damienkatz.net/pics/office - 5-thumb-400x267.jpg" width="400" height="267" class="mt-image-none" style="" /></a></span></p>

<p>So far we are really disorganized and discombobulated. But I&#8217;m are working on it! I even bought Management for Dummies. Things will be running smoothly in no time ;)</p>

<p>Also we are looking hard for someone to help us offer CouchDB support and hopefully build a whole support organization. Email me damien@couch.io if you are interested or know someone who is.</p> 
]]>
</description>
      <dc:subject>Blogs, Damien Katz</dc:subject>
      <dc:date>2010-02-09T00:56:40+00:00</dc:date>
    </item>

    <item>
      <title>ProcessOne at FOSDEM and XMPP Summit</title>
      <link>http://www.planeterlang.org/en/planet/article/ProcessOne_at_FOSDEM_and_XMPP_Summit/</link>
      <guid>http://www.planeterlang.org/en/planet/article/ProcessOne_at_FOSDEM_and_XMPP_Summit/</guid>
      <author>Nicolas Vérité</author>
      <description><![CDATA[<p>ProcessOne will be present at FOSDEM and XMPP Summit.</p> <p>This week-end, we will be joining the XMPP community at Brussels, for the FOSDEM, as well as the XMPP-specific events: <a href="http://xmpp.org/summit/summit8.shtml">XMPP hackfest and XMPP Summit</a>.</p>
<ul>
<li>The <a href="http://fosdem.org/2010/">FOSDEM</a>, or Free and open source software developers&#8217; european meeting, will be held on Saturday, as well as Sunday, at ULB Campus Solbosch, with myriads of FOSS people for different countries and profiles.</li>
<li>Before and after this event, the XMPP community will gather on Friday for the XMPP hackfest, and Monday for the XMPP Summit.</li>
</ul>
<p>The XMPP hackfest is the place where coders can code and test interop, while the XMPP Summit is more oriented towards specifications improving.</p>
<p>ProcessOne will be there and demo three of our software products:</p>
<ul>
<li>OneTeam, our Firefox extension, providing interesting features</li>
<li>OneTeam for iPhone, enabling the always-on XMPP experience to a pocket near you</li>
<li>IMGateways, our transports, especially our Twitter gateway, as well as our Google Wave gateway</li>
</ul>
<p>Feel free to join, as we would like to show you our software, and we would like to have your opinion on these.</p> 
]]>
</description>
      <dc:subject>Companies, ProcessOne</dc:subject>
      <dc:date>2010-02-04T18:19:01+00:00</dc:date>
    </item>

    <item>
      <title>02 February 2010: Erlang Solutions at QCon London 2010</title>
      <link>http://www.planeterlang.org/en/planet/article/02_February_2010_Erlang_Solutions_at_QCon_London_2010/</link>
      <guid>http://www.planeterlang.org/en/planet/article/02_February_2010_Erlang_Solutions_at_QCon_London_2010/</guid>
      <author></author>
      <description><![CDATA[<p>Erlang Solutions Ltd. sponsors&#160; <a href="http://qconlondon.com/" target="_blank">QCon London 2010</a>, hosts the track, gives the talks and organises Erlang User Group meeting there.<br /><br />Qcon&#160; is an annual London enterprise software development conference designed for team leads, architects and project management. It gathers Java, .NET, Ruby, SOA, Agile, Erlang and architecture communities. <br /><br />Erlang Solutions will be present at QCon on <span style="font-weight: bold;">Friday, 12th March 2010</span>, when Ulf Wiger (CTO of Erlang Solutions) will be hosting the <a href="http://qconlondon.com/london-2010/tracks/show_track.jsp?trackOID=333" target="_blank">Concurrency Challenge</a> track. He will also give an introductory talk <a href="http://qconlondon.com/london-2010/presentation/Introduction:+The+Concurrency+Challenge" target="_blank">The Concurrency Challenge</a> at <span style="font-weight: bold;">10:20</span> and a presentation on <a href="http://qconlondon.com/london-2010/presentation/Death+by+accidental+complexity" target="_blank">Death by accidental complexity</a> at<span style="font-weight: bold;"> 4:30</span> pm. <br /><br />A day before, on <span style="font-weight: bold;">11th March 2010 from 18:30 until 20:30</span> Erlang Solutions organises special free <a href="https://secure.trifork.com/london-2010/freeevent/register.m?eventOID=2344" target="_blank">London Erlang User Group Meeting</a> at QCon. Everyone is welcome, even if you do not participate in QCon London 2010, just register <a href="https://secure.trifork.com/london-2010/freeevent/register.m?eventOID=2344" target="_blank">here</a>.There will be four talks:<br />
</p><ul>
<li><span style="font-weight: bold;">Francesco Cesarini</span> presents &#8220;Erlang community around the world&#8221; </li>
<li><span style="font-weight: bold;">Ulf Wiger</span> talks about &#8220;Erlang in the Clouds&#8221; </li>
<li><span style="font-weight: bold;">Justin Sheehy</span> will present &#8220;Introduction to RIAK&#8221; &#38; </li>
<li><span style="font-weight: bold;">Joe Armstrong</span> talks about &#8220;Erlang Libraries&#8221;</li></ul><p>QCON 2010 will be held in <a href="http://www.qeiicc.co.uk/" target="_blank">The Queen Elizabeth II Conference Centre</a>, in London from <span style="font-weight: bold;">8th until 12th March 2010.</span><br />
</p><div style="text-align: center;">&#160;<span style="font-weight: bold;">See you there! </span><br /><br /></div>
<div style="text-align: center;"><a href="http://www.qconlondon.com/" target="_blank"><img style="width: 184px; height: 60px;" src="../../../upload/images/42/logo_qcon.gif" /></a><br /></div>
<div style="text-align: center; font-weight: bold;">Tutorials: March 8-9, 2010<br /></div>
<div style="text-align: center; font-weight: bold;">Conference:&#160; March 10-12, 2010<br /></div><p><br />
</p><div style="text-align: center;"><p><span style="font-weight: bold;">When registering for the QCon, use the Discount Code &#8220;erlangug&#8221; and save&#160; &#163;50 off the price!<br /><br />
 </p>

<p></span></p></div>

<p>&nbsp;</p>

<p>&nbsp;</p>

<p>&nbsp;</p>

<p><br />
&nbsp; </p>

<p><br />
&nbsp;  &nbsp;  <br />
</p> 
]]>
</description>
      <dc:subject>Companies, Erlang Training and Consulting</dc:subject>
      <dc:date>2010-02-02T16:30:25+00:00</dc:date>
    </item>

    <item>
      <title>Hot Code Loading in Node.js</title>
      <link>http://www.planeterlang.org/en/planet/article/Hot_Code_Loading_in_Node.js_/</link>
      <guid>http://www.planeterlang.org/en/planet/article/Hot_Code_Loading_in_Node.js_/</guid>
      <author>Simon Willison</author>
      <description><![CDATA[<div class="blogmark segment"><p><a href="http://romeda.org/blog/2010/01/hot-code-loading-in-nodejs.html?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed: LiminalExistence (Liminal Existence)">Hot Code Loading in Node.js</a>. Blaine Cook’s patch for Node.js that enables Erlang-style hot code loading, so you can switch out your application logic without restarting the server or affecting existing requests. This could make deploying new versions of Node applications trivial. I’d love to see a Node hosting service that allows you to simply upload a script file and have it execute on the Web.</p>
</div> 
]]>
</description>
      <dc:subject>Blogs, Simon Willison</dc:subject>
      <dc:date>2010-01-31T14:57:53+00:00</dc:date>
    </item>

    <item>
      <title>Erlang Factory SF Bay Area 2010</title>
      <link>http://www.planeterlang.org/en/planet/article/Erlang_Factory_SF_Bay_Area_2010/</link>
      <guid>http://www.planeterlang.org/en/planet/article/Erlang_Factory_SF_Bay_Area_2010/</guid>
      <author>steve</author>
      <description><![CDATA[<p>Interested in Erlang? You might consider attending <a rel="nofollow" target="_blank" href="http://www.erlang-factory.com/conference/SFBay2010">Erlang Factory SF Bay Area 2010</a>. Below is a <a rel="nofollow" target="_blank" href="http://www.erlang.org/cgi-bin/ezmlm-cgi?4:mss:49168:201001:fcgfnebjjkebpbdcnmpd">message</a> that <a rel="nofollow" target="_blank" href="http://www.erlang-factory.com/conference/SFBay2010/speakers/francescocesarini">Francesco Cesarini</a>, conference organizer and co-author of the most excellent book <em><a rel="nofollow" target="_blank" href="http://oreilly.com/catalog/9780596518189">Erlang Programming</a></em>, sent to the <a rel="nofollow" target="_blank" href="http://groups.google.com/group/erlang-programming">erlang-questions list</a> yesterday providing more information about the conference, especially pointing out that the Very Early Bird registration deadline is <em><strong>tomorrow (Sunday January 31)</strong></em>. Hope to see you there!</p>
<blockquote><p>Hi All,</p>
<p>a note to say that we are almost done with the programme for the 2010 SF Bay Area Erlang Factory. This year, we are lucky to have keynote speakers such as <a rel="nofollow" target="_blank" href="http://www.erlang-factory.com/conference/SFBay2010/speakers/joearmstrong">Joe Armstrong</a>, <a rel="nofollow" target="_blank" href="http://www.erlang-factory.com/conference/SFBay2010/speakers/BjarneDacker">Bjarne Dacker</a>, <a rel="nofollow" target="_blank" href="http://www.erlang-factory.com/conference/SFBay2010/speakers/kennethlundin">Kenneth Lundin</a> and <a rel="nofollow" target="_blank" href="http://www.erlang-factory.com/conference/SFBay2010/speakers/SteveVinoski">Steve Vinoski</a>. They will be giving four of the 35 scheduled talks on the 25th and 26th of March in the San Francisco Bay Area. The almost complete programme is available here:</p>
<p><a rel="nofollow" target="_blank" href="http://erlang-factory.com/conference/SFBay2010/programme">http://erlang-factory.com/conference/SFBay2010/programme</a></p>
<p>The conference will be preceded by three days of University courses taught by experts such as <a rel="nofollow" target="_blank" href="http://www.erlang-factory.com/conference/SFBay2010/speakers/SimonThompson">Simon Thompson</a>, <a rel="nofollow" target="_blank" href="http://www.erlang-factory.com/conference/SFBay2010/speakers/JohnHughes">John Hughes</a>, <a rel="nofollow" target="_blank" href="http://www.erlang-factory.com/conference/SFBay2010/speakers/thomasarts">Thomas Arts</a>, <a rel="nofollow" target="_blank" href="http://www.erlang-factory.com/conference/SFBay2010/speakers/janhenrynystrom">Henry Nystrom</a> and <a rel="nofollow" target="_blank" href="http://www.erlang-factory.com/conference/SFBay2010/speakers/KevinSmith">Kevin Smith</a>. Come and learn Erlang, OTP, QuickCheck or Web Development with Erlang. More information on the courses are here:</p>
<p><a rel="nofollow" target="_blank" href="http://erlang-factory.com/conference/SFBay2010/university">http://erlang-factory.com/conference/SFBay2010/university</a></p>
<p><strong>This *Sunday* (January 31st) is the deadline for the very early bird deadline. Register by Sunday night and save $400 on the on-site registration price.</strong></p>
<p>The conference hotel and venue is the <a rel="nofollow" target="_blank" href="http://www1.hilton.com/en_US/hi/hotel/SFOAPHF-Hilton-San-Francisco-Airport-California/index.do">SF Airport Hilton</a>, a short BART / Caltrain ride from SF and the Valley. We have secured a very competitive price of US$109 per room and night at the conference hotel, this being one of the reasons for us choosing it. The other is the lower price of the venue, allowing us to pass on the savings to the delegates through a higher very early bird discount. We are planning an ErlLounge open to everyone who can&#8217;t make the two days on the 25th, and hope we will be able to surpass last year&#8217;s success. If you have thoughts or questions, you are welcome to drop me a line.</p>
<p>Hope to see you all there!</p>
<p>Francesco<br />
&#8211;<br />
<a rel="nofollow" target="_blank" href="http://www.erlang-solutions.com/">http://www.erlang-solutions.com</a></p></blockquote> 
]]>
</description>
      <dc:subject>Blogs, Steve Vinoski</dc:subject>
      <dc:date>2010-01-30T22:29:40+00:00</dc:date>
    </item>

    <item>
      <title>Interview with Erlang Factory 2010 Conference Organizer Francesco Cesarini</title>
      <link>http://www.planeterlang.org/en/planet/article/Interview_with_Erlang_Factory_2010_Conference_Organizer_Francesco_Cesarini/</link>
      <guid>http://www.planeterlang.org/en/planet/article/Interview_with_Erlang_Factory_2010_Conference_Organizer_Francesco_Cesarini/</guid>
      <author>Chad DePue</author>
      <description><![CDATA[ 
]]>
</description>
      <dc:subject>Blogs, Erlang Inside</dc:subject>
      <dc:date>2010-01-30T19:19:20+00:00</dc:date>
    </item>

    <item>
      <title>What to do About Erlang&#8217;s Records?</title>
      <link>http://www.planeterlang.org/en/planet/article/What_to_do_About_Erlangs_Records/</link>
      <guid>http://www.planeterlang.org/en/planet/article/What_to_do_About_Erlangs_Records/</guid>
      <author>James Hague</author>
      <description><![CDATA[<p>The second most common complaint about Erlang, right after confusion about commas and semicolons as separators, is about records. Gotta give those complainers some credit, because they&#8217;ve got taste. Statically defined records are out of place in a highly dynamic language. There have been various proposals over the years, including Richard O&#8217;Keefe&#8217;s abstract syntax patterns and Joe Armstrong&#8217;s structs. Getting one of those implemented needs the solid support of the Erlang system maintainers, and it&#8217;s understandably difficult to commit to such a sweeping change to the language. So what are the alternatives to records that can be used right now?<br />
<br></br><br></br>To clarify, I&#8217;m really talking about smallish, purely functional <a href="53.html">dictionaries</a>. For large amounts of data there&#8217;s already the <tt>gb_trees</tt> module, plus several others with similar purposes.<br />
<br></br><br></br>In Python, a technique I often use is to return a small dictionary with a couple of named values in it. I could use a tuple, but a dictionary removes the need to worry about order. This is straightforward in Erlang, too:
</p><pre>fun(length) -> 46;
   (width)  -> 17;
   (color)  -> sea_green
end.
</pre><p>Getting the value corresponding to a key is easy enough:
</p><pre>Result(color)
</pre><p>This is handy, but only in certain situations. One shortcoming is that there&#8217;s no way to iterate through the keys. Well, there&#8217;s this idea:
</p><pre>fun(keys)   -> [length, width, color];
   (length) -> 46;
   (width)  -> 17;
   (color)  -> sea_green
end.
</pre><p>Now there&#8217;s a way to get a list of keys, but there&#8217;s room for error: each key appears twice in the code. The second issue is there&#8217;s no simple way to take one dictionary and create a new one with a value added or removed. This road is becoming messy to go down, so here&#8217;s more data-driven representation:
</p><pre>[{length, 46}, {width, 17}, {color, sea_green}]
</pre><p>That&#8217;s just a list of key/value pairs, which is searchable via the fast, written-in-C function <tt>lists:keyfind</tt>. New values can be appended to the head of the list, and there are other functions in the <tt>lists</tt> module for deleting and replacing values. Iteration is also easy: it&#8217;s just a list.<br />
<br></br><br></br>We still haven&#8217;t bettered records in all ways. A big win for records, and this is something few purely functional data structures handle well, is the ability to create a new version where <em>multiple</em> keys get different values. For example, start with the above list and create this:
</p><pre>[{length, 200}, {width, 1400}, {color, sea_green}]
</pre><p>If we knew that only those three keys were allowed, fine, but that&#8217;s cheating. The whole point of dictionaries is that we can put all sorts of stuff in there, and it doesn&#8217;t change how the dictionary is manipulated. The general solution is to delete all the keys that should have new values, then insert the new key/value pairs at the head of the list. Or step through the list and see if the current key is one that has a new value and replace it. These are not linear algorithms, unfortunately. And you&#8217;ve got the same problem if you want to change multiple values in a <tt>gb_tree</tt> at the same time.<br />
<br></br><br></br>What I&#8217;ve been using, and I admit that this isn&#8217;t perfect, is the key/value list approach, but forcing the lists to be sorted.This allows the original list and a list of changes to be merged together in linear time. The downside is that I have to remember to keep a literal list in sorted order (or write a parse transform to do this for me).<br />
<br></br><br></br>There&#8217;s <em>still</em> one more feature of records that can&#8217;t be emulated: extracting / comparing values using Erlang&#8217;s standard pattern matching capabilities. It&#8217;s not a terrible omission, but there&#8217;s no way to dodge this one: it needs compiler and runtime system support.
</p> 
]]>
</description>
      <dc:subject>Blogs, Programming in the 21st Century</dc:subject>
      <dc:date>2010-01-30T07:00:00+00:00</dc:date>
    </item>

    <item>
      <title>Nothing Like a Little Bit of Magic</title>
      <link>http://www.planeterlang.org/en/planet/article/Nothing_Like_a_Little_Bit_of_Magic/</link>
      <guid>http://www.planeterlang.org/en/planet/article/Nothing_Like_a_Little_Bit_of_Magic/</guid>
      <author>James Hague</author>
      <description><![CDATA[<p>Like so many other people, I was enthralled by the <a href="http://www.youtube.com/watch?v=UcWoytJPJbo">iPad introduction</a>. I haven&#8217;t held or even seen an iPad in person yet, but that video hit me on a number of levels. It&#8217;s a combination of brand new hardware&#8212;almost dramatically so&#8212;and uses for it that are coming from a completely different line of thinking. I realized it&#8217;s been a long time since I felt that way about the introduction of a new computer.<br />
<br></br><br></br>I remember the first time I tried a black and white 128K Mac in a retail store. A mouse! Really tiny pixels! Pull-down menus! Graphics and text mixed together! And the only demo program was what made the whole experience click: <a href="http://en.wikipedia.org/wiki/MacPaint">MacPaint</a>.<br />
<br></br><br></br>I remember when the Atari 520ST was announced. Half a megabyte of memory! Staggering amounts of power for less than $1000! A Mac-like interface but in full color! Some of the demos were simple slideshows of 16-color 320x200 images, done with a program called <a href="http://en.wikipedia.org/wiki/NeoChrome">NeoChrome</a>, but I had never seen anything like them before.<br />
<br></br><br></br>I remember when the Amiga debuted that same year. Real multitasking! Digitized sound! Stereo! Hardware for moving around big bitmaps instead of just tiny sprites! Images showing thousands of colors at once! Just the <a href="http://www.youtube.com/watch?v=-ga41edXw3A">bouncing ball</a> demo was outside what I expected to ever see on a computer. And there was a flight-sim with filled polygon graphics. Behind the scenes it was the fancy hardware enabling it all, but it was the optimism and feeling of new possibilities that fueled the excitement.<br />
<br></br><br></br>I remember when the Macintosh II came out, with 24-bit color and impossibly high display resolutions for the time. It seemed like a supercomputer on a desk, the kind of thing that only high-end graphics researchers would have previously had access to.<br />
<br></br><br></br>PCs never hit me so unexpectedly and all at once, but there were a few years when 3D hardware started appearing where it felt like the old rules had been thrown out and imagining the future was more important than looking back on the same set of ideas.<br />
<br></br><br></br>Am I going to buy an iPad? I don&#8217;t know yet. I never bought most of the systems listed above. But I am glad I&#8217;ve been experiencing that old optimism caused by a mix of hardware and software that suddenly invalidates many of the old, comfortable rules and opens up territory that hasn&#8217;t been endlessly trod upon.
</p> 
]]>
</description>
      <dc:subject>Blogs, Programming in the 21st Century</dc:subject>
      <dc:date>2010-01-29T07:00:00+00:00</dc:date>
    </item>

    <item>
      <title>Google Wave XMPP notification gateway</title>
      <link>http://www.planeterlang.org/en/planet/article/Google_Wave_XMPP_notification_gateway/</link>
      <guid>http://www.planeterlang.org/en/planet/article/Google_Wave_XMPP_notification_gateway/</guid>
      <author>Mickaël Rémond</author>
      <description><![CDATA[<p>At ProcessOne, we have developed an experimental notification Google Wave XMPP gateway.</p> <p>I wrote it because, in the current state of Wave usage, my contacts always had to write me an XMPP message or send me an email to explain that I have content available.</p>
<p>I felt this was for me a large deterrent for using it and quite paradoxical in a real-time web world.</p>
<p>To solve this problem and benefit from the largely used XMPP protocol for notification, I wrote a Google Wave gateway. For now, it is quite raw because it relies on GWT client protocol and lacks any mechanism from Google to do delegated authentication. However, we are going to implement a more standard client protocol and delegated authentication as Google makes those features available.</p>
<p>Anyway, here is a small demo of how to use it to give you an idea of the user experience.</p>
<p align="center">
&lt;object data=&#8220;http://www.youtube.com/v/kuAqXhhATII&amp;hl=en_US&amp;fs=1&amp;&#8221; height=&#8220;340&#8221; type=&#8220;application/x-shockwave-flash&#8221; width=&#8220;560&#8221;&gt;
<param name="allowFullScreen" value="true" />
<param name="allowscriptaccess" value="always" />
<param name="src" value="http://www.youtube.com/v/kuAqXhhATII&amp;hl=en_US&amp;fs=1&amp;" />
<param name="allowfullscreen" value="true" />
&lt;/object&gt;
</p>
<p>It is deployed on <a href="https://www.talkr.im/">talkr.IM</a> server, so you can give it a try.</p>
<p>Enjoy!</p> 
]]>
</description>
      <dc:subject>Companies, ProcessOne</dc:subject>
      <dc:date>2010-01-28T11:00:35+00:00</dc:date>
    </item>

    <item>
      <title>Talkr.IM service update: Google Wave gateway</title>
      <link>http://www.planeterlang.org/en/planet/article/Talkr.IM_service_update_Google_Wave_gateway/</link>
      <guid>http://www.planeterlang.org/en/planet/article/Talkr.IM_service_update_Google_Wave_gateway/</guid>
      <author>Nicolas Vérité</author>
      <description><![CDATA[<p>The Talkr.IM XMPP/Jabber service will undergo today a service update,&nbsp; adding a gateway to Google Wave.</p> <p>ProcessOne&#8217;s public XMPP service Talkr.IM will receive a new feature for all  users: a Google Wave gateway. This gateways will enable Talkr.IM XMPP users to be notified of modified Waves.</p>
<p>Our Google Wave gateway will notify the subscribed users of all the changes in a Wave, by providing an direct link to a maximized Wave window. The other windows (Navigation, Contacts, Search) will be minimized.</p>
<p>We are planning a service interruption at:</p>
<ul>
<li>10:00 UTC</li>
<li>11:00 Paris</li>
<li>13:00 Moscow</li>
<li>02:00 Los Angeles</li>
<li>05:00 New York</li>
<li>19:00 Tokyo</li>
</ul>
<p>We will remind our online users a few minutes before.</p> 
]]>
</description>
      <dc:subject>Companies, ProcessOne</dc:subject>
      <dc:date>2010-01-27T09:00:47+00:00</dc:date>
    </item>

    <item>
      <title>Flickr as a Business Simulator</title>
      <link>http://www.planeterlang.org/en/planet/article/Flickr_as_a_Business_Simulator/</link>
      <guid>http://www.planeterlang.org/en/planet/article/Flickr_as_a_Business_Simulator/</guid>
      <author>James Hague</author>
      <description><![CDATA[<p><a href="http://www.flickr.com/">Flickr</a> came along exactly when I needed it.<br />
<br></br><br></br>In 2004, I knew I was too immersed in technical subjects, and Flickr motivated me to get back into photography as a change of pace. I loved taking photos when I was in college (mostly of the set-up variety with a couple of friends), but I hardly touched a camera for the next decade. When I first found out about Flickr, not long after it launched, the combination of having a new camera and a potential audience provided me with a rare level of inspiration. I remember walking around downtown Champaign on June 1, 2004, spending two hours entirely focused on taking photos. I didn&#8217;t have a plan, I didn&#8217;t have a preferred subject; I just made things up as I went.<br />
<br></br><br></br>This is one of my favorites from that day:<br />
<br></br><br></br><a href="http://www.flickr.com/photos/jhague/62959/" title="Andy Kaufman, on Flickr"><img src="http://farm1.static.flickr.com/1/62959_e57d3142c6.jpg" width="500" height="375" alt="Andy Kaufman"></img></a><br />
<br></br><br></br>Flickr was pretty raw back then. You could comment on photos, but there wasn&#8217;t the concept of favoriting a good shot or the automated <a href="http://www.flickr.com/explore/interesting/">interestingness</a> ranking. As those systems went into a place, it was easier to get feedback about the popularity of photos. Why did people like this photo but not this other one? How does that user manage to get dozens of comments per shot?<br />
<br></br><br></br>It took me a while to recognize some of the thought patterns and feelings that I had once I started paying attention to the feedback enabled by Flickr. <i>They were reminiscent of feelings I had when I was an independent developer.</i> I was rediscovering lessons which I had, at great expense, learned earlier. Now I can, and will, recount some of these lessons, but that in itself isn&#8217;t very useful or exciting. Anyone can recite pithy business knowledge, and anyone can ignore it too, because it&#8217;s hard to accept advice without it being grounded in personal experience. The important part is that you can experience these lessons firsthand by using Flickr.<br />
<br></br><br></br>Create an account and give yourself a tough goal, such as getting 50,000 photostream views in six months or getting 500 photos flagged as favorites. And now it&#8217;s a business simulator. You&#8217;re creating a product&#8212;a pool of photographs&#8212;which is released into the wild and judged by people you don&#8217;t control. The six month restriction simulates how long you can survive on your savings. Just like a real business, the results have a lot to do with the effort you put forth. But it&#8217;s not a simple translation of effort into success; it&#8217;s trickier than that.<br />
<br></br><br></br>Now some of the lessons.<br />
<br></br><br></br><b>You don&#8217;t get bonus points for being the small guy.</b> It sounds so appealing to be the indie that&#8217;s getting by on a shoestring. Maybe some customers will be attracted to that and want to stick to the man by supporting you. On Flickr you&#8217;re on the same playing field as pros with thousands of dollars worth of equipment and twenty years&#8217; experience. You <b>can</b> still stand out, but don&#8217;t fool yourself into thinking that your lack of resources that&#8217;s used an excuse for lower quality is going to be seen as an endearing advantage.<br />
<br></br><br></br><b>While quality is important, keep the technical details behind the scenes.</b> Just as no one really cares what language your application is written in, no one really cares what lens you took a photograph with or what filter you used. Be wary of getting too into the tech instead of the end result.<br />
<br></br><br></br><b>What you think people want might not be what people want.</b> This one is tough. Are you absorbed in things that you think are important but are irrelevant, or even turn-offs, to your potential audience? This is the kind of thing that a good record producer would step in and deal with (&#8220;Just stop with the ten minute solos, okay?&#8221;), but it can be difficult to come to these realizations on your own, especially if you&#8217;re seeing the problems as selling points.<br />
<br></br><br></br><b>Slow, steady progress builds an audience.</b> You might take your best photo ever&#8230;and get zero response. It could be because you&#8217;re overestimating its quality: it&#8217;s great compared to your previous work, but still flawed in other ways. Or it could truly be great, but you haven&#8217;t built up the network of followers to pull in the views and favorites. (That&#8217;s the same reason you might see an unknown band perform a brilliant and catchy song from their CD which has sold 37 copies.)<br />
<br></br><br></br><b>Don&#8217;t fixate on why you think some people are undeservedly successful.</b> All it does it pull you away from improving your own photos/products as you pour energy into being bitter. Your personal idea of taste doesn&#8217;t apply to everyone else. There may be other factors at work that you don&#8217;t understand. Just let it go or it will drag you down.<br />
<br></br><br></br>But don&#8217;t take my word for it. Just spend a few months in the simulator.
</p> 
]]>
</description>
      <dc:subject>Blogs, Programming in the 21st Century</dc:subject>
      <dc:date>2010-01-25T07:00:00+00:00</dc:date>
    </item>

    <item>
      <title>Talkr.IM service update: gateways</title>
      <link>http://www.planeterlang.org/en/planet/article/Talkr.IM_service_update_gateways/</link>
      <guid>http://www.planeterlang.org/en/planet/article/Talkr.IM_service_update_gateways/</guid>
      <author>Nicolas Vérité</author>
      <description><![CDATA[<p>The Talkr.IM XMPP/Jabber service will undergo today a service update, adding gateways to legacy IM systems.</p> <p>ProcessOne&#8217;s XMPP service Talkr.IM will receive new features for all users: IM gateways. These gateways will enable XMPP users to join legacy IM systems with their existing accounts. This will seamlessly merge the legacy IM contact lists to the main XMPP contact list (&#8220;roster&#8221;). Of course the main features are presence and chat, but these gateways also enable the status exchange, as well as the avatar, and much more.</p>
<p>We had already deployed an IRC gateway, the new gateways (or &#8220;transport&#8221; in XMPP terms) are the following:</p>
<ul>
<li>AIM</li>
<li>ICQ</li>
<li>MSN/WLM</li>
<li>Yahoo!</li>
</ul>
<p>This adds IM contact points to your addressbook, and enable the inclusion of millions of legacy IM users to XMPP users.</p>
<p>We are planning a service interruption at:</p>
<ul>
<li>13:00 UTC</li>
<li>14:00 Paris</li>
<li>16:00 Moscow</li>
<li>05:00 Los Angeles</li>
<li>08:00 New York</li>
<li>22:00 Tokyo</li>
</ul>
<p>We will remind our online users a few minutes before.</p> 
]]>
</description>
      <dc:subject>Companies, ProcessOne</dc:subject>
      <dc:date>2010-01-22T11:10:38+00:00</dc:date>
    </item>

    <item>
      <title>Misultin: erlang and websockets</title>
      <link>http://www.planeterlang.org/en/planet/article/Misultin_erlang_and_websockets/</link>
      <guid>http://www.planeterlang.org/en/planet/article/Misultin_erlang_and_websockets/</guid>
      <author></author>
      <description><![CDATA[<p>Inspired by Joe Armstrong&#8217;s <a rel="nofollow" target="_blank" href="http://armstrongonsoftware.blogspot.com/2009/12/comet-is-dead-long-live-websockets.html">post</a>, I&#8217;ve recently added <a rel="nofollow" target="_blank" href="http://dev.w3.org/html5/websockets/">websocket</a> support to <a rel="nofollow" target="_blank" href="http://dev.w3.org/html5/websockets/">misultin</a> v0.4, my Erlang library for building fast lightweight HTTP servers.</p>
<p>Basically, websockets allow a two-way asynchronous communication between browser and servers, filling the gap that some technologies such as ajax and comet have tried to fulfill in these recent years. If you want to try this out yourself, you will first need to grab a browser which implements websockets, such as <a rel="nofollow" target="_blank" href="http://www.google.com/chrome/">Google Chrome</a>.</p>
<p>The typical html page with javascript code to use websockets is as follows:</p>
<pre>
&lt;html&gt; &lt;head&gt; &lt;script type="text/javascript"&gt; function addStatus(text){ var date = new Date(); document.getElementById('status')[removed] = document.getElementById('status')[removed] + date + ": " + text + "&lt;br&gt;"; } function ready(){ if ("WebSocket" in window) { // browser supports websockets var ws = new WebSocket("ws://localhost:8080/service"); ws.onopen = function() { // websocket is connected addStatus("websocket connected!"); // send hello data to server. ws.send("hello server!"); addStatus("sent message to server: 'hello server'!"); }; ws.onmessage = function (evt) { var receivedMsg = evt.data; addStatus("server sent the following: '" + receivedMsg + "'"); }; ws.onclose = function() { // websocket was closed addStatus("websocket was closed"); }; } else { // browser does not support websockets addStatus("sorry, your browser does not support websockets."); } } &lt;/script&gt; &lt;/head&gt; &lt;body onload="ready();"&gt; &lt;div id="status"&gt;&lt;/div&gt; &lt;/body&gt;
&lt;/html&gt;
</pre>
<p>Here’s the code to use misultin to handle the requests of this script:</p>
<pre>
-module(misultin_websocket_example).
-export([start/1, stop/0]). % start misultin http server
start(Port) -&gt; misultin:start_link([{port, Port}, {loop, fun(Req) -&gt; handle_http(Req, Port) end}, {ws_loop, fun(Ws) -&gt; handle_websocket(Ws) end}]). % stop misultin
stop() -&gt; misultin:stop(). % callback on request received
handle_http(Req, Port) -&gt; % output Req:ok([]). % callback on received websockets data
handle_websocket(Ws) -&gt; receive {browser, Data} -&gt; Ws:send(["received '", Data, "'"]), handle_websocket(Ws); _Ignore -&gt; handle_websocket(Ws) after 5000 -&gt; Ws:send("pushing!"), handle_websocket(Ws) end.
</pre>
<p>handle_websocket/1 is spawned by misultin to handle the connected websockets. Data coming from a browser will be sent to this process and will have the message format {browser, Data}, where Data is a string(). If you need to send data to the browser, you may do so by using the parametrized function Ws:send(Data), Data being a string() or an iolist().</p>
<p>Compile and run the example here above with misultin_websocket_example:start(8080). Then, open up your Chrome (or other websocket compliant browser) and point it to an .html file containing the above code.</p>
<p>You should normally see this being gradually printed on your browser:</p>
<pre>
Wed Jan 20 2010 15:18:52 GMT+0100 (CET): websocket connected!
Wed Jan 20 2010 15:18:52 GMT+0100 (CET): sent message to server: 'hello server'!
Wed Jan 20 2010 15:18:52 GMT+0100 (CET): server sent the following: 'received 'hello server!''
Wed Jan 20 2010 15:18:57 GMT+0100 (CET): server sent the following: 'pushing!'
Wed Jan 20 2010 15:19:02 GMT+0100 (CET): server sent the following: 'pushing!'
Wed Jan 20 2010 15:19:07 GMT+0100 (CET): server sent the following: 'pushing!'
</pre>
<p>In normal environments you may consider serving the .html page from misultin directly. You may do so with the following and complete misultin module:</p>
<pre>
-module(misultin_websocket_example).
-export([start/1, stop/0]). % start misultin http server
start(Port) -&gt; misultin:start_link([{port, Port}, {loop, fun(Req) -&gt; handle_http(Req, Port) end}, {ws_loop, fun(Ws) -&gt; handle_websocket(Ws) end}]). % stop misultin
stop() -&gt; misultin:stop(). % callback on request received
handle_http(Req, Port) -&gt; % output Req:ok([{"Content-Type", "text/html"}], [" &lt;html&gt; &lt;head&gt; &lt;script type=&#92;"text/javascript&#92;"&gt; function addStatus(text){ var date = new Date(); document.getElementById('status')[removed] = document.getElementById('status')[removed] + date + &#92;": &#92;" + text + &#92;"&lt;br&gt;&#92;"; } function ready(){ if (&#92;"WebSocket&#92;" in window) { // browser supports websockets var ws = new WebSocket(&#92;"ws://localhost:", integer_to_list(Port) ,"/service&#92;"); ws.onopen = function() { // websocket is connected addStatus(&#92;"websocket connected!&#92;"); // send hello data to server. ws.send(&#92;"hello server!&#92;"); addStatus(&#92;"sent message to server: 'hello server'!&#92;"); }; ws.onmessage = function (evt) { var receivedMsg = evt.data; addStatus(&#92;"server sent the following: '&#92;" + receivedMsg + &#92;"'&#92;"); }; ws.onclose = function() { // websocket was closed addStatus(&#92;"websocket was closed&#92;"); }; } else { // browser does not support websockets addStatus(&#92;"sorry, your browser does not support websockets.&#92;"); } } &lt;/script&gt; &lt;/head&gt; &lt;body onload=&#92;"ready();&#92;"&gt; &lt;div id=&#92;"status&#92;"&gt;&lt;/div&gt; &lt;/body&gt; &lt;/html&gt;"]). % callback on received websockets data
handle_websocket(Ws) -&gt; receive {browser, Data} -&gt; Ws:send(["received '", Data, "'"]), handle_websocket(Ws); _Ignore -&gt; handle_websocket(Ws) after 5000 -&gt; Ws:send("pushing!"), handle_websocket(Ws) end.
</pre>
<p>Please note that the <a rel="nofollow" target="_blank" href="http://tools.ietf.org/html/draft-hixie-thewebsocketprotocol-68">Websocket Protocol</a> still is draft. use with caution.</p> 
]]>
</description>
      <dc:subject>Blogs, Roberto Ostinelli</dc:subject>
      <dc:date>2010-01-20T15:33:12+00:00</dc:date>
    </item>

    <item>
      <title>[ANN] ejabberd 2.1.2 bugfix release</title>
      <link>http://www.planeterlang.org/en/planet/article/ANN_ejabberd_2.1.2_bugfix_release/</link>
      <guid>http://www.planeterlang.org/en/planet/article/ANN_ejabberd_2.1.2_bugfix_release/</guid>
      <author>Jérôme Sautret</author>
      <description><![CDATA[<p>We are pleased to announce ejabberd 2.1.2, which contains several bugfixes over last month&#8217;s maintenance release.<br /><br />Brief summary of changes:</p>
<ul>
<li>Fix SASL PLAIN authentication message for RFC4616 compliance</li>
<li>Fix support for old Erlang/OTP R10 and R11</li>
<li>If server start fails due to config file problem, display some lines and stop node</li>
<li>PubSub and PEP: several improvements and bugfixes</li>
<li>WebAdmin: fix offline message displaying</li>
<li>When server stops with new stop_kindly command: inform users, clients, MUC</li>
</ul>
<p>&nbsp;</p> <p>Check the Release Notes for a more complete list of changes:<br /> <a href="http://www.process-one.net/en?URL=http://www.process-one.net/en/ejabberd/release_notes/release_note_ejabberd_2.1.2">http://www.process-one.net/en/ejabberd/release_notes/release_note_ejabberd_2.1.2</a><br /> <br /> If you upgrade from ejabberd 2.0.5 or older, read carefully the release notes of ejabberd 2.1.0 too, because there were several changes in the installation path and the configuration options.<br /> <br /> The list of solved tickets since previous version is available on ProcessOne bug tracker:<br /> <a href="http://www.process-one.net/en?URL=http://redir.process-one.net/ejabberd-2.1.2">http://redir.process-one.net/ejabberd-2.1.2</a><br /> <br /> ejabberd 2.1.2 is available as source code package and binary installers for Linux 32 bits, 64 bits, Mac OS X Intel, and Windows:<br /> <a href="http://www.process-one.net/en?URL=http://www.process-one.net/en/ejabberd/downloads">http://www.process-one.net/en/ejabberd/downloads</a></p> 
]]>
</description>
      <dc:subject>Companies, ProcessOne</dc:subject>
      <dc:date>2010-01-18T17:03:16+00:00</dc:date>
    </item>

    <item>
      <title>ejabberd 2.1.2 &#45; Second bugfix release</title>
      <link>http://www.planeterlang.org/en/planet/article/ejabberd_2.1.2_-_Second_bugfix_release/</link>
      <guid>http://www.planeterlang.org/en/planet/article/ejabberd_2.1.2_-_Second_bugfix_release/</guid>
      <author>badlop</author>
      <description><![CDATA[<p><a href="http://www.process-one.net/en/blogs/article/ann_ejabberd_2.1.2_bugfix_release/">ejabberd 2.1.2</a> has been released. It contains several bugfixes over last month&#8217;s maintenance release.</p>
<p>Brief summary of changes:</p>
<ul>
<li>Fix SASL PLAIN authentication message for RFC4616 compliance
</li><li>Fix support for old Erlang/OTP R10 and R11
</li><li>If server start fails due to config file problem, display some lines<br />
and stop node
</li><li>PubSub and PEP: several improvements and bugfixes
</li><li>WebAdmin: fix offline message displaying
</li><li>When server stops with new stop_kindly command: inform users, clients, MUC
</li></ul>
<p><a href="http://www.ejabberd.im/ejabberd-2.1.2" target="_blank">read more</a></p> 
]]>
</description>
      <dc:subject>Software, ejabberd Community Site</dc:subject>
      <dc:date>2010-01-18T16:07:06+00:00</dc:date>
    </item>

    <item>
      <title>erlide 0.7.3</title>
      <link>http://www.planeterlang.org/en/planet/article/erlide_0.7.3/</link>
      <guid>http://www.planeterlang.org/en/planet/article/erlide_0.7.3/</guid>
      <author>vladdu@users.sourceforge.net (Vlad Dumitrescu)</author>
      <description><![CDATA[<p>A new release of erlide is available, with following (user visible) changes from 0.7.0:<br /><br />* 468-split-erlang-code-so-that-compiler-backend-can-use-R11<br />* 487-configure-report-directory&#8217;<br />* fix #480: import wizard doesn&#8217;t descend in subdirectories<br />* 490-External-Files-project-closed&#8217; <br />* 257&#8212;type&#8212;-navigate-from-spec-to-declared-type&#8217;<br />* 476-open-module-dialog&#8212;allow-inexact-matches&#8217;<br />* 444 - text selected randomly in editor<br />* 472-launch&#8212;extra-arguments-to-runtime-don-t-get-used<br />* 469-editor&#8212;-erlang-reconciler-still-broken&#8217;<br /><br />* ignore errors when deleting beam files<br />* erlang templates, with syntax highlighted preview, indentation<br />* use binary for noparse:initial_text parameter<br />* Fix timeout in light_scan_string, send bin instead of string<br />* send to console action, useful when debugging and testing<br />* fixed -opaque and external type refs<br />* add option to monitor ide backend<br />* improve backend launching: send environment; make node status local<br /><br />Enjoy!<br />/Vlad
</p> 
]]>
</description>
      <dc:subject>Software, Eclipse Erlang IDE</dc:subject>
      <dc:date>2010-01-18T12:03:14+00:00</dc:date>
    </item>

    <item>
      <title>No Comment</title>
      <link>http://www.planeterlang.org/en/planet/article/No_Comment/</link>
      <guid>http://www.planeterlang.org/en/planet/article/No_Comment/</guid>
      <author>James Hague</author>
      <description><![CDATA[<p>I received a few emails after <a href="56.html">last time</a> along the lines of &#8220;Oh. Perl. Homebrew CMS. <em>That&#8217;s</em> why you don&#8217;t allow people to post comments. Well, no, but it was definitely a conscious decision. The Web 2.0 answer is that I&#8217;m outsourcing comments to <a href="http://www.reddit.com">reddit</a> and <a href="http://news.ycombinator.com">Hacker News</a>. The real reason is this:<br />
<br></br><br></br><em>The negativity of online technical discussions makes me bitter, and even though I&#8217;m sometimes drawn to them I need to stay away</em>.<br />
<br></br><br></br>To be fair, this isn&#8217;t true only of technical discussions. Back when I was on <a href="http://en.wikipedia.org/wiki/Usenet">Usenet</a>, I took refuge from geeky bickering in a group about cooking&#8230;only to find people arguing the merits of <a href="http://en.wikipedia.org/wiki/Miracle_Whip">Miracle Whip</a> versus mayonnaise. Put enough people together and there are sure to be complaints and conflicting personal agendas. But with smart, technically-oriented people, I&#8217;d expect there to be more sharing of real experiences, but that&#8217;s often not the case.<br />
<br></br><br></br>Here&#8217;s a lesson I learned very early on after I started working full-time as a programmer (and that&#8217;s a peculiar sentence for me to read, as I no longer program for a living). I&#8217;d be looking at some code at my desk, and it made no sense. Why would anyone write it like this? There&#8217;s an obvious and cleaner way to approach the same problem. So I&#8217;d go down the hall to the person who wrote it in the first place and start asking questions&#8230;and find out that I didn&#8217;t have the whole picture, the problem was messier than it first appeared, and there were perfectly valid reasons for the code being that way. This happened again and again. Sometimes I did find a real flaw, but even then it may have only occurred with data that wasn&#8217;t actually possible (because, for example, it was filtered by another part of the system). Talking face to face changed everything, because they could draw diagrams, pull out specs, and give concrete examples.<br />
<br></br><br></br>I think that initial knee-jerk &#8220;I&#8217;ve been looking at this for ten seconds and now let me explain the critical flaws&#8221; reaction is a common one among people with engineering mindsets. And that&#8217;s not a good thing. I&#8217;ve seen this again and again, from people putting down programming languages for silly, superficial reasons (Perl&#8217;s sigils, Python&#8217;s enforced indentation), to ridiculous off-the-cuff put downs of new products (such as the predictions of doom in the <a href="http://apple.slashdot.org/article.pl?sid=01/10/23/1816257">Slashdot announcement</a> of the original iPod in 2001).<br />
<br></br><br></br>The online community that I&#8217;ve had the most overwhelmingly positive experience with is the photo-sharing site <a href="http://flickr.com">Flickr</a>. I&#8217;ll talk about Flickr again and again, because it played a big part in getting me out of some ruts, and I&#8217;ve seen more great photographs over the last five years than I would have seen in ten lifetimes otherwise. I know that if you dig around you can find tedious rants from equipment collectors, but I do a good job of avoiding those. I don&#8217;t think I&#8217;ve ever seen real negativity in photo comments other than suggestions for different crops or the occasional technical criticisms. There are so many good photos to see that there&#8217;s no reason to waste time with ones the don&#8217;t appeal to me. That&#8217;s supported by only allowing up-voting of photos (by adding a shot to your favorites); there&#8217;s no way to formally register dislike.<br />
<br></br><br></br>Flickr gets my time, but most of the programming discussion sites don&#8217;t.
</p> 
]]>
</description>
      <dc:subject>Blogs, Programming in the 21st Century</dc:subject>
      <dc:date>2010-01-16T07:00:00+00:00</dc:date>
    </item>

    <item>
      <title>Systems Administrator, London, UK</title>
      <link>http://www.planeterlang.org/en/planet/article/Systems_Administrator_London_UK3/</link>
      <guid>http://www.planeterlang.org/en/planet/article/Systems_Administrator_London_UK3/</guid>
      <author></author>
      <description><![CDATA[<p>We are seeking a competent Systems Administrator to develop our business and development environment.<br /><br />1. The requirement<br /><br />The ideal applicant will need to have experience of setting up an office infrastructure for a software development company where there are hosted components and office based components. We also have offices in Krakow and Uppsala that should have access to the infrastructure. Our goal is to phase out Microsoft and move completely over to Open Office and Open Source offerings so somebody who understands and believes in this approach is hugely desirable.<br /><br />The following are a broad list of the technologies and application we are either using, or intend to use and which the incumbent would be expected, in the longer term, to manage and improve.<br /><br />OS: Windows XP and Vista, All flavours of Linux, UNIX.<br />DB&#8217;s: mySQL, Postgresql, Berkley DB<br />Collaborative environments: MS Exchange and Zimbra<br />Office suites: MS Office and Open Office,<br />Set up of VPNs<br />Set up and maintenance of Firewalls<br />Wireless Networks<br />PBX&#8217;s: Nortel BCM50<br />Wiki&#8217;s<br />Single Sign on<br />File share and Backups<br />Process for signing up new users and removing leavers<br />Policies for access privileges<br />Security and encryption<br />Experience of CRM systems like SugarCRM or Salesforce and Trouble Ticketing systems like Bugzilla or Trac would be desirable<br />Knowledge of email and IM protocols are useful<br />Experience of dealing with service providers and selecting best ADSL, SDSL services is also a plus as well as SLA&#8217;s<br /><br />Selection and recommendations for hardware purchases Ability to work alone and under pressure<br /><br />A hands on and &#8220;I can do it&#8221; attitude<br /><br />Confident person<br /><br />A creative thinker<br /><br /><br /><br />2. The company offers:<br />A supportive and friendly working atmosphere together with the opportunity to progress.<br />Salary: 22,000GBP - 28,000GBP + Discretionary Bonus<br /><br />Benefits: Private Health Insurance, Life Protection, 20 days holiday, Bike Scheme, Stakeholder Pension Scheme.<br /><br />Training and advancement is on offer once the successful candidate has proven themselves within the company as a dedicated member of the team.<br /><br />Only applicants who have a legal right to work within the UK will be considered.
</p> 
]]>
</description>
      <dc:subject>Companies, Erlang Training and Consulting</dc:subject>
      <dc:date>2010-01-11T17:30:50+00:00</dc:date>
    </item>

    <item>
      <title>Senior Erlang Developer, London, UK</title>
      <link>http://www.planeterlang.org/en/planet/article/Senior_Erlang_Developer_London_UK3/</link>
      <guid>http://www.planeterlang.org/en/planet/article/Senior_Erlang_Developer_London_UK3/</guid>
      <author></author>
      <description><![CDATA[<p>Gambit Research is a West London software company developing market<br />
information and trading software for the betting industry.</p><br/>

<p>We are looking to hire an experienced Erlang developer to work on extending and<br />
improving an existing trading system.&nbsp; This role will involve working as part<br />
of a small team of Erlang developers and working closely with Python developers<br />
and the trading team.</p><br/>

<p>You should have experience of developing reliable, fault tolerant<br />
applications in<br />
Erlang.&nbsp; Experience with UNIX, networking, PostgreSQL and Python would also be<br />
highly desirable.</p><br/>
<ul>
<li>Starting salary £30,000 plus, depending on experience.</li>
<li>25 days holiday per year.</li>
<li>Discretionary bonus scheme.</li>
<li>Flexible working hours.</li>
<li>Relaxed and informal working environment. </li>
</ul> 
]]>
</description>
      <dc:subject>Companies, Erlang Training and Consulting</dc:subject>
      <dc:date>2010-01-11T17:30:49+00:00</dc:date>
    </item>

    <item>
      <title>Principal, IT Architecture, Financial Services, Menlo Park, California (USA)</title>
      <link>http://www.planeterlang.org/en/planet/article/Principal_IT_Architecture_Financial_Services_Menlo_Park_California_USA2/</link>
      <guid>http://www.planeterlang.org/en/planet/article/Principal_IT_Architecture_Financial_Services_Menlo_Park_California_USA2/</guid>
      <author></author>
      <description><![CDATA[<p>Our client is looking for dynamic, highly energized risk-takers who are ready to join a fast-paced, world leader in the financial services industry. They move at the speed of the Internet.&#160; Their work culture fosters an incredible exposure to innovative ideas and challenges that create experience and opportunity.&#160; Many have risen through the organization to become industry leaders, in both the financial services world and in the community at large.&#160; Our client made up of some of the brightest and most talented people in the industry - are you ready to join the industry leader?<br /><br />1. Essential Responsibilities:<br />
</p><ul>
<li>Architect, Service Oriented Architecture</li>
<li>Design and Develop solutions in the are of SOA, Distributed Computing and Software Packaging and Release methodologies.</li>
<li>&#160;Assist in day-to-day developer support for Services and Packaging frameworks</li>
<li>Write code in Java, C and Erlang</li>
<li>Evaluation of state of the art Open Source frameworks</li>
<li>Present Solutions, and work with other technology managers to craft solutions</li></ul><p>2. Qualifications<br />
</p><ul>
<li>5+ yrs in-depth C or C++ experience</li>
<li>Strong Distributed Computing knowledge</li>
<li>Experience with Web services, SOAP, WSDL/XSD, Service Orchestration, etc.</li>
<li>Experience in scripting languages, such as Ruby, Python, or Perl.</li>
<li>Experience with AJAX technologies.</li>
<li>In-depth experience with Linux, Unix.</li>
<li>Experience with Agile Methods, including Test Driven Development.</li>
<li>Experience with Erlang or Functional Programming</li></ul><p>3. Minimum Education, Certification, Training:<br /><br />BS degree, preferably in Engineering, or Electrical Engineering, but<br />Computer Science is acceptable<br /><br />
</p> 
]]>
</description>
      <dc:subject>Companies, Erlang Training and Consulting</dc:subject>
      <dc:date>2010-01-11T17:30:49+00:00</dc:date>
    </item>

	
    </channel>
</rss>