Development

Using Bruno with 1Password

Bruno is an open source alternative to tools like Postman or Insomnia. Both are nice, but they also seem to becoming more complicated than I really need, so I’ve been looking for something else.

Initially I didn’t have more complicated needs than wanting a tool to tinker and play with simple REST APIs, so I looked around and found Bruno.

As many APIs require some authentication, you often need to manage credentials, tokens or other sensitive data which shouldn’t be in your git repo, and luckily Bruno has a nice way it can be used with 1Password which is my password manager of choice.

Git for other stuff

Git is often refered to as a source control tool. It’s useful both for teams working on a shared source code as well as individuals how wants a log of the changes in their sourcecode over time. While sourcecode handling is the most common use case, Git itself isn’t per say limited to just managing sourcecode and using Git repositories for non-sourcecode may also have value in your daily work. This post is a small apetizer of some of the cases I’ve been using Git for non-sourcecode.

Advent of code 2021

I’ve once again had fun with Advent of code. I’m still using it as a motivation to learn and be better at programming Go(lang).

Here are some observations from the challenge rund this year:

  • The hardest challenges was more often in understanding the task and make sure all rules was understood correctly.
  • Despite Go (1.17) being a small language, it has all needed to solve any of the challenges.
  • While I may not write Idiomatic Go - I do write readable code - even for people who don’t know Golang.
  • Imposing a self-imposed rule of “not imports” (beyond standard library) makes it harder to solve, but I learn more.

I’ve uploaded most of the solutions to Github, but still needed to clean and rewrite the code from the last days before they are “shareable” :-)

Sharing photos

I’m not usually playing too much around on Windows apart from using office and teams - and other software bound to windows which company work require. A small event on an ongoing project however did require some small exploration into Windows and what could be done to solve a simple task.

  • We had an all-day event, where multiple photos were taken on mobile phones througout the day.
  • I needed to collect the photos, sort them and share them.

I realize that Google Photos, Flickr and multiple other solutions may work for such an occation, but we really didn’t want to share the photos outside the company and nor force anyone to create an account anywhere - neither to see the photos nor to contribute with their own.

Looping thorugh the Alphabet in GoLang

In a recent Go programming task I needed to loop through the letters from a to z. I also needed the capital letter from A to Z. For-looping thorugh the letters in Go is luckily a breeze.

The easiest way is just using a Rune. A Rune is an int32 which represent a unicode character. As a rune (the variable r below) is a Unicode character, it allows me to use the ToUpper() from the unicode package to find the Uppercase version of the letter.

Github activity fail

Github is quite a fantastic service for source code management and hosts a suite of wonderful tools which can help you manage the development, tracking issues and much more.

One of the fun things is the github activity dashboard located on your personal frontpage which shows how much you’ve done.

I’m sure it’s mostly a fun thing and it allows you to sort of get an idea of it the account is dead or alive. Some seem to have pride in having a green carpet showing long periods of continuous activity.

A Hugo Image/Photo Gallery

I recently switch this site from Wordpress to Hugo - and the site with Danish content too. It was mostly easy and straight forward, but initially there was a few features missing (by the very nature of it being a static site) and some things I needed to look into once the switch had happened. One of these was a gallery function to present images (photos mostly).

Gallery options….

There are various ways to have a gallery on a site, and one of the pains I had with wordpress, was changing strategies over time, which left me with several plugins needed to handle the historic gallery choices.

Certificate check from Go

As the web moves more and more to HTTPS and ehanced security (such as HSTS) keeping your certificates updated and valid becomes more and more important.

I’m toying with an idea of building a small webapp to monitor my small portfolio of certificates and warn me if a certificate is due to expire. As part of this, I’m slowly patching pieces together in Go and one of the small useful outcomes is a small (compilable to bin) script which prints the basic certificate details of a given domain.

No access to *.dev sites

I’ve been having an odd issue for a couple of months. When accessing sites having a .dev domain (like most recently go.dev), I my browsers have given me warnings and as many had HSTS-headers, not allowed me to visit the site.

It seemed like a strange error, and I’ve tried to remember if I’ve set up some proxy or VPN connection, that could cause this issue. A few times I’ve asked others on the net if they had issues - which was not the case - and I’ve tried using a web proxy, and everything worked. Yet no matter which browser I used it didn’t work.

Crawl and save a website as PDF files

The web is constantly changing and sometimes sites are deleted as the business or people behind it moves on. Recently we removed a few sites as we were doing maintenance and updates on the many sites we run at work. Some of them had interesting content - for personal or professional reasons, and we wanted to make a static copy of the sites before deleting the sites completely.

I have not found any easy, simple and well-working software, which can produce and an all-inclusive downloaded copy of a website (including all resources sourced from CDNs and 3rd party sites (to actually make them browsable offline). As I needed to make the copy reasonable fast, I choose to try to capture the contents of the site (a text/article heavy site) as PDFs.