bob2020-10-20T15:05:28+01:00http://randomness.org.uk/bob walkerbob@randomness.org.ukhttps://randomness.org.uk/2017/05/21/Anonymising-talk-submissions-for-DevOpsDays-LondonAnonymising talk submissions for DevOpsDays London2017-05-21T00:00:00+01:00bob walkerhttps://randomness.org.uk/<p>I’m one of the organizers of <a href="https://www.devopsdays.org/events/2017-london/">DevOpsDays London 2017</a>, and for all sorts of reasons I’ve ended up with the job of anonymising <a href="https://www.devopsdays.org/events/2017-london/propose/">talk submissions</a> so that the rest of the committee can review them without bias. We’re trying to run a <a href="https://medium.com/@hannahfoxwell/should-tech-conferences-be-more-inclusive-5a05a09cd302">diverse and inclusive</a> conference, so this is an important step to make sure we end up with a diverse set of speakers. Given all of this, I thought I’d talk about the process I’m using to anonymise the submissions.</p>
<p>We’re accepting talk submissions via a <a href="https://docs.google.com/forms/d/e/1FAIpQLSeOEbAXbJP2qNPIATC9WijkJAKJt_AOjxG2yDmrcrZtcrGjvQ/viewform#start=openform">Google form</a>, which puts the data into a Google sheet which only I have access to. Every so often I copy and paste the titles, abstracts, and any other relevant details of new submissions into a text file which is version controlled in git and stored in a GitLab private repo. I then anonymise it all by removing personal names, company names, and gendered pronouns. I also create a unique ID for the submission, which hides the order of submission. I use a <a href="https://github.com/rjw1/scripts/blob/master/hide-submission-number.pl">script</a> which encrypts the ID with <a href="https://metacpan.org/pod/Crypt::Skip32::Base32Crockford">Crypt::Skip32::Base32Crockford</a> (the key is different in the copy I’m using).</p>
<p>Here’s an example:</p>
<ul>
<li>ID: 1</li>
<li>Title: How to DevOps Production</li>
<li>Abstract: How Alice and her team made production better by using Large Company’s tool. Alice will explain the challenges of changing the culture at Small Company while trying to implement a new technology.</li>
</ul>
<p>becomes</p>
<ul>
<li>ID: 2W1FW2W</li>
<li>Title: How to DevOps Production</li>
<li>Abstract: How 2W1FW2W and their team made production better by using a clustering tool. 2W1FW2W will explain the challenges of changing the culture at their place of work while trying to implement a new technology.</li>
</ul>
<p>The plan is to take these anonymised submissions and place them into a Google form which the reviewing panel will then score on a scale of 0-3:</p>
<ul>
<li>0 = This submission is not suitable</li>
<li>1 = This submission is mostly suitable</li>
<li>2 = This submission is suitable</li>
<li>3 = This submission is very suitable</li>
</ul>
<p>We also plan to make a copy of this form, allow anyone to review the submissions, and use the data from that to help shape our eventual schedule.</p>
<p>So please <a href="https://www.devopsdays.org/events/2017-london/propose/">submit a talk</a> to make more work for me. We’re also still looking for <a href="https://www.devopsdays.org/events/2017-london/sponsor">sponsors</a> to make DevOpsDays London as <a href="https://medium.com/@hannahfoxwell/should-tech-conferences-be-more-inclusive-5a05a09cd302">inclusive as possible</a>. Ticket sales are <a href="https://www.devopsdays.org/events/2017-london/registration">already open</a>, too.</p>
https://randomness.org.uk/2016/04/17/is-it-pie-lives-againis it pie lives again2016-04-17T00:00:00+01:00bob walkerhttps://randomness.org.uk/<p>About a year ago my co-located server died and to be honest it was a diseased
pet so good riddance. One of the side effects of this was that several of the
websites I maintain died at the same time. While I got the most important ones
back quite quickly on a variety of “cloud” servers some I didnt worry about.
One of these was <a href="http://isitpie.com">isitpie.com</a> which it would seem at least
3 other people cared about. So I spent some time resurrecting it on Saturday.</p>
<p>First of all I created the correct directories on my
<a href="http://symbiosis.bytemark.co.uk/">Symbiosis</a> install. Symbiosis is great way
to host multiple domains that you need web and email for. If you run it on
<a href="https://www.bytemark.co.uk/cloud/">bytemark’s cloud</a> you get free dns as well
which it will set up for you. Then I created a <a href="https://github.com/rjw1/isitpie.com">basic jekyll
site</a> and grabbed the most important
content from the <a href="http://web.archive.org/web/20150212203718/http://blog.isitpie.com/Rules_of_Pie.html">Internet Archive</a>
and added it back. Then I told my <a href="https://www.gandi.net">registrar</a> to change
my whois records to point at the bytemark DNS servers.</p>
<p>This all took me about 2 hours and now <a href="http://isitpie.com">isitpie.com</a> lives
again. As an added bonus its also available on IPv6 now.</p>
https://randomness.org.uk/2016/03/25/cauliflower-and-anchovy-pureecauliflower and anchovy purée2016-03-25T00:00:00+00:00bob walkerhttps://randomness.org.uk/<ul>
<li>A small Cauliflower</li>
<li>A tin of anchovies</li>
<li>Extra Virgin Olive Oil</li>
<li>Cider Vinegar</li>
<li>Water</li>
</ul>
<ol>
<li>Break the cauliflower into florets</li>
<li>Steam cauliflower for 10 minutes</li>
<li>Put cauliflower in a bowl</li>
<li>Open a tin of anchovies</li>
<li>Eat one anchovy</li>
<li>Place rest of tin including oil over the cauliflower</li>
<li>Blend with a stick blender</li>
<li>Add a glug of oil and vinegar</li>
<li>blend some more</li>
<li>Add a bit of water to make the puree less thick.</li>
<li>Stir</li>
<li>Serve</li>
</ol>
<p>This made a very tasty purée to go with the rest of a quite bland dinner.</p>
https://randomness.org.uk/2016/01/24/London-Road---New-Years-Day-2016London Road - New Year's Day 20162016-01-24T00:00:00+00:00bob walkerhttps://randomness.org.uk/<p><a href="https://flic.kr/p/BLx3KC"><img src="https://farm6.staticflickr.com/5649/23476470434_89c6de6b42_z_d.jpg" alt="London Road Norbury sign" title="London Road Norbury sign" /></a></p>
<p>Since I’m now sort of old I don’t normally go out drinking on New Year’s Eve anymore.
This means I’m normally awake on New Year’s Day without a hangover. Given this I need something to do other than watch the <a href="http://www.theworldsstrongestman.com/">World’s Strongest Man</a> final in the evening.</p>
<p>In an effort to help <a href="http://www.earth.li/~kake/">Kake</a> with her project to document the history of <a href="http://london-road-croydon.org/history/">London Road</a> I normally spend my New Years Day taking <a href="https://www.flickr.com/photos/rjw1/sets/72157662344496039">photos of things</a> on London Road. Taking a photo survey each year will help Kake as and when she writes the articles about those properties since it will hopefully catch the changes over time of the use of the properties.</p>
<p>To get to the northern end I caught a 109 bus and got the front seat on the top floor. So I <a href="https://www.youtube.com/watch?v=eN60D1UB-7I">filmed my bus journey</a> up the length of London Road.</p>
<p>Then I got down to the serious business of taking photos which was only punctuated by having breakfast in <a href="http://london.randomness.org.uk/wiki.cgi?Rio%27s_Britannia_Cafe,_SW16_4AE">Rio’s Britannia Cafe</a>
<a href="https://www.flickr.com/photos/rjw1/24102483245/in/album-72157662344496039/"><img src="https://farm6.staticflickr.com/5834/24102483245_d5bb8fba66_z_d.jpg" alt="Set 2 at Rio's" title="Set 2 at Rio's" /></a></p>
<p>Now most of the <a href="https://www.flickr.com/photos/rjw1/sets/72157662344496039">photos</a> are relatively dull photos of shop fronts which while useful for Kake are not that exciting for everyone else. However I did manage to take a few photos which I thought were interesting.</p>
<p><a href="https://www.flickr.com/photos/rjw1/24087500376/in/album-72157662344496039a/"><img src="https://farm2.staticflickr.com/1598/24087500376_9df7bb43b3_q_d.jpg" alt="An old MOT sign" title="An old MOT sign" /></a>
<a href="https://www.flickr.com/photos/rjw1/23488675693/in/album-72157662344496039/"><img src="https://farm2.staticflickr.com/1506/23488675693_d0d654cfa0_q_d.jpg" alt="Lambs in a trolley" title="Lambs in a Trolley" /></a>
<a href="https://www.flickr.com/photos/rjw1/23747732669/in/album-72157662344496039/"><img src="https://farm2.staticflickr.com/1460/23747732669_2c71ac00ed_q_d.jpg" alt="Shadowbush" title="Shadowbush" /></a>
<a href="https://www.flickr.com/photos/rjw1/24115915425/in/album-72157662344496039/"><img src="https://farm2.staticflickr.com/1558/24115915425_247a8e01a6_q_d.jpg" alt="overheight vehicle" title="Overheight vehicle" /></a>
<a href="https://www.flickr.com/photos/rjw1/23490905043/in/album-72157662344496039/"><img src="https://farm6.staticflickr.com/5744/23490905043_42f3b669c8_q_d.jpg" alt="pigeon" title="pigeon" /></a>
<a href="https://www.flickr.com/photos/rjw1/23823747950/in/album-72157662344496039/"><img src="https://farm2.staticflickr.com/1514/23823747950_bf0f3a5ed4_q_d.jpg" alt="lichen on a postbox" title="lichen on a postbox" /></a>
<a href="https://www.flickr.com/photos/rjw1/24121711225/in/album-72157662344496039/"><img src="https://farm6.staticflickr.com/5749/24121711225_87d55cffa7_q_d.jpg" alt="tatters of tape" title="tatters of tape" /></a>
<a href="https://www.flickr.com/photos/rjw1/23494067194/in/album-72157662344496039/"><img src="https://farm2.staticflickr.com/1659/23494067194_1a2e882404_q_d.jpg" alt="foul sewer" title="foul sewer" /></a></p>
https://randomness.org.uk/2016/01/03/Anchovy-AuberginesAnchovy Aubergines2016-01-03T00:00:00+00:00bob walkerhttps://randomness.org.uk/<p><a href="https://flic.kr/p/BDNiN5"><img src="https://c2.staticflickr.com/2/1665/23400232244_49b76a320c.jpg" alt="lamb chops, mash and anchovy aubergine" title="lamb chops, mash and anchovy aubergine" /></a></p>
<p><a href="https://twitter.com/Kake/status/681896477514416129">My fans asked me to document</a> how I cooked the anchovy aubergines that were part of the above dinner.</p>
<ul>
<li>Fry a sliced onion in the oil from a tin of anchovies in a medium-sized saucepan</li>
<li>Slice an aubergine into 1 centimetre batons and fry with onions for a couple of minutes</li>
<li>Add the tin of anchovies</li>
<li>Add a large teaspoon of red pepper paste and a large squeeze of garlic paste</li>
<li>Fry for about 5 minutes</li>
<li>Realise that the aubergine is reducing quite a bit</li>
<li>Slice an aubergine into 1 centimetre batons and add to saucepan</li>
<li>Fry for about 5 minutes</li>
<li>Add some <a href="http://amzn.to/1O3rivV">Maggi Cube</a> flavoured potato water.</li>
<li>Cook for about another 10 minutes or until the aubergine is cooked to your liking</li>
</ul>
https://randomness.org.uk/2015/08/23/roasted-cobbler-with-paprika-polentaroasted cobbler with paprika polenta2015-08-23T00:00:00+01:00bob walkerhttps://randomness.org.uk/<p><a href="https://www.flickr.com/photos/rjw1/20631643148/"><img src="https://farm6.staticflickr.com/5816/20631643148_5f468bfbdd.jpg" alt="Roasted Cobbler with Paprika Polenta" title="Roasted Cobbler with Paprika Polenta" /></a></p>
<h4 id="roasted-cobbler-with-courgettes">Roasted Cobbler with Courgettes</h4>
<ul>
<li>Slice a small onion.</li>
<li>Julienne about 3 inches of ginger.</li>
<li>Cut 2 courgettes in half lengthways and then cut those halves in half. Then cut thin slices lengthways.</li>
<li>Fry all of the above in olive oil for about 4 minutes then add several large dashes of fish sauce and a large dash of sushi seasoning then cook for about a minute.</li>
<li>Place half of the contents of the frying pan in some foil which you have made into a vessel.</li>
<li>Repeat for another foil vessel.</li>
<li>Place a cobbler fillet on the vegetables in each vessel.</li>
<li>Season.</li>
<li>Close up the vessels and put on a baking tray.</li>
<li>Cook in a pre heated oven at Gas 6 for 18 minutes.</li>
</ul>
<h4 id="paprika-polenta">Paprika Polenta</h4>
<ul>
<li>Bring to the boil 500ml of water with 2 maggi cubes and a teaspoon or two of paprika</li>
<li>Add 125g of polenta and stir for about 5 minutes.</li>
</ul>
https://randomness.org.uk/2015/01/18/beef-and-mushroom-stew-with-mustard-dumplingsbeef and mushroom stew with mustard dumplings2015-01-18T00:00:00+00:00bob walkerhttps://randomness.org.uk/<p><a href="https://flic.kr/p/qR95CX"><img src="https://farm8.staticflickr.com/7578/16308647231_4ec6fd4cb9.jpg" alt="beef and mushroom stew with mustard dumplings" title="beef and mushroom stew with mustard dumplings" /></a></p>
<p>Since <a href="https://twitter.com/Kake/status/556876122051588096">Kake</a> seemed to like
this evenings dinner. I suppose I should document it.</p>
<ul>
<li>Chop 2 onions</li>
<li>Fry onions until sort of brown</li>
<li>Chop half a punnet of mushrooms into slices</li>
<li>Fry mushrooms with onions</li>
<li>Chop other half of punnet of mushrooms into quarters</li>
<li>Fry with everything else</li>
<li>Empty into bowl</li>
<li>Deglaze with water</li>
<li>Pour liquid into bowl</li>
<li>Fry bits of beef a few bits at a time and put into bowl. Deglaze after 2 rounds</li>
<li>One final deglazing</li>
<li>Put stuff in bowl back into pot</li>
<li>In a pint glass put 2 beef oxo cubes, soy sauce, worcestshire sauce, celery salt, pepper and about a pint of water</li>
<li>Add to pot</li>
<li>Bring to boil</li>
<li>Add 2.5 carrots sliced</li>
<li>Boil for 10 minutes</li>
<li>Cover and simmer for about 105 minutes.</li>
</ul>
<p><a href="https://flic.kr/p/qR9hSN"><img src="https://farm8.staticflickr.com/7553/16308688402_219b3a1f23.jpg" alt="beef and mushroom stew before dumplings" title="beef and mushroom stew before dumplings" /></a></p>
<ul>
<li>Mix 150g flour, about 2 teaspoons of baking powder and 2 pinches of salt in a bowl.</li>
<li>Add 75g of suet</li>
<li>Mix</li>
<li>Add about 7 teaspoons of water and about 2 teaspoons of mustard.</li>
<li>Form a dough</li>
<li>Make dumplings and place in pot on top of stew and cook for about 30 minutes</li>
<li>Serve with brussel sprouts</li>
</ul>
https://randomness.org.uk/2014/03/19/three-annoying-thingsThree things which annoy me.2014-03-19T00:00:00+00:00bob walkerhttps://randomness.org.uk/<h3 id="faking-message-queues-with-cron">Faking message queues with cron</h3>
<p>I’ve seen this a couple of times now. Running a cron every so often to see if
something needs doing based on something changing i.e files existing or an entry
in a database table. When what you really should be doing is firing things onto message
queues for workers to deal with.</p>
<h3 id="nfs">NFS</h3>
<p>If someone suggests that you use NFS to share files between web servers just say no.
NFS does have several uses this is not one of them. Look at using an object store
or some sort of clustered file system or even just rsyncing files to all the webservers.
Single points of failure are not your friend.</p>
<h3 id="not-using-a-logical-volume-manager">Not using a Logical Volume Manager</h3>
<p>Being able to extend the size of your disks easily is a good thing if you are
running out of space on a critical file system. A logical volume manager helps
with this. You will also probably need a file system which can do online resizing
as well.</p>