Go is compiled and python is interpreted which makes go much faster when running than python. The go compilation is fast as well and it will download the dependencies for you when needed. A benefit of the compilation (static checking) is that the code is extensively checked before execution and only logical errors are left. With python, a program will crash or generate bogus result at runtime and it might not be trivial to find the cause. For instance, when you make a typo in a field name, python will create a new field with that name without telling you. The program will then not run as expected and might generate bogus result or result in a crash. The crash, or an exception, will signal that there is a problem, but the real cause might be difficult to locate if there are many lines of code. Go code is a bit more verbose than python to help the checking at compilation. Python has a long evolution history that changed the language, packaging etc. which is not always coherent or consistent/compatible. Go ensures backward compatibility and changes are slow, coherent, and minimal. Python has multiple GUI libraries while Go has only a very limited set of choices. Python has thus incredibly powerful GUI tools like Jupiter and nice graphics libraries. In summary, for system administration where you only need small scripts that are easy to verify manually and debug, python is trump. For longer and more complex tasks, or when you need bug free code fast, Go is your best friend. When you need an app with GUI, prefer python, but this is changing with go packages like Fyne and GIO. The best would be for you to know both and use the most appropriate language for the various use cases. Answer from chmikes on reddit.com
🌐
Reddit
reddit.com › r/golang › go vs. python: what's the difference, and is go a good choice for system administration?
r/golang on Reddit: Go vs. Python: What's the difference, and is Go a good choice for system administration?
September 23, 2023 -

I'm interested in learning Go. I'm wondering what the difference is between Go and Python, and what are the advantages of Go over Python. I'm also wondering if I can implement data structures and automate jobs of linux with Go.

And what are some best resources for learning go
Thanks in advance for your help!

Top answer
1 of 22
83
Go is compiled and python is interpreted which makes go much faster when running than python. The go compilation is fast as well and it will download the dependencies for you when needed. A benefit of the compilation (static checking) is that the code is extensively checked before execution and only logical errors are left. With python, a program will crash or generate bogus result at runtime and it might not be trivial to find the cause. For instance, when you make a typo in a field name, python will create a new field with that name without telling you. The program will then not run as expected and might generate bogus result or result in a crash. The crash, or an exception, will signal that there is a problem, but the real cause might be difficult to locate if there are many lines of code. Go code is a bit more verbose than python to help the checking at compilation. Python has a long evolution history that changed the language, packaging etc. which is not always coherent or consistent/compatible. Go ensures backward compatibility and changes are slow, coherent, and minimal. Python has multiple GUI libraries while Go has only a very limited set of choices. Python has thus incredibly powerful GUI tools like Jupiter and nice graphics libraries. In summary, for system administration where you only need small scripts that are easy to verify manually and debug, python is trump. For longer and more complex tasks, or when you need bug free code fast, Go is your best friend. When you need an app with GUI, prefer python, but this is changing with go packages like Fyne and GIO. The best would be for you to know both and use the most appropriate language for the various use cases.
2 of 22
71
Here is my (rightfully) salty take: If you only need to build up a quick script, then Python is the way to go. Anything more serious, only use Go. Recently I had an opportunity to remember why I quit Python in the first place. The language is a mess. Python libraries are an even bigger mess. The pain of not knowing what will break is just painful. And when it does break, it's more painful to fix. For me at least, writing apps using python, even while doing it as a part of a course, was like shooting myself in the face. I don't know how Python developers sleep peacefully at night. It's an absolute mess. I would do everything in Go if possible. I may have to write more verbose code, but it isn't as painful as the app blowing up on my own face in an unexpected time. I would rather write if err != nil {} any day of the week than deal with Python code.
🌐
Reddit
reddit.com › r/golang › should i choose golang or python for backend development?
r/golang on Reddit: Should I choose Golang or Python for backend development?
July 11, 2024 -

I am not liking JS/TS with express or Nest for backend. I think its better to use it for frontend only.

I have been thinking to opt python for backend like writing APIs and my future plan is to work on cloud and data engineering, probably more cloud. I have seen many videos on YT and read a few posts on reddit but its not clear whether I should choose python or golang based on my future plans. I have no plans for AI btw.

Please share your thoughts on this as I am very confused. Also I believe that if someone is comfortable with golang, he/she should be doing golang and same goes for python. I am comfortable with both. I tried golang and i felt comfortable.

I need to decide based on the market needs and future requirements in the industries and stick to it, not roaming around for days on what to choose. It feels so depressing not land on a language for sure.

Few people says the companies are moving from python to golang, python is much slower, you need imported libraries and in golang these are not an issue. Golang is better in terms of building cloud applications blah blah….

