<?xml version='1.0' encoding='UTF-8'?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Fresh and Crispy</title>
    <link>https://blog.cpjobling.net</link>
    <description>Posts in category "blog" from Fresh and Crispy</description>
    <atom:link href="https://blog.cpjobling.net/feeds/blog.rss.xml" rel="self"/>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Tue, 29 Sep 2026 09:41:28 +0000</lastBuildDate>
    <item>
      <title>Temporary Outage Fixed</title>
      <link>https://blog.cpjobling.net/2026/08/15/tempory-outage-fixed.html</link>
      <description>&lt;p&gt;This blog has been a static site since I migrated to &lt;a href="https://blog.cpjobling.net/2026/05/31/blog-cpjobling-net-is-now-a-static-site.html"&gt;Blogmore back in May&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Some time over the past couple of days, my hosting provider, &lt;a href="https://www.reclaimhosting.com" rel="noopener noreferrer" target="_blank"&gt;Reclaim Hosting&lt;/a&gt;, must have repopulated the directory with WordPress artefacts and my landing page had become a &lt;em&gt;Setup Your New WordPress site&lt;/em&gt; page. I managed to remove those artefacts and used the hosting site dashboard (CPanel) to uninstall the whole WordPress app. So, hopefully, this should not happen again.&lt;/p&gt;</description>
      <guid isPermaLink="false">https://blog.cpjobling.net/2026/08/15/tempory-outage-fixed.html</guid>
      <category>blog</category>
      <category>WordPress</category>
      <category>Blogmore</category>
      <category>CPanel</category>
      <category>Reclaim-Hosting</category>
      <pubDate>Sat, 15 Aug 2026 14:04:57 +0200</pubDate>
    </item>
    <item>
      <title>Blogmore now supports LaTeX math markup</title>
      <link>https://blog.cpjobling.net/2026/06/08/blogmore-now-supports-latex-math-markup.html</link>
      <description>&lt;p&gt;In a post published yesterday, Davep has announced that &lt;a href="https://blog.davep.org/2026/06/07/blogmore-v2-41-0.html" rel="noopener noreferrer" target="_blank"&gt;BlogMore v2.41.0&lt;/a&gt; now supports &lt;a href="https://en.wikipedia.org/wiki/Mermaid_(software)" rel="noopener noreferrer" target="_blank"&gt;mermaid diagrams&lt;/a&gt; and LaTeX mathematics typesetting.&lt;/p&gt;
&lt;p&gt;I'm not sure if I'd use mermaid diagrams, but in my professional career as a University lecturer I used LaTeX extensively, and I think that I would occasionally find a use for it here.&lt;/p&gt;
&lt;p&gt;Here is an example.&lt;/p&gt;
&lt;p&gt;The solution of the quadratic equation&lt;/p&gt;
&lt;div class="math-block"&gt;$$
ax^2 + bx + c = 0
$$&lt;/div&gt;
&lt;p&gt;is given by the famous formula&lt;/p&gt;
&lt;div class="math-block"&gt;$$
x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}.
$$&lt;/div&gt;
&lt;p&gt;Typesetting uses either the &lt;a href="https://katex.org" rel="noopener noreferrer" target="_blank"&gt;katex&lt;/a&gt; or &lt;a href="https://www.mathjax.org" rel="noopener noreferrer" target="_blank"&gt;mathjax&lt;/a&gt; libraries. You choose the flavour in your configuration file.&lt;/p&gt;
&lt;div class="highlight" data-lang="yaml"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nt"&gt;with_maths&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l l-Scalar l-Scalar-Plain"&gt;true&lt;/span&gt;
&lt;span class="nt"&gt;math_provider&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l l-Scalar l-Scalar-Plain"&gt;katex|mathjax&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;I used katex for this example.&lt;/p&gt;
&lt;p&gt;The libraries are only included on the pages that actually have LaTeX markup.&lt;/p&gt;</description>
      <guid isPermaLink="false">https://blog.cpjobling.net/2026/06/08/blogmore-now-supports-latex-math-markup.html</guid>
      <category>blog</category>
      <category>latex</category>
      <category>katex</category>
      <category>mathjax</category>
      <category>mermaid_diagram</category>
      <category>blogmore</category>
      <pubDate>Mon, 08 Jun 2026 08:41:42 +0200</pubDate>
    </item>
    <item>
      <title>Publishing my BlogMore blog with rsync over ssh</title>
      <link>https://blog.cpjobling.net/2026/06/01/publishing-my-blogmore-blog-with-rsync-over-ssh.html</link>
      <description>&lt;p&gt;&lt;a href="https://blog.cpjobling.net/tag/blogmore"&gt;BlogMore&lt;/a&gt; comes with a built-in facility to post the generated static website to GitHub pages. The host of
