Need advice about which tool to choose?Ask the StackShare community!

AngularJS

41.5K
29.2K
+ 1
5.3K
Go

11.9K
10.2K
+ 1
3K
Add tool

AngularJS vs Go: What are the differences?

Developers describe AngularJS as "Superheroic JavaScript MVW Framework". AngularJS lets you write client-side web applications as if you had a smarter browser. It lets you use good old HTML (or HAML, Jade and friends!) as your template language and lets you extend HTML鈥檚 syntax to express your application鈥檚 components clearly and succinctly. It automatically synchronizes data from your UI (view) with your JavaScript objects (model) through 2-way data binding. On the other hand, Go is detailed as "An open source programming language that makes it easy to build simple, reliable, and efficient software". Go is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language.

AngularJS can be classified as a tool in the "Javascript MVC Frameworks" category, while Go is grouped under "Languages".

"Quick to develop", "Great mvc" and "Powerful" are the key factors why developers consider AngularJS; whereas "High-performance", "Simple, minimal syntax" and "Fun to write" are the primary reasons why Go is favored.

AngularJS and Go are both open source tools. It seems that Go with 60.5K GitHub stars and 8.37K forks on GitHub has more adoption than AngularJS with 59.6K GitHub stars and 28.9K GitHub forks.

Google, Lyft, and Udemy are some of the popular companies that use AngularJS, whereas Go is used by Uber Technologies, Google, and Medium. AngularJS has a broader approval, being mentioned in 2799 company stacks & 1864 developers stacks; compared to Go, which is listed in 903 company stacks and 608 developer stacks.

Advice on AngularJS and Go
Needs advice
on
Vue.js
React
and
AngularJS

What is the best MVC stack to build mobile-friendly, light-weight, and fast single-page application with Spring Boot as back-end (Java)? Is Bootstrap still required to front-end layer these days?

The idea is to host on-premise initially with the potential to move to the cloud. Which combo would have minimal developer ramp-up time and low long-term maintenance costs (BAU support)?

See more
Replies (3)
Carolyne Stopa
Full Stack Developer at Contabilizei | 9 upvotes 路 135.2K views
Recommends
Vue.js

React might be a good option if you're considering a mobile app for the future, because of react native. Although, Vue.js has the easiest learning curve and offers a better developer ramp-up time. Vue.js is great to build SPAs, very clean and organized and you won't have a lot of long-term maintenance problems (like AngularJS, for example). Bootstrap can still be used, but with flexbox there's no need anymore.

See more
Chaitanya Chunduri
Recommends
React

I recommend React because of less memory occupant compare to Angular, but this will depend on your organisation flexibility. When you use React you need to import different libraries as per your need. On the other side angular is a complete framework.

Performance-wise I vote for react js as it loads up quickly and lighter on the mobile. You can make good PWA with SSR as well.

See more
Recommends
React

If you are new to all three react will be a good choice considering, react-native will be useful if you want to build cross platform mobile application today or tomorrow. If you are talking about bootstrap styling framework than it's a choice you can style ur components by ur self or use bootstrap 4.0 framework. The complete stack mentioned above is platform agnostic u can run it anywhere you want be it cloud or on-premise.

See more
View all (3)
Needs advice
on
React Native
Python
and
Go

I've been juggling with an app idea and am clueless about how to build it.

A little about the app:

  • Social network type app ,
  • Users can create different directories, in those directories post images and/or text that'll be shared on a public dashboard .

Directory creation is the main point of this app. Besides there'll be rooms(groups),chatting system, search operations similar to instagram,push notifications