What should I do? Maybe after a few discussions and guidance from the well experienced developers I will be confident on either python or golang.

🌐
Reddit
reddit.com › r/golang › golang vs python for ai solutions: how do you decide?
r/golang on Reddit: Golang vs Python for AI Solutions: How Do You Decide?
December 12, 2024 -

Hi everyone,

I’m looking for advice on how to choose between Golang and Python when starting new projects, especially for prototyping to validate ideas.

I mostly work as a backend developer, building CRUD-based systems with Golang, but I’ve recently started exploring AI solutions. From what I’ve seen, Python seems to have much wider adoption in the AI space. It feels easier to use Python for prototyping because of its rich ecosystem of libraries and tools specifically designed for AI and data workflows.

In contrast, with Golang, it seems like you often have to reinvent things that are already available in Python's libraries and ecosystem. Also, most of the Golang use cases I’ve seen are more on the infrastructure side—SRE/Ops teams often use Golang for automation tasks and infrastructure-related work.

Additionally, many AI projects rely heavily on data, and Python again seems to shine in this area with its mature ecosystem for data processing.

Am I understanding this correctly, or am I overlooking something about Golang's potential for AI development? How do you decide which language to use when starting on AI projects, especially for prototyping or building data-intensive systems?

🌐
Reddit
reddit.com › r/devops › python or golang for long term?
r/devops on Reddit: Python or Golang for Long term?
April 30, 2024 -

I have 3 years of overall experience in Software and IT Engineering.

For automation, I have used Shell Scripting so far. But Now I want to learn a new language for Automation tasks and Software Development too.

The project I'm working on uses Golang extensively but the leads have given me free hand to explore any language I want.

My Initial thoughts were to learn Python, keeping in mind future career aspects, but Golang is used in my Project. Since I have planned to stay here for next 2 years, I'm confused which language to choose at this point of time.

Your opinions/suggestions/advices are most welcome!

🌐
Reddit
reddit.com › r/golang › how good is go as a first language over python?
r/golang on Reddit: How good is GO as a first language over Python?
April 15, 2023 -

I am doubting between Go, Python and Java as a first language. Looking for pure programming + web development later.

Looking for easy, concise and future proof language.

Top answer
1 of 22
30
I'm going to deviate from the other comments here and say that Go is a fine first language to learn (well, at least in theory). It's got a few things going for it: Super easy setup (literally just download VSCode with the Go extension and you're done) It teaches you the right way to do OOP instead of every other OO language out there where the first thing they teach you is inheritance and as soon as you learn real OO design you realize inheritance it always bad. It teaches you pointers without the footguns that C/C++ give you with memory management/pointer arithmetic/array-pointer-duality. It's very readable and so it's good for developing taste in programming. But it's still not great for the very first language. 99% of the tutorials for Go are for people already familiar with programming and won't cover the fundamentals or go into the CS aspects that would help a lot. You're just expected to know what a method is and how it's different than a function and how interfaces enable dynamic dispatch of methods. You're just expected to understand encapsulation and how exports are your visibility modifiers. You're just expected to know how to turn Go's primitive types into data structures and what kinds of algorithms work with them. Really that's the main reason. There's tons of "intro to programming" / "intro to CS" stuff for C, Java, Python, Basic, and even Lisp, because those are the languages schools have typically used to teach programming and CS topics. Go doesn't have a ton of those kinds of courses.
2 of 22
28
I would say no because... There are not alot of junior jobs in Go, and Go does not use common OOP patterns that are used in many other languages. Alot of Go patterns do-not carry over to other languages, or they do, but other languages don't use them. Those things combined will make it difficult to find a job. Learning a more traditional object oriented language will yield a wider job market net to cast.
🌐
Reddit
reddit.com › r/learnpython › why did you choose python over golang for backend development?
r/learnpython on Reddit: Why did you choose Python over Golang for backend development?
July 27, 2024 -

I would appreciate it if you could explain why you chose Python over Go for backend development. I want to start learning one of them, either Python (Django, FastAPI) or Go (its lovely standard library and some of its frameworks), and I don't know which one to choose.

🌐
Reddit
reddit.com › r/devops › python or go
r/devops on Reddit: Python or go
September 1, 2024 -

I know this is an old question or debate

Here is the situation

I am an experienced .net developer who wanna switch to devops I have some certifications on azure but I am trying to expand etc.

I know it is possible to use powershell and azure for azure stack but I am currently going through kodekloyd and I am at the choosing between go and python.

Basically my heart wants go:) but somehow I think python will help me land a job easier.

