Hi there! 👋 After that Jetbrains report I’ve decided to make a quiz and ask you about GoLang frameworks 😀 So, which HTTP framework do you use or recommend for usage?
public poll
Gin – 278
👍👍👍👍👍👍👍 54%
Other – 82
👍👍 16%
Echo – 65
👍👍 13%
FastHTTP – 38
👍 7%
Iris – 27
👍 5%
Beego – 23
👍 4%
Martini – 6
▫️ 1%
👥 519 people voted so far.
public poll
Gin – 278
👍👍👍👍👍👍👍 54%
Other – 82
👍👍 16%
Echo – 65
👍👍 13%
FastHTTP – 38
👍 7%
Iris – 27
👍 5%
Beego – 23
👍 4%
Martini – 6
▫️ 1%
👥 519 people voted so far.
👍1
Generally I don’t like aliases but in some cases they might be helpful 😀
#development #basics
https://codeburst.io/learn-how-to-create-custom-bash-commands-in-less-than-4-minutes-6d4ceadd9590
#development #basics
https://codeburst.io/learn-how-to-create-custom-bash-commands-in-less-than-4-minutes-6d4ceadd9590
Medium
Learn how to create custom bash commands in less than 4 minutes
In this article I will teach you how you can create custom shortcuts (aliases) for bash commands, and also how you can run multiple…
👍1
Hi there 👋 How to increase your GoLang application performance to more than 20x? Here is a list of tips, tricks and hacks which have been used for a 23x performance power! Within this article you will know more about:
- benchmarks and tracing;
- sometimes parallelism is not a perfect solution for each case;
- how to tune your app step-by-step and other interesting topics 🙂
Just open it and deep into GoLang performance refactoring!
https://medium.com/@val_deleplace/go-code-refactoring-the-23x-performance-hunt-156746b522f7?source=linkShare-b636419a57de-1532816321
- benchmarks and tracing;
- sometimes parallelism is not a perfect solution for each case;
- how to tune your app step-by-step and other interesting topics 🙂
Just open it and deep into GoLang performance refactoring!
https://medium.com/@val_deleplace/go-code-refactoring-the-23x-performance-hunt-156746b522f7?source=linkShare-b636419a57de-1532816321
A good reading list with a knowledge base about Golang, based on blog posts and Golang books. Inside of the link:
- 3 categories of stages: Beginner, Intermediate, Advanced;
- Common questions like “Why should you learn Go?” and “How to Write Go Code”
- Web, Concurrency, Code style, Testing and other GoLang related topics.
#language #development #basics
Add to bookmarks and enjoy the reading!
https://github.com/enocom/gopher-reading-list
- 3 categories of stages: Beginner, Intermediate, Advanced;
- Common questions like “Why should you learn Go?” and “How to Write Go Code”
- Web, Concurrency, Code style, Testing and other GoLang related topics.
#language #development #basics
Add to bookmarks and enjoy the reading!
https://github.com/enocom/gopher-reading-list
GitHub
GitHub - enocom/gopher-reading-list: A curated selection of blog posts on Go
A curated selection of blog posts on Go. Contribute to enocom/gopher-reading-list development by creating an account on GitHub.
👍2
100 lines of Go code for … HTTP(S) proxy! Take a look at fast and graceful proxy service based on standard Go http server and client packages 🙂
#development #practice
https://medium.com/@mlowicki/http-s-proxy-in-golang-in-less-than-100-lines-of-code-6a51c2f2c38c
#development #practice
https://medium.com/@mlowicki/http-s-proxy-in-golang-in-less-than-100-lines-of-code-6a51c2f2c38c
Medium
HTTP(S) Proxy in Golang in less than 100 lines of code
The goal is to implement a proxy server for HTTP and HTTPS. Handling of HTTP is a matter of parsing request, passing such request to…
Hello, there! One GoLang feature proposal about immutability is here 🙂
It’s a really interesting idea with pros and cons inside, it has a good explanation, use cases and examples for the following proposed changes: fields, arguments, variables, return values, methods reference types (Pointers, slices, maps, channels). This approach merits attention if you are interested in paths of GoLang development, so, have a good reading! 😉
#language #development
https://github.com/romshark/Go-1-2-Proposal---Immutability
It’s a really interesting idea with pros and cons inside, it has a good explanation, use cases and examples for the following proposed changes: fields, arguments, variables, return values, methods reference types (Pointers, slices, maps, channels). This approach merits attention if you are interested in paths of GoLang development, so, have a good reading! 😉
#language #development
https://github.com/romshark/Go-1-2-Proposal---Immutability
GitHub
GitHub - romshark/Go-1-2-Proposal---Immutability: A a Go 1/2 language feature proposal to immutability
A a Go 1/2 language feature proposal to immutability - romshark/Go-1-2-Proposal---Immutability
Hello, there! I would like to share with you one good comment about
https://github.com/golang/go/issues/25471#issuecomment-391906366
time.Sleep function and how it works in the Go Runtime:https://github.com/golang/go/issues/25471#issuecomment-391906366
GitHub
time: Sleep requires ~7 syscalls · Issue #25471 · golang/go
What version of Go are you using (go version)? go version go1.10.1 linux/amd64 Does this issue reproduce with the latest release? Yes (1.10.2). What operating system and processor architecture are ...
👍1
Ok, I’m online again so Happy New Year for everyone 🎈
The first article that I want to share this year is about channels design in GoLang, their structure and internal operations. Enjoy the reading!
#development #language
https://codeburst.io/diving-deep-into-the-golang-channels-549fd4ed21a8
The first article that I want to share this year is about channels design in GoLang, their structure and internal operations. Enjoy the reading!
#development #language
https://codeburst.io/diving-deep-into-the-golang-channels-549fd4ed21a8
Medium
Diving Deep Into The Golang Channels.
An “ins and out” of the internal implementation of the Golang channels and its related operations.
👍1
Hello, channel 👋
Did you know how DNS cache works? And did you know you can store your data there? A couple of days ago I found an article how DNS resolvers become cloud-based file storage 💾for you and would like to share it, so the article is here:
DNSFS. Store your files in others DNS resolver caches
#networks
https://blog.benjojo.co.uk/post/dns-filesystem-true-cloud-storage-dnsfs
Did you know how DNS cache works? And did you know you can store your data there? A couple of days ago I found an article how DNS resolvers become cloud-based file storage 💾for you and would like to share it, so the article is here:
DNSFS. Store your files in others DNS resolver caches
#networks
https://blog.benjojo.co.uk/post/dns-filesystem-true-cloud-storage-dnsfs
Hi all, we are hiring!
#relocation #fulltime
As you may have noticed, I’m a GoLang developer and this time I want to share new opportunities in my team and our company https://www.digitalgoodie.com 🙂
We’re growing up, and looking for new GoLang talents (actually, not only Go, we’re looking for Ruby and Frontend devs as well).
Location: Helsinki, Finland 🇫🇮
Position: Senior Backend/Fullstack developer
Salary: €4,000-5,000 before taxes (it’s a general range, depends on individual negotiation)
+ Relocation package (residence permit fees, tickets, etc)
We expect you to:
- Have a say when making tooling and architecture choices
- Help, coach and mentor your peers with your skills and expertise
- Know and understand the technologies you will be working on:
Golang, for the greatest and latest Microservices
Ruby, for understanding where we are coming from
React, Node and JSON at the level to be able to discuss with the front end developers
CI/CD principles, using Jenkins
K8S and Containers, at the level, to be able to do NoOps, with little or no assistance from Site Reliability Engineering
- Be experienced with at least a couple of backend, or full stack solutions and architectures
If you’re interested in, ping me @denniselite
#relocation #fulltime
As you may have noticed, I’m a GoLang developer and this time I want to share new opportunities in my team and our company https://www.digitalgoodie.com 🙂
We’re growing up, and looking for new GoLang talents (actually, not only Go, we’re looking for Ruby and Frontend devs as well).
Location: Helsinki, Finland 🇫🇮
Position: Senior Backend/Fullstack developer
Salary: €4,000-5,000 before taxes (it’s a general range, depends on individual negotiation)
+ Relocation package (residence permit fees, tickets, etc)
We expect you to:
- Have a say when making tooling and architecture choices
- Help, coach and mentor your peers with your skills and expertise
- Know and understand the technologies you will be working on:
Golang, for the greatest and latest Microservices
Ruby, for understanding where we are coming from
React, Node and JSON at the level to be able to discuss with the front end developers
CI/CD principles, using Jenkins
K8S and Containers, at the level, to be able to do NoOps, with little or no assistance from Site Reliability Engineering
- Be experienced with at least a couple of backend, or full stack solutions and architectures
If you’re interested in, ping me @denniselite
Naveo Commerce
Digital Goodie & Maginus Combine - Naveo Commerce
Digital Goodie and Maginus have combined to form Naveo Commerce | Retail eCommerce experts with skills in Online Grocery & Warehousing
Errors in Go:
From denial to acceptance
Learn how to stop worrying and love error handling in Go. Author of Overmind and imgproxy describes his journey through all five stages of Kübler-Ross model—from denial to acceptance—as he went deeper into the language, and shares his favorite patterns for dealing with errors in Go code.
#development #language
https://evilmartians.com/chronicles/errors-in-go-from-denial-to-acceptance
From denial to acceptance
Learn how to stop worrying and love error handling in Go. Author of Overmind and imgproxy describes his journey through all five stages of Kübler-Ross model—from denial to acceptance—as he went deeper into the language, and shares his favorite patterns for dealing with errors in Go code.
#development #language
https://evilmartians.com/chronicles/errors-in-go-from-denial-to-acceptance
evilmartians.com
Errors in Go: From denial to acceptance—Martian Chronicles, Evil Martians’ team blog
Practical advice on getting the most out of handling errors "the Go way" from the creator of imgproxy and Overmind.
One more introduction to Go: Why and how to write good Go code.
Author: Francesc Campoy,
VP of Product & Developer Relations
Developer Advocate at Google, Go team, Google Cloud platform
https://speakerdeck.com/campoy/an-introduction-to-go-cern
Author: Francesc Campoy,
VP of Product & Developer Relations
Developer Advocate at Google, Go team, Google Cloud platform
https://speakerdeck.com/campoy/an-introduction-to-go-cern
Speaker Deck
An Introduction to Go (CERN)
A three-parts talk, each of one hour, covering the basic aspects of Go including type system, concurrency, standard library, and tooling.
There was a…
There was a…
Hello, channel. Recently I’ve played with concurrency data processing in go: let’s say how to split a bunch of data to 1,2...N pieces and process it concurrently and then once everything is done continue normal execution. For those types of issues I used `channels` before and tried to design my own solution every time. But somehow, suddenly, I found a good explanation of how to use `sync.WaitGroup` and it looks like a charm! It’s not a new feature, really easy to use, but by some reason I’ve never tried to use it for some reason 😀 So here is an article:
https://tutorialedge.net/golang/go-waitgroup-tutorial/
and a short example of how it could be ▶️ https://gist.github.com/denniselite/b9c62ee0366d3f63f9f6015a68af1db3
https://tutorialedge.net/golang/go-waitgroup-tutorial/
and a short example of how it could be ▶️ https://gist.github.com/denniselite/b9c62ee0366d3f63f9f6015a68af1db3
TutorialEdge.net
Go WaitGroup Tutorial
In this tutorial, we'll be looking at how you can leverage WaitGroups within your Concurrent Go Applications
If you feel like you mastered Go, you might want to expand your skillset. Guys from @thefrontend share a lot of useful tips and tricks, inspirational UI/UX, news and throw occasional quizzes around web and mobile dev for you to participate!
Have a quick look🔥
t.iss.one/thefrontend
Have a quick look🔥
t.iss.one/thefrontend
Telegram
TheFrontEnd🔥
📝 Articles
🗞 News
👓 Tutorials
🤔 UI/UX thoughts
on front end💡 mobile📱 and web dev 🖥
Admin: @masant1
🗞 News
👓 Tutorials
🤔 UI/UX thoughts
on front end💡 mobile📱 and web dev 🖥
Admin: @masant1
A quite interesting proposal was raised last month regarding error handling in Go:
The try built-in function takes n+1 arguments (where n may be zero) where the last argument must be of type error. It returns the first n arguments (if any) if the (final) error argument is nil, otherwise it returns from the enclosing function with that error. For instance, code such as
can be simplified to
Check it out:
https://github.com/golang/go/issues/32437
Full proposal description is located here: https://github.com/golang/proposal/blob/master/design/32437-try-builtin.md
The try built-in function takes n+1 arguments (where n may be zero) where the last argument must be of type error. It returns the first n arguments (if any) if the (final) error argument is nil, otherwise it returns from the enclosing function with that error. For instance, code such as
f, err := os.Open(filename)
if err != nil {
return …, err // zero values for other results, if any
}
can be simplified to
f := try(os.Open(filename))
Check it out:
https://github.com/golang/go/issues/32437
Full proposal description is located here: https://github.com/golang/proposal/blob/master/design/32437-try-builtin.md
GitHub
Proposal: A built-in Go error check function, "try" · Issue #32437 · golang/go
Proposal: A built-in Go error check function, try This proposal has been closed. Thanks, everybody, for your input. Before commenting, please read the detailed design doc and see the discussion sum...
Unrelated to GoLang but it’s still interesting to get familiar with https://link.medium.com/60H2RCl8OY
Medium
Drawing the line for “don’t roll own crypto”
This post, just like the most of my other posts, was triggered by a tweet. In https://twitter.com/Jogenfors/status/969566190858326022…
Golang 1.13 has been released last week! 🚀
Feel free to check the updates by the link:
https://blog.golang.org/go1.13
In short, there is a list of major changes:
- The go command now downloads and authenticates modules using the Go module mirror and Go checksum database by default
- Improvements to number literals
- Error wrapping
- TLS 1.3 on by default
- Improved modules support
PS In my point of view, Error handling is one of the most important syntax changes, so I’d just want to highlight it here:
The error wrapping support follows the initial proposal described https://go.googlesource.com/proposal/+/master/design/29934-error-values.md, it adds a new Wrapper() interface:
Also, to support wrapping,
Thanks for your attention 🙂
PPS Given the summer is gone, I’ll try to post more news and interesting things to the channel in the future 🙂
Feel free to check the updates by the link:
https://blog.golang.org/go1.13
In short, there is a list of major changes:
- The go command now downloads and authenticates modules using the Go module mirror and Go checksum database by default
- Improvements to number literals
- Error wrapping
- TLS 1.3 on by default
- Improved modules support
PS In my point of view, Error handling is one of the most important syntax changes, so I’d just want to highlight it here:
The error wrapping support follows the initial proposal described https://go.googlesource.com/proposal/+/master/design/29934-error-values.md, it adds a new Wrapper() interface:
An error that wraps another error should implement Wrapper by defining an Unwrap method.
type Wrapper interface {
// Unwrap returns the next error in the error chain.
// If there is no next error, Unwrap returns nil.
Unwrap() error
}
Also, to support wrapping,
fmt.Errorf now has a %w verb for creating wrapped errors, and three new functions in the errors package ( errors.Unwrap, errors.Is and errors.As ) simplify unwrapping and inspecting wrapped errors.Thanks for your attention 🙂
PPS Given the summer is gone, I’ll try to post more news and interesting things to the channel in the future 🙂
blog.golang.org
Go 1.13 is released - The Go Blog
Go is an open source programming language that makes it easy to build simple, reliable, and efficient software.
Quite interesting reading about versioning principles in Go and how the team came up with Go modules in the end: https://research.swtch.com/vgo-principles
>>> This blog post is about how we added package versioning to Go, in the form of Go modules, and the reasons we made the choices we did. It is adapted and updated from a talk I gave at GopherCon Singapore in 2018
>>> This blog post is about how we added package versioning to Go, in the form of Go modules, and the reasons we made the choices we did. It is adapted and updated from a talk I gave at GopherCon Singapore in 2018
YouTube
Opening keynote: Go with Versions - GopherConSG 2018
Speaker: Russ Cox
It’s time to add versioning to the Go toolchain, the Go ecosystem, and Go workflows. Go 1.11 will add opt-in support for package versions. This talk will explain the background, motivation, and rationale for the new version support and…
It’s time to add versioning to the Go toolchain, the Go ecosystem, and Go workflows. Go 1.11 will add opt-in support for package versions. This talk will explain the background, motivation, and rationale for the new version support and…
Serverless tech stack is becoming more and more popular, so, in case you never tried AWS Lambda functions together with Go 💙 I’d suggest you take a look at the article: this quite simple reading allows you to get the idea of the technology.
https://read.acloud.guru/serverless-golang-api-with-aws-lambda-34e442385a6a
https://read.acloud.guru/serverless-golang-api-with-aws-lambda-34e442385a6a
A Cloud Guru
Blog (Frontpage)
Stay up to date on what's happening in technology, industry insights, technical skills development and all things cloud learning, and cloud certifications.