I am Scott Hanson
and you're not
July 31, 2025 by Scott Hanson

What would new blogging software be without a test post?

(PS: It's not new, it's WordPress 😃)

March 21, 2025 by Scott Hanson

If you were holding your breath waiting for the result of my application for German citizenship, you can start breathing again. 😃

The appointment to submit the documents I had collected was quite anti-climatic. I simply handed them over one by one, keeping the originals, and that was it. I was told that processing would take 6 to 9 months. So I waited.

Last week, after 5 months and 20 days, I received an mail that my application was approved. An appointment to pick up my citizenship certificate was proposed for the first week of April, which was accepted. I need to bring a form, my passport, and my visa card (which will be given up).

Presumably my next steps after that will be to apply for German ID and passport so I can travel out of the country.

March 10, 2025 by Scott Hanson

This time last year, my wife was preparing for emergency heart surgery and we had no idea why. Her pulse was racing, she was short of breath, and the cardiologist said she had the heart of an unhealthy 80-year-old (she was 60 and healthy). The song “Beautiful Things“, released 6 weeks before, was a reminder of how fleeting the good things in life, and even life itself, can be.

Please stay
I want you, I need you, oh God
Don’t take
These beautiful things that I’ve got

A few days later we had the answer, and the solution. She had been born with a bicuspid aortic valve, with two flaps instead of three. We had no idea, and no examination would detect it unless the one was specifically looking for it. Her aorta had expanded over the years to compensate, but was starting to become clogged. The valve was replaced, and today she is as good as new.

That was a year ago Friday, and this week we will be travelling to Lanzarote (Canary Islands, Spain) to celebrate her new first birthday.

Illustration: Sobotta’s Atlas and Text-book of Human Anatomy 1906

October 27, 2024 by Scott Hanson

I have an appointment in a few days to submit my German citizenship application and supporting documents. Some people might be interested in the list of papers I was asked to submit. There are some caveats:

  • This list from my own local migration office (Landkreis Harburg), other offices may have different specific requirements
  • I told them in advance that I was self-employed. Proof of income for an employee might be different.
  • The documents should be originals or certified copies
  • Documents not in German should be accompanied by a German translation
  • The office asked to have all documents submitted at once together with the application

Here’s the list (the poor English translation is mine).

  1. ID papers: passport, visa (Ausweispapiere: Pass, Aufenthaltstitel)
  2. Handwritten, detailed, non-tabular CV (handschriftlicher, ausführlicher, nicht tabellarischer Lebenslauf)
  3. Current photo (Lichtbild)
  4. Birth certificate, birth certificates of children (Geburtsurkunde, Geburtsurkunden der Kinder)
  5. Marriage certificate current marriage (Heiratsurkunde jetzige Ehe)
  6. Marriage certificate of previous marriage and divorce decree (Heiratsurkunde früherer Ehe und Scheidungsurteil)
  7. Income tax statements, latest and second to last (Einkommensteuerbescheide, letzter und vorletzter)
  8. Financial statement if self-employed (Betriebswirtschaftliche Auswertung bei Selbständigen)
  9. Proof of health and long-term care insurance (Nachweise Kranken- und Pflegeversicherung)
  10. Proof of pension (Nachweis Altersversicherung: Versicherungsverlauf der Deutschen Rentenversicherung)
  11. Proof of passed citizenship test (Nachweis über die erfolgreiche Teilnahme an einem Einbürgerungstest)
  12. Proof of German language skills (Nachweis über Sprachkenntnisse: Zertifikat Deutsch Stufe B1, Hauptschulabschluss, Studium, oder Berufsausbildung)
October 12, 2024 by Scott Hanson

The blog generator bloggrify is based on nuxt-content and generates a RSS feed as a server route in nuxtjs using the feed package from npm. However, try as I may, I was unable to add the cloud element to the feed. The cloud element is used to notify feed readers (like FeedLand) that the feed has been updated. It’s a standard element for RSS, and I was surprised it could not simply be added to the generating the feed.

I ended up rewriting the route using jstoxml so I can choose my own elements.

import jstoxml from 'jstoxml'
const { toXML } = jstoxml
// config contains data for title, description, etc.
const content = {
    _name: 'rss',
    _attrs: {
        version: '2.0',
    },
    _content: {
        channel: [
            { title: config.name },
            { description: config.description },
            { link: url },
            { docs: 'http://cyber.law.harvard.edu/rss/rss.html' },
            { language: config.language },
            { favicon: url + '/favicon.ico' },
            { copyright: `All rights reserved ${now.getFullYear()}, ${config.name}` },
            { generator: 'bloggrify-smh' },
            {
                _name: 'cloud',
                _attrs: {
                    domain: 'rpc.rsscloud.io',
                    port: 5337,
                    path: '/pleaseNotify',
                    registerProcedure: 'http-post',
                },
            },
        ],
    },
}
// After adding items content (code omitted), generate the feed
const configXML = {
    indent: '  ',
}
return toXML(content, configXML)

FeedLand seems to accept the feed, and this post will be a test of whether the ping goes through or not. 😃

Update It worked! rsscloud.io was pinged, and FeedLand updated the feed.

Screenshot showing FeedLand updated the feed

Last update: 7/31/25; 2:34:38 PM.