Home » Tag Archives: Go

Tag Archives: Go

godep Dependency Management in Go

software-development-2-logo

Go differs from many other languages in that a wide range of dependency management methods and tools exist for it. The approach endorsed by the Go team involves vendoring dependencies within the project folder and modifying the the import statements to support the new location. Godep works differently than the endorsed approach… Instead of requiring changes to be made to ...

Read More »

My Thoughts on Go

software-development-2-logo

Meh I have been working on a project that needs to run as small-footprint native code. I’ve been doing C since 1980 and have written a fair number of commercial packages in C, C++, Objective-C and blends among them. But after a couple of decades doing Java and other managed languages, I no longer want to have to think about ...

Read More »

Building Minimal Docker Containers for Go Applications

docker-logo

There are several great official and community-supported containers for many programming languages, including Go, but these containers can be quite large. Let’s walk through a comparison of methods for building containers for Go applications, then I’ll show you a way to statically build Go apps for containerization that are extremely small. Part One: Our “app” We need something to test ...

Read More »

Creating Fakes in Go with Channels

software-development-2-logo

Fakes are a common testing technique that involve creating a bare implementation of an interface that you can use in testing. They usually allow you to check how they were used so you can ensure the behavior of the object under test. Normally, fakes have storage and retrieval methods, but in this post we’re going to explore using Go’s channels ...

Read More »

Using Go to build a REST service on top of mongoDB

mongodb-logo

I’ve been following go (go-lang) for a while now and finally had some time to experiment with it a bit more. In this post we’ll create a simple HTTP server that uses mongoDB as a backend and provides a very basic REST API. In the rest of this article I assume you’ve got a go environment setup and working. If ...

Read More »

Fault Tolerance in Go

software-development-2-logo

In distributed systems, failure is inevitable. Eventually, some service will become bogged down and consequently won’t respond quickly enough or, worse, a service will simply die. Services relying on a degraded (or dead!) service will naturally become affected and potentially cascade instability throughout the system, unless all services are properly built with isolation and in mind. Netflix experienced the vexation ...

Read More »

Go for Java Programmers: Simple Types

software-development-2-logo

Part of the Go for Java Programmers series Before we get into custom types, and Go’s version of object-orientation, let’s cover the simple types that come out of the box.  Full details can be found in the (surprisingly readable) language spec, but here are some highlights that are important from a Java programmer’s perspective.           Booleans ...

Read More »

An Introduction to Go – Elegance with Power and Simplicity

software-development-2-logo

Whilst I usually try to stick with only `bread-butter` languages (i.e. php, python, java & C#), my last project involved the Google appengine web app written in Google’s own flagship Go language. Being a polyglot who is always intrigued by new languages, I couldn’t help being curious about how it was coding with Go, hence I took on the project. ...

Read More »

Go for Java Programmers: Control Structures

software-development-2-logo

Go (Golang) has only three basic control structures.  However, each of them are significantly more versatile than their Java counterparts. If The if statement should be immediately recognizable.  In its basic form it appears the same as in Java, just without parentheses around the condition:         ... if err != nil { fmt.Println("An error occurred!") } ... ...

Read More »

Go for Java Programmers: Packages, Functions, and Variables

software-development-2-logo

Go’s Familiar Syntax Due to their shared heritage in the C programming language, Go (aka Golang) code should be fairly recognizable to a Java developer.  Here is the canonical “Hello world” program, which you can execute and modify through your browser on the Go Playground site:           package main import "fmt" func main() { fmt.Println("Hello world") ...

Read More »
Want to take your Java Skills to the next level?
Grab our programming books for FREE!
  • Save time by leveraging our field-tested solutions to common problems.
  • The books cover a wide range of topics, from JPA and JUnit, to JMeter and Android.
  • Each book comes as a standalone guide (with source code provided), so that you use it as reference.
Last Step ...

Where should we send the free eBooks?

Good Work!
To download the books, please verify your email address by following the instructions found on the email we just sent you.