Product & Tech Blog

search
expand_more
expand_more

Speeding up fonts for the web

Custom fonts for the web are a bit of a pain. Browsers support different kinds of font formats, they can be relatively heavy and the rendering can vary between operating systems. Luckily, Google Web Fonts have come along and helped out, providing free and open-source fonts that is easy to

Fat Models, Chubby Routes, Super-Skinny Controllers

Some of you have probably heard the “Fat models, skinny controllers” mantra with regards to developing MVC applications. Recently we figured out that the routes (not part of MVC, but a crucial part to the application nonetheless) could take some weight off the controllers. Since we use Zend Framework (ZF)

Building Tree Structures in PHP Using References

See how you can use recursion in PHP to create a tree structured array with a single pass.

Unit testing with streams in PHP

Using the memory/temporary stream provided by php:// stream wrapper you  can create a stream with read and write access directly to RAM or to a temporary file. This gives you the possibilty to write unit tests that does not rely on a specific file, resource or stream, but rather on

Speeding up SQLite insert operations

I’ve been working on an Android application recently which uses an SQLite database to store and search about 6000 rows of data, and the data is updated from a webservice periodically. It would seem like a fair assumption to think the retrieval of data from the webservice would be the

Mocking the file system using PHPUnit and vfsStream

This article is about how to mock the file system when writing unit tests, and it will be rather code-heavy. If you are not familiar with the concept of unit testing this article might not be the best place to start. There will be other articles regarding unit testing on

Continuous Integration at VG Nett

At VG Nett we use Continuous Integration (CI) for some of our projects. This article will tell you why we do it and how we do it. At the end you will hopefully want to take advantage of CI as well.