<?xml version="1.0" encoding="utf-8"?>
<!-- If you are running a bot please visit this policy page outlining rules you must respect. http://www.livejournal.com/bots/ -->
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:lj="http://www.livejournal.com">
  <id>urn:lj:livejournal.com:atom1:nasrat</id>
  <title>Paul's Wibblings</title>
  <subtitle>Paul Nasrat</subtitle>
  <author>
    <name>Paul Nasrat</name>
  </author>
  <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/"/>
  <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom"/>
  <updated>2010-09-16T20:57:23Z</updated>
  <lj:journal userid="430399" username="nasrat" type="personal"/>
  <link rel="service.feed" type="application/x.atom+xml" href="http://nasrat.livejournal.com/data/atom" title="Paul's Wibblings"/>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:58847</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/58847.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=58847"/>
    <title>DevOps talk at London Java Community</title>
    <published>2010-07-17T18:08:12Z</published>
    <updated>2010-09-16T20:57:23Z</updated>
    <content type="html">Rumors of my disappearance into a void are somewhat overrated.&lt;br /&gt;&lt;br /&gt;I was invited to talk at the London Java Community on DevOps, I decided for that community it'd be good to have some examples with some code in. Fortunately my previous employers have open-sourced some of the frameworks used including their version of feature switches and a handy log configuration servlet.&lt;br /&gt;&lt;br /&gt;It was good to catch up with old colleagues from ThoughtWorks, the London DevOps community and also meet new people.&lt;br /&gt;&lt;br /&gt;The slides and talk are my own work, and do not represent the opinions of my employer...&lt;br /&gt;&lt;br /&gt;&lt;a name="cutid1"&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="width:425px"&gt;&lt;strong style="display:block;margin:12px 0 4px"&gt;&lt;a href="http://www.slideshare.net/pnasrat/dev-ops-ljc-2010" title="Dev ops   ljc 2010" rel="nofollow"&gt;Dev ops   ljc 2010&lt;/a&gt;&lt;/strong&gt;&lt;lj-embed id="3" /&gt;&lt;div style="padding:5px 0 12px"&gt;View more &lt;a href="http://www.slideshare.net/" rel="nofollow"&gt;presentations&lt;/a&gt; from &lt;a href="http://www.slideshare.net/pnasrat" rel="nofollow"&gt;Paul Nasrat&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:58331</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/58331.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=58331"/>
    <title>Puppet Camp 2009</title>
    <published>2009-10-04T01:17:07Z</published>
    <updated>2009-10-04T01:17:07Z</updated>
    <category term="development"/>
    <category term="operations"/>
    <category term="systems"/>
    <category term="devops"/>
    <category term="puppet"/>
    <category term="puppetcamp"/>
    <content type="html">I have to say I've really enjoyed Puppet Camp. It's a reinvigorating experience, despite the jetlag, to meet up with smart, passionate and engaged operations people from all walks of life. My highlight really has been the people, and that's what I love about smaller unconferences is that you can meet everyone and everyone has something to contribute. Agile 2009 was great to go to, but I personally find I get more from smaller events.&lt;br /&gt;&lt;br /&gt;I was happy to see the wide range of companies both in terms of size and domains who are using puppet and thinking about how to improve operations and systems engineering. San Francisco is an awesome city, and I've enjoyed finding some little havens of coffee drinking bliss, good food, fantastic cocktails and shopping heaven in my limited explorations so far.&lt;br /&gt;&lt;br /&gt;Unfortunately I was a little nervous during my talk, which I'm pretty sure comes down to tiredness. I need to write up in more depth. For now here are my slides, video should be up shortly - I was really impressed by time to put up initial video by SFSU, and then them cleaning up the audio for the re-push.&lt;br /&gt;&lt;br /&gt;&lt;div style="width:425px;text-align:left"&gt;&lt;a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/pnasrat/get-your-facts-right" title="Get Your Facts Right" rel="nofollow"&gt;Get Your Facts Right&lt;/a&gt;&lt;lj-embed id="2" /&gt;&lt;div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"&gt;View more &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/" rel="nofollow"&gt;presentations&lt;/a&gt; from &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/pnasrat" rel="nofollow"&gt;pnasrat&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:57698</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/57698.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=57698"/>
    <title>Agile Operations - Thoughts on Operations Testing</title>
    <published>2009-08-19T20:04:20Z</published>
    <updated>2009-08-19T20:05:31Z</updated>
    <category term="agile"/>
    <category term="devops"/>
    <category term="puppet"/>
    <content type="html">When we talk about agile systems practices the subject of testing often comes up. In the development world practices such as Test Driven Development and Behaviour Driven Development provide a supporting practice to enable iterative development, make change safe (enabling refactoring), and provide a way to do just enough to deliver what is asked for.&lt;br /&gt;&lt;br /&gt;It's important to look at why developers test in order to think about what the enabling practices in systems and operations is. For those not familiar with test-driven development Nat and Steve have a great introduction in their forthcoming book: &lt;a href='http://www.mockobjects.com/book/tdd-introduction.html' rel='nofollow'&gt;http://www.mockobjects.com/book/tdd-introduction.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I think about tests for systems administration in terms of what they provide both in terms of quality and confidence. Coming up with the right language to describe testing for operations is hard. &lt;br /&gt;&lt;br /&gt;I've seen a lot of development teams internally struggle with the naming of what Nat and Steve call Integration Tests and Acceptance Tests (Functional Tests, Customer Tests, System Tests). If we agree with the premise that testing types a certain level is desirable for operations teams then we should focus on what we achieve by that and a first step approach. It's also important to have a clear language that everyone can understand what you mean - so if your team is using Integration Tests to mean something specific, then don't use that language to mean something different in operational testing.&lt;br /&gt;&lt;br /&gt;It's important to think about what the different test levels give you and how that maps to operations/systems engineering. Also we're hitting the fact you illustrated that testing and monitoring are conflated. For development internal quality of code driven by unit tests enables ease of understanding and ease of change. If we want to have a practice in operations that makes our intent clear and enables ease of change this is not monitoring.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:57414</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/57414.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=57414"/>
    <title>Agile Systems Administration Slides from Manchester Geek Night</title>
    <published>2009-08-07T13:15:15Z</published>
    <updated>2009-08-07T13:15:15Z</updated>
    <category term="agile"/>
    <category term="systems"/>
    <category term="devops"/>
    <category term="puppet"/>
    <category term="ops"/>
    <content type="html">I spoke in Manchester last night, it was nice to be back in the city I spent five years failing to get a degree in. It's the place I first started working in systems at the Faculty of Arts helpdesk, first exposure to gopher, lynx, usenet and the web, and where I installed my first Linux systems.&lt;br /&gt;&lt;br /&gt;The venue was the Kilburn building and the area outside the room had displays of &lt;a href="http://en.wikipedia.org/wiki/Manchester_Small-Scale_Experimental_Machine" rel="nofollow"&gt;Baby&lt;/a&gt; which was nice.&lt;br /&gt;&lt;br /&gt;The group was small and mostly dominated by sytems people, I felt it went better than my previous talk on this at skills matter - I was more focussed and I think the presentation was more polished. Following we went on to the SandBar for good beer and further discussion.&lt;br /&gt;&lt;br /&gt;Thanks to &lt;a href="http://www.thoughtworks.co.uk" rel="nofollow"&gt;ThoughtWorks&lt;/a&gt; for inviting me up and putting me up in Manchester.&lt;br /&gt;&lt;br /&gt;&lt;a name="cutid1"&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="width:425px;text-align:left"&gt;&lt;a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/pnasrat/agile-systems-administration-geek-night" title="Agile Systems Administration   Geek Night" rel="nofollow"&gt;Agile Systems Administration   Geek Night&lt;/a&gt;&lt;lj-embed id="1" /&gt;&lt;div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"&gt;View more &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/" rel="nofollow"&gt;presentations&lt;/a&gt; from &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/pnasrat" rel="nofollow"&gt;pnasrat&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:57317</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/57317.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=57317"/>
    <title>Talking in Manchester</title>
    <published>2009-08-01T10:25:40Z</published>
    <updated>2009-08-01T10:25:40Z</updated>
    <category term="talks"/>
    <category term="puppet"/>
    <content type="html">I'm giving a talk about Agile Systems Administration in Manchester on Thursday August 6th.&lt;br /&gt;&lt;br /&gt;&lt;a href='http://manchestergeeknights.wetpaint.com/page/Agile+Systems+Administration' rel='nofollow'&gt;http://manchestergeeknights.wetpaint.com/page/Agile+Systems+Administration&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;If you're in the area and interested in agile practices, developer and operations relationships, automated infrastructure and continual deployment you can sign up on &lt;a href="http://upcoming.yahoo.com/event/4047178" rel="nofollow"&gt;upcoming&lt;/a&gt;.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:56365</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/56365.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=56365"/>
    <title>Event: London Talk and Discussion on Agile Systems</title>
    <published>2009-04-14T15:37:32Z</published>
    <updated>2009-04-14T15:37:32Z</updated>
    <content type="html">I'm giving a talk and discussion on Agile Systems Administration and Infrastructure at Skills Matter on April 23rd.&lt;br /&gt;&lt;br /&gt;&lt;a href='http://skillsmatter.com/event/agile-scrum/agile-pragmatic-systems-administration' rel='nofollow'&gt;http://skillsmatter.com/event/agile-scrum/agile-pragmatic-systems-administration&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:55571</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/55571.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=55571"/>
    <title>Fosdem 2009</title>
    <published>2009-01-17T10:36:08Z</published>
    <updated>2009-01-24T10:52:52Z</updated>
    <content type="html">I finally got organinsed and booked going to FOSDEM, I didn't get there last year and am looking forward to it. Hopefully get a chance to catch up with some people. &lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.fosdem.org" rel="nofollow"&gt;&lt;img src="http://www.fosdem.org/promo/going-to" alt="I&amp;#39;m going to FOSDEM, the Free and Open Source Software Developers&amp;#39; European Meeting" /&gt;&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:55507</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/55507.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=55507"/>
    <title>A new entry into the state driven config management field</title>
    <published>2009-01-16T10:02:17Z</published>
    <updated>2009-01-16T10:03:43Z</updated>
    <content type="html">Whilst reading my daily blog roll I noticed that Ezra &lt;a href="http://brainspl.at/articles/2009/01/15/chef-suck-on-my-chocolate-salty-balls" rel="nofollow"&gt;posted&lt;/a&gt; about a new configuration management tool &lt;a href="http://github.com/opscode/chef/tree/master" rel="nofollow"&gt;chef&lt;/a&gt; and fact gatherer project &lt;a href="http://github.com/opscode/ohai/tree/master" rel="nofollow"&gt;ohai&lt;/a&gt; from the guys as opscode.&lt;br /&gt;&lt;br /&gt;There is more details on the &lt;a href="http://wiki.opscode.com/display/chef/Home" rel="nofollow"&gt;wiki&lt;/a&gt;, and I'm interested in finding out design differences to puppet and facter. An initial look at ohai looks good - JSON output of facts leads to clearer ability to collect nested facts than namespacing ipaddress_eth0.&lt;br /&gt;&lt;br /&gt;chef looks to use ruby rather than an external dsl for it's cookbooks (recipes).</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:54976</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/54976.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=54976"/>
    <title>Puppet gets Continuous Integration</title>
    <published>2008-12-01T20:45:09Z</published>
    <updated>2009-08-02T18:27:39Z</updated>
    <category term="puppet"/>
    <content type="html">Whilst I was caught up with the day job (long, long commutes ...) Puppet seems to have got itself a CI setup:&lt;br /&gt;&lt;br /&gt;&lt;a href='http://reductivelabs.com/trac/puppet/wiki/PuppetContinuousIntegration' rel='nofollow'&gt;http://reductivelabs.com/trac/puppet/wiki/PuppetContinuousIntegration&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;If you have a weird and wonderful os you want hosted in it for functional/integration testing follow the instructions.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:54570</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/54570.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=54570"/>
    <title>puppetdoc goodness</title>
    <published>2008-11-20T13:46:39Z</published>
    <updated>2008-11-20T13:46:39Z</updated>
    <content type="html">More puppet goodenss from masterzen in the form of improved puppetdoc allowing inline manifest documentation:&lt;br /&gt;&lt;br /&gt;&lt;a href='http://reductivelabs.com/trac/puppet/wiki/PuppetManifestDocumentation' rel='nofollow'&gt;http://reductivelabs.com/trac/puppet/wiki/PuppetManifestDocumentation&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Sample output here:&lt;br /&gt;&lt;br /&gt;&lt;a href='http://www.masterzen.fr/puppet/rdoc/index.html' rel='nofollow'&gt;http://www.masterzen.fr/puppet/rdoc/index.html&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:54301</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/54301.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=54301"/>
    <title>puppetdoc goodness</title>
    <published>2008-11-20T10:21:05Z</published>
    <updated>2008-11-20T10:21:05Z</updated>
    <content type="html">More puppet goodenss from masterzen in the form of improved puppetdoc:&lt;br /&gt;&lt;br /&gt;&lt;a href='http://reductivelabs.com/trac/puppet/wiki/PuppetManifestDocumentation' rel='nofollow'&gt;http://reductivelabs.com/trac/puppet/wiki/PuppetManifestDocumentation&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:54064</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/54064.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=54064"/>
    <title>Scribe</title>
    <published>2008-11-07T18:05:48Z</published>
    <updated>2008-11-07T18:05:48Z</updated>
    <content type="html">I've just come across Facebook's open sourced logging aggregator scribe, which looks interesting:&lt;br /&gt;&lt;br /&gt;&lt;a href='http://www.facebook.com/notes.php?id=9445547199#/note.php?note_id=32008268919&amp;id=9445547199&amp;index=0' rel='nofollow'&gt;http://www.facebook.com/notes.php?id=9445547199#/note.php?note_id=32008268919&amp;id=9445547199&amp;index=0&lt;/a&gt;&lt;br /&gt;&lt;a href='http://developers.facebook.com/scribe/' rel='nofollow'&gt;http://developers.facebook.com/scribe/&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:53612</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/53612.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=53612"/>
    <title>Capturing the intent of system changes</title>
    <published>2008-11-04T21:05:24Z</published>
    <updated>2008-11-04T21:05:24Z</updated>
    <content type="html">There has been some discussion on the puppet lists about potential language shortcomings, something &lt;a href="http://madstop.com/" rel="nofollow"&gt;lak&lt;/a&gt; said echoed with some thoughts I've been having recently:&lt;br /&gt;&lt;br /&gt;&lt;quote&gt;&lt;br /&gt;No one starts with code, even when they think they do -- you always&lt;br /&gt;start with intent.  Why are you building this node?  What services&lt;br /&gt;should it offer?  Why?&lt;br /&gt;&lt;/quote&gt;&lt;br /&gt;&lt;br /&gt;In Test Driven/Behaviour Driven Development projects I see intent and goal extensively within the language of the tests.&lt;br /&gt;&lt;br /&gt;Time and again when I see setups with systems in a state where their configuration is divergent and it's impossible to tell what is the desired state (if you haven't heard of puppet - check it out) and why the change was needed. &lt;br /&gt;&lt;br /&gt;Take for an example an organisation using NFS or Samba as a backend store for documents for a distributed workflow. Tweaks to the config (kernel parameters, mount options, config changes) may be apparent from the system or puppet, but it may not be clear the underlying value that you're trying to achieve. It may be throughput, reliability, access - systems changes are usually made for a specific reason - I'd like to be able to more easily capture that (preferably in the format of executable tests to validate) but make it easy for Jo, the Sysadmin, to easily do as change is driven out either in reaction to a situation or as part of a planned change.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:53466</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/53466.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=53466"/>
    <title>Puppet 0.24.6</title>
    <published>2008-11-01T11:08:45Z</published>
    <updated>2008-11-01T11:08:45Z</updated>
    <content type="html">I'm really excited to get back from holiday and see the release of puppet 0.24.6. &lt;br /&gt;&lt;br /&gt;&lt;a href='http://groups.google.com/group/puppet-users/browse_thread/thread/d3752a90ef20323f#' rel='nofollow'&gt;http://groups.google.com/group/puppet-users/browse_thread/thread/d3752a90ef20323f#&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Some of the new language features from Brice are really useful and should allow for much richer expression in manifests.&lt;br /&gt;&lt;br /&gt;I'm hoping to get back to working on the win32 port, and looking at improving facter again.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:52943</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/52943.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=52943"/>
    <title>Systems Administration must die, die, die</title>
    <published>2008-06-01T14:46:54Z</published>
    <updated>2008-06-01T14:46:54Z</updated>
    <content type="html">I really think that the term "Systems Administration" needs to go away. Use Systems Integrator, Systems Engineer (or Systems Reliability Engineer if you're Google) or some other term that more accurately represents the role.&lt;br /&gt;&lt;br /&gt;I know there has been a lot of discussion about DSL's and Polyglot Programming around (eg &lt;a href='http://ola-bini.blogspot.com/2008/05/new-hope-polyglotism.html' rel='nofollow'&gt;http://ola-bini.blogspot.com/2008/05/new-hope-polyglotism.html&lt;/a&gt;), but I know that good Systems Engineers regularly context switch between different DSLs (config file syntax, puppet) languages (shell, batch, sed, awk, perl, python, ruby, powershell).&lt;br /&gt;&lt;br /&gt;From my own experience I might be debugging a core dumping application using gdb, then swapping puppet update something, followed by a dash of shell, a sprinkling of graphing in gnuplot (or gruff and ruby), then some Java. I don't think the word administration even comes close to explaining that.&lt;br /&gt;&lt;br /&gt;I don't hear the term "Operator" in common usage for Systems Engineer, and I'd like to see Administrator go the same way. If you're recruiting for people think about the fact that words are powerful, think about the role and what it involves, then see if you feel that Administrator is the word you'd choose to fit that.&lt;br /&gt;&lt;br /&gt;If you don't know what your friendly neighbourhood Systems Integrator does, ask her if she would mind you shadowing for a day, if you're developing you probably will learn a lot about how to write applications that are supportable just from understanding the pain points of debugging with just a log file!</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:52603</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/52603.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=52603"/>
    <title>Thoughtworks Geek Night - Mocking 28th May</title>
    <published>2008-05-20T05:49:27Z</published>
    <updated>2008-05-20T05:49:27Z</updated>
    <category term="events"/>
    <category term="oss"/>
    <content type="html">&lt;a name="cutid1"&gt;&lt;/a&gt;&lt;br /&gt;May 28th will be a Mocking focussed Geek Night at the ThoughtWorks office:&lt;br /&gt;&lt;br /&gt;Mocking can make code more reliable, more comprehensible and allow you&lt;br /&gt;to spot problems in design long before your code is deployed. Speakers&lt;br /&gt;will include Steve Freeman and Nat Pryce, developers of JMock and&lt;br /&gt;Felix Leipold of ThoughtWorks.&lt;br /&gt;&lt;br /&gt;Time permitting there will also be a mocking dojo to allow you to get&lt;br /&gt;&lt;br /&gt;See:&lt;br /&gt;&lt;br /&gt;&lt;a href='http://londongeeknights.wetpaint.com' rel='nofollow'&gt;http://londongeeknights.wetpaint.com&lt;/a&gt;&lt;br /&gt;&lt;a href='http://upcoming.yahoo.com/event/498162/' rel='nofollow'&gt;http://upcoming.yahoo.com/event/498162/&lt;/a&gt;&lt;br /&gt;&lt;a name='cutid1-end'&gt;&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:52288</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/52288.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=52288"/>
    <title>Shell history meme</title>
    <published>2008-04-12T17:36:12Z</published>
    <updated>2008-04-12T17:36:12Z</updated>
    <content type="html">&lt;a name="cutid1"&gt;&lt;/a&gt;&lt;br /&gt;history|awk '{a[$2]++ } END{for(i in a){print a[i] " " i}}'|sort -rn|head&lt;br /&gt;96 ls&lt;br /&gt;47 vi&lt;br /&gt;37 sudo&lt;br /&gt;35 cd&lt;br /&gt;30 make&lt;br /&gt;21 vim&lt;br /&gt;17 svn&lt;br /&gt;16 curl&lt;br /&gt;15 gdb&lt;br /&gt;12 grep</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:52140</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/52140.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=52140"/>
    <title>OS X and dtrace</title>
    <published>2008-03-12T08:19:59Z</published>
    <updated>2008-03-12T08:24:20Z</updated>
    <category term="os x"/>
    <category term="dtrace"/>
    <content type="html">&lt;a name="cutid1"&gt;&lt;/a&gt;&lt;br /&gt;Played a bit with trying to get &lt;a href="http://prefetch.net/projects/apache_modtrace/index.html" rel="nofollow"&gt;mod_trace&lt;/a&gt; the dtrace module for apache working with Leopard yesterday evening.&lt;br /&gt;&lt;pre&gt;
gcc -o foo -arch x86_64 foo.c
/var/folders/rV/rV1x2DafFr0R6tGG+1bbk++++TM/-Tmp-//ccnykQ1o.s:11:bad
register name `%%esi)'
&lt;/pre&gt;&lt;br /&gt;I didn't have time to fully investigate so fired off a &lt;a href="http://opensolaris.org/jive/thread.jspa?messageID=214321&amp;amp;tstart=0" rel="nofollow"&gt;reproducer&lt;/a&gt; to dtrace-discuss. It turns out that DTRACE_PROBE, DTRACE_PROBE1 and friends are not supported on OS X despite being exported. A little further investigation this morning showed that the root cause is actually a bad define in /usr/include/mach/i386/sdt_isa.h:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;#ifdef __x86_64__&lt;br /&gt;&lt;br /&gt;#define DTRACE_NOPS                     \&lt;br /&gt;       "nop"                   "\n\t"  \&lt;br /&gt;       "leal 0(%%esi), %%esi"  "\n\t"&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;So rather than use the DTRACE_PROBE# family the correct way to do this on OS X is to use the generated macros (and probe tests) from dtrace -h:&lt;br /&gt;&lt;pre&gt;
dtrace -h -arch x86_64 -s foo.d
cat foo.d
provider testDtraceProbe {
    probe probe__noargs();
};
&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Then include the generated foo.h in your and use the generated probe, eg: TESTDTRACEPROBE_PROBE_NOARGS. A good example of this is the patch for &lt;a href="http://leenux.org.uk/dtrace-patches/dtrace-with-postgres-on-osx" rel="nofollow"&gt;dtrace on postgresql&lt;/a&gt; for OS X from Lee Packham.&lt;br /&gt;&lt;br /&gt;Hopefully tonight I can get a working mod_trace on OS X and write some dtrace scripts for apache and in the future maybe be able to look at uprobes systemtap on Linux as well. It &lt;a href="http://sourceware.org/bugzilla/show_bug.cgi?id=952" rel="nofollow"&gt;looks as if systemtap user space probes are progressing &lt;br /&gt;&lt;a name='cutid1-end'&gt;&lt;/a&gt;&lt;/a&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:51730</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/51730.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=51730"/>
    <title>Tool of the day</title>
    <published>2008-02-19T17:45:40Z</published>
    <updated>2008-02-19T17:45:59Z</updated>
    <category term="oss"/>
    <category term="netfilter"/>
    <category term="lagfactory"/>
    <content type="html">I was looking for something to simulate delay and latency on linux using netfilter or iptables and discovered Netem and the wonderful &lt;a href="http://software.inl.fr/trac/wiki/LagFactory" rel="nofollow"&gt;lagfactory&lt;/a&gt; script that did just what I wanted.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:51482</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/51482.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=51482"/>
    <title>Puppet and ctags</title>
    <published>2008-02-11T21:06:53Z</published>
    <updated>2008-02-11T21:07:35Z</updated>
    <category term="puppet"/>
    <category term="ctags"/>
    <content type="html">Whilst finding my way around puppet, I realised that some of the tools I'm used to when developing in other languages weren't quite there. &lt;br /&gt;&lt;br /&gt;A quick read through the ctags documentation and I knocked up a couple of simple regular expressions that enable me to quick navigate through a large, split out puppet configuration using vim. Adding the following to ~/.ctags will enable you to run ctags -R at the top of your puppet manifests and navigate through tags. I'll probably need to actually go through the language definition and ctags docs some more to provide more comprehensive functionality but this works for me right now so I wanted to share it.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;
--langdef=puppet
--langmap=puppet:.pp
--regex-puppet=/^class[ \t]*([:a-zA-Z0-9_\-]+)[ \t]*/\1/d,definition/
--regex-puppet=/^site[ \t]*([a-zA-Z0-9_\-]+)[ \t]*/\1/d,definition/
--regex-puppet=/^node[ \t]*([a-zA-Z0-9_\-]+)[ \t]*/\1/d,definition/
--regex-puppet=/^define[ \t]*([:a-zA-Z0-9_\-]+)[ \t]*/\1/d,definition/
&lt;/pre&gt;</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:51361</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/51361.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=51361"/>
    <title>Virtualisation libraries</title>
    <published>2008-02-04T10:11:16Z</published>
    <updated>2008-02-04T16:27:59Z</updated>
    <category term="virtualisation"/>
    <content type="html">Whilst looking into the progress of &lt;a href="http://libvirt.org" rel="nofollow"&gt;libvirt&lt;/a&gt; and use with VMWare and OS X, I discovered &lt;a href="http://www.lostcreations.com/code/wiki/ivi" rel="nofollow"&gt;ivi&lt;/a&gt; which is a java library around VMWare, Xen, KVM and OpenVZ. Hopefully VMWare in libvirt won't be far off.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:50798</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/50798.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=50798"/>
    <title>Yaboot update</title>
    <published>2008-01-04T13:33:40Z</published>
    <updated>2008-01-04T13:34:20Z</updated>
    <category term="yaboot"/>
    <category term="fedora"/>
    <content type="html">It's taken me some time since I moved in to the new place to setup my test environment again, it's not ideal as I don't have as much ppc hardware as I used to but it's a start.  The morning was spent getting dhcp setup, and ensuring neboot worked end to end with the iBook. Once that was done I could test &lt;a href="http://yaboot.ozlabs.org/" rel="nofollow"&gt;yaboot git HEAD&lt;/a&gt; using netboot.&lt;br /&gt;&lt;br /&gt;Some of the recent features are really useful, I love being able to netboot to test the netboot code, then do &lt;br /&gt;&lt;code&gt;&lt;br /&gt;device=hd partition=2 filename=yaboot.conf&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;To boot off the hard disk. The use of the initrd= to load an alternate initrd from the command line is an improvement I've wanted for a long time and is great. It's also a good start to adding multiple initramfs images.&lt;br /&gt;&lt;br /&gt;There is also the bootonce feature which I've not really played with in anger, as I tend to do most of my yaboot testing via netboot, which is even easier now we support larger images.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:49260</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/49260.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=49260"/>
    <title>yaboot</title>
    <published>2007-08-17T15:36:14Z</published>
    <updated>2008-02-24T10:56:29Z</updated>
    <category term="yaboot"/>
    <content type="html">yaboot 1.3.14 is released&lt;br /&gt;&lt;br /&gt;&lt;a href='http://yaboot.ozlabs.org/' rel='nofollow'&gt;http://yaboot.ozlabs.org/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Once my Fedora account is sorted I'll update there.&lt;br /&gt;&lt;br /&gt;Many nice things for enterprise ppc users - bootonce, pSeries netbooting, user confs, pxelinux style netbooting.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:49039</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/49039.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=49039"/>
    <title>Time for a change</title>
    <published>2007-08-17T14:32:35Z</published>
    <updated>2007-08-17T14:32:35Z</updated>
    <content type="html">After much consideration - I've decided to pursue other opportunities outside of Red Hat.  My last day is today.&lt;br /&gt;&lt;br /&gt;It's been a tough call, Red Hat have been a fantastic employer but it's time for me to do something different with my days. &lt;br /&gt;&lt;br /&gt;I'm still looking forward to being active in Fedora, RPM, yaboot and other communities in my free time.</content>
  </entry>
  <entry>
    <id>urn:lj:livejournal.com:atom1:nasrat:47821</id>
    <link rel="alternate" type="text/html" href="http://nasrat.livejournal.com/47821.html"/>
    <link rel="self" type="text/xml" href="http://nasrat.livejournal.com/data/atom/?itemid=47821"/>
    <title>RPM 4.4.2.1</title>
    <published>2007-07-23T13:52:33Z</published>
    <updated>2007-07-23T13:52:33Z</updated>
    <category term="rpm"/>
    <content type="html">As &lt;a href="http://laiskiainen.org/blog/?p=13" rel="nofollow"&gt;Panu&lt;/a&gt; discusses and the &lt;a href="https://lists.dulug.duke.edu/pipermail/rpm-announce/2007-July/000001.html" rel="nofollow"&gt;announcement&lt;/a&gt; details. &lt;a href="http://www.rpm.org" rel="nofollow"&gt;rpm.org&lt;/a&gt; has released rpm-4.4.2.1 maintenance release.&lt;br /&gt;&lt;br /&gt;The hg branch for 4.4.x is &lt;a href='http://hg.rpm.org/rpm-4.4.x' rel='nofollow'&gt;http://hg.rpm.org/rpm-4.4.x&lt;/a&gt;&lt;br /&gt;The hg branch for HEAD and new development is &lt;a href='http://hg.rpm.org/' rel='nofollow'&gt;http://hg.rpm.org/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Mailing list for discussion is here &lt;a href='https://lists.rpm.org/mailman/listinfo/rpm-maint' rel='nofollow'&gt;https://lists.rpm.org/mailman/listinfo/rpm-maint&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Fedora users should see it hitting rawhide shortly.</content>
  </entry>
</feed>
