<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"><channel><title>Rockstar Programmer - Latest Comments</title><link xmlns="http://www.w3.org/2005/Atom" rel="http://api.friendfeed.com/2008/03#sup" href="http://disqus.com/sup/all.sup#forumcomments-15bd55b0" type="application/json"/><link>http://rsp.disqus.com/</link><description></description><language>en</language><lastBuildDate>Wed, 20 May 2009 18:53:31 -0000</lastBuildDate><item><title>Re: RockStarProgrammer - The Differences Between Mercurial and Git</title><link>http://www.rockstarprogrammer.org/post/2008/apr/06/differences-between-mercurial-and-git/#comment-9605051</link><description>Users who remain with Mercurial will want to use &lt;a href="http://bitbucket.org" rel="nofollow"&gt;bitbucket.org&lt;/a&gt;, which in my opinion, is one of the best software hosting services ever.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Samuel</dc:creator><pubDate>Wed, 20 May 2009 18:53:31 -0000</pubDate></item><item><title>Re: RockStarProgrammer - Good, Fast, Cheap?  Eh, No Thanks</title><link>http://www.rockstarprogrammer.org/post/2008/jun/17/good-fast-cheap-eh-no-thanks/#comment-8723671</link><description>Interesting, I am sure people think loads of servers = bigger business despite the cost and the lack of need for them!</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">colocation</dc:creator><pubDate>Mon, 27 Apr 2009 07:08:10 -0000</pubDate></item><item><title>Re: RockStarProgrammer - What Matters in an Asynchronous Job Queue</title><link>http://www.rockstarprogrammer.org/post/2008/oct/04/what-matters-asynchronous-job-queue/#comment-8704247</link><description>Great post. It is stunning how many problems can be solved with a queue, and you hit the key points.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Stu</dc:creator><pubDate>Sun, 26 Apr 2009 11:50:39 -0000</pubDate></item><item><title>Re: RockStarProgrammer - What's Up? &amp;mdash; An XMPP-based Web Monitor</title><link>http://www.rockstarprogrammer.org/post/2008/jul/06/whats-up-xmpp-based-web-monitor/#comment-7446649</link><description>this comment window is here even if i dont want it - i am unable to see contents of the page i am looking on&lt;br&gt;&lt;br&gt;&lt;a href="http://www.rockstarprogrammer.org/post/2008/jul/06/whats-up-xmpp-based-web-monitor/" rel="nofollow"&gt;http://www.rockstarprogrammer.org/post/2008/jul...&lt;/a&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">web reader</dc:creator><pubDate>Mon, 23 Mar 2009 13:27:00 -0000</pubDate></item><item><title>Re: RockStarProgrammer - Git Tag Does the Wrong Thing by Default</title><link>http://www.rockstarprogrammer.org/post/2008/oct/16/git-tag-does-wrong-thing-default/#comment-6789819</link><description>Thanks, that helped me out a lot.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Stuart Hughes</dc:creator><pubDate>Mon, 02 Mar 2009 12:59:38 -0000</pubDate></item><item><title>Re: RockStarProgrammer - What Matters in an Asynchronous Job Queue</title><link>http://www.rockstarprogrammer.org/post/2008/oct/04/what-matters-asynchronous-job-queue/#comment-6449864</link><description>I've not actually used SQS, but from looking in the documentation, it seems that getting a job isn't blocking.  I use beanstalkd in places where I need low-latency, so I either have to poll really fast, or ignore my latency requirements.&lt;br&gt;&lt;br&gt;beanstalkd currently does everything I need and it's quite simple.  One file, only libevent as a dependency, and it's currently using less than half a meg of RAM on my box.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">dlsspy</dc:creator><pubDate>Sat, 21 Feb 2009 00:26:15 -0000</pubDate></item><item><title>Re: RockStarProgrammer - What Matters in an Asynchronous Job Queue</title><link>http://www.rockstarprogrammer.org/post/2008/oct/04/what-matters-asynchronous-job-queue/#comment-6448733</link><description>Use rabbitmq with an ACK or amazon sqs and you'll get what your looking for</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Alex Kane</dc:creator><pubDate>Fri, 20 Feb 2009 22:52:41 -0000</pubDate></item><item><title>Re: RockStarProgrammer - The Differences Between Mercurial and Git</title><link>http://www.rockstarprogrammer.org/post/2008/apr/06/differences-between-mercurial-and-git/#comment-4813359</link><description>mercurial (v1.1) introduced rebase and git-like local branch support:&lt;br&gt;&lt;br&gt;&lt;a href="http://www.selenic.com/mercurial/wiki/index.cgi/BookmarksExtension" rel="nofollow"&gt;http://www.selenic.com/mercurial/wiki/index.cgi...&lt;/a&gt;&lt;br&gt;&lt;br&gt;&lt;a href="http://www.selenic.com/mercurial/wiki/index.cgi/RebaseProject" rel="nofollow"&gt;http://www.selenic.com/mercurial/wiki/index.cgi...&lt;/a&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">poko</dc:creator><pubDate>Thu, 01 Jan 2009 08:33:18 -0000</pubDate></item><item><title>Re: RockStarProgrammer - Stack Overflow is a Time Machine</title><link>http://www.rockstarprogrammer.org/post/2008/dec/26/stack-overflow-time-machine/#comment-4668936</link><description>Yes, I saw it there, and I think I saw the boolean one there, too.  They were somewhat popular before that.&lt;br&gt;&lt;br&gt;Certainly nothing wrong with newbie questions, but if you look at what's most popular over there -- it's that.&lt;br&gt;&lt;br&gt;But the recommendations of subversion *everywhere* blow my mind.  Just last night I saw another one where a guy was recommending subversion to someone because it makes branching so easy.  Seriously?  Compared to what?</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">dlsspy</dc:creator><pubDate>Sat, 27 Dec 2008 15:34:26 -0000</pubDate></item><item><title>Re: RockStarProgrammer - Stack Overflow is a Time Machine</title><link>http://www.rockstarprogrammer.org/post/2008/dec/26/stack-overflow-time-machine/#comment-4665834</link><description>The array question got on the reddit programming front page, hence the high views.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Calvin Spealman</dc:creator><pubDate>Sat, 27 Dec 2008 10:41:31 -0000</pubDate></item><item><title>Re: RockStarProgrammer - Java Singletons Without Locks</title><link>http://www.rockstarprogrammer.org/post/2006/oct/19/java-singletons-without-locks/#comment-4592318</link><description>Right, so you need to check first.&lt;br&gt;&lt;br&gt;Consider if the contained object is a thread -- you'll want to try to avoid spinning up a new one, but if you do, you'll nee to tear it down before returning.&lt;br&gt;&lt;br&gt;In that case, it's get + check + construct + CAS + check + shutdown on race.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">dlsspy</dc:creator><pubDate>Tue, 23 Dec 2008 12:53:41 -0000</pubDate></item><item><title>Re: RockStarProgrammer - Java Singletons Without Locks</title><link>http://www.rockstarprogrammer.org/post/2006/oct/19/java-singletons-without-locks/#comment-4590746</link><description>Drat, the big problem with this implementation is that it instantiats the Singleton class everytime getInstance() is called.  No good.  Too simple to work.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">foobar-fred</dc:creator><pubDate>Tue, 23 Dec 2008 11:32:59 -0000</pubDate></item><item><title>Re: RockStarProgrammer - Java Singletons Without Locks</title><link>http://www.rockstarprogrammer.org/post/2006/oct/19/java-singletons-without-locks/#comment-4590408</link><description>Here is a simplified version.  It is too bad that compareAndSet() does not return the new value, but all the same, it may work.  Note how getInstance() is not synchronized, but it should be OK if multiple threads are running throught it, I think:&lt;br&gt;&lt;br&gt;public class Singleton {    &lt;br&gt;    private Singleton() {}&lt;br&gt;&lt;br&gt;    private static AtomicReference&amp;lt;Singleton&amp;gt; instance=&lt;br&gt;        new AtomicReference&amp;lt;Singleton&amp;gt;();&lt;br&gt;&lt;br&gt;    public final static Singleton getInstance() { &lt;br&gt;          instance.compareAndSet(null, new Singleton());      &lt;br&gt;          return instance.get();    &lt;br&gt;    }&lt;br&gt;}</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">foobar-fred</dc:creator><pubDate>Tue, 23 Dec 2008 11:16:06 -0000</pubDate></item><item><title>Re: RockStarProgrammer - Java Singletons Without Locks</title><link>http://www.rockstarprogrammer.org/post/2006/oct/19/java-singletons-without-locks/#comment-4579841</link><description>I haven't looked at this code in a while.  There's at least too much synchronization in it.&lt;br&gt;&lt;br&gt;I think the fundamental difference between mine and yours is that I try to avoid constructing an object unnecessarily.  Just using atomics, it should be easy to do it without ever synchronizing, though.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">dlsspy</dc:creator><pubDate>Mon, 22 Dec 2008 19:09:57 -0000</pubDate></item><item><title>Re: RockStarProgrammer - Java Singletons Without Locks</title><link>http://www.rockstarprogrammer.org/post/2006/oct/19/java-singletons-without-locks/#comment-4579408</link><description>Can you simplify the singleton thus:&lt;br&gt;&lt;br&gt;import java.util.concurrent.atomic.AtomicReference;&lt;br&gt;import java.util.Date;&lt;br&gt;&lt;br&gt;public class Singleton {	&lt;br&gt;	public Date d = new Date();&lt;br&gt;    private Singleton() {}&lt;br&gt;&lt;br&gt;	private static AtomicReference&amp;lt;Singleton&amp;gt; instance=&lt;br&gt;		new AtomicReference&amp;lt;Singleton&amp;gt;();&lt;br&gt;&lt;br&gt;	public final static Singleton getInstance() { &lt;br&gt;          instance.compareAndSet(null, new Singleton());        &lt;br&gt;          return instance.get();    &lt;br&gt;    }&lt;br&gt;	&lt;br&gt;	public static void main(String[] args) {&lt;br&gt;        PropsSingleton p = PropsSingleton.getInstance();&lt;br&gt;		System.out.println ("d = " + p.d);&lt;br&gt;	}&lt;br&gt;}</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">foobar-fred</dc:creator><pubDate>Mon, 22 Dec 2008 18:41:25 -0000</pubDate></item><item><title>Re: RockStarProgrammer - The Differences Between Mercurial and Git</title><link>http://www.rockstarprogrammer.org/post/2008/apr/06/differences-between-mercurial-and-git/#comment-4334866</link><description>That depends on how you use it. If you already pushed your comits, rebase against another branch and push it again you've just done it. You will have to force the push though, this is a safety measure.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Thomas</dc:creator><pubDate>Thu, 11 Dec 2008 16:51:31 -0000</pubDate></item><item><title>Re: RockStarProgrammer - Realtime Data with ZK</title><link>http://www.rockstarprogrammer.org/post/2007/feb/08/realtime-data-zk/#comment-4287065</link><description>how to make grid editable</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">abhi</dc:creator><pubDate>Tue, 09 Dec 2008 07:13:49 -0000</pubDate></item><item><title>Re: RockStarProgrammer - The Differences Between Mercurial and Git</title><link>http://www.rockstarprogrammer.org/post/2008/apr/06/differences-between-mercurial-and-git/#comment-4075592</link><description>May be useful for you - I was looking for github for mercurial and found this&lt;br&gt;&lt;a href="http://www.bitbucket.org/" rel="nofollow"&gt;http://www.bitbucket.org/&lt;/a&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">AlexMikhalev</dc:creator><pubDate>Sun, 30 Nov 2008 16:29:39 -0000</pubDate></item><item><title>Re: RockStarProgrammer - Git Tag Does the Wrong Thing by Default</title><link>http://www.rockstarprogrammer.org/post/2008/oct/16/git-tag-does-wrong-thing-default/#comment-3917833</link><description>thanks, you just saved me some time. I was about to do it the wrong way.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">John McCaffrey</dc:creator><pubDate>Thu, 20 Nov 2008 13:57:21 -0000</pubDate></item><item><title>Re: RockStarProgrammer - What Matters in an Asynchronous Job Queue</title><link>http://www.rockstarprogrammer.org/post/2008/oct/04/what-matters-asynchronous-job-queue/#comment-3697762</link><description>It's certainly worth talking about.&lt;br&gt;&lt;br&gt;I'd hate to think about what would have to happen on the inside of memcached to get it performing blocking operations and multiple states of of an item (available, checked out) and automatically changing states based on client events (disconnect -&amp;gt; available), though.&lt;br&gt;&lt;br&gt;Some of it is certainly backend, but there's a lot of front-end work required to make that work.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">dlsspy</dc:creator><pubDate>Wed, 12 Nov 2008 00:14:07 -0000</pubDate></item><item><title>Re: RockStarProgrammer - What Matters in an Asynchronous Job Queue</title><link>http://www.rockstarprogrammer.org/post/2008/oct/04/what-matters-asynchronous-job-queue/#comment-3697589</link><description>Funny thing that just a month later I'd write to the memcached mailing list proposing exactly the use of memcached protocol for a message queue :-)&lt;br&gt;&lt;br&gt;My thinking is that we can use the binary protocol's extension capability to build the commands of a queue into the binary protocol. The benefit is, as some other commenters have mentioned, to build off the installed base of memcached clients, and to connect with the future development of memcached storage backends -- durability of the server can be achieved with a database backend, for example.&lt;br&gt;&lt;br&gt;I don't think I want to see a grand unified memcached binary that can do everything, but to have interoperability from a protocol standpoint is very worthwhile, IMHO.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Aaron Stone</dc:creator><pubDate>Tue, 11 Nov 2008 23:52:26 -0000</pubDate></item><item><title>Re: RockStarProgrammer - Good, Fast, Cheap?  Eh, No Thanks</title><link>http://www.rockstarprogrammer.org/post/2008/jun/17/good-fast-cheap-eh-no-thanks/#comment-3448627</link><description>Absolutely, and you've done a great job of finding the core of the issue:&lt;br&gt;&lt;br&gt;What do you want your core competence to be?&lt;br&gt;&lt;br&gt;For a growing population, computers don't really exist.  This is natural progression for UNIX sysadmins, I'm sure the majority of whom have operated at least computer they've never seen before.  The only difference is that now we get to operate machines we never can see because they don't *really* exist in any physical form.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">dlsspy</dc:creator><pubDate>Sun, 02 Nov 2008 19:45:57 -0000</pubDate></item><item><title>Re: RockStarProgrammer - Good, Fast, Cheap?  Eh, No Thanks</title><link>http://www.rockstarprogrammer.org/post/2008/jun/17/good-fast-cheap-eh-no-thanks/#comment-3448295</link><description>I couldn't agree more Dustin! &lt;br&gt;&lt;br&gt;Being able to sleep at night not having to wonder whether my server has tanked is great for peace of mind - because only then can you really start focussing on the core objective i.e. having a great app :-)</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">sdiwakar</dc:creator><pubDate>Sun, 02 Nov 2008 19:10:57 -0000</pubDate></item><item><title>Re: RockStarProgrammer - Good, Fast, Cheap?  Eh, No Thanks</title><link>http://www.rockstarprogrammer.org/post/2008/jun/17/good-fast-cheap-eh-no-thanks/#comment-3448098</link><description>I've had a lot of fun with a $20/mo linode instance, even.&lt;br&gt;&lt;br&gt;I did have first outage with it this morning (my VM crashed or something).  However, the stuff I used to have running in-house cost me more than that, and would break quite a bit more frequently.  Never having to try to replace hardware in the middle of the night is worth it to me.  :)</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">dlsspy</dc:creator><pubDate>Sun, 02 Nov 2008 18:49:21 -0000</pubDate></item><item><title>Re: RockStarProgrammer - Good, Fast, Cheap?  Eh, No Thanks</title><link>http://www.rockstarprogrammer.org/post/2008/jun/17/good-fast-cheap-eh-no-thanks/#comment-3447942</link><description>LOL, its seems as though insecurities about outsourcing aren't restricted to India, Vietnam or the Philippines! I have a good friend who is hosting his application on servers in his garage - the problem is that he's going to have to keep track of the boxes, keep the place dust/fire free etc. monitor uptimes, bandwidth congestion, disk problems, troubleshoot routing problems when they arise, worry about security etc. all without even having starting on the application! &lt;br&gt;&lt;br&gt;I'd rather pay $50 for a decent quality VPS for the homepage and use EC2/S3 or even Google's AppEngine for the behind the scenes grunt work.</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">sdiwakar</dc:creator><pubDate>Sun, 02 Nov 2008 18:31:01 -0000</pubDate></item></channel></rss>