Developer Testing

Henrik Warne's blog

I recently found out about the book Developer Testing – Building Quality Into Software by Alexander Tarlinder, and I immediately wanted to read it. Even though I am a developer at heart, I have always been interested in software testing (I even worked as a tester for two years).

I think the subject of the book, developer testing, is timely. There seems to be a broad trend where more and more responsibility for testing is given to developers. It follows from the move towards micro services, dev ops and the “you built it, you run it” principle. Another driving force is the prevalence of developer testing frameworks that started with JUnit and now includes many more. These frameworks encourage and help developers write automatic tests.

Despite this trend of increasing developer testing, my feeling is that many developers still don’t test their programs well enough. For example, they may…

View original post 1,010 more words


Stories That Should be Banned from Hacker News: Immortality


Some stories on HN are a complete waste of time.  Little real knowledge is ever included in the threads.  No one learns anything. We just bullshit for a few hours.  And this happens a few times a year for each topic.

My first suggestion is stories related to immortality. Most of the comments immediately turn  philosophical.

“Death gives life meaning”

“It’ll only be for rich people”

“The money should be spent on something better.”

On HN, most people don’t  want to learn anything about aging.  No one discusses the basic science that we might gain by doing the research.  The knowledge gained could have benefits in other areas of medicine like heart disease and cancer, for example.  You aren’t going to want to live forever and have Alzheimer’s.

There are 7 billion people on the planet.  It’s not going to hurt if several thousand people work on basic research to understand aging.  From reading…

View original post 108 more words

Programming language from scratch: 3 easy steps to an interpreter

Francis Stokes's Cool Stuff

A little while ago I wrote about 16bitjs, a 16 bit virtual machine written in javascript. It implemented a custom CPU architecture and assembly language, assembler, and debugger. I had the thought at some point that it would be pretty awesome to create a programming language from scratch that would compile to 16bitjs assembly and run on the VM. I’ve since found out this is a monumentally complicated task, but I still went ahead and created a programming language anyway (though not one that compiles to 16bitjs) and the result is Lel. This article will delve into the steps that go into writing a creating an interpreter for a programming language – without unnecessary layers of complexity or the magic status people who are skilled at this kind of thing like to bestow on it. By the end you’ll have a pretty decent grasp on how you could go…

View original post 3,209 more words

Choose Your Paradox – the downside of the Axiom of Choice

Bill Wadge's Blog

And He took the five loaves and the two fish, and looking up to heaven, He blessed and broke and gave the loaves to the disciples; and the disciples gave to the multitudes. So they all ate and were filled, and they took up twelve baskets full of the fragments that remained. – Matthew 14.

The logician Willard Quine defined a paradox as an “absurd” statement backed up by an argument.

The famous result of Banach and Tarski definitely counts as a paradox by this definition. They proved that it is possible to take a unit sphere (a ball with radius 1), divide it into five pieces, then by rotations and translations reassemble it into two unit spheres.

View original post 1,604 more words

WebGL Basics 3 – Rotating triangle

The Blog-o-Ben

We continue this pure WebGL tutorial with animation.


The previous post was dedicated to all the function calls necessary to render a simple triangle. In this post, we will animate this triangle and make it rotate around the three axes. The web page used in the previous post must be changed as following:

  • Addition of a mechanism to periodically refresh the canvas and manually control the rotation
  • Modification of the shader code to include a matrix-based transformation of vertices
  • Creation of a function used to pre-compute the transformation matrix

The part about the transformation matrix necessitates some basic linear algebra but should be understandable with high-school level mathematics knowledge.

Refactoring the code

First of all, in order to make the program more readable, we move some code around. The code of the shaders is placed at the beginning of the Javascript part:

Note that the vertex shader code above…

View original post 1,099 more words