<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Dans Blog</title><link>https://www.dantleech.com/</link><description>Recent content on Dans Blog</description><generator>Hugo -- gohugo.io</generator><language>en-gb</language><lastBuildDate>Sun, 18 Feb 2024 00:00:00 +0000</lastBuildDate><atom:link href="https://www.dantleech.com/index.xml" rel="self" type="application/rss+xml"/><item><title>My PHP Problems</title><link>https://www.dantleech.com/blog/2024/02/18/my-php-problems/</link><pubDate>Sun, 18 Feb 2024 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2024/02/18/my-php-problems/</guid><description>For the past months I&amp;rsquo;ve been keeping a list of things I encountered in PHP that I&amp;rsquo;ve found to be problematic, or in other words things that annoy me.
me having problems and being annoyed
This is not my definitive list and things that annoy me in PHP largely depend on the things I&amp;rsquo;m working on, and for the past month I&amp;rsquo;ve been working on:
Phpactor: PHP language server PHP-TUI TUI framework and port of Rust&amp;rsquo;s Ratatui.</description></item><item><title>Running vs Depression</title><link>https://www.dantleech.com/blog/2024/02/17/running-vs-depression/</link><pubDate>Sat, 17 Feb 2024 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2024/02/17/running-vs-depression/</guid><description>Today my Dad sent me my certificate for running the Bristol Half Marathon on my 30th birthday in 2010, I got a time of 1h37m:
So far so good, it&amp;rsquo;s a respectable time, a good time. The amazing thing is that one year previously I was overweight, possibly obese, and had never ran.
At 29 I was not in a good place mentally, I was loads of junk food, knocking back large cans of energy drink and struggling to climb the stairs to the office - I couldn&amp;rsquo;t sleep on my back.</description></item><item><title>One year back from Europe</title><link>https://www.dantleech.com/blog/2023/12/28/one-year-back-from-europe/</link><pubDate>Thu, 28 Dec 2023 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2023/12/28/one-year-back-from-europe/</guid><description>This time last year I had just moved back from Berlin to my hometown Weymouth after an absence of about 20 years.
January: Temporary Accomodation ¶ When I moved back I stayed in a winter holiday-let. My plan was to buy a flat in Weymouth, but that takes time. So I was to stay for 5 months in a rented flat.
I dedicated my first month to running every single day and getting to know my surroundings.</description></item><item><title>PHP Term</title><link>https://www.dantleech.com/blog/2023/11/27/php-term/</link><pubDate>Mon, 27 Nov 2023 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2023/11/27/php-term/</guid><description>TL;DR Term is a low-level terminal manipulation library for PHP based on Crossterm. Give it a star.
(professional) Term logo
When I started porting Ratatui to PHP (see previous post) I didn&amp;rsquo;t fully realise what I was getting myself into.
PHP-TUI is a framework which allows you to create terminal user interfaces, but it does not in itself provide the mechanism to interact with the terminal.
Symfony Terminal ¶ My first idea was to use the Symfony console as a &amp;ldquo;backend&amp;rdquo; for PHP-TUI as (not) detailed in my previous post.</description></item><item><title>PHP-TUI Progress</title><link>https://www.dantleech.com/blog/2023/11/03/php-tui-progress/</link><pubDate>Fri, 03 Nov 2023 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2023/11/03/php-tui-progress/</guid><description>Update 30/11/2023: I continued to work on it and versions have been tagged and you can visit the docs and view a follow up blog post about Term).
TL;DR I&amp;rsquo;ve been working on a TUI framework for PHP. It&amp;rsquo;s not finished yet. Give it a star.
PHP-TUI lnogo
Since being made redundant 3 weeks ago I have been using my unexpected free time to start a project that has been in my minds eye for some time: a TUI framework for PHP.</description></item><item><title>Phpactor 2023.09.24</title><link>https://www.dantleech.com/blog/2023/09/24/phpactor-2023.09.24/</link><pubDate>Sun, 24 Sep 2023 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2023/09/24/phpactor-2023.09.24/</guid><description>I have tagged Phpactor 2023.09.24.
It&amp;rsquo;s been over a month and a half since the last release. As per the last month I haven&amp;rsquo;t been very active but have managed to contribute various bug fixes and small improvements, while there have been some great contributions from bart-jaskulski and mamazu.
PHPCS Extension ¶ Phpactor has been providing an integration with php-cs-fixer for over a year. It fulfils the LSP document formatting action, while also providing inline diagnostics for code-style issues.</description></item><item><title>Comparing Paths</title><link>https://www.dantleech.com/blog/2023/08/27/comparing-paths/</link><pubDate>Sun, 27 Aug 2023 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2023/08/27/comparing-paths/</guid><description>Strava is a service that allows you to record, analyze and share your sporting activities. Strava RS is a TUI (terminal user interface) client for Strava that I&amp;rsquo;m working on. It provides an offline, keyboard driven, interface to Strava using data collected fro the Strava API.
One of the feature the Strava app provides is Matched Routes. If an activity you performed closely matches the route of any previous activities, you can list and compare your previous performances.</description></item><item><title>Day 12: The End</title><link>https://www.dantleech.com/blog/2023/08/24/day-12-the-end/</link><pubDate>Thu, 24 Aug 2023 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2023/08/24/day-12-the-end/</guid><description>Highly Accurate Map
There was a flash in the sky, followed 30 seconds later by a deep rupturing grumble from the sky and a gust of wind, but the storm didn&amp;rsquo;t start until later and the continuous cracking and booming was at least partially the reason I didn&amp;rsquo;t sleep very well. In the morning I had to decide if I was hungry or not, and I decided that I was and at 07:30 I walked out in my socks into the small dinning area of the F1 hotel and helped myself to a pretty good continental breakfast (especially for the €5 price).</description></item><item><title>Day 11: St-Malo</title><link>https://www.dantleech.com/blog/2023/08/23/day-11-st-malo/</link><pubDate>Wed, 23 Aug 2023 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2023/08/23/day-11-st-malo/</guid><description>Map strava
So I had intended to catch the late sailing from St. Malo to portsmouth today. As I lay down in my tent the prvious evening I decided it would be a good time to reserve a ticket, I went to the Condoor Ferry website, selected France-UK and all was going well until it told me the bicycle spaces were sold out.
This was an inconvenience as there were two possiblities, wake up very early and take a different ferry which sails at 10:30 or stay a night in St.</description></item><item><title>Day 10: St-Jacut-de-la-mer</title><link>https://www.dantleech.com/blog/2023/08/22/day-10-st-jacut-de-la-mer/</link><pubDate>Tue, 22 Aug 2023 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2023/08/22/day-10-st-jacut-de-la-mer/</guid><description>Map strava
I&amp;rsquo;m now sitting in &amp;ldquo;Le Petite Creperie&amp;rdquo; in St-Jacut-de-la-mer. They don&amp;rsquo;t have 50cl beers, and only have 25cl, it&amp;rsquo;s going to be an expensive crepe. The campsite was a mistake, there are so many tents it&amp;rsquo;s rather more like a refugee camp than a campsite (to be fair I think it&amp;rsquo;s also a refugee camp). I&amp;rsquo;m installed in close proximity (very close proximity) with a cycling couple from Brighton.</description></item><item><title>Day 9: Bosmeleac</title><link>https://www.dantleech.com/blog/2023/08/21/day-9-bosmeleac/</link><pubDate>Mon, 21 Aug 2023 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2023/08/21/day-9-bosmeleac/</guid><description>Map strava
The french guy was short and maybe around 65 and his eyes sparkled as he talked at me about his cycling trip around the highlands. I was exhausted and gave him little encouragement &amp;ldquo;ah bon!&amp;rdquo; &amp;ldquo;mais c&amp;rsquo;est pas mal&amp;rdquo; &amp;ldquo;bah ouai&amp;rdquo; &amp;ldquo;fault le faire&amp;rdquo;. Until he ran himself out. I ended up camping next to him, and he was snoring at 8:30 and he snored until 8:30 for 12 hours he snored.</description></item><item><title>Day 8: Scaér</title><link>https://www.dantleech.com/blog/2023/08/20/day-8-sca%C3%A9r/</link><pubDate>Sun, 20 Aug 2023 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2023/08/20/day-8-sca%C3%A9r/</guid><description>Map strava
I read from The Pest, having to check at least one word per page in the dictionary on my phone, and then slept unevenly. I slept in later than I would have liked, only rising at 08:30 and making my coffee and eating some cereal with water, it was then to pack up and leave in the usual fashion.
I wasn&amp;rsquo;t feeling super great in the morning, which perhaps was a sign for how I would feel towards the end of the day.</description></item><item><title>Day 7: Lesconil</title><link>https://www.dantleech.com/blog/2023/08/19/day-7-lesconil/</link><pubDate>Sat, 19 Aug 2023 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2023/08/19/day-7-lesconil/</guid><description>Map strava
The weather eased up over the night and in the morning it was clear. At campsites they often ask if you&amp;rsquo;d like to reserve some bread or pastries for the monring, and for once I reserved a Pain au Chocolat and a Pain au Raisan In the morning I made a coffee but didn&amp;rsquo;t drink it, packed up my stuff and then walked over to the reception (l&amp;rsquo;accueil) to collect my breakfast and sat on the wall eating, drinking my coffee and reading the news from the internet, afterwards I just went back, got on my bike and cycled out.</description></item><item><title>Day 6: Pors Peron</title><link>https://www.dantleech.com/blog/2023/08/18/day-6-pors-peron/</link><pubDate>Fri, 18 Aug 2023 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2023/08/18/day-6-pors-peron/</guid><description>Map strava
&amp;ldquo;C&amp;rsquo;est bon, on peu parle francais&amp;rdquo; &amp;ldquo;i like very much to talk with the English, well, the people that speak English, not the Americans, I cannot understand them&amp;rdquo; &amp;ldquo;Ouai, it&amp;rsquo;s not the Queen&amp;rsquo;s English&amp;rdquo; &amp;ldquo;Ah the Queen&amp;rdquo; &amp;ldquo;Oui, it is sad&amp;rdquo; &amp;ldquo;yes&amp;rdquo; &amp;ldquo;a shame&amp;rdquo; &amp;ldquo;he makes how the Prince?&amp;rdquo; &amp;ldquo;the King madam, he makes how the King &amp;quot; &amp;ldquo;yes the King&amp;rdquo; &amp;ldquo;who is next Harry or the other one&amp;rdquo; &amp;ldquo;William?</description></item><item><title>Day 5: Brest</title><link>https://www.dantleech.com/blog/2023/08/17/day-5-brest/</link><pubDate>Thu, 17 Aug 2023 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2023/08/17/day-5-brest/</guid><description>Map strava
The beer was disappointing for €4.50, it was une &amp;ldquo;demi-pression&amp;rdquo; presented in an unimpressive half-glass. There was nobody else in the &amp;ldquo;bar&amp;rdquo; at the campsite, and the internet barely worked, but the owner was kind enough to give me an extension cable to that I could type my blog post. After doing so I looked at the Auberge de Jeunesse (Hostel) in Brest, they were fully booked, I then checked booking.</description></item><item><title>Day 4: The Corner of France</title><link>https://www.dantleech.com/blog/2023/08/16/day-4-the-corner-of-france/</link><pubDate>Wed, 16 Aug 2023 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2023/08/16/day-4-the-corner-of-france/</guid><description>Map (started recording late) strava
Today was a better day in regards to my knee, it hasn&amp;rsquo;t fully recovered but is clearly stronger than it was yesterday. I was cautious to walk up the few steep hills that I encountered, it should be almost as good as new tomorrow.
I slept well at the campsite last night, instead of squeezing myself into the slightly-too-small-to-be-comfortable sleeping bag I used instead a musty sleeping bag liner and the sleeping bag as a &amp;ldquo;duvet&amp;rdquo;.</description></item><item><title>Day 3: Brittany</title><link>https://www.dantleech.com/blog/2023/08/15/day-3-brittany/</link><pubDate>Tue, 15 Aug 2023 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2023/08/15/day-3-brittany/</guid><description>(8% battery left on the laptop, I was sure I charged it on the ferry) If I were to explain today in one word it would be &amp;ldquo;knee&amp;rdquo;.
On the boat I went to my cabin after writing my blog post and drinking my beer, had a shower, and immediately fell asleep. The next thing I know I wake up in the pitch black to the ships alarm clock, which proceeded to repeat itself at 10 minute intervals before announcing that the boat would be docking in one hour.</description></item><item><title>Day 2: Plymouth</title><link>https://www.dantleech.com/blog/2023/08/14/day-2-plymouth/</link><pubDate>Mon, 14 Aug 2023 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2023/08/14/day-2-plymouth/</guid><description>Map (strava)
I&amp;rsquo;ve checked in to the ferry terminal and am siting on a bench at the port. 3 border guards are queuing at the cafe &amp;ldquo;I was at their last concert, they both flew in on separate helicopters and wouldn&amp;rsquo;t talk to each other for the entire gig (it was great mind)&amp;rdquo;. I was physically searched before being let through.
The boat hasn&amp;rsquo;t arrived yet and I can expect to wait another hour and a half.</description></item><item><title>Day 1: Weymouth-Beer</title><link>https://www.dantleech.com/blog/2023/08/13/day-1-weymouth-beer/</link><pubDate>Sun, 13 Aug 2023 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2023/08/13/day-1-weymouth-beer/</guid><description>Map
There are kids running about outside &amp;ldquo;une, deux, trois&amp;rdquo;. I&amp;rsquo;m at a campsite, not a bad campsite, althought there is nowhere for me to plug my laptop in, or any table at which to work at, so I&amp;rsquo;m typing this in the tent. The showers are hot and don&amp;rsquo;t cost money (why should that be surprising?) and there is a copious amount of toilet roll in the toilets. It costs £13 for the night and I&amp;rsquo;ve got a reasonable hillside view when I stand up outside of my tent and can see over the fence.</description></item><item><title>Phpactor 2023.08.06</title><link>https://www.dantleech.com/blog/2023/08/06/phpactor-2023.08.06/</link><pubDate>Sun, 06 Aug 2023 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2023/08/06/phpactor-2023.08.06/</guid><description>I have tagged Phpactor 2023.08.06.
There has not been much activity in the past months, I have been spending most of my spare programming time learning Rust while working on a Strava TUI, but this release does include some signficiant improvements and bug fixes.
VIM ¶ Firstly this is a sad time for a project that owes its existence to the VIM editor.
My history with VIM started about 15 years ago when I was a year or so into my first job as a PHP developer.</description></item><item><title>Cycling the Pyrenees</title><link>https://www.dantleech.com/blog/2023/08/03/cycling-the-pyrenees/</link><pubDate>Thu, 03 Aug 2023 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2023/08/03/cycling-the-pyrenees/</guid><description>This year I&amp;rsquo;ve decided to cycle across the Pyrenees, again.
2010 ¶ 13 years ago I rode from St. Malo to Santander and then crossed the Pyrenees and continued along the coast before crossing the Alpes to Lac Leman. I&amp;rsquo;ve recovered my sparse web journal from that time:
This was my first time in France as an adult (I was 30 years old) and the first time I had ever been in the mountains, I remember it being extremely tough - I lost a tooth - and progress was extremely slow on some days.</description></item><item><title>Phpactor 2023.06.17</title><link>https://www.dantleech.com/blog/2023/06/17/phpactor-2023.06.17/</link><pubDate>Sat, 17 Jun 2023 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2023/06/17/phpactor-2023.06.17/</guid><description>I have tagged Phpactor 2023.06.17.
Et voila, on a fait un autre release de Phpactor le serveur de language PHP.
But today is not a day to practice my bad french, but to celebrate another Phpactor release 🎉
Class generic tags ¶ We&amp;rsquo;ll show diagnostics and provide a code action to add (best effort) generic tags for generics classes:
Missing implements/extends Undefined variables and typos ¶ Show diagnostics for undefined variables and provide a code action to fix typos.</description></item><item><title>Self-testing code units</title><link>https://www.dantleech.com/blog/2023/04/23/self-testing-code-units/</link><pubDate>Sun, 23 Apr 2023 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2023/04/23/self-testing-code-units/</guid><description>TL;DR; Phpactor documents itself
In Phpactor there are lots of units of code which add a category of functionality. One such examples is a Diagnostic Provider. Diagnostic providers provide diagnostics which provide feedback about your code:
a diagnostic being shown in Neovim
The old process for testing a diagnostic provider involved many steps and was tediously time consuming, and there was no documentation for diagnostic providers at all.
Why not tediously invest time in a tedious solution which will make future work less tedious?</description></item><item><title>Phpactor 2023.04.10</title><link>https://www.dantleech.com/blog/2023/04/10/phpactor-2023.04.10/</link><pubDate>Mon, 10 Apr 2023 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2023/04/10/phpactor-2023.04.10/</guid><description>I have tagged Phpactor 2023.04.10.
It has been almost 3 months since the last tag, part of the reason for the delay has been the implementation of some great features which required some time to settle down, and also due to me chasing some white whales.
Happily this release does include performance improvements, which will be noticeable on large and complicated files.
Diagnostic Outsourcing ¶ By default Phpactor will now run diagnostic analysis in a separate process.</description></item><item><title>Phpactor 2023.01.21</title><link>https://www.dantleech.com/blog/2023/01/21/phpactor-2023.01.21/</link><pubDate>Sat, 21 Jan 2023 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2023/01/21/phpactor-2023.01.21/</guid><description>I have tagged Phpactor 2023.01.21.
This release is a little bit later than normal as I completely forgot to do it last week.
Features ¶ Param docblock generation ¶ If there are any complex trivial types (e.g. generic types, or arrays) Phpactor will now suggest to generate default @param docblocks.
class-string template param In addition the docblock updating code has been improved allowing us to update docblocks (previosuly Phpactor would only create them).</description></item><item><title>Leaving Berlin</title><link>https://www.dantleech.com/blog/2022/12/18/leaving-berlin/</link><pubDate>Sun, 18 Dec 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/12/18/leaving-berlin/</guid><description>My apartment is in a rare state - it&amp;rsquo;s tidy. I came to Berlin in 2017 with the following items: 1 bicycle, 2 speakers, 1 monitor, a laptop and some clothes, this week I shipped seven boxes of stuff back to the UK.
After moving, 2017
How it started ¶ I am was born and grew up in the UK, when I was 22 I left home to study at University, I lived in the city Bath for 6 years, never earning enough money to break even at the end of the month, a friend put my in contact with somebody who wanted me to build some intranet web application, it took 3 months of hard work and I earned about £3,000.</description></item><item><title>Phpactor 2022.12.12</title><link>https://www.dantleech.com/blog/2022/12/12/phpactor-2022.12.12/</link><pubDate>Mon, 12 Dec 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/12/12/phpactor-2022.12.12/</guid><description>I have tagged Phpactor 2022.12.12.
This is the 4th monthly Phpactor release, I forgot (or rather conveniently forgot) to write a blog post for the previous release 2022.11.12 so I&amp;rsquo;ll include the best changes from that too in this update.
The most significant change with this &amp;ldquo;tag&amp;rdquo; is that we no longer support PHP 7.4. If this causes you issues please add a comment on this ticket.
Features ¶ Replace Qualifier with Import (2022.</description></item><item><title>The Best Container</title><link>https://www.dantleech.com/blog/2022/10/17/the-best-container/</link><pubDate>Mon, 17 Oct 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/10/17/the-best-container/</guid><description>There are few things that I really like about Phpactor, but its DI Container [link] is one of them.
In seven years it has hardly changed at all. It&amp;rsquo;s modular, supports tags, parameters (with schemas) and the has only 233 lines of code including comments and whitespace[1]
There is no YAML, XML or compilation. No auto wiring, no property injection, factory modifiers, weird ways to extend services. All services are singletons.</description></item><item><title>Phpactor 2022.10.11</title><link>https://www.dantleech.com/blog/2022/10/11/phpactor-2022.10.11/</link><pubDate>Tue, 11 Oct 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/10/11/phpactor-2022.10.11/</guid><description>Today I have tagged version 2022.10.11.
This is the first (and hopefully not the last) monthly release, the full changelog is on the release page. I&amp;rsquo;ll run through some of the highlights in this post.
Generate Decorator ¶ Thanks to the perserverance mamazu there is now a code action to generate a decorator:
Generate Decorator This is an LSP only action, and must be invoked in a file with an empty class which implements one or more interfaces.</description></item><item><title>Encountering Go as a PHP developer</title><link>https://www.dantleech.com/blog/2022/09/19/encountering-go-as-a-php-developer/</link><pubDate>Mon, 19 Sep 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/09/19/encountering-go-as-a-php-developer/</guid><description>One morning I sat down at my laptop and looked at a Go service, written 2 months previously, that represented my first attempt with the language. When I wrote it I had been unsure about everything, questioning each line and frequently googling things like &amp;ldquo;how to do a foreach in Go&amp;rdquo;. In just two months I was now able to look at this code and immediately see several ways in which it could be improved.</description></item><item><title>Phpactor 2022.09.11</title><link>https://www.dantleech.com/blog/2022/09/11/phpactor-2022.09.11/</link><pubDate>Sun, 11 Sep 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/09/11/phpactor-2022.09.11/</guid><description>Phpactor 2022.09.11
Today I have tagged Phpactor 2022.09.11. The previous release was Phpactor 18 all the way back in January.
It has been a significant 8 months for Phpactor:
Conversion to a mono-repository. Completely refactored type system. Phpactor theme song. Numerous features and improvements (see highlights) Converting Phpactor to a monorepo has accelerated development significantly, it has been far easier to fix bugs and add features. It is imaginable to say that more progress has been made in these 8 months than in the past 3 years and it&amp;rsquo;s still awful.</description></item><item><title>Oporto 2013 Blog Restoration</title><link>https://www.dantleech.com/blog/2022/09/07/oporto-2013-blog-restoration/</link><pubDate>Wed, 07 Sep 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/09/07/oporto-2013-blog-restoration/</guid><description>Today I plugged in my old X40 laptop, I purchased this laptop in Portugal after my bicycle was stolen while I was at the start of my loosely defined and ultimately failed &amp;ldquo;tour around the world&amp;rdquo;.
I had prepared for the tour, I was leaving in February, and I was just going to carry on cycling, I thought about crossing Iran and going to India. It was cut short however when my bicycle was stolen in Oporto, Portugal.</description></item><item><title>Reflection</title><link>https://www.dantleech.com/blog/2022/09/07/reflection/</link><pubDate>Wed, 07 Sep 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/09/07/reflection/</guid><description>I have now been in Weymouth for a few days and have had time to recover and reflect a little bit on my journey. My bum still hurts.
As usual the experience was challenging and enlightening. I&amp;rsquo;ve greatly expanded my knowledge of Ireland, and notably how welcoming and friendly the Irish people are.
Strangers in towns will smile, say hello and start a conversation with you. The longer you stay in Ireland the more sociable you become, as the default is to at least greet people.</description></item><item><title>Migrating this site to Hugo</title><link>https://www.dantleech.com/blog/2022/09/06/migrating-this-site-to-hugo/</link><pubDate>Tue, 06 Sep 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/09/06/migrating-this-site-to-hugo/</guid><description>Today I migrated this blog from Sculpin to Hugo.
I created the site originally in 2018 using the wonderful, PHP based, Sculpin static site generator. It has proved to be a good decision, previously my personal homepages used a database and anything I wrote on them is lost to history (a mournful loss to posterity), now all of my blog posts are on github, and I can author them locally in my favourite editor.</description></item><item><title>Day 28 - Weymouth (the end)</title><link>https://www.dantleech.com/blog/2022/09/03/day-28-weymouth-the-end/</link><pubDate>Sat, 03 Sep 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/09/03/day-28-weymouth-the-end/</guid><description>Most of my entire route in purple
There was an alcoholic at the hostel last night. I was sitting in the reception area, reading a book and the paramedics arrived, 10 minutes later they came down the stairs and reported that the lady was &amp;ldquo;fine and just had a bit too much to drink&amp;rdquo; 10 minutes after that the lady came down the stairs and started verbally abusing the man behind the counter when he wouldn&amp;rsquo;t hold her drink for her while she made an epic quest up the stairs to fetch something, I&amp;rsquo;m not sure she knew what.</description></item><item><title>Day 27 - Bath</title><link>https://www.dantleech.com/blog/2022/09/02/day-27-bath/</link><pubDate>Fri, 02 Sep 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/09/02/day-27-bath/</guid><description>Map
This is the day before last, the penultimate day, the day where I cycle to the town where went to University and got my first job, Bath.
It was good to sleep in a bed. When I got in last night, before 10pm, the house was quiet and the lights were off, I crept upstairs to use the bathroom as I assumed at least 3 people were sleeping. I woke early, as could be expected when going to bed at 10am, and lazily used the internet checking in on my open-source project and briefly interacting with somebody who was developing an extension for it.</description></item><item><title>Day 26 - Pontypool</title><link>https://www.dantleech.com/blog/2022/09/01/day-26-pontypool/</link><pubDate>Thu, 01 Sep 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/09/01/day-26-pontypool/</guid><description>Map
Today had different expectations and it would define when my tour would finish. Today or the day after I would visit my auntie and uncle in Pontypool, after Pontypool it is two rides (or one very long ride) back to Weymouth. I had to find accommodation and organise the meeting. Thankfully everything happened quite easily.
After waking up I looked on Air B&amp;amp;B and found a place in Cymbran (5k from Pontypool) for a good price and I phoned my uncle and he suggested collecting me when I got there.</description></item><item><title>Day 25 - Swansea</title><link>https://www.dantleech.com/blog/2022/08/31/day-25-swansea/</link><pubDate>Wed, 31 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/31/day-25-swansea/</guid><description>Map
This campsite cost £25, which is €28 euro. Phil warned me yesterday that campsites charge this much, but I didn&amp;rsquo;t expect it seeing as my most expensive campsite in the past 30 days was €17 with the best one of them all costing only €8.50. What do I get for £25? Well I don&amp;rsquo;t get anywhere where I can plug my laptop in for free. I&amp;rsquo;m sitting in a small room with a washing machine and sinks and a single power point, which is on a meter which requires 20p every 5 minutes.</description></item><item><title>Day 24 - Pembrokeshire</title><link>https://www.dantleech.com/blog/2022/08/30/day-24-pembrokeshire/</link><pubDate>Tue, 30 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/30/day-24-pembrokeshire/</guid><description>Map
I didn&amp;rsquo;t sleep well, I dozed until about 9am then forced myself out of the sleeping bag and made my way to the facilities to have a morning shower, when I returned I made my coffee and cereal and read the news on my phone, packed up my stuff and wheeled the bike off the pitch. The owner was standing close by &amp;ldquo;where you going today?&amp;rdquo; &amp;ldquo;that&amp;rsquo;s the question!</description></item><item><title>Day 23 - Leaving Ireland</title><link>https://www.dantleech.com/blog/2022/08/29/day-23-leaving-ireland/</link><pubDate>Mon, 29 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/29/day-23-leaving-ireland/</guid><description>Current Position
I&amp;rsquo;m sitting in the ferry terminal at Roselare, my eyes are heavy from the early start. I got here with 3 hours to spare. There is free WiFi and power sockets and I added more content to last nights short blog post and had a quick wash in the toilets.
My laundry situation isn&amp;rsquo;t very good, most of my stuff is damp and nothing is clean. I&amp;rsquo;m due a rest day and I&amp;rsquo;m hoping to find a good place in Wales to stay a couple of nights.</description></item><item><title>Day 22 - Waterford Greenway</title><link>https://www.dantleech.com/blog/2022/08/28/day-22-waterford-greenway/</link><pubDate>Sun, 28 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/28/day-22-waterford-greenway/</guid><description>Map
I&amp;rsquo;m now 70k or so from the Ferry terminal in Roslare, if I can wake up at 8am I should be able to make it to the ferry terminal easily for the 17:30 boarding cut-off. Until I got to the campsite last night I thought it would be at least another 3 or 4 days, but I am now in &amp;ldquo;get out of Ireland&amp;rdquo; mode.
Midleton - lots of Ironman stuff here</description></item><item><title>Day 21 - Carrigtwohill</title><link>https://www.dantleech.com/blog/2022/08/27/day-21-carrigtwohill/</link><pubDate>Sat, 27 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/27/day-21-carrigtwohill/</guid><description>Map
Today is another &amp;ldquo;sit cross legged in the tent and write a blog post&amp;rdquo; day, the last time I was sitting by the beach, today I am in a very generic campsite off the side of a dual carriageway. I&amp;rsquo;m cooking pasta, pasta which I realised I didn&amp;rsquo;t have 30 minutes ago. I had cheese, pasta sauce, but to my shock, no pasta. So I just got back from an additional cycle ride to the nearest shop 1 kilometer away.</description></item><item><title>Day 21 - Ultima Peninsular</title><link>https://www.dantleech.com/blog/2022/08/26/day-21-ultima-peninsular/</link><pubDate>Fri, 26 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/26/day-21-ultima-peninsular/</guid><description>Map
I slept well last night and in the morning performed my usual routine of packing up my stuff and emerging from the tent. I went up to the campers kitchen for coffee and to see what I could eat for breakfast. The two French girls were already there and were discussing there plans for the day. I put the kettle on and started unloading my food bag for inspection: Penguin bars, beer snacks, yoghurt covered raisins, 3/4 of a demi-baguette.</description></item><item><title>Day 20 - Sheeps Head</title><link>https://www.dantleech.com/blog/2022/08/25/day-20-sheeps-head/</link><pubDate>Thu, 25 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/25/day-20-sheeps-head/</guid><description>I&amp;rsquo;m finally sending this at lunchtime having failed to send this blog post yesterday evening. I&amp;rsquo;m sitting in a tourist information office which has WiFi. I seem to be in a region with very poor mobile phone coverage.
Current position (blue dot)
&amp;ldquo;How long you here for?&amp;rdquo; &amp;ldquo;In Ireland?&amp;rdquo; &amp;ldquo;No&amp;rdquo; &amp;ldquo;Just one night&amp;rdquo; &amp;ldquo;No, how long you been waitin&amp;rsquo;?&amp;rdquo; &amp;ldquo;About 10 minutes&amp;rdquo; &amp;ldquo;You rang the door bell on the Tardis and all that?</description></item><item><title>Day 19 - Allihies</title><link>https://www.dantleech.com/blog/2022/08/24/day-19-allihies/</link><pubDate>Wed, 24 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/24/day-19-allihies/</guid><description>Current position (blue dot)
No wild camping today. I&amp;rsquo;m sitting in a campsite, the sea is about 50m away, the sun is shining, I can hear the swoosh of the waves and I&amp;rsquo;m cooking pasta, sheletered from the wind behind my tent which is wronly positioned so the door opens into the wind. It&amp;rsquo;s very quiet, just the occasional scream from the few people dipping into the waves.
Camping</description></item><item><title>Day 18 - Mordor</title><link>https://www.dantleech.com/blog/2022/08/23/day-18-mordor/</link><pubDate>Tue, 23 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/23/day-18-mordor/</guid><description>Map
I had just done a couple of climbs and was 80k into my ride and I noticed a place called the &amp;ldquo;Climbers Inn&amp;rdquo; which, I knew, was a hostel. I also knew that it was a full hostel, I didn&amp;rsquo;t realise that it had camping however. The sign clearly said &amp;ldquo;camping&amp;rdquo;. The next campsite was about 80k, I didn&amp;rsquo;t want to do 80k but I also knew I could wild camp.</description></item><item><title>Day 17 - Rest day</title><link>https://www.dantleech.com/blog/2022/08/22/day-17-rest-day/</link><pubDate>Mon, 22 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/22/day-17-rest-day/</guid><description>Today was my second rest day. I wasn&amp;rsquo;t planning on taking a rest day, but the campsite is very comfortable and it has actually been a week since my last rest day, so it&amp;rsquo;s good timing.
I slept a bit better last night, and didn&amp;rsquo;t feel ill. I drank a couple of beers which may or may not have helped.
In the morning I made breakfast, stealing a little bit of some unlabled milk from the fridge for my cereal and coffee.</description></item><item><title>Day 16 - Ring of Kerry</title><link>https://www.dantleech.com/blog/2022/08/21/day-16-ring-of-kerry/</link><pubDate>Sun, 21 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/21/day-16-ring-of-kerry/</guid><description>Map
Last night was another tough night. There were campers who at first were annoying and then as the hours wore past 12, 1 and finally 2 became unbearable and almost caused me to lose my mind. On top of this I had the same headache and pain as the previous night, which I now suspect is something to do with the angle at which my neck is resting (I have no pillow).</description></item><item><title>Day 15 - Inch Strand</title><link>https://www.dantleech.com/blog/2022/08/20/day-15-inch-strand/</link><pubDate>Sat, 20 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/20/day-15-inch-strand/</guid><description>Current position in Ireland (blue dot)
As I finished writing my blog post last night I was absolutely exhausted. I retired to my tent, there was an ambient sound of children playing and they occasional tschhhh! of a drinks can being opened, but I was soon asleep. I awoke however at around 2am feeling quite unwell, I had a headache and felt a little nauseous. I think it was probably a combination of dehydration and something I ate.</description></item><item><title>Day 14 - Tralee</title><link>https://www.dantleech.com/blog/2022/08/19/day-14-tralee/</link><pubDate>Fri, 19 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/19/day-14-tralee/</guid><description>Inaccurate Map
It seems inevitable that I cannot hold on to nice things. I got a great wicking hoody for this trip, it was warm and everytime I put it on I thought &amp;ldquo;this is a good item of clothing&amp;rdquo;. It&amp;rsquo;s gone. In contrast, I have several pieces of clothing that I&amp;rsquo;d like to lose but which stubbornly remain with me for decades. I really have no idea what happened to it, I would have had it on this morning, maybe I left it on the back of the bike, perhaps it fell off a cliff.</description></item><item><title>Day 13 - Doolin</title><link>https://www.dantleech.com/blog/2022/08/18/day-13-doolin/</link><pubDate>Thu, 18 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/18/day-13-doolin/</guid><description>Inaccurate Map
It turns out the moody weed smoking youth I shared my bunk with was not unsociable at all, but rather anxious and potentially stoned. When I returned in the evening after dinner he told me &amp;ldquo;I had pizza before going to the concert, normally I drink too much, but this time I ate too much and left early&amp;rdquo;. He had come down from Donegal for the concert.</description></item><item><title>Day 12 - Galway</title><link>https://www.dantleech.com/blog/2022/08/17/day-12-galway/</link><pubDate>Wed, 17 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/17/day-12-galway/</guid><description>Rough Route
For breakfast there were flapjacks, toast and coffee. All complementary at the Ben Lettery Hostel. I was joined for breakfast by the Munich girl, she was going to stay another night and climb the mountain, presumably the Benlettery mountain which the hostel is named after, after that she would be doing my last ride in reverse and staying at the Valley House on Achill island (although driving).</description></item><item><title>Day 11 - Ben Lettery Mountain Hostel</title><link>https://www.dantleech.com/blog/2022/08/16/day-11-ben-lettery-mountain-hostel/</link><pubDate>Tue, 16 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/16/day-11-ben-lettery-mountain-hostel/</guid><description>Rough Route
I&amp;rsquo;m now sitting in the lounge of the Ben Lettery Hostel. This is a big hostel, there are groups and individuals, French, Spanish, German. Mostly French. There are lots of French about in general. For dinner I cooked baked-beans-on toast à la cacouette (baked beans on toast with peanut butter). Peanut butter has previously been trialled in other expeditions and was found to be highly suitable to put into anything.</description></item><item><title>Day 10 - Rest Day</title><link>https://www.dantleech.com/blog/2022/08/15/day-10-rest-day/</link><pubDate>Mon, 15 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/15/day-10-rest-day/</guid><description>TL;DR Nothing happened today.
In a dormitory everybody has a common purpose, to sleep. Sleeping in groups can actually be soothing. I&amp;rsquo;ve slept in dormitories hundreds of times and with few exceptions have slept very well. Last night was one of the exceptions.
We had just turned off the lights and a few of us were in bed and &amp;ldquo;can somebody let me in&amp;rdquo; was heard. I roused myself slightly, happy to open the door if somebody forgot the code, but there were no more importations, no tapping at the door.</description></item><item><title>Day 9 - Achill</title><link>https://www.dantleech.com/blog/2022/08/14/day-9-achill/</link><pubDate>Sun, 14 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/14/day-9-achill/</guid><description>Rough Route
I&amp;rsquo;m now sitting in a pub with a Guinness, the pub is part of a larger facility that also has a hostel and I&amp;rsquo;ve booked in for 2 nights. I&amp;rsquo;m waiting for a pizza which I may have ordered a prematurely as I&amp;rsquo;m not feeling particularly hungry right now, but it can&amp;rsquo;t do any harm.
Today was a good day, it was cloudy. There is a group of young Irish adults imitating wolf cries on the next table.</description></item><item><title>Day 8 - Peat and Sea Stacks</title><link>https://www.dantleech.com/blog/2022/08/13/day-8-peat-and-sea-stacks/</link><pubDate>Sat, 13 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/13/day-8-peat-and-sea-stacks/</guid><description>Current position (the blue dot)
Even though the bed was exceedingly comfortable and clean, and there was no sound at all, I didn&amp;rsquo;t sleep great last night. I could hear the blood rushing in my left ear and my body was restless from the exercise. Before I went to bed I got a message from Sharron saying that breakfast would be in the kitchen I should help myself when I got up.</description></item><item><title>Day 7 - Frog Installation</title><link>https://www.dantleech.com/blog/2022/08/12/day-7-frog-installation/</link><pubDate>Fri, 12 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/12/day-7-frog-installation/</guid><description>Map
&amp;ldquo;Hi, it&amp;rsquo;s Dan, I booked the single bed room, I think I&amp;rsquo;m outside but I&amp;rsquo;m not sure because there is no internet, I can see a greenhouse&amp;rdquo; &amp;ldquo;Hi Dan, yes that&amp;rsquo;s us. I left the door open, your room is at the end of the corridor&amp;rdquo;.
It&amp;rsquo;s quite strange to walk into somebody elses house and have a shower without having met the person whose house it is. Today was the first time I tried Air B&amp;amp;B.</description></item><item><title>Day 6 - Chana Palak</title><link>https://www.dantleech.com/blog/2022/08/11/day-6-chana-palak/</link><pubDate>Thu, 11 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/11/day-6-chana-palak/</guid><description>Highly accurate map
The man wheeled up to me on a bicycle &amp;ldquo;the accomodation is round the back, follow me&amp;rdquo;. We went round &amp;ldquo;the back&amp;rdquo; and there were 3 people, 2 swiss people smoking and a local you wouldn&amp;rsquo;t want to get in a fight with. &amp;ldquo;Your room is here, but I haven&amp;rsquo;t got a key, because I&amp;rsquo;ve given the keys to the others - but it&amp;rsquo;s OK, you can just put your hand through the window&amp;rdquo; and he looked at me and the swiss people as if it was self evident and normal.</description></item><item><title>Day 5 - Sleep Hollow</title><link>https://www.dantleech.com/blog/2022/08/10/day-5-sleep-hollow/</link><pubDate>Wed, 10 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/10/day-5-sleep-hollow/</guid><description>Map
I&amp;rsquo;m currently sitting in the corner of a shelter on what is probably one of the best campsites I&amp;rsquo;ve stayed on. There is a fire burning and josticks are burning, everybody is very sociable and it feels more like a good hostel than a campsite. It has a filter of over 18s only, so no kids running about. Although there are a bunch of school kids doing their Duke of Edinburugh but they are very civilised.</description></item><item><title>Day 4 - Wild Atlantic</title><link>https://www.dantleech.com/blog/2022/08/09/day-4-wild-atlantic/</link><pubDate>Tue, 09 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/09/day-4-wild-atlantic/</guid><description>Map hostels and campsites (route in purple)
I&amp;rsquo;ve got a small tent. A small and expensive tent. I used to have a lovely 2 man Colemans tent. It had a porch big enough that I could stack all my baggage up in it and the entire side of the tent would open up, it would fit comfortably on my rear rack. I got the small expensive tent because weight. It was only after buying this tent that I don&amp;rsquo;t care about weight, I care about space.</description></item><item><title>Day 3 - Houses of the Holy</title><link>https://www.dantleech.com/blog/2022/08/08/day-3-houses-of-the-holy/</link><pubDate>Mon, 08 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/08/day-3-houses-of-the-holy/</guid><description>I got out of bed this morning at 8am and quietly climbed down from my bunk and gathered my bags. I was sharing a room with the Australian cyclist and a man from Southport. The Australian was already up and reading and I nodded goodbye to him as I left the room.
I put my stuff in the baggage room and announced to the Canadian at reception that I would be back in two hours.</description></item><item><title>Day 2 - To the Giants Causeway</title><link>https://www.dantleech.com/blog/2022/08/07/day-2-to-the-giants-causeway/</link><pubDate>Sun, 07 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/07/day-2-to-the-giants-causeway/</guid><description>Map with &amp;ldquo;Liquor store&amp;rdquo; locations
Currently sitting in a hostel in dinning room in Bushmills eating chips-cheese-and-beans[1]. I just had a conversation with an Australian who is riding around the coast on a Brompton bike. I&amp;rsquo;m drinking a ginger beer and it&amp;rsquo;s been an interesting 24 hours.
Last night the campsite was very noisy, there were 6 year old kids running about everywhere and a group of 14 year olds having a small party in the next field (not part of the campsite) blaring house music through a portable speaker.</description></item><item><title>Day 1 - Leaving Scotland</title><link>https://www.dantleech.com/blog/2022/08/06/day-1-leaving-scotland/</link><pubDate>Sat, 06 Aug 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/08/06/day-1-leaving-scotland/</guid><description>I am now sitting in a ferry teriminal in Craegvany waiting for the Stena Lines ferry to Belfast. Unusually I was instructed to wait inside the terminal until somebody will show me to the ferry rather than waiting with the cars outside.
From Belfast I&amp;rsquo;ve decided to head north and follow the northern coast in order to join the EV 1 (Euro Velo 1). I had intended to follow the EV1 inland from Belfast, but I couldn&amp;rsquo;t see any reasonable accomodation en-route.</description></item><item><title>Ireland Prelude</title><link>https://www.dantleech.com/blog/2022/07/30/ireland-prelude/</link><pubDate>Sat, 30 Jul 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/07/30/ireland-prelude/</guid><description>It&amp;rsquo;s been 2 years since I blogged about about a cycle tour, but only one year since my tour: I cycled with a good friend from Paris to Ouistream, taking in the Normandy coast. It was a a slower paced and more relaxing tour, which ended with me sailing to the UK.
This year I will be going on another solo tour.
The original plan was to visit all of the Inviqa offices in the UK.</description></item><item><title>Lineage OS on Mi Pico</title><link>https://www.dantleech.com/blog/2022/07/10/lineage-os-on-mi-pico/</link><pubDate>Sun, 10 Jul 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/07/10/lineage-os-on-mi-pico/</guid><description>I just installed Lineage OS on a new phone
Breaking the Pixel 4a ¶ I was out running a few weeks back, with my phone in my hand, listening to music, when I tripped over a paving stone and fell flat on my face. The phone landed squarely on it&amp;rsquo;s front and with the amount of force that I knew instantly that it was done for. Lying on my back I turned upwards and shouted theatrically in pain, then just to be sure, I picked up my phone to check, and of course it was done for:</description></item><item><title>Skin O' My Teeth (Megadeth Cover)</title><link>https://www.dantleech.com/blog/2022/06/19/skin-o-my-teeth-megadeth-cover/</link><pubDate>Sun, 19 Jun 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/06/19/skin-o-my-teeth-megadeth-cover/</guid><description>Skin O&amp;#39; My Teeth I guess this one is for last month and it&amp;rsquo;s another cover. I&amp;rsquo;ve been listening to alot of Megadeth recently, and got a tablature book:
Countdown To Extinction Tab Book
Drums ¶ In previous songs probably the thing that took the longest was programming the drums. In this cover I saved time by finding a MIDI file (warning contians ads).
I imported the MIDI file, muted the other instruments and the drums mapped almost perfectly to DrumGizmo.</description></item><item><title>Holy Diver Cover</title><link>https://www.dantleech.com/blog/2022/05/01/holy-diver-cover/</link><pubDate>Sun, 01 May 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/05/01/holy-diver-cover/</guid><description>This song is a cover of &amp;ldquo;Holy Diver&amp;rdquo; by Dio:
⚠ WARNING: My singing on this song may cause irreversible nerve damage.
Holy Diver Holy diver
You&amp;rsquo;ve been down too long in the midnight sea
Oh what&amp;rsquo;s becoming of me
This is this months effort at recording a song. I tried to record a song about the Agile Manifesto on Saturday, but it didn&amp;rsquo;t succeed, so I decided to record a cover of a song I&amp;rsquo;ve been listening to on repeat for the past 3 weeks.</description></item><item><title>Phpactor's (New) Type System</title><link>https://www.dantleech.com/blog/2022/04/17/phpactors-new-type-system/</link><pubDate>Sun, 17 Apr 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/04/17/phpactors-new-type-system/</guid><description>Phpactor (it&amp;rsquo;s a Language Server) has a new type system, the most interesting features of which might be:
First Class Types Generics Type Combination Type Literals In the examples below the function wrAssertType is used. This is an assertion used in Phpactor&amp;rsquo;s tests.
History ¶ When I started Phpactor 7 years ago I had absolutely no clue about type systems (that&amp;rsquo;s only slightly less true today). As a consequence types were represented as a single class:</description></item><item><title>Phpactor Theme Song</title><link>https://www.dantleech.com/blog/2022/03/29/phpactor-theme-song/</link><pubDate>Tue, 29 Mar 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/03/29/phpactor-theme-song/</guid><description>This is a song about phpactor:
Phpactor Theme Song Phpactor - It&amp;rsquo;s a Language Server
Don&amp;rsquo;t use it on a project that it is to big
It will crash
I have spent the majority of my spare (project) time this month working on Phpactor, this weekend was my last opportunity to record a song, and I had not written any lyrics, so on Sunday I decided to just record some music and I had the Phpactor documentation page open in my browser.</description></item><item><title>Phpactor is a monolith</title><link>https://www.dantleech.com/blog/2022/03/06/phpactor-is-a-monolith/</link><pubDate>Sun, 06 Mar 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/03/06/phpactor-is-a-monolith/</guid><description>Phpactor is a monolith with some exceptions. Over 20 packages have been imported into the main repo and their github repositories abandoned.
This should make development far easier going forward.
Background ¶ You may have heard me tell this story before. Hopefully this will be the last time I tell it.
When I started Phpactor in 2015 I had just read &amp;ldquo;principles of package design&amp;rdquo;, and wanting to be a good developer, I decided to architect Phpactor as a set of decoupled packages, in general there would be four classes of package:</description></item><item><title>Ballad of Senior Dev</title><link>https://www.dantleech.com/blog/2022/02/27/ballad-of-senior-dev/</link><pubDate>Sun, 27 Feb 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/02/27/ballad-of-senior-dev/</guid><description>February song, it&amp;rsquo;s called &amp;ldquo;Ballad of Senior Dev&amp;rdquo;
Ballad of Senior Dev It&amp;rsquo;s about being a good senior developer. This was recorded over the past couple of days during the criminal invasion of Ukraine. Today I attended a anti-war demonstration in Berlin where 100,000 people gathered in support of Ukraine.
The Russian Embassy
Russia invaded Ukraine
two days later
I invested a short amount of time over two evenings writing the lyrics, the following weekend I then recorded an initial version of the song (version 1), a very poor Nick-Cave style ballad, it was out of time and not very great.</description></item><item><title>Fansong</title><link>https://www.dantleech.com/blog/2022/02/13/fansong/</link><pubDate>Sun, 13 Feb 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/02/13/fansong/</guid><description>This song is a cover of &amp;ldquo;Fansong&amp;rdquo; by Dethklok:
Fansong You people out there give us something more than just record sales You give us something to hate And we hate you, you brainless mutants I recorded it between 14:00 and midnight on Saturday, the idea was to try and learn stuff. As such it may not actually count towards my 2022 goal of recording a song every month (ideally on the topic of software engineering).</description></item><item><title>The Testing Song</title><link>https://www.dantleech.com/blog/2022/01/30/the-testing-song/</link><pubDate>Sun, 30 Jan 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/01/30/the-testing-song/</guid><description>15 years ago I was having a conversation with a friend:
&amp;ldquo;I don&amp;rsquo;t know what to write songs about&amp;rdquo;
&amp;ldquo;Write about something you know&amp;rdquo;
&amp;ldquo;I only know computer programming&amp;rdquo;
&amp;ldquo;Then write songs about that&amp;rdquo;
So that&amp;rsquo;s what I&amp;rsquo;m doing this year. This is a song about software testing:
The Testing Song What people said about it:
&amp;ldquo;I had no idea what&amp;rsquo;s going on, it&amp;rsquo;s shit&amp;rdquo; - My brother &amp;ldquo;Nine Inch Nails meets Layla&amp;rdquo; - Jason &amp;ldquo;I thought it captured the emotional trajectory of the development cycle beautifully&amp;rdquo; - Quentin Resolutions ¶ This year I made some new years resolutions, one of which was to record a song once a month.</description></item><item><title>Phpactor 18</title><link>https://www.dantleech.com/blog/2022/01/03/phpactor-18/</link><pubDate>Mon, 03 Jan 2022 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2022/01/03/phpactor-18/</guid><description>TL;DR;: Check the 0.18.0 release notes
Phpactor 17 was released 11 months ago. After some busy months working on Phpactor I switched focus to phpbench for better or for worse and because of that there has been very little development on Phpactor for the past 6 months. During which time PHP 8.1 has been released.
Phpactor 18 does not support PHP 8.1 features (e.g. Enum) currently, but thanks to tolerant-php-parser it supports the syntax and won&amp;rsquo;t crash if you use a readonly modifier.</description></item><item><title>Hrtime and Loops</title><link>https://www.dantleech.com/blog/2021/12/18/hrtime-and-loops/</link><pubDate>Sat, 18 Dec 2021 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2021/12/18/hrtime-and-loops/</guid><description>PHPBench currently samples the time taken (in microseconds) to run code around a loop.
This post aims to provide some insight into:
If there is a benefit to using a loop (@Revs) when taking a time sample. The value of using hrtime instead of microtime. Background ¶ PHPBench samples the time taken for your code to run. The default executor does this by iterating over your code a number of times (@Revs) and dividing the total time in microseconds (i.</description></item><item><title>New Laptop</title><link>https://www.dantleech.com/blog/2021/11/11/new-laptop/</link><pubDate>Thu, 11 Nov 2021 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2021/11/11/new-laptop/</guid><description>Today my new laptop arrived. My previous X1 Carbon lasted for around 4 years - I say lasted: it still works, but the keyboard was completely destroyed:
It could have been repaired. I feel guilty. On the plus side this laptop actually has a UK layout keyboard (for the past 4 years I got very good at typing without looking at my keys due to the German layout).
This is probably my 10th Thinkpad Laptop.</description></item><item><title>PHPBench 1.2.0</title><link>https://www.dantleech.com/blog/2021/11/06/phpbench-1.2.0/</link><pubDate>Sat, 06 Nov 2021 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2021/11/06/phpbench-1.2.0/</guid><description>PHPBench 1.2.0 has been released, the highlights are:
In reports you can now dynamically create and group columns in tables Memory can be displayed in binary memory units Support for filtering by variant name Support for filtering reports Report Improvements ¶ PHPBench 1.1.0 improved report generation, allowing you to use components such as tables and bar charts.
This release improves table generation, adding support for grouping and expanding columns dynamically:</description></item><item><title>PHPBench 1.1.0</title><link>https://www.dantleech.com/blog/2021/08/15/phpbench-1.1.0/</link><pubDate>Sun, 15 Aug 2021 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2021/08/15/phpbench-1.1.0/</guid><description>PHPBench 1.1.0 as been tagged!
PHPBench 1.0 removed many features, most were deemed useless, the HTML report was an exception and it has been re-introduced in 1.1 along with other improvements, some of the more notable ones being:
&amp;ldquo;Safe&amp;rdquo; parameters: You can now use any serializable class as a parameter. This change included some internal refactorings and I have, to the best of my knowledge, preserved the B/C promise. $include and $include-glob configuration directives to include other configuratoin files.</description></item><item><title>Object Rendering or MVC the right way</title><link>https://www.dantleech.com/blog/2021/05/19/object-rendering-or-mvc-the-right-way/</link><pubDate>Wed, 19 May 2021 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2021/05/19/object-rendering-or-mvc-the-right-way/</guid><description>The templates we use in our favourite MVC frameworks are awful. You pass an unstructured bunch of data to a template which hopes the you passed everything it needed. They do not define what their inputs are, they are not type safe.
For some years I&amp;rsquo;ve been using a different way of rendering views - it started when I was trying to create a new CMS framework, but since then it has come in useful time and time again.</description></item><item><title>PHPBench 1.0.0</title><link>https://www.dantleech.com/blog/2021/05/09/phpbench-1.0.0/</link><pubDate>Sun, 09 May 2021 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2021/05/09/phpbench-1.0.0/</guid><description>PHPBench 1.0.0 as been tagged!
I started this project in 2015, I&amp;rsquo;d like to say I&amp;rsquo;ve been working on it for six years, but really I worked hard on it for about 6 months to a year and then largely ignored it when I started another project phpactor - which began with me wondering how easy it would be to add PHP auto completion in VIM and ended up with me writing a language server and &amp;ldquo;maintaining&amp;rdquo; over 50 packages.</description></item><item><title>PHPBench 1.0.0-alpha5</title><link>https://www.dantleech.com/blog/2021/02/27/phpbench-1.0.0-alpha5/</link><pubDate>Sat, 27 Feb 2021 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2021/02/27/phpbench-1.0.0-alpha5/</guid><description>PHPBench Alpha 5 as been tagged.
I tagged PHPBench Alpha 1 in about 5 months ago since that time numerous improvements and features have been introduced, I will talk about three of them.
Local Executor ¶ One problem I had when developing benchmarks is that it&amp;rsquo;s difficult to debug when the benchmark launches in a separate process, for this reason there is now the local executor:
$ phpbench run --executor=local Will run the benchmark in the same process as PHPBench, allowing you to do whatever you need to do (var_dump($foo);die()) to debug your benchmark.</description></item><item><title>PHPBench Expression Language</title><link>https://www.dantleech.com/blog/2021/02/15/phpbench-expression-language/</link><pubDate>Mon, 15 Feb 2021 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2021/02/15/phpbench-expression-language/</guid><description>In September 2020 I was on holiday and I made a decided effort to start working on PHPBench again, and I wrote a blog post about it.
Iterations 1 and 2 (September 2020) ¶ One of the main features was a new assertion engine - and I wrote a simple parser. The first implementation used Parsica.
It looked something like:
/** * @Assert(&amp;#34;variant.mode &amp;lt; baseline.mode +/- 5%&amp;#34;) */ public function benchFoobar(): void { // .</description></item><item><title>Phpactor 17</title><link>https://www.dantleech.com/blog/2021/02/06/phpactor-17/</link><pubDate>Sat, 06 Feb 2021 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2021/02/06/phpactor-17/</guid><description>TL;DR;: Check the 0.17.0 release notes
It&amp;rsquo;s been over 6 months since the release of Phpactor 16. Time really files! I planned to release Phpactor 17 last August - but, well. It didn&amp;rsquo;t happen and in the meantime there has been a huge amount of activity in develop.
PHP 8 Support and Github Actions ¶ Phpactor can now be installed with the PHP 8 runtime, some necessary fixes were made to support new PHP 8 syntax and some new features:</description></item><item><title>Maestro the Package Automator</title><link>https://www.dantleech.com/blog/2020/12/24/maestro-the-package-automator/</link><pubDate>Thu, 24 Dec 2020 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2020/12/24/maestro-the-package-automator/</guid><description>TL;DR; Maestro is a package maintenance automator which is in development.
It&amp;rsquo;s Christmas and Phpactor needs to be upgraded to PHP 8.0, but Phpactor has many packages:
$ composer show | grep phpactor | wc -l 42 Most of these packages were created almost 4 years ago, and have been updated little by little as necessary.
Even editing the composer.json file to allow PHP 8 for each repository is a big task - not to mention needing to migrate from Travis to Github Actions (as Travis has become unusable in the past months with build times sometimes taking an hour) - and that&amp;rsquo;s before I can even start manually editing all the test suites to be compatible with PHPUnit 9.</description></item><item><title>PHPBench 1.0.0-alpha1</title><link>https://www.dantleech.com/blog/2020/09/09/phpbench-1.0.0-alpha1/</link><pubDate>Wed, 09 Sep 2020 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2020/09/09/phpbench-1.0.0-alpha1/</guid><description>PHPBench is over 5 years old. I started working on it because I wanted to write a new implementation of the PHPCR spec, and I wanted to ensure that it was faster than the existing Jackalope implementation, I needed a framework to write a large number of performance tests. The existing Athletic framework didn&amp;rsquo;t quite meet my needs so I decided to write my own.
I didn&amp;rsquo;t write the next PHPCR implementation (luckily, it would have been terrible) but I did spend the next several months working on PHPBench, a large part of it was written while I was cycling from Vorarlberg (Austria) to Ankara going back through Greece and up to Slovenia.</description></item><item><title>Eaglesham to Glentrool Forest</title><link>https://www.dantleech.com/blog/2020/08/15/eaglesham-to-glentrool-forest/</link><pubDate>Sat, 15 Aug 2020 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2020/08/15/eaglesham-to-glentrool-forest/</guid><description>I said goodbye to my friend and his fiance, and proceed down the &amp;ldquo;moor road&amp;rdquo;. Eaglesham (pronounced Eagles-ham) is on the very outskirts of Glasgow and I rode through the moor into the country.
Windmills on the Moor
It was a relief to leave the city traffic and be on a road where most of the oncoming traffic was in the way of cyclists and after an initial climb to around 300m I enjoyed a beautiful downward sloping 10 miles of moorland.</description></item><item><title>Tarbert to Eaglesham</title><link>https://www.dantleech.com/blog/2020/08/14/tarbert-to-eaglesham/</link><pubDate>Fri, 14 Aug 2020 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2020/08/14/tarbert-to-eaglesham/</guid><description>This morning I didn&amp;rsquo;t rush to leave the campsite, but sat and made two pots of coffee while sitting and reading Moby Dick, leaving after 9:30.
This a bit late, as I knew that the next ferry would leave at 10:00, leaving me little time to make it to the ferry port. As I was cycling I calculated that I would miss the ferry, but then finally rolled into Talbert at 9:55 and realised it wasn&amp;rsquo;t too late, so I cycled as fast as possible, until I saw the ferry - which was just unloading cars, I arrived with a few minutes to spare.</description></item><item><title>Oban to Tarbert</title><link>https://www.dantleech.com/blog/2020/08/13/oban-to-tarbert/</link><pubDate>Thu, 13 Aug 2020 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2020/08/13/oban-to-tarbert/</guid><description>The campsite provided a good nights sleep, and it wasn&amp;rsquo;t cold in the morning. I left at around 9am - I had thought that if I picked up my route that the next shop would be in 10 miles, but the campsite manager looked puzzled by this &amp;ldquo;why don&amp;rsquo;t you go to Oban, it&amp;rsquo;s only 10 minutes down the road&amp;rdquo; &amp;ldquo;No, I&amp;rsquo;m not going that way&amp;rdquo; I said. I was very confused the evening previously.</description></item><item><title>Fort William to Oban</title><link>https://www.dantleech.com/blog/2020/08/12/fort-william-to-oban/</link><pubDate>Wed, 12 Aug 2020 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2020/08/12/fort-william-to-oban/</guid><description>Slept well in the hostel and left to find breakfast - hoping to find a café with outdoor seating, unsuccefull I picked up another unsatisying breakfast from a bakery - an egg mayonaise sandwich, danish pastry and a coffee (all too small to fill me up).
One of the reasons I didn&amp;rsquo;t go further yesterday was because the next part of the cycle network required me to take a ferry. Although it would have been possible to take the main road, it was very busy and I wanted to stick to the bike route, but getting the ferry at that time in the evening didn&amp;rsquo;t appeal to me.</description></item><item><title>Inverness to Fort William (via Loch Ness)</title><link>https://www.dantleech.com/blog/2020/08/11/inverness-to-fort-william-via-loch-ness/</link><pubDate>Tue, 11 Aug 2020 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2020/08/11/inverness-to-fort-william-via-loch-ness/</guid><description>Today was another spectacular day of cycling featuring some of the best scenery of the trip so far, and I wasn&amp;rsquo;t expecting it.
In the morning I woke and checked my watch. The bunk bed was equipped with a shelf offering USB ports and a power outlet. I had plugged in my phone and battery directly above my head, and when I went to check my phone it slipped and hit me sharply on the head which is when I decided to get out of bed.</description></item><item><title>Inverness Rest Day</title><link>https://www.dantleech.com/blog/2020/08/10/inverness-rest-day/</link><pubDate>Mon, 10 Aug 2020 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2020/08/10/inverness-rest-day/</guid><description>This morning I had no particular motivation to move from the bed. The thought of cycling another 150km didn&amp;rsquo;t appeal to me. So I decided to try and stay another night at the hostel.
As I got out of bed I couldn&amp;rsquo;t help but notice what looked like a scab on my foot. I scraped it and it moved. It was a tick with it&amp;rsquo;s head stuck and glued under my skin.</description></item><item><title>Pitlochry to Inverness</title><link>https://www.dantleech.com/blog/2020/08/09/pitlochry-to-inverness/</link><pubDate>Sun, 09 Aug 2020 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2020/08/09/pitlochry-to-inverness/</guid><description>I fell asleep last night staring out of my open tent flap at the stars, or the aeroplanes, or whatever that bright light was which was drifting across the sky. It was cold in the morning, and I didn&amp;rsquo;t prepare myself well enough. Far colder than it was at night. So I didn&amp;rsquo;t sleep in - the cold compelled me to get out of bed and make coffee.
Surveying the scene, the river had what looked like steam rising from it, there was dew on the long grass surrounding the tent and my breath was visible.</description></item><item><title>Edinburgh to Pitlochry</title><link>https://www.dantleech.com/blog/2020/08/08/edinburgh-to-pitlochry/</link><pubDate>Sat, 08 Aug 2020 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2020/08/08/edinburgh-to-pitlochry/</guid><description>The only other guy in the room (I guess the dorms are not at full capacity due to Covid) decided to come in at midnight and start watching a TV program on his phone with the loudspeaker. Forcing me to get out of bed and ask him to stop it (because he was so engrossed that he couldn&amp;rsquo;t hear me ask from my bed).
The hostel provided &amp;ldquo;take away&amp;rdquo; breakfast but let me sit down in the bar and also lent me a UK power adapter so that I could use my laptop and upload yesterdays blog post.</description></item><item><title>Seahouses to Edinburgh</title><link>https://www.dantleech.com/blog/2020/08/07/seahouses-to-edinburgh/</link><pubDate>Fri, 07 Aug 2020 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2020/08/07/seahouses-to-edinburgh/</guid><description>Today was a very long day. It was a beautiful day. It was an exhausting day.
I slept well in my tent last night for the time in years due to the new mattress, the night before I sat in the tent reading or otherwise staring blankly into the trees above the stream that I was camping next to sipping whiskey.
In the morning I left, heading towards my provisional destination of the day before - Eyemouth.</description></item><item><title>Newcastle to Seahouses</title><link>https://www.dantleech.com/blog/2020/08/06/newcastle-to-seahouses/</link><pubDate>Thu, 06 Aug 2020 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2020/08/06/newcastle-to-seahouses/</guid><description>I wasted the night watching a film (&amp;ldquo;Get Out&amp;rdquo;) and an episode and a half of &amp;ldquo;The Thick of It&amp;rdquo; in my cabin. I was woken at 8am by an announcement on the in-cabin PA system - we would be arriving at at 10am ship-time and breakfast would be served blah blah.
I didn&amp;rsquo;t know exactly what &amp;ldquo;ship time&amp;rdquo; was but assumed it would be the same time zone as Holland - which meant I had two hours.</description></item><item><title>Haarlem to Newcastle</title><link>https://www.dantleech.com/blog/2020/08/05/haarlem-to-newcastle/</link><pubDate>Wed, 05 Aug 2020 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2020/08/05/haarlem-to-newcastle/</guid><description>Slept well in the hostel but was awake at 7am, and out of bed at eight. I went downstairs to get a coffee. The reception was open but the host was busy making bread and wouldn&amp;rsquo;t serve coffee until 8:30. I sat down and started programming with bleary eyes. Finally I ordered some scrambled egg which came with the warm freshly made bread.
Today I wanted to sort out my sleeping problem - I noticed a large camping shop when I came in to the town yesterday evening, so I checked out of the hostel and left my stuff &amp;ldquo;under the stairs&amp;rdquo; and left at 9:30 to find some camping gear.</description></item><item><title>Apeldoorn to Haarlem</title><link>https://www.dantleech.com/blog/2020/08/04/apeldoorn-to-haarlem/</link><pubDate>Tue, 04 Aug 2020 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2020/08/04/apeldoorn-to-haarlem/</guid><description>I am now sitting outside at a pizza restuarnt in Haarlem, about 10km west of Amsterdam, and about 10km from the ferry port.
I slept again badly last night, I thought I chose a quiet spot in the spacious but busy campsite (tents only). It was full people having a mostly quiet time, some spots were equipped with wood burners and it was as peaceful as it could be given maybe 100 people in a field.</description></item><item><title>Geschner to Holland (past Apeldoorn))</title><link>https://www.dantleech.com/blog/2020/08/03/geschner-to-holland-past-apeldoorn/</link><pubDate>Mon, 03 Aug 2020 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2020/08/03/geschner-to-holland-past-apeldoorn/</guid><description>I woke up at 3am and couldn&amp;rsquo;t get back to sleep. I lay the wondering why I had woken up - my air mattress was partially deflated and my legs were cold. Neither problem seemed critical enough to interrupt my sleep. I think the cold, as mild as it was, confused my brain and prevented it from sleeping. I was sleeping naked which probably didn&amp;rsquo;t help either, so I put some shorts and my fleece on and managed to get some sleep.</description></item><item><title>Bielefeld to Geschner</title><link>https://www.dantleech.com/blog/2020/08/02/bielefeld-to-geschner/</link><pubDate>Sun, 02 Aug 2020 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2020/08/02/bielefeld-to-geschner/</guid><description>I pitched my tent slowly on the green field in the campsite - I was a bit exhausted. I went to the toilet, had a cold shower (hot water costs 0.5€). As I entered the campsite I thought I saw a shop, and I made my way there to see if I could find a beer.
As I passed a man was looking at me and nodded. The shop wasn&amp;rsquo;t a shop, then the man said</description></item><item><title>Cycling to Scotland</title><link>https://www.dantleech.com/blog/2020/08/01/cycling-to-scotland/</link><pubDate>Sat, 01 Aug 2020 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2020/08/01/cycling-to-scotland/</guid><description>This year I&amp;rsquo;m cycling from Germany to Scotland.
My plan is:
Get a train from Berlin to somewhere in the West. Cycle to Amsterdam Get the ferry to Newcastle Cycle to Scotland &amp;hellip; (do stuff in Scotland) Visit my brother I will leave today.
This tour marks 10 years since I first left England and stepped foot in Europe. I left Bath on 30th birthday (give or take a day or two), my birthday is in 5 days from today, so this is something like the reverse operation 10 years later.</description></item><item><title>Man with Bicycle</title><link>https://www.dantleech.com/blog/2020/08/01/man-with-bicycle/</link><pubDate>Sat, 01 Aug 2020 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2020/08/01/man-with-bicycle/</guid><description>note the above distance and time are by the cycle computer I was on the train most of today
I had to decide where to get the train to from Berlin.
I had already decided to get the train - to cut out a few days to maximize the month of vacation that I have.
I had considered many things for this years tour - the original idea was to tour around the UK and visit various relations, at one point by going via.</description></item><item><title>Phpactor 16</title><link>https://www.dantleech.com/blog/2020/06/09/phpactor-16/</link><pubDate>Tue, 09 Jun 2020 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2020/06/09/phpactor-16/</guid><description>Release 16 (0.16.0).
In total 32 tickets / cards have been worked on.
Reference Finder ¶ Phpactor 15 introduced an indexer, which enabled a couple of new features. A major one is reference finding.
In Phpactor, reference finding refers to finding:
Class references Function references Class member (method,constant,property) references. The first two are straight-forward, the third requires additional static analysis and can be slower (we need to find all matching members, then perform some static analysis to see if the container type belongs to the class we are searching for).</description></item><item><title>Mailbox dot org</title><link>https://www.dantleech.com/blog/2020/05/31/mailbox-dot-org/</link><pubDate>Sun, 31 May 2020 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2020/05/31/mailbox-dot-org/</guid><description>I had been hosting my own email for several years. I started using Gmail in 2005 or so but the advertising really bugged me, so I thought I would host my own email - it also seemed like a cool project. But I learned that it&amp;rsquo;s not that easy.
Later I heard about sovereign which is an Ansible playbook to setup your own cloud. All you need to do is buy a dedicated server (I used a Scaleway Dedibox) and run Ansible to install and configure the software.</description></item><item><title>Byte Order Mark Madness</title><link>https://www.dantleech.com/blog/2020/05/26/byte-order-mark-madness/</link><pubDate>Tue, 26 May 2020 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2020/05/26/byte-order-mark-madness/</guid><description>We had an issue today where a CSV file was being read via. SplFileInfo.
The array keys were being inferred from the headers, and the values transformed based on rules per column.
The issue was that the column was not found:
// data read from CSV $data = [ &amp;#39;SALUTATION&amp;#39; =&amp;gt; &amp;#39;1&amp;#39;, ]; var_dump($data[&amp;#39;SALUTATION&amp;#39;]); // UNDEFINED INDEX ERROR Very confusing!
It turns out that the CSV file was prefixed with a byte order mark, which was being incorrectly parsed into the first header (SALUTATION).</description></item><item><title>Phpactor 15</title><link>https://www.dantleech.com/blog/2020/05/03/phpactor-15/</link><pubDate>Sun, 03 May 2020 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2020/05/03/phpactor-15/</guid><description>It&amp;rsquo;s been two months since the last Phpactor release.
Release 15 (0.15.0) was intended to be the release that integrated the Language Server. It has been a huge amount of work, and at least 63 tickets have been worked on. But there have also been numerous other improvements.
New Documentation ¶ Phpactor now has new documentation hosted on readthedocs. The new docs can make use of the power of RST and should provide a better foundation for continuing documentation development.</description></item><item><title>Phpactor 14</title><link>https://www.dantleech.com/blog/2020/03/01/phpactor-14/</link><pubDate>Sun, 01 Mar 2020 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2020/03/01/phpactor-14/</guid><description>TL;DR: See what&amp;rsquo;s new.
It&amp;rsquo;s time to make a new release! Which generally involves lots of waiting for composer. So a good time to make a blog post.
It&amp;rsquo;s been well over a year since I last blogged about 3 years of Phpactor.
So what&amp;rsquo;s new since then? What happened in 2019?
In January 2019 I really wanted to finish the Language Server implementation, and I spent lots of time working on a generic language server implementation, then the language server extension and quite a few other packages which added distinct capabilities to the server and finally it was working with completion, reference finding and hover.</description></item><item><title>Bulgaria PHP</title><link>https://www.dantleech.com/blog/2019/11/10/bulgaria-php/</link><pubDate>Sun, 10 Nov 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/11/10/bulgaria-php/</guid><description>I left the flat in a panic, I assumed I would be queuing at the airport and would need to be there 2 hours before take off. The planned journey would be a tram ride followed by a bus to the airport. I ran to the tram station, waited 10 minutes, got off the tram, realised I was one stop too early, ran to the next stop, looked around frantically for the bus station whilst trying to make sense of the map on my phone, when I found it the bus had just left and I paced up and down the pavement while people started to aggregate for the next bus in 10 minutes.</description></item><item><title>Travemunde, Rostock, Berlin</title><link>https://www.dantleech.com/blog/2019/07/31/travemunde-rostock-berlin/</link><pubDate>Wed, 31 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/31/travemunde-rostock-berlin/</guid><description>This is the last blog post of the trip. I&amp;rsquo;m on the train to Berlin and from there directly back into my normal life as I&amp;rsquo;ll go straight from the train station to the Symfony User Group meetup.
I slept unbelievably well in the tent last night, I didn&amp;rsquo;t feel particularly hungry despite my inappropriate diet for the past few days, but then I hadn&amp;rsquo;t been moving or expending any energy, so what I had was likely enough to sustain me.</description></item><item><title>Tallinn to Helsinki to Travemunde</title><link>https://www.dantleech.com/blog/2019/07/30/tallinn-to-helsinki-to-travemunde/</link><pubDate>Tue, 30 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/30/tallinn-to-helsinki-to-travemunde/</guid><description>I am now in the campsite at Travemunde, which was conveniently immediately outside of the ferry port. I had originally planned to cycle directly, overnight, to Rostock (100km) and reasoned that I would arrive at 4am and be able then to get the first train to Berlin, and that the cycle ride would be good and hoped the sky would be clear, but the weather forecast was poor, and in the hours preceding the arrival it had been pouring in rain.</description></item><item><title>Tallinn</title><link>https://www.dantleech.com/blog/2019/07/28/tallinn/</link><pubDate>Sun, 28 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/28/tallinn/</guid><description>I have now stayed in Tallinn for 5 nights, stayed in two separate hostels, met lots of interesting people and have been for 4 runs of 10k or more. Time has passed quicky and I wish I could stay longer but I have to be at work in a few days.
The first two nights I stayed in the Euphoria hostel, which I breifly described in the previous post - it has a drum kit, organ, piano, several guitars, microphones and amplifiers.</description></item><item><title>Võsu to Tallinn</title><link>https://www.dantleech.com/blog/2019/07/23/v%C3%B5su-to-tallinn/</link><pubDate>Tue, 23 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/23/v%C3%B5su-to-tallinn/</guid><description>I&amp;rsquo;m sitting in the Eurphoria hostel in Tallinn, I got in around an hour and a half ago, and have briefly explored the tourist saturated center, then came back here and played guitar and piano for about an hour and a guy just came in and sat at the drums. There is all the tools required for a band in this room, which is one of the reasons I was attracted to this hostel, and I may be staying here for a week.</description></item><item><title>Tartu to Võsu</title><link>https://www.dantleech.com/blog/2019/07/22/tartu-to-v%C3%B5su/</link><pubDate>Mon, 22 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/22/tartu-to-v%C3%B5su/</guid><description>I had prepared for a long day today, and after two days at the Looming hostel in Tartu I was feeling fresh and ready to go in this morning. I had had some good chats with people at the hostel, and the experience was running through my mind for the first few hours of the trip this morning.
Tortu&amp;rsquo;s main square this morning
The weather was fine as I left the hostel and headed down to the river, and I felt good.</description></item><item><title>Tartu</title><link>https://www.dantleech.com/blog/2019/07/21/tartu/</link><pubDate>Sun, 21 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/21/tartu/</guid><description>I intended to stay two nights in Tartu, but have ended up staying three. There seem to be no logical resting places for tomorrows journey within a 120km distance (other than hotels which I would consider to be beyond what I&amp;rsquo;d be happy to pay), and the next campsite is on the coast, which would be 155km - a long day. The following day I could do an even longer day and make it all the way to Talinn, which is either 100km direct, or, if following the coast (and I really should follow the coast) it&amp;rsquo;s almost 163km, 100 miles and this last act of masochism seems fitting for the last journey on this trip, although there is also an outdoor &amp;ldquo;hostel&amp;rdquo; or &amp;ldquo;retreat&amp;rdquo; in the forest outside of Tallinn which has been recommended to me twice, so that may break my journey.</description></item><item><title>Laatre to Tartu</title><link>https://www.dantleech.com/blog/2019/07/19/laatre-to-tartu/</link><pubDate>Fri, 19 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/19/laatre-to-tartu/</guid><description>As predicted I slept terribly, falling initially to sleep but soon waking up as my head wasn&amp;rsquo;t comfortable (it was supported inappropriately on my hoody which was in turn supported by my food pannier). As usual when I realised that it was morning and I could get out of bed, falling to sleep was no longer an issue and I didn&amp;rsquo;t wake until 9am. So I slept badly and got out of bed late.</description></item><item><title>Cēsis to Laatre</title><link>https://www.dantleech.com/blog/2019/07/18/c%C4%93sis-to-laatre/</link><pubDate>Thu, 18 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/18/c%C4%93sis-to-laatre/</guid><description>At the hotel I settled down with a few beers and Series 8 of of Game of Thrones, I hadn&amp;rsquo;t watched it up until this point despite being, like most other people, a big fan of the earlier seasons, but it had got progressively worse and I predicted this, the final, series would be mediocre, it wasn&amp;rsquo;t great, but none-the-less still intriguing enough that I watched 4 episodes back to back.</description></item><item><title>Riga to Cēsis</title><link>https://www.dantleech.com/blog/2019/07/17/riga-to-c%C4%93sis/</link><pubDate>Wed, 17 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/17/riga-to-c%C4%93sis/</guid><description>Typing this in a Pizzeria as usual, but unfortunately my laptop&amp;rsquo;s power was drained s I&amp;rsquo;m typing this awkwardly on my phone. I am in Cēsis, an historical town 100km north-east of Riga.
At the hostel I woke relatively late, 9:00, and was able to take advantage of the free waffles for breakfast, washing them down with a good deal of free coffee.
After two days rest my arse was road worthy again.</description></item><item><title>Riga Rest Days</title><link>https://www.dantleech.com/blog/2019/07/16/riga-rest-days/</link><pubDate>Tue, 16 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/16/riga-rest-days/</guid><description>I don&amp;rsquo;t seem to have succeeded in integrating very well in the hostel I&amp;rsquo;ve been staying in for the past 2 days, having not really broken the ice with people in general (with some exceptions) and feeling a little depressed and drained. Most of the staff and guests are relatively young (one girl, 18, is still at high school in Italy) so maybe it&amp;rsquo;s the generation gap. I did have a good chats with a guy from Wales, and another from Helsinki.</description></item><item><title>Plavinas to Riga</title><link>https://www.dantleech.com/blog/2019/07/14/plavinas-to-riga/</link><pubDate>Sun, 14 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/14/plavinas-to-riga/</guid><description>The road suddenly changed from a very smooth asphalt road to the worst kind of gravel road, and showed no sign of stopping. Potentially running for the remaining 50k to Riga, cars would drive past kicking dirt into the air which would sting my eyes and force me to angle my cap down to avert the dust, which consequently meant my field of vision was restricted to what was immediately in front of me.</description></item><item><title>Sudeikiai to Plavinas</title><link>https://www.dantleech.com/blog/2019/07/13/sudeikiai-to-plavinas/</link><pubDate>Sat, 13 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/13/sudeikiai-to-plavinas/</guid><description>As normal I slept not to well on the campsite, but woke up at 06:00 and made breakfast (coffee, porridge, and some pastry things I found in a shop) and was out on the road at around 08:00 heading to the Latvian border.
It looked to be another sunny day, yesterday I had worn my vest for the first time since being burnt over a week ago, and was annoyed that I had burnt again in the same place, I sprayed some sun lotion on to my back and put on my shirt instead of the vest.</description></item><item><title>Vilnius to Sudeikiai</title><link>https://www.dantleech.com/blog/2019/07/12/vilnius-to-sudeikiai/</link><pubDate>Fri, 12 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/12/vilnius-to-sudeikiai/</guid><description>The campsite is almost empty and again it&amp;rsquo;s a big one sponsered by the EU. When I arrived at 18:00 it was empty and I thought it was closed, but I took the phone number anyway and went to the next campsite on my map 3km down the road, on arriving there I passed what seemed to be a deer enclosure and there was a huge stag sitting in the middle of it.</description></item><item><title>Rest Day</title><link>https://www.dantleech.com/blog/2019/07/11/rest-day/</link><pubDate>Thu, 11 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/11/rest-day/</guid><description>Today was the first rest day so far. I got out of bed around 8am, and had a terrible hangover. I went downstairs to the kitchen and sat down, the hostel guy was there and was preparing croissants, also there was a nice old man from South Korea. It was good chatting to both of them, the hostel guy worked in London for 2 years, and actually studied English in my hometown - Weymouth.</description></item><item><title>Aukstadvaris to Vilnius</title><link>https://www.dantleech.com/blog/2019/07/10/aukstadvaris-to-vilnius/</link><pubDate>Wed, 10 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/10/aukstadvaris-to-vilnius/</guid><description>This was the third time camping on this trip, and the third time I had a bad night, and the third time I had blamed my sleeping mattress. On the previous tour I had a &amp;ldquo;full length&amp;rdquo; air mattress - a self inflating air mattress that stretched from my head to my feat. This was a perfect mattress, except that it had developed a micro-puncture, which seems to be undetectable (have held it underwater for 10s of minutes and no sign of air release), and after 4 hours of sleep it would deflate and I would wake and not sleep so well.</description></item><item><title>Marijampole to Aukstadvaris</title><link>https://www.dantleech.com/blog/2019/07/09/marijampole-to-aukstadvaris/</link><pubDate>Tue, 09 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/09/marijampole-to-aukstadvaris/</guid><description>Me and another cyclist are the only two people on a large campsite 50km from Vilenus. Coincidentally he has cycled from Tallinn, and is also from Berlin, but is getting the plane back from Vilenus, and we&amp;rsquo;ll cycle there together tomorrow.
This morning I woke and didn&amp;rsquo;t feel particularly optimistic about the route today, there was one major road heading directly to Vilenus, and I believed it was not legal to cycle on it.</description></item><item><title>Goldap to Marijampole</title><link>https://www.dantleech.com/blog/2019/07/08/goldap-to-marijampole/</link><pubDate>Mon, 08 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/08/goldap-to-marijampole/</guid><description>Loud music was pounding on the street, I thought I would wait until 12, maybe it would stop, but I fell asleep before that. In the morning I made my way to the restaurant to see what wonders awaited me. It was a buffet breakfsat, the guy spoke to me in German and asked if I wanted eggs &amp;ldquo;Speigel Eier oder Rugh Eier&amp;rdquo; (and yes, I have no clue how to spell or write in German).</description></item><item><title>Bartosxyce to Goldap</title><link>https://www.dantleech.com/blog/2019/07/07/bartosxyce-to-goldap/</link><pubDate>Sun, 07 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/07/bartosxyce-to-goldap/</guid><description>The hotel wasn&amp;rsquo;t the best. I didn&amp;rsquo;t sleep well, and was anxious about my bicycle being in the hallway only demobilised but not locked to anything. I could hear anybody talking in reception. When I woke, I had no breakfast to get ready for, so I just packed my bags and checked out. When I asked the receptionist for water (seeing a basin in the reception) she gave me a litre of sparking water for free and refused to give me tap water.</description></item><item><title>Elbląg to Bartosxyce</title><link>https://www.dantleech.com/blog/2019/07/06/elbl%C4%85g-to-bartosxyce/</link><pubDate>Sat, 06 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/06/elbl%C4%85g-to-bartosxyce/</guid><description>Slept perfectly in the airy and cheap room. I really liked the old hotel, it had very tall ceilings and there was lots of space. It was run down and old, but very clean, and the family that were running it were incredibly welcoming.
My German has come in very useful so far, but in this town, Bartosxyce, it seems that it&amp;rsquo;s not as useful, so far nobody has been able to converse with me in either English or German.</description></item><item><title>Gdansk to Elbląg</title><link>https://www.dantleech.com/blog/2019/07/05/gdansk-to-elbl%C4%85g/</link><pubDate>Fri, 05 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/05/gdansk-to-elbl%C4%85g/</guid><description>Woke up in the dormitory this morning with a heavy head, we had consumed a fair amount of vodka the previous night. I expected to meet people in the hostel, as you almost always do. The first guy was Xavier, originally from Peurto Rico, but who has been a digital nomad for the past 7 years (and only 29 years old), the young Australian couple, Nikki and Ash, had spent the past 3 months in Canada and visited Mexico, before dropping in to Poland to visit relatives, and then a Swede who had just purchased a boat and came over to Gdansk as he was considering sailing from Stockholm.</description></item><item><title>Bytów to Gdansk</title><link>https://www.dantleech.com/blog/2019/07/04/byt%C3%B3w-to-gdansk/</link><pubDate>Thu, 04 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/04/byt%C3%B3w-to-gdansk/</guid><description>There was a buffer breakfast at the hotel, featuring feta cheese, bread, cereals, and eggs. Again this morning I was feeling less than optimal, and still half knocked out even after the breakfast coffee.
I had now the required component to fix my rear break &amp;ndash; the missing part was actually very common, and is the same screw that is used to affix the drink holders, so I could have easily cannibalised one of those.</description></item><item><title>Dabki to Bytów</title><link>https://www.dantleech.com/blog/2019/07/03/dabki-to-byt%C3%B3w/</link><pubDate>Wed, 03 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/03/dabki-to-byt%C3%B3w/</guid><description>I&amp;rsquo;m glad that I turned inland. I decided to head to the town of Bytów which was only 100km from the town, and would be a stepping stone to Gdansk. The people I dealt with have all been unquestionably friendly and the roads have been quiet.
I left the hotel without fanfare at around 08:00. I felt pretty horrible - when I got into the hotel last night I looked in the mirror and I had heavy bags under my eyes, and I felt like I had heavy bags under my eyes.</description></item><item><title>Wisełvka to Dabki</title><link>https://www.dantleech.com/blog/2019/07/02/wise%C5%82vka-to-dabki/</link><pubDate>Tue, 02 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/02/wise%C5%82vka-to-dabki/</guid><description>Today has been a long day. I am now finally sitting in a Pizzeria in one of the many pizzerias in a town which is one of many towns with many Pizzarias.
At the campsite I had a slightly better sleep, and think that I will become accustomed to the uncomforted and learn to sleep better. The campsite was very quiet, I woke up at around 5am, then tried to sleep again with some success, finally sitting up, getting out of the tent, using the toilet, then coming back and making coffee and porridge, before packing up.</description></item><item><title>Gartz to Wisełvka</title><link>https://www.dantleech.com/blog/2019/07/01/gartz-to-wise%C5%82vka/</link><pubDate>Mon, 01 Jul 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/07/01/gartz-to-wise%C5%82vka/</guid><description>Didn&amp;rsquo;t sleep too well last night. I situated my tent close the the main building where there was a collection of tables and chairs, and these were appropriated by another small group of cyclists. They operated at a reasonable volume until 12, but as tents have absolutely no sound insulation, it&amp;rsquo;s as if I was there at the table with them. This drove me slightly nuts and I resorted to playing music in my headphones to drown the sound out, while sweating in the still uncomfortable heat, at midnight the small group called it a night, and the temperature dropped and I was able to crawl into my sleeping bag and sleep.</description></item><item><title>Berlin to Gartz (Meschern)</title><link>https://www.dantleech.com/blog/2019/06/30/berlin-to-gartz-meschern/</link><pubDate>Sun, 30 Jun 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/06/30/berlin-to-gartz-meschern/</guid><description>Sitting in a campsite in the sun, in front of reception. Occuping one of 4 tables, each occupied by a single person (three of which are lone cyclists), mine is the only one in the sun, as I have been in the sun all day I guess it should make no difference that I spend the time writing this blog sweating and squinting at my laptop screen.
Was woken from a dream this morning by the sound of a wasp, in the dream, and on awakening there was indeed a rather large bee flying around my room slowly clockwise, inspecting everything, and it would only be a matter of time before it made its way to my bed.</description></item><item><title>Preparation</title><link>https://www.dantleech.com/blog/2019/06/12/preparation/</link><pubDate>Wed, 12 Jun 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/06/12/preparation/</guid><description>In two weeks time I&amp;rsquo;m going to cycle from Berlin to Tallinn.
As with my tour to Norway last year, this is a limited 1 month trip, the plan is to set off on July 1st, and cycle through Poland, maybe Belarus , Lithuania, Latvia, the destination Tallinn, then get the ferry to Helsinki, Finland in order to get the Ferry back to Rostock, then the train back to Germany and Berlin.</description></item><item><title>Make Timesheet Parser with Hoa Compiler</title><link>https://www.dantleech.com/blog/2019/02/11/make-timesheet-parser-with-hoa-compiler/</link><pubDate>Mon, 11 Feb 2019 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2019/02/11/make-timesheet-parser-with-hoa-compiler/</guid><description>I have been keeping my timelogs in a plain-text timesheet format as follows:
2019-02-11 09:00 [JIRA-1234] Adding some functionality 10:00 [standup] 10:15 [JIRA-1234] Fixing that annoying bug 11:00 [JIRA-2134] Review 12:00 [lunch] 13:00 [JIRA-1234] @pairing 14:00 [confused] 18:00 [finish] 2019-02-12 09:00 ... Bascially, it&amp;rsquo;s much quick to log my time realistically. I don&amp;rsquo;t need to continually break my concentration and assign time to tickets as I work on them, or strain to remember (or make up) what I did at the end of the day, or even at the end of the week.</description></item><item><title>Phpactor Extensions</title><link>https://www.dantleech.com/blog/2018/11/25/phpactor-extensions/</link><pubDate>Sun, 25 Nov 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/11/25/phpactor-extensions/</guid><description>Over the past month or so I have been gradually migrating Phpactor to use Extensions.
This started because I wanted to add Language Server capabilities to Phpactor, but having two RPC mechanisms in the same application seemed overkill, so I decided to extract everything into extensions in order that all of the components could be easily reused and recombined (so that a phpactor-language-server standalone application could be created).
In addition I wanted the ability to add framework and tool specific functionality, which doesn&amp;rsquo;t belong in the main distribution.</description></item><item><title>Rephpactor</title><link>https://www.dantleech.com/blog/2018/10/14/rephpactor/</link><pubDate>Sun, 14 Oct 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/10/14/rephpactor/</guid><description>TL;DR ¶ Phpactor 1.0 will have no features at all, but it will provide a way to install extensions. All current Phpactor functionality will be extracted to extensions.
Background ¶ One problem with Phpactor has always been that it has not been extensible - it is not possible to, for example, install a Behat extension, or a Phpspec or Symfony extension.
It is not that the infrastructure isn&amp;rsquo;t there internally - it is and was based on the precedent set by Phpbench (which was in turn influenced by other things, notaby Behat, Symfony, Pimple, etc).</description></item><item><title>Three Years of Phpactor</title><link>https://www.dantleech.com/blog/2018/08/19/three-years-of-phpactor/</link><pubDate>Sun, 19 Aug 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/08/19/three-years-of-phpactor/</guid><description>The first commit in Phpactor (pronounced &amp;ldquo;factor&amp;rdquo;) dates from almost three years ago:
commit 3677c5cb58a5b203fb658c8e2498e512cdef555a Author: dantleech &amp;lt;dan.t.leech@gmail.com&amp;gt; Date: Thu Sep 24 14:08:35 2015 +0200 Initial I had no idea about how to create such an ambitious project in a domain in which I knew nothing. But I had been using VIM for around 7 years (?), VIM is a great text editor, but the tooling around refactoring and auto-completion for PHP was sub-optimal, and instead of waiting more years, I decided to write my own tool.</description></item><item><title>Trelleborg to Berlin</title><link>https://www.dantleech.com/blog/2018/07/20/trelleborg-to-berlin/</link><pubDate>Fri, 20 Jul 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/07/20/trelleborg-to-berlin/</guid><description>I am now sitting on my cheap Ikea office chair typing this blog post on my desk in my apartment in Berlin.
This morning I woke first naturally at 4:30am, and then was woken again by the alarm clock on my phone at 5am. I raised myself in my sleeping bag and unzipped the panel which opens onto the &amp;ldquo;porch&amp;rdquo; of my tent. I had no muesli today, but had good bread, and I pasted it with jam and had my coffee and read the one day old news on my phone (there was no Wifi at the campsite).</description></item><item><title>Kungalv to Trelleborg</title><link>https://www.dantleech.com/blog/2018/07/19/kungalv-to-trelleborg/</link><pubDate>Thu, 19 Jul 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/07/19/kungalv-to-trelleborg/</guid><description>I&amp;rsquo;m in a campsite in Trelleborg, the town on the southern coast of Sweden and the ferry port. I just showered and hand-washed my underwear and shirt which are now hanging out to dry.
I got out of bed a later today, both because I had relatively late night and because I was in no hurry, I only had 15km to Gothenburg and then it was a train and another short ride to Trelleborg.</description></item><item><title>Tanemshede to Kungalv</title><link>https://www.dantleech.com/blog/2018/07/17/tanemshede-to-kungalv/</link><pubDate>Tue, 17 Jul 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/07/17/tanemshede-to-kungalv/</guid><description>Another troublesome day with the bike.
As I settled down in my tent last night there was a group of four or five teenagers in the tent next to mine who were talking and laughing until midnight, and somehow, although they were not being overly loud, managed to annoy me as I was trying to read. At 4:30am there was a crash of thunder (but no rain) which woke me up, and I guess most other people on the campsite including my neighbors, but they were the only ones who decided to chat about it for half-an-hour.</description></item><item><title>Oslo to Skjeberg</title><link>https://www.dantleech.com/blog/2018/07/16/oslo-to-skjeberg/</link><pubDate>Mon, 16 Jul 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/07/16/oslo-to-skjeberg/</guid><description>The middle aged man on the bunk oppsite to me got out of bed at around 5am, I woke up and dozed intermitently before getting out of bed at around 7am and packing my stuff up. I hoped that the hostel had a kitchen where I could make my breakfast. I went down with my bags and asked at reception &amp;ldquo;Do you have a kitchen?&amp;rdquo; &amp;ldquo;Only the ones in the rooms&amp;rdquo;.</description></item><item><title>Skjeberg to Tanemshede</title><link>https://www.dantleech.com/blog/2018/07/16/skjeberg-to-tanemshede/</link><pubDate>Mon, 16 Jul 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/07/16/skjeberg-to-tanemshede/</guid><description>My bike wheel and derailleur completely destroyed today.
I woke up in the campsite and had 3 helpings of museli and jam and one helping of coffee, then went to fill my water bottles and wash my pots. I cycled away in the wrong direction but quickly realised my error and doubled back.
Again, the cycle route was not direct and I just stuck as closely to the motorway (which goes directly to Gothenburg) as possible.</description></item><item><title>Trondheim to Oslo (train)</title><link>https://www.dantleech.com/blog/2018/07/15/trondheim-to-oslo-train/</link><pubDate>Sun, 15 Jul 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/07/15/trondheim-to-oslo-train/</guid><description>The hostel provided free coffee in the morning and, as hostels often do, free food. Free food is food left by other guests, and there was a bag of coffee in the free food cupboard, which I took advantage of when the morning coffee wasn&amp;rsquo;t available, I also purchased a bag of coffee for the following days, for it was now the plan to do at least three more days of cycling.</description></item><item><title>Orkanger to Trondheim</title><link>https://www.dantleech.com/blog/2018/07/14/orkanger-to-trondheim/</link><pubDate>Sat, 14 Jul 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/07/14/orkanger-to-trondheim/</guid><description>When the girl came around to collect the money for camping, it was actually very cheap, only 60kr (about €6) - cheapest so far, almost by half.
It was quiet enough and I was initially camping on the tent pitch on my own, but later joined by two other tents, but they were at a good distance from each-other and not noisy in any case. There was a small party happening in one of the caravans on the other side of the site making noise until around 12, inducing me to put my ear-plugs in as I read three chapters of &amp;ldquo;Memoirs of a Geisha&amp;rdquo;.</description></item><item><title>Foldfjorden to Orkanger</title><link>https://www.dantleech.com/blog/2018/07/13/foldfjorden-to-orkanger/</link><pubDate>Fri, 13 Jul 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/07/13/foldfjorden-to-orkanger/</guid><description>It appears to be Friday the 13th. Today was a hard slog, most of the route was hilly and there were no &amp;ldquo;natural&amp;rdquo; rests along the way - no ferries or tunnels or places of note. I stopped for lunch at the top of a long climb.
Valhalla
It was cold again last night and hard to get to sleep, I woke up multiple times and ended up putting my trousers on in the sleeping bag and pulling my arms inside of my t-shirt to achieve a level of comfort.</description></item><item><title>Marmefjorden to Foldfjorden</title><link>https://www.dantleech.com/blog/2018/07/12/marmefjorden-to-foldfjorden/</link><pubDate>Thu, 12 Jul 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/07/12/marmefjorden-to-foldfjorden/</guid><description>This morning I woke with a stomach ache and there was lots of groaning as I packed up my damp tent and filled my water bottles and tenderly made my way back to the road.
The sky was and is overcast and has been so all day, but it hasn&amp;rsquo;t been raining.
The cycle route went indirectly around the coast, but there was another road cutting straight across the land which saved around 15k.</description></item><item><title>Ålesund to Marmefjorden</title><link>https://www.dantleech.com/blog/2018/07/11/%C3%A5lesund-to-marmefjorden/</link><pubDate>Wed, 11 Jul 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/07/11/%C3%A5lesund-to-marmefjorden/</guid><description>Now sitting on the step of the sanitary block of a campsite by a Fjord surrounded by high-rise mountains. The campsite cost 170kr (almost €18) for the night, but the shower and cooker both cost 10kr each. I paid for the shower, but used more of my increasingly precious camping gas to cook dinner. The Wifi is at least free and so far I haven&amp;rsquo;t encountered a campsite that requires you to pay to use the toilet.</description></item><item><title>Måløy Ålesund</title><link>https://www.dantleech.com/blog/2018/07/10/m%C3%A5l%C3%B8y-%C3%A5lesund/</link><pubDate>Tue, 10 Jul 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/07/10/m%C3%A5l%C3%B8y-%C3%A5lesund/</guid><description>I think it was the coldest night so far - relative to my sleeping bag and comfort level. I didn&amp;rsquo;t sleep great and had a hard time motivating myself to get out of bed, but eventually I got out and had breakfast, did my business and left the campsite. I looked for the old man I had spoken to the previous evening who said, that if he was on reception he would show me the route to Trondheim.</description></item><item><title>Førde to Måløy</title><link>https://www.dantleech.com/blog/2018/07/09/f%C3%B8rde-to-m%C3%A5l%C3%B8y/</link><pubDate>Mon, 09 Jul 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/07/09/f%C3%B8rde-to-m%C3%A5l%C3%B8y/</guid><description>It had stopped raining when I woke up, and I slept quite well, only getting out of bed at 7:50. I ate the little remaining museli I had and had my mandatory coffee. It was the coldest it has been so far last night, and pushed the confort limits of my sleeping bag (I slept almost fully clothed).
It was monday morning and I left the campsite, I was going to go in and ask if they had any camping gaz, but there was a queue so I just left and went to the supermarket 1km down the road, and did a &amp;ldquo;big shop&amp;rdquo; buying one pack of museli, one pack of pasta, 2 cans of baked beans, a french baguette, a big bag of mixed nuts, and a separate bag of salted peanuts.</description></item><item><title>Ausgulen to Førde</title><link>https://www.dantleech.com/blog/2018/07/08/ausgulen-to-f%C3%B8rde/</link><pubDate>Sun, 08 Jul 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/07/08/ausgulen-to-f%C3%B8rde/</guid><description>The sun was shining when I crawled out of my tent and was greeted with an amazing view over the fjord. Clouds were dripping off one of the further cliffs.
Leaving the campsite
Today I would get a ferry and make prgress northwards, to Førde or Naustdal.
I rode the 13km to the ferry, and as I rode along side the fjord I could see the ferry slowly making its way over, and with a kilometer to go I knew I would catch it.</description></item><item><title>Bergen to Ausgulen</title><link>https://www.dantleech.com/blog/2018/07/07/bergen-to-ausgulen/</link><pubDate>Sat, 07 Jul 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/07/07/bergen-to-ausgulen/</guid><description>I got out of bed at the hostel at around 7am and went to the kitchen to make some coffee, I decided not to have breakfast as I wanted to leave early, so I just used some of my Muesli and one of the hostel people put the coffee on.
I sat down and was joined by Katrina from the &amp;ldquo;team&amp;rdquo; and then by a new Spanish arrival who was studying in Trondheim and had gotten the plane to Bergen for the weekend.</description></item><item><title>Bergen Rest Day</title><link>https://www.dantleech.com/blog/2018/07/06/bergen-rest-day/</link><pubDate>Fri, 06 Jul 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/07/06/bergen-rest-day/</guid><description>It was waffle night in the hostel. It&amp;rsquo;s a hostel run for 3 summer months by students from a certain University in Chicago, there are 7 of them here and they form a &amp;ldquo;team&amp;rdquo;. During the rest of the year the facility is used for something else. It&amp;rsquo;s very sociable and friendly.
I have decided to cycle east to Oslo - I am potentially missing some very nice mountains to the north, but it&amp;rsquo;s half-time and I need to turn back.</description></item><item><title>Liervik to Bergen</title><link>https://www.dantleech.com/blog/2018/07/05/liervik-to-bergen/</link><pubDate>Thu, 05 Jul 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/07/05/liervik-to-bergen/</guid><description>Woke up in the campsite after a pretty good nights sleep, made the usual breakfast - the coffee is very important. I don&amp;rsquo;t feel human without it.
I packed my stuff up, filled my water bottles. I saw William (the American cyclist I spoke to the night before) preparing to leave and I went to pay. &amp;ldquo;Do you want a coffee?&amp;rdquo; asked the campsite manager, I thought about it, and refused &amp;ldquo;I just brushed my teeth, it wouldn&amp;rsquo;t taste so good&amp;rdquo;, I waited around for a few minutes checking my route.</description></item><item><title>Haland to Liervik</title><link>https://www.dantleech.com/blog/2018/07/04/haland-to-liervik/</link><pubDate>Wed, 04 Jul 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/07/04/haland-to-liervik/</guid><description>The woman came around at around 9pm to collect my payment for the camping. We went into the previously-closed reception area and I paid about €15 with my card and I asked if there was anywhere I could sit down and do some work on my laptop. The reception was connected with a largish common room, but it was not being used for that purpose currently, but she showed me some outdoor plugs and where I could sit down under the eaves of the building.</description></item><item><title>Stavanger to Haland</title><link>https://www.dantleech.com/blog/2018/07/03/stavanger-to-haland/</link><pubDate>Tue, 03 Jul 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/07/03/stavanger-to-haland/</guid><description>I took a rest day at the hostel in Stavanger, it was a nice hostel, the staff were friendly and helpful.
I tried to maintain my bike, attempting to first fix my gears (I think I made them worse overall, but at least now I have a better understanding of how to adjust them) and I tried to fix my sinking handlebar bag, but ended up tightening it too much and breaking off one of the bolts - there were 3 bolts and one of them is now rounded and stuck, the other broke off, and another one is fastened far too tightly but is the only one holding the whole thing on now, and I&amp;rsquo;m too scared to loosen it up and adjust it properly.</description></item><item><title>Hague i Dalane to Stavanger</title><link>https://www.dantleech.com/blog/2018/07/01/hague-i-dalane-to-stavanger/</link><pubDate>Sun, 01 Jul 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/07/01/hague-i-dalane-to-stavanger/</guid><description>I was undecided as to whether I would stay another night at the campsite. It was a friendly, trusting, campsite and they had an area where I could work and it was a good place for running, but I also knew I couldn&amp;rsquo;t spend any time in my tent. I was woken up to an already too-hot-for-comfort tent, the sun was scorching it, and I decided to leave.
The Path</description></item><item><title>Lyngdal to Hague i Dalane</title><link>https://www.dantleech.com/blog/2018/06/30/lyngdal-to-hague-i-dalane/</link><pubDate>Sat, 30 Jun 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/06/30/lyngdal-to-hague-i-dalane/</guid><description>It is now almost 11pm, it is still light and I got into the campsite about 30 minutes ago. It has been an extremely long and beautiful day, even if I couldn&amp;rsquo;t find a suitable place to do wild camping.
Lake
I left the campsite at 8am without thinking too much about where I was going to stay. I followed the EV1 up until the point where I noticed there was a way to avoid the coast section (which just went out and back-in again) and cut straight over the land to rejoin the cycle path.</description></item><item><title>Kristiansand to Lyngdal</title><link>https://www.dantleech.com/blog/2018/06/29/kristiansand-to-lyngdal/</link><pubDate>Fri, 29 Jun 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/06/29/kristiansand-to-lyngdal/</guid><description>Another good nights sleep and I augmented my breakfast once again, this time with chocolate milk - Muesli, jam, chocolate milk and coffee. I set out to follow what officially seems to be the EV12 but is marked on signs and on my phone as EV1.
I was soon confused having arrived at a closed pedestrian/cycle bridge and yet all the while seeing people cycling accross it - where were the going?</description></item><item><title>Rebild to Kristiensand</title><link>https://www.dantleech.com/blog/2018/06/28/rebild-to-kristiensand/</link><pubDate>Thu, 28 Jun 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/06/28/rebild-to-kristiensand/</guid><description>I am now on the ferry crossing to Norway. Feeling a bit hungry but unwilling to pay the €30 asking price for the on-board buffet (the ticket cost €42) but everything has gone to plan so far.
Woke up early after a good nights sleep, had muesli again, but this time mixed with jam in addition to water, and drank my morning coffee from the camping cooking pot - which is actually better in some respects than the thermal mug as it loses heat quickly, meaning I can down the whole lot after about 1 minute.</description></item><item><title>Silkeborg to Rebild</title><link>https://www.dantleech.com/blog/2018/06/27/silkeborg-to-rebild/</link><pubDate>Wed, 27 Jun 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/06/27/silkeborg-to-rebild/</guid><description>Today marks 7 days of cycling and I&amp;rsquo;m in good shape, so far I&amp;rsquo;ve covered around 806km. I&amp;rsquo;m slightly behind my so-called &amp;ldquo;schedule&amp;rdquo; as I had intended to be ready to get the ferry to Norway today, but I will only be able to do that tomorrow with some effort.
Slept adequately last night, but was uncomfortable due to the deflating air-mattress, I think the other night I was camped on softer ground.</description></item><item><title>Silkeborg to Rebild</title><link>https://www.dantleech.com/blog/2018/06/26/silkeborg-to-rebild/</link><pubDate>Tue, 26 Jun 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/06/26/silkeborg-to-rebild/</guid><description>My cycle computer broke today, I don&amp;rsquo;t know how many kilometers I did or how long I was riding for, this was the zeroeth problem. But it was a good day.
At 11pm last night it was still light. I slept well. I didn&amp;rsquo;t wake up until 7am, and then dozed and woke up late an hour and a half later. I made my coffee and had muesli (moistened with water).</description></item><item><title>Flensburg to Vonslid (Kolding)</title><link>https://www.dantleech.com/blog/2018/06/25/flensburg-to-vonslid-kolding/</link><pubDate>Mon, 25 Jun 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/06/25/flensburg-to-vonslid-kolding/</guid><description>I am now sitting under the eaves of a chalet in a Danish campsite, my tent is pitched in front of me and I&amp;rsquo;m overlooking a pond with ducks swimming in it, the sun has shining. I was sceptical about this campsite to start with, it was just off the main road and there were plenty of other options further off the track in more desirable locations, but I had done my time for the day so I risked it.</description></item><item><title>Bad-bremsteht to Flensburg</title><link>https://www.dantleech.com/blog/2018/06/24/bad-bremsteht-to-flensburg/</link><pubDate>Sun, 24 Jun 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/06/24/bad-bremsteht-to-flensburg/</guid><description>Slept badly in the campsite last night. It was cold and my air matress seems to have very small puncture and it deflates impartially, just enough so that my body to intermittently come into contact with the ground when I&amp;rsquo;m turning in my sleep. I woke at 2am, 5am and 6am, before finally waking for good at around 7am. Again, only bread and peanut butter for breakfast with a nice cup of coffee.</description></item><item><title>Zeven to Bad-bremsteht</title><link>https://www.dantleech.com/blog/2018/06/23/zeven-to-bad-bremsteht/</link><pubDate>Sat, 23 Jun 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/06/23/zeven-to-bad-bremsteht/</guid><description>&amp;ldquo;n another campsite and there is loud &amp;ldquo;Oktoberfest&amp;rdquo; music playing from somewhere in vicinity. It&amp;rsquo;s damp, and I&amp;rsquo;m sitting in a lean-to sheltered from the spitting rain. I seem to be on a regular bike-touring path as there is a old cycling dutch couple on the pitch next to mine, and a french couple on the opposite side. The weather is supposed to be improved on Tuesday.
I woke this morning in my tent in Zeven at around 5am, then dozed until about 7am and planned my breakfast, I didn&amp;rsquo;t have much, just some bread, peanut butter and coffee.</description></item><item><title>Diepholz to Zeven</title><link>https://www.dantleech.com/blog/2018/06/22/diepholz-to-zeven/</link><pubDate>Fri, 22 Jun 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/06/22/diepholz-to-zeven/</guid><description>I woke up this morning at 7am to the sound of pouring rain. The bed was comfortable but I felt exhausted and my head hurt. I got up and looked in the mirror, I had bags under my eyes. Yesterday was a hard day. Today would be much better, but I didn&amp;rsquo;t know it yet.
Breakfast was served from 7 and I went down at half past, the lady was already there and had prepared my place.</description></item><item><title>Bielefeld to Diepholz</title><link>https://www.dantleech.com/blog/2018/06/21/bielefeld-to-diepholz/</link><pubDate>Thu, 21 Jun 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/06/21/bielefeld-to-diepholz/</guid><description>Time and distance are estimates as I still haven&amp;rsquo;t hooked up my cycle computer.
Very rough map
I am sitting on the bed of my room in the hotel Strangmeyer in Diepholz. I had planned to make it to Bremen today. I estimated it to be 135km, I would head north west and join the D7 cycle route which would take me first to Bremen and then I thought I would carry on the next day to Hamburg.</description></item><item><title>Cyclotourist without a Cycle</title><link>https://www.dantleech.com/blog/2018/06/20/cyclotourist-without-a-cycle/</link><pubDate>Wed, 20 Jun 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/06/20/cyclotourist-without-a-cycle/</guid><description>A prerequisite for a cycle tour is having equipment, and bags to carry it all in. So I started the day by picking up the last missing items in Berlin. My large rear pannier did not turn up, so I bought a new one (€75) and tried to find a solar powerbank, but couldn&amp;rsquo;t find the one I wanted, so I picked up a 20000ma standard powerbank, which should be enough to keep my phone going for a week or so.</description></item><item><title>Pre-flight checks</title><link>https://www.dantleech.com/blog/2018/06/20/pre-flight-checks/</link><pubDate>Wed, 20 Jun 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/06/20/pre-flight-checks/</guid><description>It has been decided that I will get the train to Bielefeld tomorrow. I have a ticket from Berlin (€53 direct train, 3.5 hours). There is no going back now (it&amp;rsquo;s an inflexible ticket).
My bike has been picked up from Weymouth and is being driven across England now as I write this blog. At around 19:00 hours tomorrow I should be picked up from Bielefeld station by my brother and escorted to a camp site where I will be reunited with my bike.</description></item><item><title>Mission Norway</title><link>https://www.dantleech.com/blog/2018/06/10/mission-norway/</link><pubDate>Sun, 10 Jun 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/06/10/mission-norway/</guid><description>I have been working in Berlin for almost a year, and previous to that I was in London for 6 months. So that means I have not been travelling for over a year and a half. Time to do something. To Norway!
My Bicycle is in Weymouth, I am in Berlin. The bicycle needs to come to me, or I need to go to the bicycle.
I originally planned to get the plane to England, the train to Weymouth, and then get my bicycle, get the train back to London to retrieve my touring equipement (which is stashed in the basement of my brothers friend).</description></item><item><title>Hello World</title><link>https://www.dantleech.com/blog/2018/06/02/hello-world/</link><pubDate>Sat, 02 Jun 2018 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2018/06/02/hello-world/</guid><description> This is my new blog. There have been many like it. But this is my new one
My website has been down for over a year. This is the new one! The old site is backed up, but there wasn&amp;rsquo;t anything interesting on it.
$ cowsay &amp;#39;Hello&amp;#39; _______ &amp;lt; Hello &amp;gt; ------- \ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || ||</description></item><item><title>Faro - Huelva</title><link>https://www.dantleech.com/blog/2013/04/24/faro-huelva/</link><pubDate>Wed, 24 Apr 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/04/24/faro-huelva/</guid><description>Slept badly last night, was itching and I had globs on my skin. Got up in the middle of the night and went to the bathroom to inspect myself so as not to wake the other people in the dormitory. In the end I just determined to not itch and to just stay calm until I fell asleep. In the morning the globs had gone.
Spoke to French girl this morning:</description></item><item><title>Faro and new money</title><link>https://www.dantleech.com/blog/2013/04/23/faro-and-new-money/</link><pubDate>Tue, 23 Apr 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/04/23/faro-and-new-money/</guid><description>My card finally arrived this morning, (thanks Ana for letting me know). I withdrew some money to ensure that it worked before finally checking out of the Pousada de Juventude. It had been a productive 2 weeks, but the inertia got to me. When the card arrived I had only enough money for one more night.
So, I headed out eastwards to the heart of the Algarve, Faro. The airport city that keeps the Algarve well stocked with tourists.</description></item><item><title>The New Blog - 10 days in Lagos</title><link>https://www.dantleech.com/blog/2013/04/18/the-new-blog-10-days-in-lagos/</link><pubDate>Thu, 18 Apr 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/04/18/the-new-blog-10-days-in-lagos/</guid><description>Last tuesday I phoned my friend Franck in Paris
&amp;ldquo;Hey Franck, hows it going?&amp;rdquo; &amp;ldquo;Yeah, pretty good mate.&amp;rdquo; &amp;ldquo;All my stuff nicked, I need to ask you a favour&amp;rdquo; &amp;ldquo;Sure&amp;rdquo; &amp;ldquo;Can you pick up my credit card from the bank, and send it over here.&amp;rdquo; &amp;ldquo;No problem&amp;rdquo; Thought it would arrive maybe the next day, maybe the day after.
I am staying in a Youth Hostel in Lagos, its a pretty good deal.</description></item><item><title>Lagos - Day 9</title><link>https://www.dantleech.com/blog/2013/04/17/lagos-day-9/</link><pubDate>Wed, 17 Apr 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/04/17/lagos-day-9/</guid><description>So. I have finally met a &amp;ldquo;crusty-hippy-permaculturist&amp;rdquo;. I was sitting down for breakfast, and was having a conversation with a Dutch guy, who was driving around in a hired car. We were in the middle of a sentance when..
English? We both looked around
Are you english? - she addressed the Dutch guy, I kept my nationality a secret Err&amp;hellip; no &amp;hellip; I am dutch. Oh, well thats allright then. What about you?</description></item><item><title>Lagos - Day 7</title><link>https://www.dantleech.com/blog/2013/04/15/lagos-day-7/</link><pubDate>Mon, 15 Apr 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/04/15/lagos-day-7/</guid><description>Now one week at the Hostel and only €130 left. Hoping card will get here tomorrow, one entire week seems a long time for a first card letter to go from France to Portugal, but its possible all the same.
Have started running again, today was the third consecutive running day. Legs are aching, but tendon is fine.
I started off with a small run on my second day here, 20 minutes to a beach, swim, then 20 minutes back.</description></item><item><title>Lagos - Day 5</title><link>https://www.dantleech.com/blog/2013/04/12/lagos-day-5/</link><pubDate>Fri, 12 Apr 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/04/12/lagos-day-5/</guid><description>Five days and I am starting to perceive the routine of this place. Beginning to become habituated to the routines. The staff sitting down in the court yeard chatting. Scrambled eggs on Wednesdays. Each morning I sit down for breakfast at 8:30 and speak with Walter before he goes to surf school, often misunderstanding what he is saying to me and saying &amp;ldquo;what?&amp;rdquo;.
Paid for Carlos to stay one more night at a cost of €12</description></item><item><title>Lagos - Day 4</title><link>https://www.dantleech.com/blog/2013/04/11/lagos-day-4/</link><pubDate>Thu, 11 Apr 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/04/11/lagos-day-4/</guid><description>Met Carlos. Unemployed Portuguese guy staying in Hostel for the night. Very talkative and triste.
Life is tough my friend Yeah Four fucking times, four fucking times they stole my bike Yah, yah, life. But, you have to stay positive, you know? Thats the key We went outside and and somoked
My brother is dead How did he die? He is dead. He died 4 years ago, life. Yep. I have no money, you know there is no work Yeah I have nothing, no food, don&amp;rsquo;t like begging .</description></item><item><title>Lagos - Day 3</title><link>https://www.dantleech.com/blog/2013/04/10/lagos-day-3/</link><pubDate>Wed, 10 Apr 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/04/10/lagos-day-3/</guid><description>Finally managed to speak to an employee of my bank in Paris. She explained that nothing, no action, could be taken with my card without a written authorization. An authorization delivered in the mail and signed by me. I found out however, to my gratification, that I could ask one of my colleagues in Paris to pick the card up on my behalf, if they had the aforementioned written authorization.</description></item><item><title>Lagos - Day 2</title><link>https://www.dantleech.com/blog/2013/04/09/lagos-day-2/</link><pubDate>Tue, 09 Apr 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/04/09/lagos-day-2/</guid><description>Slept well last night. I was the sole occupant of a 4 bed dormitory. Chatted with a French guy called Walter.
You travelling? I asked err&amp;hellip; yes .. erm.. on holiday I speak french I was glad to be able to chat in French, and Walter and I had many chats over the next few days. He was over here attending a surf school, and was currently &amp;ldquo;signing on&amp;rdquo;, that is, drawing unemployment benefit, whilst waiting to be admitted to the French police academy.</description></item><item><title>Lagos - Day 1</title><link>https://www.dantleech.com/blog/2013/04/08/lagos-day-1/</link><pubDate>Mon, 08 Apr 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/04/08/lagos-day-1/</guid><description>Apparently trip advisor ranked this place no. 1 in a poll of &amp;ldquo;15 up-and-coming destinations&amp;rdquo;. I spoke to a guy in the Hostel in Lisbon who said that, paraphrasing, this place was being colonized by the English.
Its full.. of people .. of your people .. people like you! This is the south coast of Portugal.
I rode into town and was surprised to pass an bookshop selling English books, I made a note to return to it the following day, thinking that I would be leaving the following day and I could call in on my way out.</description></item><item><title>Story of a stolen bicycle in OPorto</title><link>https://www.dantleech.com/blog/2013/04/02/story-of-a-stolen-bicycle-in-oporto/</link><pubDate>Tue, 02 Apr 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/04/02/story-of-a-stolen-bicycle-in-oporto/</guid><description>I rode into the center of Oporta. Struggling up the narrow, ancient streets with my heavy bicycle. Passing by residençials (cheap hotels) that looked to run-down for me to stay in.
Finally I passed into a larger street and found the residençial indicated on my map, the Saint Antonio. The entrance gave on to a short corridor leading to a flight of steps to the first floor where the reception would be found.</description></item><item><title>Santander - Day 2</title><link>https://www.dantleech.com/blog/2013/03/19/santander-day-2/</link><pubDate>Tue, 19 Mar 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/03/19/santander-day-2/</guid><description>What happened today? No idea.</description></item><item><title>Santander - Day 1</title><link>https://www.dantleech.com/blog/2013/03/18/santander-day-1/</link><pubDate>Mon, 18 Mar 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/03/18/santander-day-1/</guid><description>So Dad left yesterday, and I am left alone in Santander. I found a pension for €20 a night, but without internet connectivity. In the morning I went down to a café for a refreshingly cheap coffee and an internet connection. Checking the news, answering emails, and having that lightness of mind that comes with having no cares and no plans.
I called in at the bakery on the way back, getting some bread and cakes, next stop was the supermarket for some cheap wine.</description></item><item><title>La Cavada to Santander</title><link>https://www.dantleech.com/blog/2013/03/17/la-cavada-to-santander/</link><pubDate>Sun, 17 Mar 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/03/17/la-cavada-to-santander/</guid><description>Dads last day, we rode into Santander, going straight to the Ferry terminal where Dad would be setting sail for England - but it was deserted, we eventually spoke to an offial who said that the passenger terminal had been temporarily moved further down the road. After assertaining the location we went to search for some accomodation for me for the night, then a coffee and adios!
In 2010 I rode with Dad from St.</description></item><item><title>Bilbao to La Cavada</title><link>https://www.dantleech.com/blog/2013/03/16/bilbao-to-la-cavada/</link><pubDate>Sat, 16 Mar 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/03/16/bilbao-to-la-cavada/</guid><description>Breakfast surprisingly good and plentiful. Left hotel at 8 45 am only to discover that Dan’s brake blocks were badly worn necessitating a visit to cycle shop opening up at 10 am. Eventually underway at 11 am via Sodupe on hilly inland route involving one 5 mile climb (and 5 mile freewheel descent) from Ramales de la Victoria to Arredondo and hotel in La Cavada with lovely mountain view.</description></item><item><title>Deba to Bilbao</title><link>https://www.dantleech.com/blog/2013/03/15/deba-to-bilbao/</link><pubDate>Fri, 15 Mar 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/03/15/deba-to-bilbao/</guid><description>Rained heavily in night and left hotel at 8 40 am on a day of intermittent sleet and heavy rain showers on a mountainous route to Ondarroa via Lekei then inland to Gernika and eventually into a bustling Bilbao. Hotel found with difficulty and told by owner that bikes cost 10 euros to be garaged, and no eating allowed in rooms! Our room however had nice view of river. We dined out in restaurant area of bar populated by elderly people playing cards.</description></item><item><title>Bayonne to Deba, Spain</title><link>https://www.dantleech.com/blog/2013/03/14/bayonne-to-deba-spain/</link><pubDate>Thu, 14 Mar 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/03/14/bayonne-to-deba-spain/</guid><description>Awake before 6am reading War and Peace (39% read). Left hotel at 8 40am in sleet and snow through a desolate Biarritz. A welcome and partial drying out café in St Jean-de-Luz. With the weather deteriorating Dan decided we should cycle just 8 miles further to border town of Hendaye and take train into Spain and pre-booked hotel at Deba (with 40 minute changeover at San Sebastian where we sought to stay warm by waiting room radiator).</description></item><item><title>Mimizan to Bayonne</title><link>https://www.dantleech.com/blog/2013/03/13/mimizan-to-bayonne/</link><pubDate>Wed, 13 Mar 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/03/13/mimizan-to-bayonne/</guid><description>Another DIY breakfast. Light rain when we set out with coffee at Vielle St Giron. Dan received phone call from hotel booked the previous night to say reception was closed from 3 to 6pm. We aimed to go fast and arrive before 3pm and did so comfortably including a quick lunch at Souston. Started to watch film Abraham Lincoln on laptop but gave up because of poor sound quality. 62 miles.</description></item><item><title>Boredeaux to Mimizan</title><link>https://www.dantleech.com/blog/2013/03/12/boredeaux-to-mimizan/</link><pubDate>Tue, 12 Mar 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/03/12/boredeaux-to-mimizan/</guid><description>From Dads journal: Accompanied Debbie to tram for trip to airport at 8 30 am. Dan and I left hotel at 9 30 am making gradual progress towards coast out of Bordeaux in wind and rain. We had coffee near Facture and lunch at Parentis en Born, then on to Mimizan where we booked into hotel for 58 euros and dried our wet clothing on the bathroom radiator. Yet another dining-in night involving baguettes!</description></item><item><title>Bordeaux - Day 2</title><link>https://www.dantleech.com/blog/2013/03/11/bordeaux-day-2/</link><pubDate>Mon, 11 Mar 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/03/11/bordeaux-day-2/</guid><description>From Dads journal: Another day with Dan delivering croissants at breakfast time. I cycled to the riverside and ran 4 miles on grassland then cycled along long promenade again in warm sunshine. We visited Musee Des Beaux Arts which was very disappointing but coffee outside in the cathedral square was lovely. With the temperature just about warm enough Debbie and I had evening meal in evening in venue near quayside.</description></item><item><title>Bordeaux - Day 1</title><link>https://www.dantleech.com/blog/2013/03/10/bordeaux-day-1/</link><pubDate>Sun, 10 Mar 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/03/10/bordeaux-day-1/</guid><description>A lazy morning. Muesli in bed and Dan arrived with croissants from the bakery. As the sun shone we went to Museum of Contemporary Arts featuring a display of carrier bags, rubble in woks and a large mural by Gilbert and George. In nearby park I removed my shirt for brief time as we revelled in the sunshine. Debbie cooked a meal and we had drinks outside Place de la Victorie, again very pleasant evening.</description></item><item><title>Castille la Bataille to Bordeaux</title><link>https://www.dantleech.com/blog/2013/03/09/castille-la-bataille-to-bordeaux/</link><pubDate>Sat, 09 Mar 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/03/09/castille-la-bataille-to-bordeaux/</guid><description>From Dads journal: Leisurely cycle ride to Bordeaux along quiet roads with stop for coffee in bright sunshine at Branne. Reached hotel (with cooking facilities in room) at 1 30 pm but room not ready and hassle parking bikes. Debbie arrived at 4pm and in the balmy evening the three of us strolled into town and in relaxed mode drank lager outside a bar, then an excellent meal in Italian restaurant.</description></item><item><title>Perigueux to Castillon la Bataille</title><link>https://www.dantleech.com/blog/2013/03/08/perigueux-to-castillon-la-bataille/</link><pubDate>Fri, 08 Mar 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/03/08/perigueux-to-castillon-la-bataille/</guid><description>Awake at 6 20am. Excellent breakfast. On a sunny day Dan (slightly sunburnt) decreed that we take a scenic route to Bordeaux via La Force. Stayed the night at Castillion la Bataille just 29 miles from Bordeaux. Started to watch 1954 classic film Sumari on laptop but fell asleep after hour or so. 58 miles.</description></item><item><title>Brive to Perigueux</title><link>https://www.dantleech.com/blog/2013/03/07/brive-to-perigueux/</link><pubDate>Thu, 07 Mar 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/03/07/brive-to-perigueux/</guid><description>From Dads journal: It was raining when leaving the hotel at 8 40 am. Dan bought a few items at giant sports shop on city outskirts. Coffee and croissant at Terrasson la Villedieu. I was annoyed seeing Fois Gras factories with pictures of smiling ducks displayed at entry gates. Into Perigueux and Ibis budget hotel from 2pm approximately. I walked into town and spent time inside huge cathedral, then got lost and jogged the streets until I recognised surroundings!</description></item><item><title>Ussal to Brive</title><link>https://www.dantleech.com/blog/2013/03/06/ussal-to-brive/</link><pubDate>Wed, 06 Mar 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/03/06/ussal-to-brive/</guid><description>Left hotel at 8 35 am having a coffee at Engletons where the bar owner noticed Dan’s Marsille Marathon” T-shirt (apparently he ran same race. Next stop Tulle Cathedral where we had baguette snack prepared by me earlier in the day. Then on to Brive and one star hotel with shared toilet and shower in room that was mouldy in many parts. I enjoyed an early evening walk into the city fascinated by an abundance of knotted trees.</description></item><item><title>Riom to Ussal</title><link>https://www.dantleech.com/blog/2013/03/05/riom-to-ussal/</link><pubDate>Tue, 05 Mar 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/03/05/riom-to-ussal/</guid><description>Robb left in car for Paris with Dan’s friends at 6am, thus enabling several hours leisure time in city before Eurostar boarding. Dan and I ate a good breakfast and set out at 9am travelling through Volvic on a hilly route stopping for coffee at Rochefort where much snow had fallen. Onwards to snow-bound Ussal and three star hotel by railway station with supermarket nearby enabling top up with provisions. The owner spoke very good English and the night was comfortable.</description></item><item><title>Trail de vulcain</title><link>https://www.dantleech.com/blog/2013/03/04/trail-de-vulcain/</link><pubDate>Mon, 04 Mar 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/03/04/trail-de-vulcain/</guid><description>This event was:
purpose of our journey. event that made me wait until the end of February before leaving. reason I had been training for 2 months what gave our journey a sense of purpose This was the trail de vulcain, three races - 21km, 42km and 80km - in the mountains around Volvic, near Clermont Ferrand, in the Massif Centrale region of France.
I was to run the 80km with Eric, Dad (my travelling companion) was to run the 21km and the others the 42km.</description></item><item><title>Train to Riom, day before marathon</title><link>https://www.dantleech.com/blog/2013/03/03/train-to-riom-day-before-marathon/</link><pubDate>Sun, 03 Mar 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/03/03/train-to-riom-day-before-marathon/</guid><description>After a leisurely morning including another sauna experience we boarded train to Riom at 12 21pm and reached Ibis budget hotel early afternoon. Dan collected Robbie by train from Clemont Ferrand and returned at 6pm. Dan’s workmates (Frank, Eric, Jordan and ?) from Paris arrived at same time. I bought extra provisions at supermarket for a ravenous Robb.</description></item><item><title>St Arrionde Montrand to Mountluçon</title><link>https://www.dantleech.com/blog/2013/03/02/st-arrionde-montrand-to-mountlu%C3%A7on/</link><pubDate>Sat, 02 Mar 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/03/02/st-arrionde-montrand-to-mountlu%C3%A7on/</guid><description>From Dads journal: Left hotel in mist and frost 9 30 am, arriving at Montlucon 32 miles later at 12 30 pm. With Dan increasingly worried by injury we booked in early at Hotel De L ‘Universe intending to take train to rendezvous venue next day. I managed to fall from bike when parking in hotel grounds. Although I was shaken the only injury was a bruised chest caused by striking stay on the handlebar.</description></item><item><title>Vendome to St Arrionde Montrond</title><link>https://www.dantleech.com/blog/2013/03/01/vendome-to-st-arrionde-montrond/</link><pubDate>Fri, 01 Mar 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/03/01/vendome-to-st-arrionde-montrond/</guid><description>From Dads journal: Ibis eat all you like breakfast always great value at 6 euros! Left hotel at 9 20 am making good progress to St Florent for espresso coffee stop (Dad converted by Dan especially as it’s cheap). The sun shone so removed rain-top for first time when cycling. Arrived in St Arrionde Montrand where Dan bought compression socks at 40 euros to help ease and perhaps overcome injury. Misunderstanding with hotel owner over double bed in room instead of singles.</description></item><item><title>Alençon to Vendome</title><link>https://www.dantleech.com/blog/2013/02/27/alen%C3%A7on-to-vendome/</link><pubDate>Wed, 27 Feb 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/02/27/alen%C3%A7on-to-vendome/</guid><description>Typical French breakfast, ¼ baguette plus croissant with butter and jam. Weather cold but dry. Slowish progress over hilly terrain. Another long day with one coffee stop via la Ferte Barnard St Calais to isolated hotel at 6pm on outskirts of Vendome -a spacious apartment with cooking facilities. Dan cooked a pleasant pasta-based meal and very relaxed. 67 miles.</description></item><item><title>Ouistreham to Alençon</title><link>https://www.dantleech.com/blog/2013/02/26/ouistreham-to-alen%C3%A7on/</link><pubDate>Tue, 26 Feb 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/02/26/ouistreham-to-alen%C3%A7on/</guid><description>From Dads journal: Awake 6am local time and had cooked breakfast. First stop Falaise for coffee and cake. Through Argenan to hotel at Alencon via mountainous region with snow falling. Basic one star hotel, noisy but warm. Devoured baguettes in room washed down with cheapish red wine (a version of a meal repeated many times on trip). Able to contact Debbie most evenings with Dan’s phone (contract enabling free overseas calls).</description></item><item><title>Day 1 - Weymouth to Plymouth</title><link>https://www.dantleech.com/blog/2013/02/25/day-1-weymouth-to-plymouth/</link><pubDate>Mon, 25 Feb 2013 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/blog/2013/02/25/day-1-weymouth-to-plymouth/</guid><description>From Dads journal: Departed with Dan on first leg of his planned cycling trip around the world. Very cold day and took wrong turning in Southampton. Arrived wearily at Portsmouth terminal for 10pm crossing on “Normandie” at 6.45 pm. Shared bunk-bed cabin and hot chocolate but hardly any sleep. Cycling miles, 91.</description></item><item><title>About</title><link>https://www.dantleech.com/about/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/about/</guid><description>My name is Daniel Leech. I am a developer since 2007. I currently live in Dorset in the UK having previously lived in France, Austria and Germany.
I created and maintain a language server and a benchmarking framework, spend silly amounts of time on personal projects, and including some other fun side-quests that I actually use.
My 18 year career, combined with my programming hobby, has given me a huge amount of experience in large software projects and their related technologies and processes.</description></item><item><title>Cycle Touring</title><link>https://www.dantleech.com/touring/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/touring/</guid><description>Riding bike with much equipment over long distances with tent and painful.
Tours ¶ 2023: Brittany Weymouth to Brittany 2022: Ireland Scotland to Weymouth 2020: Scotland Germany to Scotland 2019: Baltic Berlin to Helsinki 2018: Norway Bielefeld to Trondheim 2016: Belgium, Italy, Croatia. 2015: Balkans, Turkey Vorarlberg to Istanbul 2014: France (?), Italy, Switzerland, Austria, Germany, Austria&amp;hellip; 2013: Spain, Portugal, France (blog posts restored from old database). 2011: Paris, Moroco. 2010: England, Santander, Alps static version of original website</description></item><item><title>Daniel Leech, Staff Engineer</title><link>https://www.dantleech.com/cv/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/cv/</guid><description>Website: www.dantleech.com Email: daniel at dantleech dot com Mastodon: @dantleech@fosstodon.org LinkedIn: daniel-leech-a32851252 Twitter: @dantleech Github: dantleech Born: 1980 Nationality: British Background 17 years experience in software development with a focus on object orientation, testing and design. My focus has been modern, statically typed, PHP but I am equally comfortable in Golang, Typescript and have worked on hobby projects in Rust.
My time has is divided between demanding open source personal projects and involvement and technical leadership of projects in the areas of e-commerce and content management.</description></item><item><title>Music</title><link>https://www.dantleech.com/music/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/music/</guid><description>Occasionally I record terrible music.
Song 2022: Attempt to record a song every month in 2022 (failed)</description></item><item><title>Projects</title><link>https://www.dantleech.com/projects/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/projects/</guid><description>By far the two biggest projects I&amp;rsquo;m responsible for are:
Phpactor: PHP Language Server. PhpBench: PHP Benchmarking and performance tool. But I&amp;rsquo;ve written smaller projects which are actively used:
Strava RS: TUI for Strava written in Rust. Pttlog: Plain Text Time Logger TUI written in Rust. Fink: Link checker. What Changed: Composer plugin to see what changed. Gherkin Lint: Gherkin Linter Going back further in time:
PHPCRShell: Shell for PHPCR (PHP version of the JCR content repository).</description></item><item><title>Talks</title><link>https://www.dantleech.com/talks/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.dantleech.com/talks/</guid><description>Some of the public talks I have given:
2022 ¶ 07-06 : Pets and Pickle - Insights and lessons from how we&amp;rsquo;ve written our Behat tests on the Inviqa VetPartners project. Symfony User Group Berlin (Meet24 office) 2021 ¶ 07-29 : PHPBench 1.1 - Testing code performance PHP Oxford 03-25 : PHPBench - Testing code performance PHP South Wales [video] 02-11 : Integration Testing - The 🐘Elephant in the Room (Internal Inviqa Code Talk) 02-09 : PHPBench - Testing code performance VlbgWebDev (user group, remote) 2020 ¶ 12-03 : PHP 8 - First Impressions (Internal Inviqa Code Talk) 09-01 : PHPBench - Testing code performance PHPNW (user group, remote) 2019 ¶ 11-09: Exploring Async PHP BHPHP [slides] [joind.</description></item></channel></rss>