I have two options:

  1. React Native, Python, AWS stack or
  2. Flutter, Go ( I don't know what stack or tools to use)
See more
Replies (6)
George Krachtopoulos
Recommends
Python

Currently, I have decided to use Python and JavaScript (especially React and Node.js) for any of my projects. Well, I have used Python with Django for a lot of things, and I would certainly recommend Django to anyone, due to its high secure authentication and authorization inbuilt system, a ready to use admin platform, template tags, and many more. Well, I guess that you would like to use Python to create the backend of your application, an API, and React Native for the frontend. Python and JavaScript (React) are on the trend these days and have a huge community, so there are many resources, tutorials, great documentation. I have not really heard anyone using Flutter and Go for applications these days, so I would not recommend it to you, it would make your life much more difficult.

Hope that helps, and good luck with your project!

See more
Tony Chong
Principal & Founder at Airwave Tech | 6 upvotes 路 56K views
Recommends
Flutter

I'm typically agnostic when it comes to picking languages. Whatever gets the job done, but, in this case, to figure out what's involved with what you want to do, it's going to be much more than just picking programming languages for your client and backend interfaces.

So, I'm recommending you use Flutter+Firebase as a way to figure out what you need to get done. It supports both iOS and Android out of the box, introduces you to a bunch of components you will need to think about in the future (whether you stick with Firebase or not), and the key here, is that there are tons of articles, youtube videos, and other courses you can take to pick it up pretty quickly. You could even clone an Instagram knockoff from github. Guess what else, it's all free. You might not need to worry as much about the backend since there are client libraries for Flutter/Dart for Firebase.

Some might have different opinions, and like I said, I'm usually agnostic, but in this case, you have a lot to consider. Where are you going to store the data? Are people going to need to login? Will there but customized settings the will save even if I close the app? Yeah, that's just a few questions.

Those are just a few. Lots to consider, so if you want to get something in your hand as soon as possible, try a search for flutter + firebase + chat + Instagram or something like that and have a look.

See more
Recommends
React Native

If this is for learning about how to design the system, then pick the tools are you are confortable with.

Often times, I get stuck picking the tools (and trying to learn about them) vs actually trying to design the system itself.

If you are familiar with React (check out Expo) and Django then I would recommend going with that.

For deploying your backend, I would go with a provider like https://zeit.co/ that automates a whole bunch of deployment steps with their cli tools that you might have to do with AWS.

See more
Emmanuel Kayode
Software Engineer at Teamapt Ltd | 3 upvotes 路 54.9K views
Recommends
Go

The above listed tools will do the job, you just need to figure out your architecture(e.g models). How they will all connect. Then you can use a tool you are comfortable with to implement them.

See more
Charles Nelson
Recommends
Python

What you need to take a look at is Apache OpenMeetings. It already does what you want, it is open source and well documented and only requires that you design the UI and plumbing required to serve you application.

See more
Adam Ha
Recommends
React Native

Let's select right tool you feel you are good at. And selecting tools are used by large community to solve your stuck if encounter

See more
View all (6)
Needs advice
on
Python
JavaScript
and
Go

We are converting AWS Lambdas from Java due to excessive cold start times. Usage: These lambdas handle XML and JSON payloads, they use s3, API Gateway, RDS, DynamoDB, and external API's. Most of our developers are only experienced in java. These three languages (Go, Node.js, and Python) were discussed, but no consensus has been reached yet.

See more
Replies (5)
Jordan Gregory
Sr. Software Engineer at Granular | 4 upvotes 路 84.3K views
Recommends
Go

I've worked with all three of these languages and also with Java developers converting to these languages and far and away Go is the easier one to convert to. With the improved cold-start times and the ease of conversion for a Java developer, it is a no-brainer for me.

The hardest part of the conversion though is going to be the lack of traditional Classes so you have to be mindful of that, but Go Structs and interfaces tend to make up for what is lost there.

Full Disclosure: I'm a 95% Go convert (from Python) at this point in time.

See more
Ahmet Yildirim
Software Engineering Consultant at UXCraft Sweden AB | 3 upvotes 路 84.3K views
Recommends
Go

Although I am primarily a Javascript developer myself, I used Go to build AWS lambda in a similar scenario to yours. AWS libraries felt better integrated on the Go side, I believe due to the language itself (e.g. how JSON objects are handled in go). Besides that performance of Go is much superior. But on the cons side; community is far smaller around Go, compared to Javascript. That is easy notice if you look at repos of community-maintained libraries for Go. That can feel a bit unreliable.

See more
Jason Scheirer
Senior Software Engineer at EasyPost | 2 upvotes 路 84K views
Recommends
Go

Go would provide the easiest transition for Java programmers -- its IDE/tooling is second to none (just install Goland) and the deploy/distribution story is extremely clean and lends itself to work well in lambda: single, static binaries with quick startup. No need to set up a full environment or package dependencies on your lambda AMIs, just copy a file.

See more
Russel Werner
Lead Engineer at StackShare | 1 upvotes 路 84K views

If you want to prioritise language familiarity, JavaScript is more like Java than the other choices; and it can be optimised to run very fast. However if you need really fast cold-start times, you can't beat Go since it's compiled. There are other things to consider, such as the massive amount of community packages and help/documentation in the JavaScript ecosystem. Go is newer but seems to be quite popular if you need something that runs fast in a single binary.

See more
Paul Whittemore
Developer and Owner at Appurist Software | 1 upvotes 路 84K views
Recommends
Go

I was initially going to suggest JavaScript due to the smaller size needs of AWS Lambdas code and the larger range of libraries and community available (and to avoid Python for this). But I have to agree with the recommendations and rationale of @ayildirim above and I think you should choose any reasonable language that is low-overhead, fast startup, and best supported by AWS Lambda, and that is probably Go. I don't think you are likely to go wrong with that, while you can potentially with the others.

So I'd agree, on the strength of AWS Lambda support and the solid performance of Go, it seems like your best choice here for Lambdas (and I'm going to need to consider that myself going forward... pardon the pun).

