<?xml version="1.0"?><!DOCTYPE rss PUBLIC "-//Netscape Communications//DTD RSS 0.91//EN" "http://my.netscape.com/publish/formats/rss-0.91.dtd"><rss version="0.91"><channel>  <title>JezUK News</title>  <description>JezUK Development Notes and Announcements</description>  <link>/notebook</link>  <language>en-gb</language>  <webMaster>jez@jezuk.co.uk</webMaster>  
<item><title>After hitting a plateau in October, Cyclestreets Android app installs have been steadily climbing again since Christmas</title><link>http://www.jezuk.co.uk/notebook?id=4336</link><description><![CDATA[ <p>After hitting a plateau in October, <a href='http://cyclestreets.net/'>Cyclestreets</a> <a href='https://market.android.com/details?id=net.cyclestreets'>Android app</a> installs have been steadily climbing again since Christmas. Thanks Santa!</a> ]]></description></item>
<item><title>The main focus of my development work is, and has been for the past few months, letting the Ops guys drink more tea</title><link>http://www.jezuk.co.uk/notebook?id=4319</link><description><![CDATA[ The main focus of my development work is, and has been for the past few months, letting the Ops guys drink more tea.  I'll be talking, briefly, about it <a href='http://www.eventbrite.com/event/2452318952'>the ACCU Lightning talks</a> on Wednesday, 23 November.
 ]]></description></item>
<item><title>So last Sunday evening I was sitting in my attic with three balloons, about to go to bed, when my cheerful bear-like code-friend Olve tweeted Just submitted my proposals to ACCU 2012</title><link>http://www.jezuk.co.uk/notebook?id=4313</link><description><![CDATA[ <p>So last Sunday evening I was sitting in my attic with three balloons, about to go to bed, when my cheerful bear-like code-friend <a href=''>Olve</a> <a href='http://twitter.com/#!/olvemaudal/status/125699059477524480'>tweeted</a> <blockquote>
Just submitted my proposals to ACCU 2012. Only 35 minutes till submission dateline so hurry up. <a href='http://twitter.com/#%21/search?q=%23accu2012'>#accu2012</a>
</blockquote></p>
<p>So I didn't go to bed.  I created a new Bazaar repository, fired up Emacs, and started typing.  To my mild alarm, the ACCU submission procedure this year is all through the web, rather than by emailing in and I almost blew it by misreading the sign up form and having to fill it in again.  I hit Submit and read 
<blockquote>Thank you for your submission.  You may revise your abstract until the submission deadline in 28 seconds.</blockquote>
I passed on the option to revise and just went with it :)</p>
<hr/>
<h3>Making Jenkins Better</h3>
<p><a href='http://http://jenkins-ci.org/'>Jenkins</a> is a widely used and extremely capable continuous integration server.  While it's been available since 2007, under it's original name of Hudson, its popularity seems to have really taken off in the past year or so.  One of the primary reasons for its success is it's extremely flexible configuration.  Jenkins has a quite a small core, with most of its functionality provided through plugins.  Jenkins' plugins provide access to different source code control systems, a wide variety of build tools, test result tracking and charting, static analysis tools, and so on.  Nearly every aspect of Jenkins can be customised via a plugin.  At time of writing there are over 400 different Jenkins plugins available.</p>
<p>Four hundred is too few.</p>
<p>Over the past two years, we've gone from dabbling with CI to Jenkins forming part ofour core toolset.  Jenkins builds on checkin, yes, but also deploys builds into development environments.  It runs performances tests and records the history. It tells us which build contains which bug fixes. It also does our release builds - tagging the repository, building from the tag, writes release notes telling us which work packs have been updated, pushes the build up onto the live
server, and emails Ops to say everything is ready to go.  The standard plugins provide the foundation, but the our own plugins have put Jenkins at the heart of our development process.</p>
<p>If you want to get the most from Jenkins, you really should write your own plugins.  This session will explain why you should, what you can change or add to Jenkins, and how to do it.</p>
 ]]></description></item>
