Posts

12 October / / go

Listening on sockets allows an application to connect to other devices. We use this technique daily visiting websites, or connecting to a series of services via the HTTP(s) protocol. Go comes with a standard library to manage HTTP connections, but, from time to time, that’s not the most effective way to exchange data between two or more systems. This post will show you how to listen on sockets handling multiple connections.

10 October / / go

Multi-threading has always been the novice programmer’s scarecrow, and even professionals might have never really written asynchronous code before, for a number of reasons: first of all because it’s more complicated to think in an asynchronous world! Golang has multi-threading in its heart, and this is a big deal because it simplifies a number of things.

04 October / / carreer
First and foremost I consider myself a software architect and engineer. My professional carreer let me focus, from a programming point of view, on web technologies, mostly the common PHP-JS stack (including obviously HTML and CSS). At least here in Italy most of the startups live on PHP and NodeJS, while other structured companies prefere Java and .NET technologies, which I all tried in my professional experience. Today I’m going to write a couple of lines on why I’d really like to go straight with Golang, or better why I’m seriosuly considering to switch to a new programming language for my personal projects and possibly affecting my job applications.
31 December / / go
Most of the programming languages support multiple ways of handling errors, for example try-catching, value-checking, popping errors in the stack. Learning go I found the approach of this language is way different: you can let a function return an error (and eventual result(s)), thus not throwing any kind of error, and not returning “special values” like, for example, PHP’s json_decode (which can return true, false, NULL, stdClass or even an array!