You might think “you are an experienced dev just learn both “ but boy I am also an expat dad whom doesn’t have extra 2 minutes without planning.

So If you need to choose in 2024 as jr devops person which way would you go

Find elsewhere
🌐
Reddit
reddit.com › r/golang › when you guys use python or go ?
r/golang on Reddit: When you guys use Python or Go ?
January 10, 2021 -

Hi friends,

I really like both Python and Go.

Python is good for me for its simplicity and the reduced time it requires to develop applications.

Also, I really like Go for it’s powerfulness, because it’s a typed language and so on.

The most I develop is micro-services (mostly APIs) running into containers and deployed on Kubernetes.

I wanted to know, you guys when you use Python over Go and vice versa.

Thank you !

🌐
Reddit
reddit.com › r/golang › why are people ditching python for go?
r/golang on Reddit: Why are people ditching python for go?
July 17, 2014 -

I'm just getting into python and so far I like it, I've used other languages over the years in small amounts but I wanted to settle on one, i was tossing up between Java and python.

So now that I'm reading more about python I'm seeing more and more post about ditching python and going go. It seems go is faster, smarter and all round more efficient. So I'm not sure if I should jump ship before getting to into python.

I don't really have an end goal for what i want to make but i am interested in web apps and web front ends and from what I'm reading, go's strength is more the back end server stuff.

So my question is, should I jump ship? Is go versatile? Is there a large support network like pythons? Is there anything wrong with python?

. .

EDIT: Thanks everyone for the interesting read, I'm more confused now :) I think I will stick with Python for now, there is more training material out there and larger community. Go does seem like a brilliant "new" language, but for web apps and web page front ends, python does still seem to be more mature. Thanks

Top answer
1 of 5
33

As a python programmer by trade, here are three reasons not to use python:

  • Dynamic compilation can result in errors that exist in code, but are not detected:

This is perfrectly valid python:

def junk():
  afdfaf
  asdfd
  fdafd / dsfsaf()

Of course if you add junk() to the end, it will fail with errors about missing functions and variables; but compiled languages like go don't suffer from this problem.

  • CPython really is very slow.