See more
View all (5)
Decisions about AngularJS and Go
William Artero
Senior Platform Engineer at ABN AMRO | 6 upvotes 路 108K views

Telegram Messenger has frameworks for most known languages, which makes easier for anyone to integrate with them. I started with Golang and soon found that those frameworks are not up to date, not to mention my experience testing on Golang is also mixed due to how their testing tool works. The natural runner-up was JS, which I'm ditching in favor of TS to make a strongly typed code, proper tests and documentation for broader usage. TypeScript allows fast prototyping and can prevent problems during code phase, given that your IDE of choice has support for a language server, and build phase. Pairing it with lint tools also allows honing code before it even hits the repositories.

See more
awesomebanana2018

1. Type safety and inferred types

Go is type safe by default, which allows you to right more reliable code and have better developer tooling, plus with the := operator, you can initialize a variable without having to define its type because it automatically gets its type from the initial value.

2. Performance

There isn't much to be said here, but on most counts go beats both Python and Node.js on performance.

3. Documentation

I'm not talking about the Go language itself, although it does have good docs. I'm talking about Go's auto generated documentation tool, which allows people to document their packages easily and works amazingly with Go's type system.

4. Compiles to binary

If you are making a local program for somebody and they don't want to download the Go compiler, you can make Go into a native binary.

5. Built for the web

Go has built in Http libraries to rival Express.js and has a HTML/Text templating system.

6. Great Concurrency

Go utilizes Goroutines to help developers utilize multiple threads easily.

Conclusion

Go is an excellent choice for any system code, especially http networking and web backends.

See more
Kamaleshwar BN
Head of Engineering at Dibiz Pte. Ltd. | 10 upvotes 路 202.7K views

It was easier to find people who've worked on React than Vue. Angular did not have this problem, but seemed way too bloated compared to React. Angular also brings in restrictions working within their MVC framework. React on the other hand only handles the view/rendering part and rest of the control is left to the developers. React has a very active community, support and has lots of ready-to-use plugins/libraries available.