&lt;a href="https://blog.cpjobling.net"&gt;blog.cpjobling.net&lt;/a&gt; is however a standard &lt;a href="https://en.wikipedia.org/wiki/LAMP_(software_bundle)" rel="noopener noreferrer" target="_blank"&gt;LAMP&lt;/a&gt;) stack
which is updated by recursively copying the contents of the &lt;code&gt;public&lt;/code&gt; directory to a folder &lt;code&gt;blog.cpjobling.net&lt;/code&gt; on the host. That folder has been registered as the base directory for the DNS record.&lt;/p&gt;
&lt;p&gt;The easiest way to do that is using &lt;a href="https://www.man7.org/linux/man-pages/man1/rsync.1.html" rel="noopener noreferrer" target="_blank"&gt;&lt;code&gt;rsync&lt;/code&gt;&lt;/a&gt; over &lt;a href="https://www.man7.org/linux/man-pages/man1/ssh.1.html" rel="noopener noreferrer" target="_blank"&gt;&lt;code&gt;ssh&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I used the advice given in &lt;a href="https://superuser.com/questions/555799/how-to-setup-rsync-without-password-with-ssh-on-unix-linux" rel="noopener noreferrer" target="_blank"&gt;How to Setup Rsync without password with SSH on UNIX / Linux?&lt;/a&gt; to set up my &lt;code&gt;publish.sh&lt;/code&gt; script:&lt;/p&gt;
&lt;div class="highlight" data-lang="bash"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="ch"&gt;#!/usr/bin/env bash&lt;/span&gt;