Very specifically, procedures that are invoked multiple times are not optimized to run more quickly in future runs (like pypy), they always run at the same slow speed. So operations like populating matricies and doing matrix maths are really slow. So slow in fact that future version (3.5? See http://legacy.python.org/dev/peps/pep-0465/#discussions-of-this-pep) will have an explicit operator for this.

You can get around this by calling c libraries, but it's irritating as a developer to write something in python, realize its too slow, and then have to rewrite it again in C. Very. Very. Irritating.

  • Python has a terrible distribution story.

Virtualenv, buildout, pip, easy_install, distribute: they all boil down to the same thing; it's really hard to ship all your python dependencies onto a new system.

...and even then, if you have a perfectly setup version pin for every library, it can still break when (for example) freetype upgrades and your old pinned version of Pillow doesn't compile any more. Oh? You had some dependencies on the old version of pillow? Upgrade all the things!

There are a few 'binary builders' for python like pyinstaller, cx_freeze; but they're pretty rubbish practically speaking. Even the best showcase of these tools ends up shipping simple GUI apps like Calibre that are hundreds of megabytes in size.

Let's not even talk about writing something in py3 and getting half way in to discover a core dependency hasn't been ported yet.

.

Go addresses those points pretty sharply; good distribution story with static binaries; repeatable build process (abit hindered by the same issues as python when you bind a c library; but at least you can statically link C libraries into go binaries), and it's really pretty fast.

So is it worth abandoning python?

Probably, professionally, not really; especially if you're looking at web development.

The ecosystem for python is really strong, and there are some really decent web tool kits like flask, pyramid, some great libraries like sqlalchemy, and a lot of support for it from the academic community for stuff like natural language processing.

...but would I build a GUI app or a game in it instead of Java or Go if I had to start tomorrow?

Absolutely fucking not.

2 of 5
16

There is nothing wrong with python except maybe that it is not staticly typed and might be a little slow (depends on the use case).

Go is the new kid on the block, and while Go is nice, it doesn't have nearly as many libraries as python does.

Personally I prefer Go the language, but when it comes to stable, mature third party packages, it can't beat python at the moment.

🌐
Reddit
reddit.com › r/golang › go vs python, employability for a grad / junior dev?
r/golang on Reddit: Go vs Python, employability for a grad / junior dev?
May 30, 2023 -

There are a significantly less jobs in Go than in Python and not many at a junior level. But is it a niche that could be tapped or should I just go with python at my level?

Some more context: I am looking for work as a grad (in Ireland). I'd been focused on getting into more on the front end of things. But, I'm noticing that the jobs available mostly seem to be full stack / backend. I was planning on learning Python as it seems more pleasant than Java which I don't think is for me after learning and coding with it a lot. But, I became more aware and interested in Go from coming across it in some processes. It seems to be really promising and gaining traction.

EDIT: Thanks everyone for your two cents and sharing your knowledge and experience. I think Python makes the most sense for now as it's much more widely used. Really appreciate that people took so much time and thought in replying. I'm sure others will read this too and find it helpful!

🌐
Reddit
reddit.com › r/golang › why should i choose and not choose go for back end ?
r/golang on Reddit: Why should I choose and not choose Go for back end ?
December 21, 2023 -

Hey guys I'm a beginner and learnt python basics and learning Rust now. I don't have formal tech degree and I'm learning from home.

I'm heard that Python has scalability issues and Go is Better than python in that regard. I'm confused between what back end framework to choose.

Can you tell me why I should choose and not choose Go over Python and Rust?

What is Go best suited for and what kind of companies prefer Go for their back end ?

🌐
Reddit
reddit.com › r/golang › python is easy. go is simple. simple != easy.
r/golang on Reddit: Python is Easy. Go is Simple. Simple != Easy.
November 27, 2023 - Go <-> Python communication for near real-time simulation (5ms step) r/golang • · upvotes · · comments · Go is such a wonderful language · r/learnprogramming • · upvotes · · comments · Golang vs Python for AI Solutions: How Do You Decide? r/golang • ·
🌐
Reddit
reddit.com › r/golang › when to use golang over python for web app backend?
r/golang on Reddit: When to use Golang over Python for web app backend?
January 24, 2021 -

A friend of mine told me I should write the backend of my booking app in Go instead of Python (using Django). Is this sound advice? I've heard Go is much more scalable. At how many users does this make a difference? What else should I consider?

Top answer
1 of 5
36

To be honest if it's a personal project for fun i'd write it in whatever language you are trying to learn, if it a project for a customer/work/etc I would write it in the language I am better able to maintain and be productive in.

Will Go likely process more requests for the same amount of CPU/memory allocation? Surely!
Will python bottleneck your personal project ? Probably not. People have used python and ruby to build amazingly large scaled websites and APIs!

There isn't a number of users that will be the tipping point since much of it depends on what your app is doing and if your database will collapse first.

I would write it in Go personally, because that is what I am writing my backend APIs in right now. If you asked on a clojure forum or C++ forum you'd probably get answers advocating for those languages too.

2 of 5
15

When it comes to scalability of a web backend there is more at play than just the language you use. If you're comfortable with Go then sure go ahead and use it, but if you have a better understanding of Python then you'll be more productive in that.

If this app is something you're doing in your free time as a hobby, then sure you could go ahead and write it in Go as an educational exercise. The learning curve may be steep though as you get to grasp with the idioms of Go.

Below are some libraries that could help you with building a web app in Go:

  • gorilla/mux - Routing

  • gorilla/schema - Parsing form data into structs

  • jmoiron/sqlx - Parsing SQL row data into structs

When it comes to ORMs in Go most people recommend gorm, personally I've had better experience with query builders, something I've written about before.

🌐
Reddit
reddit.com › r/golang › should i recommend my brother learn go over python for his first language?
r/golang on Reddit: Should I recommend my brother learn Go over Python for his first language?
May 8, 2022 -

Hey r/golang,

I will post to other subs if not quite on topic.

Context:

My brother has stated his intention to learn how to program with the desire of getting an entry level programming position once he has picked up enough skill. He currently is a novice with no prior programming experience.

I love Go at this point. I've learned 4-5 programming languages and have been working professionally for 6 or so years now. Which means I no longer trust my opinion on what it's really like to be just starting out. I don't want to lead my brother down the wrong path because I'm out of touch with what it's like to be a beginner.

Assertions:

  1. Languages don't matter, just the ability to stick with it long enough to reach Minimum Viable Employability.

  2. There are more jobs available for Python than Go for entry level developers.

    1. "Software Engineer Python" filtered for entry level on linkedin: 59k Results

    2. "Software Engineer Go" filtered for entry level on linkedin: 5k Results

  3. Python has more batteries included libraries. This would allow someone to realize more results while being required to deeply understand less.

  4. Python is more ubiquitous, so someone starting out will have more education resources to draw on.

I also think(with no evidence to support) that employers looking for python devs would be more willing to take on someone with no background in development than employers looking for Go devs.

To be clear I want to recommend that he learn Go. It's what I've been using daily for the last year. And it's honestly been the best experience I've had with a language.

But given his situation, I believe it's more likely he will succeed at finding his first job with python. He can do whatever he wants from there.

TLDR: I'm probably going to recommend Python over Go to someone with no programming experience. I think it's more likely they will land an entry level job given their lack of experience with that language. Please check my logic.

Edit1: a word

Edit2: I should clarify that he is an adult with an existing career/time obligations and is looking to make a career change. I appreciate the mentality of starting from first principals, but it's not necessarily practical in this scenario.

🌐
Reddit
reddit.com › r/golang › when shouldn't go be prioritized over python for new apps/services?
r/golang on Reddit: When shouldn't Go be prioritized over Python for new apps/services?
July 9, 2025 -

Hi, after completing my first production project in Go I'm a bit hyped about Go.

I love performance, simple and intuitive syntax, non-nested and explicit error handling, fast development time (compared to Python, no need to constantly debug/run+print to know what's going on), smooth package management and that Go produces a single binary ready for use with just a command.

Since my opinion on whether to use Go has weight, I want to know Go's no-go, the not-use cases over Python based on things like:

  1. It's Go expected to rise in popularity/adoption?

  2. Less obvious missing libraries and tools.

  3. Things that are not out the box in Go std like cookies.

  4. Go's gotchas and footguns, things I should warn team members about. For example, there was a problem with a Null pointer in this first Go project.

Top answer
1 of 29
76
As someone using mostly Go, Python and Rust at work. When should you use Python over Go: When there is a good library or framework that takes on most of the work available for Py but not for Go When the service doesn't need the performance of a compiled language When the shop/product/team simply prefers Python over Go (preexisting procedures, talent, tooling, ...) When time-to-market is essential. Python does develop quicker than Go in many cases, that's a fact. It's also completely okay to prototype/early-version something in Py and later rewrite it in Go It's Go expected to rise in popularity/adoption? It's already one of the most popular systems languages, especially for backend services. Besides, it's extremely easy to learn, has excellent tooling, and a growing talent pool to draw from. Py is the single most popular language on the planet of course, with a talent pool and libraries to match its popularity. Where Go beats it handsomely is tooling: Language server and formatter come with the language, and single-binary, zero-dependency deployments are impossible to beat. As for Py, uv made a lot of things easier, but Py-dependency handling, deployment, etc. is still a hot mess, and always will be, it's just a historical artifact of the language that's not really fixable. That's not as big a negative as many people make it to be: In a project you usually worry about these things once, and then forget about them, and with containers, deployments are a cakewalk. Things that are not out the box in Go std like cookies. https://pkg.go.dev/net/http/cookiejar@go1.24.5 😉 Go's gotchas and footguns, Precious few these days since they got rid of the iterator-var footgun in 1.22 . I'd say in terms of footguns, Go has much less firepower to offer than Py.
2 of 29
39
This isn't quite covered in there, but you should be sure to see our FAQs page if you haven't already. As for Go's popularity, I actually don't expect it to change much at this point except maybe experience modest ongoing growth, because it's already a top-tier language and there isn't much "up" for it left.
🌐
Reddit
reddit.com › r/golang › why should i use go over rust, java, or python?
r/golang on Reddit: Why should I use Go over Rust, Java, or Python?
December 23, 2023 - The former is definitely EASIER - you just stick a few pieces together and you get a functional car, house, city etc. The latter is HARDER, but the bricks themselves are simpler and can be combined in many more ways.
🌐
Reddit
reddit.com › r/learnprogramming › which one is better worth learning: python or go?
Which one is better worth learning: Python or Go? : r/learnprogramming
January 24, 2024 - What is your goal? Are you trying to get into programming? Learn python, then learn go. Python is easy to learn, you can do a ton of cool projects with it, and it can amplify your love for programming since you can do a lot pretty easily.
🌐
Reddit
reddit.com › r/golang › go performs 10x faster than python
r/golang on Reddit: Go Performs 10x Faster Than Python
February 13, 2024 -

Doing some digging around the Debian Computer Language Benchmark Game I came across some interesting findings. After grabbing the data off the page and cleaning it up with awk and sed, I averaged out the CPU seconds ('secs') across all tests including physics and astronomy simulations (N-body), various matrix algorithms, binary trees, regex, and more. These may be fallible and you can see my process here

Here are the results of a few of my scripts which are the average CPU seconds of all tests. Go performs 10x faster than Python and is head to head with Java.

Python Average: 106.756
Go Average: 8.98625

Java Average: 9.0565
Go Average: 8.98625

Rust Average: 3.06823
Go Average: 8.98625

C# Average: 3.74485
Java Average: 9.0565

C# Average: 3.74485
Go Average: 8.98625