Such an exceptional Go

 3r31068. 3r3-31. 3r31054. Recently, drafts of the design of a new error handling in Go 2 were published. It is very pleasing that the language does not stand in one place - it develops and becomes prettier with every year by leaps and bounds. 3r3-1057. 3r3-1055.  3r31068. 3r31054. Only now, while Go 2 can only be seen on the horizon, and it’s very painful and sad to wait. Therefore, we take matters into our own hands. A little code generation, a bit of work with ast, and a flick of the wrist turn into panic, turn into elegant exceptions! 3r3-1057. 3r3-1055.  3r31068.
+ 0 -

Poststressing stat without nerves and strains

Poststressing stat without nerves and strainsA couple of years ago, trying to figure out another problem in the performance of postgrass, I had to dig into the postsurgical statistics. Digging into the views and functions, I found myself thinking that working with what is defaulted is quite inconvenient.
And in fact, in postgres is a pretty large pile of metrics, all of them are presented in the form of representations and functions. On the one hand it's very convenient, wrote SELECT and got the data. On the other hand, such a periodical writer is slightly tiring.
At the same time, I needed to not just look at some status one-time...
+ 0 -

Golang testing outside the gotour

Golang testing outside the gotour  
Nobody likes to write tests. Of course I'm joking, everyone adores writing them! As prompted by timlids and HR, at the interviews the correct answer is - I love and write tests. But suddenly you like to write tests in another language. How do I start writing test-covered code on go?
To understand with sql.Db it is possible on a dock. Let's take a slightly more interesting example, in which orm for -
func DbListener (db * gorm.DB) {
user: = User {}
transaction: = db.Begin ()
transaction.First (& user, 1)
transaction.Model (& user) .Update ("counter", user.Counter + 1)
transaction.Commit ...
+ 0 -

Java vs GO. Testing a large number of users

Java vs GO. Testing a large number of users


The micro-service architecture allows you to choose between technologies and programming languages ​​when writing REST api services. Which language is best to choose for writing a REST api application to provide more simultaneous users with a fast and stable response on the same hardware? To answer this question it would be nice to see the difference in the performance of the same application written in Java and GO.


All the results presented in this experiment are a particular example of the use of Java and GO and should not be used to describe the performance ...[/h][/h]
+ 0 -

SDKMAN - dead, long live SDKMAN

SDKMAN - dead, long live SDKMAN
TL; DR: SDKMAN CLI will be rewritten to Golang
Six years have passed since we released the first version of SDKMAN. In earlier versions, it was known as GVM and was used to manage Groovy and related tools. It soon became apparent that it should not be limited to the Groovy ecosystem, and could also be applied to other SDKs on the JVM. At this point, the GVM was renamed to SDKMAN. Although the name has changed, the main technology has remained the same.
Just as GVM once outgrew its name, SDKMAN outgrew the technology on which it was built. Despite the fact that backend services were replaced ...
+ -1 -

What's inside the XGBoost, and where does Go

What's inside the XGBoost, and where does GoIn the world of machine learning, one of the most popular types of models is the decision tree and ensembles based on them. Advantages of trees are: ease of interpretation, there are no restrictions on the type of initial dependence, soft requirements for the size of the sample. Trees also have a major drawback - the tendency to retrain. Therefore, almost always trees are united in ensembles: a random forest, gradient boosting, etc. A complex theoretical and practical task is to compose trees and combine them into ensembles. In the same article, we will consider the procedure for forming predictions ...
+ 0 -

Not without panic in Go

Hello, dear readers of Habrahabra. While discussing a possible new design of error handling and debating the advantages of explicit error handling, I propose to consider some peculiarities of errors, panics and their recovery in Go, which will be useful in practice.
Not without panic in Go
Errors are the values ​​ , and the values ​​can operate and program different logic.
In the standard Go library, there are two functions that you can use to create errors. Function errors.New well suited to create simple errors. Function ...
+ 0 -

Go ??? was unveiled - WebAssembly and Native modules

Go ??? was unveiled - WebAssembly and Native modulesThis Friday the release of Go ???. The key release stuff is experimental support for WebAssembly, as well as a new concept of Modules, which are intended to become the standard for code distribution. - compile Go into WASM, and deploy to CDN into one command.
Now let's pass to the most important, in my opinion, in this release - the system of Modules. About these modules, conversations have already begun quite a long time. They were known to the world as Vgo . Modules have even been discussed in ...
+ 0 -

Typegram - Zen blog platform

Hello Habr. I decided to show you engine , which I slowly develop. This is a blog platform, very close to the medium and similar projects.
Basic features:
Publications, comments, favorites, subscriptions, notifications, ratings, voting.
Minimalistic, textual design:
Typegram - Zen blog platform test site .
The service automatically separates users by language, directing Russian-speaking users to the Russian subdomain, and English-speaking users to English. The separation is essentially implemented at the content level. True interface is available only in English. Each subdomain has its own database ...
+ 0 -

What's new in GoLand 2018.2

+ 0 -