&lt;span class="nb"&gt;cd&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;~/blogs/blog.cpjobling.net&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c1"&gt;# local files&lt;/span&gt;
blogmore&lt;span class="w"&gt; &lt;/span&gt;build&lt;span class="w"&gt; &lt;/span&gt;--clean-first&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="c1"&gt;# build blog using default`posts` and config `blogmore.yml`&lt;/span&gt;
&lt;span class="nb"&gt;echo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;&amp;quot;Syncing files using SSH (see https://superuser.com/questions/555799/how-to-setup-rsync-without-password-with-ssh-on-unix-linux)&amp;quot;&lt;/span&gt;
rsync&lt;span class="w"&gt; &lt;/span&gt;-avz&lt;span class="w"&gt; &lt;/span&gt;--delete&lt;span class="w"&gt; &lt;/span&gt;-e&lt;span class="w"&gt; &lt;/span&gt;ssh&lt;span class="w"&gt; &lt;/span&gt;public/&lt;span class="w"&gt; &lt;/span&gt;user@host.hosting.com:blog.cpjobling.net
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="admonition admonition-note"&gt;
&lt;div class="admonition-title"&gt;ℹ️ Note&lt;/div&gt;
&lt;div class="admonition-content"&gt;
&lt;p&gt;I use the &lt;code&gt;--clean-first&lt;/code&gt; flag for the &lt;em&gt;blogmore build&lt;/em&gt; command and &lt;code&gt;--delete&lt;/code&gt; in the &lt;em&gt;rsync&lt;/em&gt; command to ensure that  no orphan files end up on the server.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;</description>
      <guid isPermaLink="false">https://blog.cpjobling.net/2026/06/01/publishing-my-blogmore-blog-with-rsync-over-ssh.html</guid>
      <category>Blog</category>
      <category>rsync</category>
      <category>ssh</category>
      <category>blogmore</category>
      <pubDate>Mon, 01 Jun 2026 14:24:34 +0200</pubDate>
    </item>
    <item>
      <title>blog.cpjobling.net is now a static site</title>
      <link>https://blog.cpjobling.net/2026/05/31/blog-cpjobling-net-is-now-a-static-site.html</link>
      <description>&lt;p&gt;After some fiddling about I have moth-balled the WordPress site that hosted
blog.cpjobling.net and replaced it with a static site generated by
&lt;a href="https://blogmore.davep.dev" rel="noopener noreferrer" target="_blank"&gt;blogmore&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;There is a bit of work needed to add proper categories and tags to older posts,
and some of the pages that relied on services (like Twitter) that I no longer
use, won't work properly.&lt;/p&gt;
&lt;p&gt;Hopefully the new version of Fresh and Crispy will start to get some more
attention as I use it for note-taking alongside an ongoing project of
learning emacs.&lt;/p&gt;</description>
      <guid isPermaLink="false">https://blog.cpjobling.net/2026/05/31/blog-cpjobling-net-is-now-a-static-site.html</guid>
      <category>blog</category>
      <category>blogmore emacs</category>
      <pubDate>Sun, 31 May 2026 12:51:15 +0200</pubDate>
    </item>
    <item>
      <title>Blog More Fresh and Crispy with blogmore?</title>
      <link>https://blog.cpjobling.net/2026/04/17/blogmore-fresh-and-crispy.html</link>
      <description>&lt;p&gt;It's been more than a year since I started to move my old WordPress blog to Hugo. Work stopped around August 2024, and I've just this week come back to it. However, I was getting frustrated by having to reclimb the steep learning curve the for Hugo and yesterday I discovered Dave Pearson's &lt;code&gt;blogmore&lt;/code&gt; tool (&lt;a href="https://blogmore.davep.dev/" rel="noopener noreferrer" target="_blank"&gt;https://blogmore.davep.dev&lt;/a&gt;) which seems much more 
straightforward. Blogmore is a tool, written in Python, that creates a static website, but without many of the complexities of Hugo and similar static website tools. It's designed to be simple and encourage blogging more.&lt;/p&gt;
&lt;p&gt;I hope to relaunch &lt;em&gt;Fresh and Crispy&lt;/em&gt; at &lt;a href="https://blog.cpjobling.net"&gt;blog.cpjobling.net&lt;/a&gt; and use blogmore to blog more!&lt;/p&gt;</description>
      <guid isPermaLink="false">https://blog.cpjobling.net/2026/04/17/blogmore-fresh-and-crispy.html</guid>
      <category>blog</category>
      <category>blogmore</category>
      <category>tools</category>
      <category>blogging</category>
      <pubDate>Fri, 17 Apr 2026 22:44:00 +0000</pubDate>
    </item>
    <item>
      <title>Does this work?</title>
      <link>https://blog.cpjobling.net/2004/05/14/does-this-work.html</link>
      <description>&lt;p&gt;So you can blog by email … does it work?&lt;/p&gt;
&lt;p&gt;Yes it does!&lt;/p&gt;
&lt;p&gt;—————————————–&lt;br /&gt;
Emailed in…&lt;/p&gt;</description>
      <guid isPermaLink="false">https://blog.cpjobling.net/2004/05/14/does-this-work.html</guid>
      <category>Blog</category>
      <category>Blogging</category>
      <pubDate>Fri, 14 May 2004 18:32:00 +0000</pubDate>
    </item>
    <item>
      <title>Well Here we Are Again Then</title>
      <link>https://blog.cpjobling.net/2004/05/14/well-here-we-are-again-then.html</link>
      <description>&lt;p&gt;This must be at least the third incarnation of the Fresh and Crispy blog. Maybe
this’ll last longer than the others.&lt;/p&gt;
&lt;h2 id="comments"&gt;Comments:&lt;/h2&gt;
&lt;p&gt;&lt;a href="http://blog.cpjobling.me/2017/04/25/my-open-story-for-101openstories/" rel="noopener noreferrer" target="_blank"&gt;My Open Story for #101openstories &amp;#8211; Fresh and Crispy&lt;/a&gt; -
&lt;time datetime="2017-04-25 17:26:46"&gt;Apr 2, 2017&lt;/time&gt;&lt;/p&gt;
&lt;p&gt;[…] a practitioner, I suppose my Open Educational Practice began when I launched
this Blog back in 2004. Fresh and Crispy (the name is a pun on my initials) was
originally hosted on Blogspot. It has […]&lt;/p&gt;
&lt;hr /&gt;</description>
      <guid isPermaLink="false">https://blog.cpjobling.net/2004/05/14/well-here-we-are-again-then.html</guid>
      <category>Blog</category>
      <pubDate>Fri, 14 May 2004 17:55:00 +0000</pubDate>
    </item>
  </channel>
</rss>
