hello.js

var please = require('share');
console.log('thank you');

NEW !!!

Saturday, 2 December, 2017 UTC

Go, Gin and HTTP / Basic Auth

I’ve been dabbling with Go and more specifically gin again and I needed a very quick and dirty authentication for a pet project. Typically I don’t recommend HTTP / basic auth to protect resources, but for this project I didn’t have a database and I was ... more


Tuesday, 7 November, 2017 UTC

Vue.js API Client / Single Page App (SPA) Tutorial

This post assumes you have some kind of API backed by some data that you want the user to be able to filter, either by category, by tag or other things of your liking. You can find part 1 of this tutorial, that we’ll be referring to here: Building a ... more


Sunday, 5 November, 2017 UTC

Building a Simple Searchable API with Express (Backend)

Express is still one of the most prominent server side frameworks for node. This little guide will show you how you can build a simple API and connect it with your frontend framework of choice. If you’re trying to build a site that features a list of ... more


Thursday, 28 September, 2017 UTC

Firefox has re-joined the Browser Wars

Firefox is back as a contender for the best browser, even though admittedly the criteria for that are very subjective. Some would say that having a browser that respects your privacy wins from the get-go, but a lot of users (me included) are big fans ... more


Friday, 22 September, 2017 UTC

Testing Coin Hive Crowd Source Monero Mining

Yesterday I found a tweet about a monetisation possibility that enables cryptocurrency mining through JavaScript. More precisely it lets you mine XMR or Monero, a cryptocurrency not unlike Bitcoin, through users of your websites. The JavaScript miner ... more


Wednesday, 9 August, 2017 UTC

How to use iOS Safari localStorage and sessionStorage in Private Mode

In short, you can’t, but you can set a cookie via JavaScript Safari on iOS supports localStorage, but in Private Mode it simply throws an error when you try to save anything to it, which is not great. Also it breaks the behaviour of your app on iPhones ... more


Saturday, 5 August, 2017 UTC

A Comical Guide to Webpack, Vue.js 2, Gulp and WordPress [Tutorial]

Building WordPress themes and plugins is a big market and it gets a lot of people into web development, so I named this post like I did, but it really works for most CMS, no matter if you want to write a theme for WordPress, Drupal, GHOST, Magento or ... more


Saturday, 22 July, 2017 UTC

Best Programming Language (and Tutorials) for Beginners

Which programming language to learn or which one to learn next is one of the eternal struggles of being a developer. For beginners there is a myriadic jungle of choices and every developer they know tells them something different. The key to learning ... more


Wednesday, 5 July, 2017 UTC

How to try React Fiber with Create React App

React Fiber is almost ready and it brings some exciting performance improvements to the famous JavaScript framework by facebook. If you want to set up a quick demo project with React Fiber you can use the create-react-app way and simply: npm -g install ... more


Monday, 3 July, 2017 UTC

Taking Full Page Screenshots with Headless Chrome

A returning subject on this blog, how to automate device screenshots with Node.js and Chrome. This post will cover installation and running the script on either Mac OS or Linux. If you’re brave, you can use Windows too 😉 Automating Screenshots of your ... more


Sunday, 7 May, 2017 UTC

Image Resizing with Gulp

Writing your own tools and scripts is always a very satisfying thing. You take something that used to take a long time and then you automate it. JavaScript task runners like gulp are a great deal of help when automating tasks with the help of a large ... more


Tuesday, 2 May, 2017 UTC

Adsense Alternative: Infolinks

If you’re looking for alternatives to Google Adsense, you’re not the only one. Luckily there are a couple of different services out there. Some of them are shady, some of them are extremely invasive of your users experience. I’ve tried out Infolinks, ... more


Monday, 3 April, 2017 UTC

Custom JavaScript Trigger Functions for Google Tag Manager

In this post we’ll go through how to fire events for the Google Tag Manager with custom JavaScript functions. Most tracking can be done just by using the built in Google Tag Manager tracking, but for developers that want to debug or need events to be ... more


Monday, 3 April, 2017 UTC

Building a Go(lang) API with echo and MySQL

In this post we’ll have a look at how to build a MySQL backed API with Go and echo. This is part of the series that explains how we did photographerexcuses.com The site is a Vue.js single page app, that gets its data (the excuses) from the Go API. We ... more


Monday, 3 April, 2017 UTC

Building a Singe Page App with Vue.js Tutorial

In this post we’ll create a single page app with Vue.js that shows a random quote or string. We’ll start from scratch and use the default webpack-simple boilerplate provided by the creators of vue through vue-cli. This again is part of the Making of ... more