<item><title>CycleStreets Android App Development Builds</title><link>http://www.jezuk.co.uk/notebook?id=4300</link><description><![CDATA[ <p>The <a href='http://cyclestreets.net/'>CycleStreets</a> Android App is available through the <a href='https://market.android.com/details?id=net.cyclestreets'>Android Market</a>.  Like other apps, if you install from the Market, you will be informed of new updates as they are released. Unlike most other apps, the CycleStreets app is free software - <a href='https://github.com/cyclestreets/android'>the code is available</a> for anyone to poke around with, build on, add to, and so on.</p>
    <p>The code is more or less constantly evolving, so there are often new features or bug fixes in the code some time before a release to the Android Market.  Features or bug fixes you might like to have.  Of course, not everyone has the time or skills to build the code themselves.  Fortunately, we have software to that for us.</p>
    <p>Each time I make a change to my copy of the app's code, a new build of the app will appear <a href='/cyclestreets/jezhiggins'>here</a>.  Whatever I'm working on might not be entirely complete, but it'll be the very latest code there is.</p>
    <p>Once I have finished a feature, I push the code into the main branch.  Those builds will appear <a href='/cyclestreets/master'>here, in the master directory</a>.  Builds of this branch will happen less often, but new features should be complete.</p>
    <p>To install any of these builds, you will first need to uninstall any existing version of the CycleStreets app you might have on your phone, and then turn on the "<a href='http://androidtipsblog.com/how-to-install-apps-from-unknown-sources-on-android/'>Unknown sources</a>" setting.  With that done, download the build and, once the download completes, select it.  Your phone should offer to install it.</p>
    <p>Unfortunately, there's no way to automatically update an application you've downloaded like this.  The best I can offer is <a href='http://jezuk.dnsalias.net/jenkins/view/CycleStreets/rssAll'>an RSS feed</a> of builds.</p>
 ]]></description></item>
<item><title>CycleStreets for Android now available</title><link>http://www.jezuk.co.uk/notebook?id=4275</link><description><![CDATA[ <p>CycleStreets, providing cycle routing for the UK, is now available on Android – <a href='https://market.android.com/details?id=net.cyclestreets'>Install the app from the Android Market now - for free!</a> 
</p>
<p>I picked up this project at the start of the year, when it was essentially dormant, and now it's live just in time for <a href='http://www.bikeweek.org.uk/'>Bike Week</a>. Read more about it on <a href='http://www.cyclestreets.net/blog/2011/06/21/cyclestreets-for-android/'>the CycleStreets blog</a> or poke around in <a href='https://github.com/cyclestreets'>the code on GitHub</a>.</p> ]]></description></item>
<item><title>Whenever you find XML being processed with regular expressions, stop right there because that's where the bugs are</title><link>http://www.jezuk.co.uk/notebook?id=4271</link><description><![CDATA[ Whenever you find XML being processed with regular expressions, stop right there because that's where the bugs are. ]]></description></item>
<item><title>Patching Clang for Ubuntu 10.10 Maverick Meerkat</title><link>http://www.jezuk.co.uk/notebook?id=4174</link><description><![CDATA[ <p>If you're trying to use the Clang C++ compiler on Maverick and you're getting link failures like 
<pre class="prettyprint"> undefined reference to
`std::basic_streambuf&lt;char, std::char_traits&lt;char> >::seekoff(long, std::_Ios_Seekdir, std::_Ios_Openmode)</pre>
you're just going to have to patch it and build it yourself.  It's actually pretty easy, it just takes a few minutes.</p>
<p>
<ul>
  <li>Check out the LLVM & Clang source and build it as described <a href='http://clang.llvm.org/get_started.html'>on the Clang website</a>.</li>
  <li>Open up ~/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp in your favourite text editor.</li>
  <li>Add the following at line 627, just under the case for <code>llvm::Triple::Linux</code> 
<pre class="prettyprint">
    // Ubuntu 10.10 "Maverick Meerkat" -- gcc-4.4.5 
    AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.4",
                                "i686-linux-gnu", "", "64", triple);
</pre></li>
  <li>Build again.  It'll be much quicker this time around.</li>
  <li>Install - sudo make install</li>
</ul>
</p>
<p>With any luck Clang will be patched up in pretty short order, thus rendering this a historical curiosity.</p> ]]></description></item>
<item><title>New release: The Mango Library</title><link>http://www.jezuk.co.uk/notebook?id=4158</link><description><![CDATA[ The <a href='http://www.jezuk.co.uk/mango/news?id=4157'>2010 October</a> release of the Mango library is available now. ]]></description></item>
<item><title>New release: Arabica XML and HTML Processing Toolkit</title><link>http://www.jezuk.co.uk/notebook?id=4155</link><description><![CDATA[ The <a href='http://www.jezuk.co.uk/cgi-bin/view/arabica/log?id=4154'>2010 November release</a> of the Arabica XML and HTML Processing Toolkit is available now. ]]></description></item>
<item><title>New release: Dublin Core and eGMS Metadata Viewer for Firefox</title><link>http://www.jezuk.co.uk/notebook?id=4121</link><description><![CDATA[ <p>Just uploaded a new release of the <a href='http://www.jezuk.co.uk/cgi-bin/view/software/dc-egms-viewer'>Dublin Core and eGMS Metadata Viewer</a> add-on for Firefox.  Slightly wackily, it will also display metadata from <a href='http://nasataxonomy.jpl.nasa.gov/fordevelopers/metadata.php'>the NASA taxonomy</a> too. ]]></description></item>

</channel></rss>
