LVM snapshots for backup

I recently decided to rent a Hetzner server for my private projects and websites this includes: This blog bootprint.knappi.org a mailserver, and an Owncloud (Nextcloud) instance Other projects may follow (such as a gallery of images and videos). By default, the Linux installation of this server came with a software RAID-1. Some thoughts about the backup strategy of this server: I don't want to shut down the mailserver to get a consistent backup. I don't want to implement backup systems for all databases and other programs that write data to the disc. Just making a tar (or using...

Code-Style

I have learned a lot about tools and conventions in JavaScript since I started publishing node-modules. I wish I had known these things for my first module, because now I have to look through (my) 27 modules and apply those best-practices to all of them. I plan to write a series of posts, each about a specific topic, e.g. testing, CI, documentation to allow you to start off on the right foot... Why do you need a coding-style? JavaScript is a rather anarchic language. You can write the same thing in many different ways. There are no code-conventions like...

Code coverage show-off

If you are like me, than you have a deep desire to write quality code. Sadly, writing unit-tests takes time that you cannot put into new features. Writing unit-tests does not give you the feeling that you are "making progress", especially if you are working on a software that needs a lot of them. Well, I have to solution to your problem: "Visible test coverage". Let's say, you have started an open-source project. It was little in the beginning and you were playing around a lot. You put it on GitHub and on npm, just in case anyone wants to...

Documenting REST-Services

I've decided to focus my private programming efforts back on the single project that received a little attention in the world: bootprint-swagger. Creating this project was actually an accident. I was working on other, really important things, but that's another story. What is a Rest-Service? When I last tried to explain somebody what my project is for, I realized that it is so specialized that you have to explain the basic terminology even to people that have a knack for technology: bootprint-swagger is a tool to create readable static documents (i.e. books) from a Swagger-definition. But what is a...

Why I didn't implement a npm search-site.

In my last post, I wrote that the search function of npmjs.com is not as good as I would wish for and that I had to click through with a large number of packages that are appearently unfinished and fallow. I said, it would be nice to have a better tool: Something that filters packages or has a better ranking, so that the high quality packages appear in my results first. It would greatly reduce the time, I spend for finding adequate packages and it would greatly reduce my frustration. This blog post is about how I tried to...