To truly understand what it means to be ‘object-oriented’ you need to look back at the origination of the concept. The first object oriented language, simula, emerged in the 1960s. It introduced objects, classes, inheritance and subclasses, virtual methods, coroutines, and a...
The following article targets an audience with interest in software design, protocol buffers or computer programming in general, the article is fairly technical and assumes some knowledge in programming concepts.
This article covers Protocol buffers version 2. There is a new vers...
Why Are We Doing This? GopherCon was an amazing experience for many of us who had the privilege to go. We met so many great people.
Introduction
My business partner Ed asked me what would happen if a struct and an embedded field both implemented the same interface. We asked ourselves two questions:
Would the compiler throw an error because we now had two implementations of the interface? If the compiler accep...
It’s a Wrap Gophercon 2014 is in the books. In the end, we had 700 attendees, and it looks to us like everyone enjoyed the experience.
I found that it’s pretty hard to have a project with high test coverage and fast build… if the tests are slow, people will feel the need to skip them to speed up the build, and will probably write less tests than they should, afraid that the build will became even sl...
I’m pleased to announce the coordinated release of drivers in 9 languages in preparation for the release of MongoDB 2.6. This is the largest driver release in the history of MongoDB, both in terms of code changes as well as in terms of drivers released. Official Drivers for C,...
Introduction
One of the more unique features of Go is how the language implements constants. The rules for constants in the language specification are unique to Go. They provide the flexibility Go needs at the compiler level to make the code we write readable and intuitive while...
Gogs: When you’re deploying a binary, you’re doing it Right. This post is published corresponding to the Gogs - Go Git Service v0.2.0 release.
Go development environment for Vim The reason for creating vim-go Go has a very versatile toolchain and commands that makes Go programming fun. One of the famous tools is gofmt, which automatically reformats the code according to some predefined rules.