Monday, 3 April, 2017 UTC

Proxy / Rewrite your API Endpoint into Domain Segment with Nginx

I wanted to make an API available on the same domain as a single page app built with Vue.js, which means that I had to rewrite a part of the domain to use another port on the same host, but you can also use an entirely different machine or have a load ... more


Wednesday, 22 February, 2017 UTC

Golang: Arrays of Strings

This post is going to be about Golang, arrays and strings. In Go we have more than simple arrays that we know from JavaScript or PHP. They are basically divided into the following: arrays slices maps This was confusing to me at first, because in basically ... more


Tuesday, 21 February, 2017 UTC

history.pushState and IE SCRIPT5022: SecurityError

I stumbled upon this error in Internet Explorer when I wrote my Redirect Checker and discovered that JavaScript Errors that imply an attempted security violation, that on top of that are not wrapped in a try-catch block, will totally disable your whole ... more


Saturday, 14 January, 2017 UTC

Webpack Sass / Scss compiling to separate file

Webpack is an amazing tool for transpiling and bundling JavaScript, but it can also take care of compiling Sass or Scss to static files. get the code on github I came across this issue while developing a prototype and not a single page app, that I needed ... more


Friday, 30 December, 2016 UTC

Atom vs Brackets

Both Atom and Brackets are lightweight source code editors written in JavaScript and have gotten a lot of attention from the web development community. I quickly want to compare the two and tell you which one I prefer at the moment and why. If you haven’t ... more


Monday, 24 October, 2016 UTC

Express, Passport and JSON Web Token (jwt) Authentication for Beginners

This post is going to be about creating an authentication with JSON Web Tokens for your project, presumably an API that’s going to be used by Angular, Vue.js or similar frontend frameworks. We’re going to send the jwt with every request, meaning that ... more


Monday, 24 October, 2016 UTC

Example: JSON Web Tokens with Vanilla JavaScript

In this post we’re going to learn how to use JSON web tokens on the frontend with vanilla JavaScript and no libraries necessary. What you learn will be easily applicable to frameworks such as Angular, Angular2, Vue.js or similar. In the last post we ... more


Monday, 24 October, 2016 UTC

Node.js / GHOST theme development and deployment

Few weeks ago we decided to switch our static site to GHOST and write a theme for it. Now, GHOST isn’t an optimal choice for a photography portfolio and we’ll get into why that’s the case in a bit, but we both like blogging to, so we wanted to give it ... more


Wednesday, 19 October, 2016 UTC

Angular 2 Tips for Beginners

Angular 2 is out and if you haven’t, you should definitely check out angular.io, because the most valuable beginner material is in their Getting Started guide and the following Tour of Heroes. Angular projects require quite a bit of setup with Angular ... more


Thursday, 6 October, 2016 UTC

On: Too many Frameworks and if you should use one

Web and especially JavaScript frameworks exist quite numerously, but there is also a great deal of controversy about if it’s too many, who should be using a framework, who should be building one and of course the obligatory The framework I’m using is ... more


Sunday, 7 February, 2016 UTC

Crawling an entire Domain / Website

This post is going to be about crawling an entire domain in Node.js. You can find the first posts of the series here: Web Scraping / Web Crawling Pages with Node.js. For testing purposes I have created a simple set of HTML pages, that should resemble ... more


Friday, 1 January, 2016 UTC

Web Crawling with Node.js #2: Building the Page Object

Welcome to part 2 of the series crawling the web with Node.js. In this article we’re going to have a look at what valuable content we can grab from a page. Important parts when writing a crawler are obviously links, because our crawler wouldn’t know ... more


Saturday, 14 November, 2015 UTC

Trying out the Facebook Flux Examples

If you want to try out the flux examples in your browser and learn from them, you’ll need to do a quick little bit of building the respective JavaScript file from the sources you are provided. For starters, you’ll need to clone the github repository ... more


Thursday, 5 November, 2015 UTC

Web Scraping / Web Crawling Pages with Node.js

This post series is going to discuss and illustrate how to write a web crawler in node.js. I’m going to write some posts on a topic that are database agnostic and the database part split up into the respective different databases you could imagine using. ... more


Friday, 19 June, 2015 UTC

How to: enable CORS in express.js (node.js)

Express.js is one of the most popular node.js frameworks for serving websites or building APIs. This article is about how to enable Cross Origin Resource Sharing, also known as CORS. For that we need to set the correct headers in the response, which ... more