One of the most commonly noted upsides of Go is the compilation to a single binary. This makes deployments and dependency requirements easier to handle compared to other languages that require to install in the target system the individual dependencies which can potentially conflict with other software running or require to install duplicated packages.
However, sometimes Go programs not always can be reduced to a single file. Assets like templates or images are not included as part of the binary and they need to manage and deployed independently. …
Go packaging and distribution has been always a problem. Since the earliest versions, Go packaging relies on a directory in the machine where all the code is placed. This directory, stored in a global variable named
$GOPATH, it doesn’t only have your source code, but also all the dependencies it uses. Dependencies are added and pulled from control version systems like git using the command
go get, and stored for all the projects.
This has several issues: you pull only one global version of the dependency which is shared by all the projects, and because it uses the URL of the repository as an identifier, you cannot have different versions of the same dependency. …
Today, discussing at Blue Harvest the new article of Jay Rajani, I found out that the new improvements in usability of Git 2.23.0 are not much spread yet. Releases in established well-known open source projects like the Linux kernel, git or vim usually do not bring much new hot stuff for the common folks, but the changes in the last release of git are really something.
Probably you have heard about the
git checkout command. This is a rhetorical question of course, because if you have ever used git, you must have realised that it is literally everywhere.
Last month I had the chance to go to the JS Conf Belgium 2019. The conference was in the city of Brugge, which in total was about 3 hours travel by train from Amsterdam. The venue was located just in front of the station at Howest RSS 1, one of the buildings of the Hogeschool Howest. The location was big but only two rooms were set up for the talks, placed on different floors separated by narrow corridors. There were no sponsors or business stands in the venue, so it was essentially the talks.
This was more an annoyance (I enjoy visiting the business stands during breaks) than an issue. The talks were good and varied, and only a small minority were a blatant marketing stunt. …