See more
Get Advice from developers at your company using Private StackShare. Sign up for Private StackShare.
Learn More
Pros of AngularJS
Pros of Go
  • 886
    Quick to develop
  • 589
    Great mvc
  • 570
    Powerful
  • 522
    Restful
  • 504
    Backed by google
  • 350
    Two-way data binding
  • 343
    Javascript
  • 329
    Open source
  • 306
    Dependency injection
  • 197
    Readable
  • 75
    Fast
  • 64
    Directives
  • 63
    Great community
  • 56
    Free
  • 38
    Extend html vocabulary
  • 29
    Components
  • 25
    Easy to test
  • 24
    Easy to learn
  • 23
    Easy to templates
  • 23
    Great documentation
  • 21
    Easy to start
  • 17
    Awesome
  • 17
    Light weight
  • 14
    Angular 2.0
  • 14
    Javascript mvw framework
  • 13
    Great extensions
  • 13
    Efficient
  • 10
    Easy to prototype with
  • 8
    High performance
  • 8
    Lots of community modules
  • 8
    Coffeescript
  • 7
    Two-way binding
  • 7
    Mvc
  • 6
    Easy to e2e
  • 6
    Clean and keeps code readable
  • 5
    One of the best frameworks
  • 5
    Easy for small applications
  • 4
    Works great with jquery
  • 4
    Fast development
  • 2
    Hierarchical Data Structure
  • 2
    The two-way Data Binding is awesome
  • 2
    Community
  • 2
    Typescript
  • 2
    Declarative programming
  • 2
    I do not touch DOM
  • 2
    Be a developer, not a plumber.
  • 2
    Dart
  • 1
    Fkin awesome
  • 1
    Scopes
  • 1
    The powerful of binding, routing and controlling routes
  • 1
    Supports api , easy development
  • 1
    Opinionated in the right areas
  • 1
    Amazing community support
  • 1
    Common Place
  • 1
    Very very useful and fast framework for development.
  • 1
    Great
  • 1
    Programming fun again
  • 1
    Readable code
  • 1
    Linear learning curve
  • 517
    High-performance
  • 378
    Simple, minimal syntax
  • 344
    Fun to write
  • 289
    Easy concurrency support via goroutines
  • 261
    Fast compilation times
  • 183
    Goroutines
  • 173
    Statically linked binaries that are simple to deploy
  • 144
    Simple compile build/run procedures
  • 129
    Backed by google
  • 125
    Great community
  • 46
    Garbage collection built-in
  • 40
    Built-in Testing
  • 36
    Excellent tools - gofmt, godoc etc
  • 33
    Elegant and concise like Python, fast like C
  • 28
    Awesome to Develop
  • 22
    Flexible interface system
  • 21
    Great concurrency pattern
  • 21
    Used for Docker
  • 18
    Deploy as executable
  • 17
    Open-source Integration
  • 14
    Fun to write and so many feature out of the box
  • 11
    Easy to read
  • 11
    Its Simple and Heavy duty
  • 10
    Powerful and simple
  • 9
    Safe GOTOs
  • 9
    Easy to deploy
  • 9
    Go is God
  • 7
    Easy setup
  • 7
    Rich standard library
  • 7
    Concurrency
  • 7
    Best language for concurrency
  • 7
    Hassle free deployment
  • 6
    Used by Giants of the industry
  • 6
    Simplicity, Concurrency, Performance
  • 6
    Clean code, high performance
  • 6
    High performance
  • 6
    Single binary avoids library dependency issues
  • 5
    Simple, powerful, and great performance
  • 5
    Cross compiling
  • 4
    Garbage Collection
  • 4
    Excellent tooling
  • 4
    Very sophisticated syntax
  • 4
    Gofmt
  • 4
    WYSIWYG
  • 3
    Kubernetes written on Go
  • 2
    Keep it simple and stupid
  • 1
    Widely used
  • 0
    No generics
  • 0
    Operator goto

Sign up to add or upvote prosMake informed product decisions

Cons of AngularJS
Cons of Go
  • 10
    Complex
  • 3
    Dependency injection
  • 2
    Learning Curve
  • 2
    Event Listener Overload
  • 1
    Hard to learn
  • 38
    You waste time in plumbing code catching errors
  • 23
    Verbose
  • 22
    Packages and their path dependencies are braindead
  • 15
    Dependency management when working on multiple projects
  • 12
    Google's documentations aren't beginer friendly
  • 10
    Automatic garbage collection overheads
  • 8
    Uncommon syntax
  • 6
    Type system is lacking (no generics, etc)
  • 2
    Collection framework is lacking (list, set, map)

Sign up to add or upvote consMake informed product decisions

What is AngularJS?

AngularJS lets you write client-side web applications as if you had a smarter browser. It lets you use good old HTML (or HAML, Jade and friends!) as your template language and lets you extend HTML鈥檚 syntax to express your application鈥檚 components clearly and succinctly. It automatically synchronizes data from your UI (view) with your JavaScript objects (model) through 2-way data binding.

What is Go?

Go is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language.

Need advice about which tool to choose?Ask the StackShare community!

What companies use AngularJS?
What companies use Go?
See which teams inside your own company are using AngularJS or Go.
Sign up for Private StackShareLearn More

Sign up to get full access to all the companiesMake informed product decisions

What tools integrate with AngularJS?
What tools integrate with Go?

Sign up to get full access to all the tool integrationsMake informed product decisions

Blog Posts

Dec 8 2020 at 5:50PM

DigitalOcean

+11
2
1673
Nov 20 2019 at 3:38AM

OneSignal

+8
7
3697
Oct 11 2019 at 2:36PM

LogRocket

+8
5
1486
Oct 3 2019 at 7:13PM

Ably Realtime

+8
4
3185
What are some alternatives to AngularJS and Go?
JavaScript
JavaScript is most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm scripting language that is dynamic,and supports object-oriented, imperative, and functional programming styles.
Angular 2
It is a TypeScript-based open-source web application framework. It is a development platform for building mobile and desktop web applications.
React
Lots of people use React as the V in MVC. Since React makes no assumptions about the rest of your technology stack, it's easy to try it out on a small feature in an existing project.
Node.js
Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices.
jQuery
jQuery is a cross-platform JavaScript library designed to simplify the client-side scripting of HTML.
See all alternatives
Reviews of AngularJS and Go
Review of
Go

Go has been a joy to work with. Performance is often 30x of what we used to see with Python. It's a performant and productive programming language: https://getstream.io/blog/switched-python-go/

How developers use AngularJS and Go
Karma uses
Go

The first time I actually started using Go was for software on our devices. So on our hotspots we have some custom software running in the firmware. For the first device, that was actually completely built by our manufacturer. But for the second generation most of the parts are built by us in-house and we needed a way to quickly develop software for the device. But we don't have any C programmers in-house, so we were actually looking for something that basically sits in between the friendliness of Ruby, but the performance and the ability to be deployed on an embedded system which you get with C. That's basically what led us to Go and it's been awesome for that. It works so well and so great. Since it works so great, it pushed us into looking into whether we should start using this for some backend services as well.

shridhardalavi uses
AngularJS

AngularJS is a structural framework for dynamic web apps. With AngularJS, designers can use HTML as the template language and it allows for the extension of HTML's syntax to convey the application's components effortlessly. Angular makes much of the code you would otherwise have to write completely redundant. We can use Angular to build any kind of app, taking advantage of features like: Two-way binding, templating, RESTful api handling, modularization, AJAX handling, dependency injection, etc

Flutter Health Inc. uses
Go

The following basic API endpoints are implemented on the server written in Go:

  • Authorization (Sign Up, Sign In)
  • Update user profile
  • Community: add post, like post, add comment, delete post, add reply to comment
  • Self-diagnosis: send data from the app to the server
  • Journal: send user data from the app to the server
  • Add groups of community
  • Report post, report comment, report reply
  • Block user
Zinc uses
Go

We wrote our own image processing, resizing, and snapshotting service in Go to allow our clients to send photos and GIFs to each other. Files are stored in S3, resized on the fly using OpenCV, and then cached in GroupCache before being served to clients.

Go allows it all to be quite fast and efficient, and entirely non-blocking on uploads!

Diggernaut LLC uses
Go

Our main web scraping engine is built usign Golang because of the way how efficiently and fast this language is. Also out compilation facility let people who dont know Golang build fast as flash scrapers to run ourside of our platform without any knowledge in programming in Golang.

Refractal uses
Go

For some of our more taxing parts of our applications, something able to handle high I/O load quickly and with fast processing is needed. Go has completely filled that gap, allowing us to break down walls that would've been completely impossible with other languages.

Kalibrr uses
AngularJS

All of our frontend code is on AngularJS. Directives, controllers, and services really help in organizing code in order to keep things maintainable, and two-way binding makes data input easy. The large ecosystem of modules for directives is fantastic, too.

Nikola Novakovic uses
AngularJS

When ever I need heavy user client side apps this is my tool of choice. There are a ton of JS frameworks out there, picked this one because of philosophy they are trying to put out there and great community. Two way data binding FTW!

Yaakov Gesher uses
AngularJS

The front end was built on an Angular template supplied by the client. We leveraged Angular's flexibility and speed to delivered complex matrices of data quickly and with great finesse.

InJoin uses
AngularJS

We use Angular.js to build our front-end framework known as Frontkit, so our apps can get started faster with reliable, interactive components.