Alternatives to Nim logo

Alternatives to Nim

Golang, Rust, Python, Crystal, and C lang are the most popular alternatives and competitors to Nim.
210
153
+ 1
60

What is Nim and what are its top alternatives?

Nim is a statically typed, compiled systems programming language known for its efficiency, readability, and flexibility. It offers features like metaprogramming, support for multiple paradigms, and a simple syntax that resembles Python. However, Nim's ecosystem is still evolving, with fewer libraries and tools compared to more established languages. Developers may also find transitioning to Nim challenging due to its unique syntax and concepts.

  1. Rust: Rust is a systems programming language focused on safety, speed, and concurrency. Key features include memory safety without garbage collection, fearless concurrency, and a powerful package management system. Pros: strong community support, great performance. Cons: steeper learning curve than Nim, stricter borrowing rules.

  2. Go: Go is a simple and efficient programming language designed for building reliable and efficient software. Key features include built-in support for concurrency, static typing, and a straightforward syntax. Pros: easy to learn, excellent performance. Cons: lacks some advanced language features present in Nim.

  3. D: D is a systems programming language with a focus on combining the performance of compiled languages with the productivity of high-level languages. Key features include powerful metaprogramming capabilities, support for functional and imperative programming styles, and a rich standard library. Pros: strong performance, extensive library support. Cons: smaller community compared to Nim.

  4. Crystal: Crystal is a compiled language that offers the power of low-level programming with the elegance of high-level languages. Key features include static typing, native performance, and a Ruby-like syntax. Pros: high performance, easy to learn. Cons: smaller ecosystem compared to Nim.

  5. Julia: Julia is a high-level, high-performance language for technical computing known for its speed and ease of use. Key features include a sophisticated compiler, multiple dispatch, and built-in support for parallel computing. Pros: excellent performance, seamless integration with other languages. Cons: may not be as well-suited for systems programming as Nim.

  6. Swift: Swift is a powerful and intuitive programming language developed by Apple for iOS, macOS, watchOS, and tvOS development. Key features include safety features to avoid mistakes and modern syntax. Pros: easy to learn, great performance. Cons: primarily tailored for Apple platforms.

  7. Haskell: Haskell is a functional programming language known for its strong type system, lazy evaluation, and purity. Key features include type inference, high-level abstractions, and a rich ecosystem of libraries. Pros: expressive syntax, robust type system. Cons: steep learning curve for newcomers.

  8. Scala: Scala is a modern multi-paradigm programming language designed to express common programming patterns in a concise, elegant, and type-safe way. Key features include functional programming, object-oriented programming, and compatibility with Java. Pros: seamless Java interoperability, strong static typing. Cons: complex language features may be overwhelming for beginners.

  9. Kotlin: Kotlin is a statically typed programming language that runs on the Java Virtual Machine (JVM) and can also be compiled to JavaScript or native code. Key features include null safety, concise syntax, and seamless interoperability with Java. Pros: reduces boilerplate code, excellent tooling. Cons: adoption outside of Android development is still growing.

  10. Clojure: Clojure is a dynamic, functional programming language that targets the Java Virtual Machine (JVM), designed for building robust and scalable systems. Key features include immutable data structures, concurrency abstractions, and a Lisp-like syntax. Pros: simplicity and expressiveness, great support for concurrency. Cons: may not be as performant as Nim for low-level systems programming tasks.

Top Alternatives to Nim

  • Golang
    Golang

    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. ...

  • Rust
    Rust

    Rust is a systems programming language that combines strong compile-time correctness guarantees with fast performance. It improves upon the ideas of other systems languages like C++ by providing guaranteed memory safety (no crashes, no data races) and complete control over the lifecycle of memory. ...

  • Python
    Python

    Python is a general purpose programming language created by Guido Van Rossum. Python is most praised for its elegant syntax and readable code, if you are just beginning your programming career python suits you best. ...

  • Crystal
    Crystal

    Crystal is a programming language that resembles Ruby but compiles to native code and tries to be much more efficient, at the cost of disallowing certain dynamic aspects of Ruby. ...

  • C lang
  • D
    D

    D is a language with C-like syntax and static typing. It pragmatically combines efficiency, control, and modeling power, with safety and programmer productivity. ...

  • OCaml
    OCaml

    It is an industrial strength programming language supporting functional, imperative and object-oriented styles. It is the technology of choice in companies where a single mistake can cost millions and speed matters, ...

  • JavaScript
    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. ...

Nim alternatives & related posts

Golang logo

Golang

22.5K
3.3K
An open source programming language that makes it easy to build simple, reliable, and efficient software
22.5K
3.3K
PROS OF GOLANG
  • 553
    High-performance
  • 397
    Simple, minimal syntax
  • 364
    Fun to write
  • 303
    Easy concurrency support via goroutines
  • 273
    Fast compilation times
  • 195
    Goroutines
  • 181
    Statically linked binaries that are simple to deploy
  • 151
    Simple compile build/run procedures
  • 137
    Backed by google
  • 137
    Great community
  • 53
    Garbage collection built-in
  • 47
    Built-in Testing
  • 44
    Excellent tools - gofmt, godoc etc
  • 40
    Elegant and concise like Python, fast like C
  • 37
    Awesome to Develop
  • 26
    Used for Docker
  • 26
    Flexible interface system
  • 25
    Great concurrency pattern
  • 24
    Deploy as executable
  • 21
    Open-source Integration
  • 19
    Easy to read
  • 17
    Fun to write and so many feature out of the box
  • 17
    Go is God
  • 14
    Powerful and simple
  • 14
    Easy to deploy
  • 14
    Its Simple and Heavy duty
  • 14
    Concurrency
  • 13
    Best language for concurrency
  • 11
    Safe GOTOs
  • 11
    Rich standard library
  • 10
    Clean code, high performance
  • 10
    Easy setup
  • 10
    High performance
  • 9
    Simplicity, Concurrency, Performance
  • 8
    Cross compiling
  • 8
    Single binary avoids library dependency issues
  • 8
    Hassle free deployment
  • 7
    Used by Giants of the industry
  • 7
    Simple, powerful, and great performance
  • 7
    Gofmt
  • 6
    Garbage Collection
  • 5
    WYSIWYG
  • 5
    Very sophisticated syntax
  • 5
    Excellent tooling
  • 4
    Keep it simple and stupid
  • 4
    Widely used
  • 4
    Kubernetes written on Go
  • 2
    No generics
  • 1
    Looks not fancy, but promoting pragmatic idioms
  • 1
    Operator goto
CONS OF GOLANG
  • 42
    You waste time in plumbing code catching errors
  • 25
    Verbose
  • 23
    Packages and their path dependencies are braindead
  • 16
    Google's documentations aren't beginer friendly
  • 15
    Dependency management when working on multiple projects
  • 10
    Automatic garbage collection overheads
  • 8
    Uncommon syntax
  • 7
    Type system is lacking (no generics, etc)
  • 5
    Collection framework is lacking (list, set, map)
  • 3
    Best programming language
  • 1
    A failed experiment to combine c and python

related Golang posts

Conor Myhrvold
Tech Brand Mgr, Office of CTO at Uber · | 44 upvotes · 13M views

How Uber developed the open source, end-to-end distributed tracing Jaeger , now a CNCF project:

Distributed tracing is quickly becoming a must-have component in the tools that organizations use to monitor their complex, microservice-based architectures. At Uber, our open source distributed tracing system Jaeger saw large-scale internal adoption throughout 2016, integrated into hundreds of microservices and now recording thousands of traces every second.

Here is the story of how we got here, from investigating off-the-shelf solutions like Zipkin, to why we switched from pull to push architecture, and how distributed tracing will continue to evolve:

https://eng.uber.com/distributed-tracing/

(GitHub Pages : https://www.jaegertracing.io/, GitHub: https://github.com/jaegertracing/jaeger)

Bindings/Operator: Python Java Node.js Go C++ Kubernetes JavaScript OpenShift C# Apache Spark

See more
Nick Parsons
Building cool things on the internet 🛠️ at Stream · | 35 upvotes · 4.4M views

Winds 2.0 is an open source Podcast/RSS reader developed by Stream with a core goal to enable a wide range of developers to contribute.

We chose JavaScript because nearly every developer knows or can, at the very least, read JavaScript. With ES6 and Node.js v10.x.x, it’s become a very capable language. Async/Await is powerful and easy to use (Async/Await vs Promises). Babel allows us to experiment with next-generation JavaScript (features that are not in the official JavaScript spec yet). Yarn allows us to consistently install packages quickly (and is filled with tons of new tricks)

We’re using JavaScript for everything – both front and backend. Most of our team is experienced with Go and Python, so Node was not an obvious choice for this app.

Sure... there will be haters who refuse to acknowledge that there is anything remotely positive about JavaScript (there are even rants on Hacker News about Node.js); however, without writing completely in JavaScript, we would not have seen the results we did.

#FrameworksFullStack #Languages

See more
Rust logo

Rust

5.9K
1.2K
A safe, concurrent, practical language
5.9K
1.2K
PROS OF RUST
  • 145
    Guaranteed memory safety
  • 132
    Fast
  • 88
    Open source
  • 75
    Minimal runtime
  • 72
    Pattern matching
  • 63
    Type inference
  • 57
    Algebraic data types
  • 57
    Concurrent
  • 47
    Efficient C bindings
  • 43
    Practical
  • 37
    Best advances in languages in 20 years
  • 32
    Safe, fast, easy + friendly community
  • 30
    Fix for C/C++
  • 25
    Stablity
  • 24
    Zero-cost abstractions
  • 23
    Closures
  • 20
    Extensive compiler checks
  • 20
    Great community
  • 18
    Async/await
  • 18
    No NULL type
  • 15
    Completely cross platform: Windows, Linux, Android
  • 15
    No Garbage Collection
  • 14
    Great documentations
  • 14
    High-performance
  • 12
    Generics
  • 12
    Super fast
  • 12
    High performance
  • 11
    Safety no runtime crashes
  • 11
    Fearless concurrency
  • 11
    Compiler can generate Webassembly
  • 11
    Macros
  • 11
    Guaranteed thread data race safety
  • 10
    Helpful compiler
  • 9
    RLS provides great IDE support
  • 9
    Prevents data races
  • 9
    Easy Deployment
  • 8
    Real multithreading
  • 8
    Painless dependency management
  • 7
    Good package management
  • 5
    Support on Other Languages
  • 1
    Type System
CONS OF RUST
  • 28
    Hard to learn
  • 24
    Ownership learning curve
  • 12
    Unfriendly, verbose syntax
  • 4
    High size of builded executable
  • 4
    Many type operations make it difficult to follow
  • 4
    No jobs
  • 4
    Variable shadowing
  • 1
    Use it only for timeoass not in production

related Rust posts

Caue Carvalho
Shared insights
on
RustRustGolangGolangPythonPythonRubyRubyC#C#

Hello!

I'm a developer for over 9 years, and most of this time I've been working with C# and it is paying my bills until nowadays. But I'm seeking to learn other languages and expand the possibilities for the next years.

Now the question... I know Ruby is far from dead but is it still worth investing time in learning it? Or would be better to take Python, Golang, or even Rust? Or maybe another language.

Thanks in advance.

See more
James Cunningham
Operations Engineer at Sentry · | 18 upvotes · 323.5K views
Shared insights
on
PythonPythonRustRust
at

Sentry's event processing pipeline, which is responsible for handling all of the ingested event data that makes it through to our offline task processing, is written primarily in Python.

For particularly intense code paths, like our source map processing pipeline, we have begun re-writing those bits in Rust. Rust’s lack of garbage collection makes it a particularly convenient language for embedding in Python. It allows us to easily build a Python extension where all memory is managed from the Python side (if the Python wrapper gets collected by the Python GC we clean up the Rust object as well).

See more
Python logo

Python

246K
6.9K
A clear and powerful object-oriented programming language, comparable to Perl, Ruby, Scheme, or Java.
246K
6.9K
PROS OF PYTHON
  • 1.2K
    Great libraries
  • 964
    Readable code
  • 847
    Beautiful code
  • 788
    Rapid development
  • 691
    Large community
  • 438
    Open source
  • 393
    Elegant
  • 282
    Great community
  • 273
    Object oriented
  • 221
    Dynamic typing
  • 77
    Great standard library
  • 60
    Very fast
  • 55
    Functional programming
  • 51
    Easy to learn
  • 46
    Scientific computing
  • 35
    Great documentation
  • 29
    Productivity
  • 28
    Easy to read
  • 28
    Matlab alternative
  • 24
    Simple is better than complex
  • 20
    It's the way I think
  • 19
    Imperative
  • 18
    Very programmer and non-programmer friendly
  • 18
    Free
  • 17
    Powerfull language
  • 17
    Machine learning support
  • 16
    Fast and simple
  • 14
    Scripting
  • 12
    Explicit is better than implicit
  • 11
    Ease of development
  • 10
    Clear and easy and powerfull
  • 9
    Unlimited power
  • 8
    Import antigravity
  • 8
    It's lean and fun to code
  • 7
    Print "life is short, use python"
  • 7
    Python has great libraries for data processing
  • 6
    Rapid Prototyping
  • 6
    Readability counts
  • 6
    Now is better than never
  • 6
    Great for tooling
  • 6
    Flat is better than nested
  • 6
    Although practicality beats purity
  • 6
    I love snakes
  • 6
    High Documented language
  • 6
    There should be one-- and preferably only one --obvious
  • 6
    Fast coding and good for competitions
  • 5
    Web scraping
  • 5
    Lists, tuples, dictionaries
  • 5
    Great for analytics
  • 4
    Easy to setup and run smooth
  • 4
    Easy to learn and use
  • 4
    Plotting
  • 4
    Beautiful is better than ugly
  • 4
    Multiple Inheritence
  • 4
    Socially engaged community
  • 4
    Complex is better than complicated
  • 4
    CG industry needs
  • 4
    Simple and easy to learn
  • 3
    It is Very easy , simple and will you be love programmi
  • 3
    Flexible and easy
  • 3
    Many types of collections
  • 3
    If the implementation is easy to explain, it may be a g
  • 3
    If the implementation is hard to explain, it's a bad id
  • 3
    Special cases aren't special enough to break the rules
  • 3
    Pip install everything
  • 3
    List comprehensions
  • 3
    No cruft
  • 3
    Generators
  • 3
    Import this
  • 3
    Powerful language for AI
  • 2
    Can understand easily who are new to programming
  • 2
    Should START with this but not STICK with This
  • 2
    A-to-Z
  • 2
    Because of Netflix
  • 2
    Only one way to do it
  • 2
    Better outcome
  • 2
    Batteries included
  • 2
    Good for hacking
  • 2
    Securit
  • 1
    Procedural programming
  • 1
    Best friend for NLP
  • 1
    Slow
  • 1
    Automation friendly
  • 1
    Sexy af
  • 0
    Ni
  • 0
    Keep it simple
  • 0
    Powerful
CONS OF PYTHON
  • 53
    Still divided between python 2 and python 3
  • 28
    Performance impact
  • 26
    Poor syntax for anonymous functions
  • 22
    GIL
  • 19
    Package management is a mess
  • 14
    Too imperative-oriented
  • 12
    Hard to understand
  • 12
    Dynamic typing
  • 12
    Very slow
  • 8
    Indentations matter a lot
  • 8
    Not everything is expression
  • 7
    Incredibly slow
  • 7
    Explicit self parameter in methods
  • 6
    Requires C functions for dynamic modules
  • 6
    Poor DSL capabilities
  • 6
    No anonymous functions
  • 5
    Fake object-oriented programming
  • 5
    Threading
  • 5
    The "lisp style" whitespaces
  • 5
    Official documentation is unclear.
  • 5
    Hard to obfuscate
  • 5
    Circular import
  • 4
    Lack of Syntax Sugar leads to "the pyramid of doom"
  • 4
    The benevolent-dictator-for-life quit
  • 4
    Not suitable for autocomplete
  • 2
    Meta classes
  • 1
    Training wheels (forced indentation)

related Python posts

Conor Myhrvold
Tech Brand Mgr, Office of CTO at Uber · | 44 upvotes · 13M views

How Uber developed the open source, end-to-end distributed tracing Jaeger , now a CNCF project:

Distributed tracing is quickly becoming a must-have component in the tools that organizations use to monitor their complex, microservice-based architectures. At Uber, our open source distributed tracing system Jaeger saw large-scale internal adoption throughout 2016, integrated into hundreds of microservices and now recording thousands of traces every second.

Here is the story of how we got here, from investigating off-the-shelf solutions like Zipkin, to why we switched from pull to push architecture, and how distributed tracing will continue to evolve:

https://eng.uber.com/distributed-tracing/

(GitHub Pages : https://www.jaegertracing.io/, GitHub: https://github.com/jaegertracing/jaeger)

Bindings/Operator: Python Java Node.js Go C++ Kubernetes JavaScript OpenShift C# Apache Spark

See more
Nick Parsons
Building cool things on the internet 🛠️ at Stream · | 35 upvotes · 4.4M views

Winds 2.0 is an open source Podcast/RSS reader developed by Stream with a core goal to enable a wide range of developers to contribute.

We chose JavaScript because nearly every developer knows or can, at the very least, read JavaScript. With ES6 and Node.js v10.x.x, it’s become a very capable language. Async/Await is powerful and easy to use (Async/Await vs Promises). Babel allows us to experiment with next-generation JavaScript (features that are not in the official JavaScript spec yet). Yarn allows us to consistently install packages quickly (and is filled with tons of new tricks)

We’re using JavaScript for everything – both front and backend. Most of our team is experienced with Go and Python, so Node was not an obvious choice for this app.

Sure... there will be haters who refuse to acknowledge that there is anything remotely positive about JavaScript (there are even rants on Hacker News about Node.js); however, without writing completely in JavaScript, we would not have seen the results we did.

#FrameworksFullStack #Languages

See more
Crystal logo

Crystal

341
286
Fast as C, slick as Ruby
341
286
PROS OF CRYSTAL
  • 38
    Compiles to efficient native code
  • 36
    Ruby inspired syntax
  • 32
    Performance oriented - C-like speeds
  • 23
    Gem-like packages, called Shards
  • 20
    Can call C code using Crystal bindings
  • 18
    Super Fast
  • 18
    Typed Ruby <3
  • 17
    Open Source
  • 14
    Minimal Runtime
  • 11
    Cute
  • 9
    Clean code
  • 9
    Concurrent
  • 9
    Productive
  • 4
    Great community
  • 2
    Powerful
  • 2
    Program compiled into a single binary
  • 2
    Simplicity
  • 2
    Meta-Programming (via Macros)
  • 2
    Feels like duck types, safe like static types
  • 2
    Null Safety
  • 2
    Type inference
  • 1
    Has builtin LLVM support library
  • 1
    Statically linked binaries that are simple to deploy
  • 1
    Fun to write
  • 1
    High-performance
  • 1
    Simple, minimal syntax
  • 1
    Compile time statically safe macros
  • 1
    Concise
  • 1
    Statically Safe Monkey Patching
  • 1
    Fibers
  • 1
    Spawn
  • 1
    Meta-programming
  • 1
    Productivity
  • 1
    Elegant
  • 1
    Cross-platform
CONS OF CRYSTAL
  • 13
    Small community
  • 3
    No windows support
  • 1
    No Oracle lib

related Crystal posts

Shared insights
on
JavaScriptJavaScriptCrystalCrystal

I’m trying to find the best programming language for programming a video game. Should I use Crystal or JavaScript to create the game?

See more
C lang logo

C lang

13.7K
253
One of the most widely used programming languages of all time
13.7K
253
PROS OF C LANG
  • 69
    Performance
  • 49
    Low-level
  • 36
    Portability
  • 29
    Hardware level
  • 19
    Embedded apps
  • 13
    Pure
  • 9
    Performance of assembler
  • 8
    Ubiquity
  • 6
    Great for embedded
  • 4
    Old
  • 4
    Compiles quickly
  • 3
    No garbage collection to slow it down
  • 2
    OpenMP
  • 2
    Gnu/linux interoperable
CONS OF C LANG
  • 5
    Low-level
  • 3
    No built in support for parallelism (e.g. map-reduce)
  • 3
    Lack of type safety
  • 3
    No built in support for concurrency

related C lang posts

Conor Myhrvold
Tech Brand Mgr, Office of CTO at Uber · | 17 upvotes · 2.4M views

Why Uber developed H3, our open source grid system to make geospatial data visualization and exploration easier and more efficient:

We decided to create H3 to combine the benefits of a hexagonal global grid system with a hierarchical indexing system. A global grid system usually requires at least two things: a map projection and a grid laid on top of the map. For map projection, we chose to use gnomonic projections centered on icosahedron faces. This projects from Earth as a sphere to an icosahedron, a twenty-sided platonic solid. The H3 grid is constructed by laying out 122 base cells over the Earth, with ten cells per face. H3 supports sixteen resolutions: https://eng.uber.com/h3/

(GitHub Pages : https://uber.github.io/h3/#/ Written in C w/ bindings in Java & JavaScript )

See more

One important decision for delivering a platform independent solution with low memory footprint and minimal dependencies was the choice of the programming language. We considered a few from Python (there was already a reasonably large Python code base at Thumbtack), to Go (we were taking our first steps with it), and even Rust (too immature at the time).

We ended up writing it in C. It was easy to meet all requirements with only one external dependency for implementing the web server, clearly no challenges running it on any of the Linux distributions we were maintaining, and arguably the implementation with the smallest memory footprint given the choices above.

See more
D logo

D

578
160
Modern convenience. Modeling power. Native efficiency.
578
160
PROS OF D
  • 16
    Compile-time function execution
  • 12
    Makes functional programming style easier
  • 12
    Productive
  • 12
    Much easier to do Concurrent/Parallel vs C/C++
  • 11
    Simple but Powerful template-based generics
  • 11
    Powerful static function to avoid macro
  • 10
    Meta program is much easier to read/write vs. C++
  • 9
    It support unittest etc
  • 9
    Assembler is support directly in the language
  • 9
    System program language like C++ and C
  • 9
    Supports code covarge directly in the compiler
  • 7
    Metaprogramming
  • 7
    Supports both manuel memory and garbage collection
  • 6
    Plugs directly into C
  • 6
    Easy to translate from Java and C# to D
  • 5
    Feels and looks like C, so it's easy to learn
  • 4
    Amazing developer productivity
  • 2
    Fast
  • 2
    Performance
  • 1
    Syntax uniformity across pre-compile/compile/runtime
CONS OF D
    Be the first to leave a con

    related D posts

    OCaml logo

    OCaml

    313
    28
    A general purpose industrial-strength programming language
    313
    28
    PROS OF OCAML
    • 7
      Satisfying to write
    • 6
      Pattern matching
    • 4
      Also has OOP
    • 4
      Very practical
    • 3
      Easy syntax
    • 3
      Extremely powerful type inference
    • 1
      Efficient compiler
    CONS OF OCAML
    • 3
      Small community
    • 1
      Royal pain in the neck to compile large programs

    related OCaml posts

    JavaScript logo

    JavaScript

    362.9K
    8.1K
    Lightweight, interpreted, object-oriented language with first-class functions
    362.9K
    8.1K
    PROS OF JAVASCRIPT
    • 1.7K
      Can be used on frontend/backend
    • 1.5K
      It's everywhere
    • 1.2K
      Lots of great frameworks
    • 898
      Fast
    • 746
      Light weight
    • 425
      Flexible
    • 392
      You can't get a device today that doesn't run js
    • 286
      Non-blocking i/o
    • 237
      Ubiquitousness
    • 191
      Expressive
    • 55
      Extended functionality to web pages
    • 49
      Relatively easy language
    • 46
      Executed on the client side
    • 30
      Relatively fast to the end user
    • 25
      Pure Javascript
    • 21
      Functional programming
    • 15
      Async
    • 13
      Full-stack
    • 12
      Future Language of The Web
    • 12
      Setup is easy
    • 12
      Its everywhere
    • 11
      Because I love functions
    • 11
      JavaScript is the New PHP
    • 10
      Like it or not, JS is part of the web standard
    • 9
      Easy
    • 9
      Can be used in backend, frontend and DB
    • 9
      Expansive community
    • 9
      Everyone use it
    • 8
      Easy to hire developers
    • 8
      Most Popular Language in the World
    • 8
      For the good parts
    • 8
      Can be used both as frontend and backend as well
    • 8
      No need to use PHP
    • 8
      Powerful
    • 7
      Evolution of C
    • 7
      Its fun and fast
    • 7
      It's fun
    • 7
      Nice
    • 7
      Versitile
    • 7
      Hard not to use
    • 7
      Popularized Class-Less Architecture & Lambdas
    • 7
      Agile, packages simple to use
    • 7
      Supports lambdas and closures
    • 7
      Love-hate relationship
    • 7
      Photoshop has 3 JS runtimes built in
    • 6
      1.6K Can be used on frontend/backend
    • 6
      Client side JS uses the visitors CPU to save Server Res
    • 6
      It let's me use Babel & Typescript
    • 6
      Easy to make something
    • 6
      Can be used on frontend/backend/Mobile/create PRO Ui
    • 5
      Client processing
    • 5
      What to add
    • 5
      Everywhere
    • 5
      Scope manipulation
    • 5
      Function expressions are useful for callbacks
    • 5
      Stockholm Syndrome
    • 5
      Promise relationship
    • 5
      Clojurescript
    • 4
      Only Programming language on browser
    • 4
      Because it is so simple and lightweight
    • 1
      Easy to learn and test
    • 1
      Easy to understand
    • 1
      Not the best
    • 1
      Subskill #4
    • 1
      Hard to learn
    • 1
      Test2
    • 1
      Test
    • 1
      Easy to learn
    • 0
      Hard 彤
    CONS OF JAVASCRIPT
    • 22
      A constant moving target, too much churn
    • 20
      Horribly inconsistent
    • 15
      Javascript is the New PHP
    • 9
      No ability to monitor memory utilitization
    • 8
      Shows Zero output in case of ANY error
    • 7
      Thinks strange results are better than errors
    • 6
      Can be ugly
    • 3
      No GitHub
    • 2
      Slow
    • 0
      HORRIBLE DOCUMENTS, faulty code, repo has bugs

    related JavaScript posts

    Zach Holman

    Oof. I have truly hated JavaScript for a long time. Like, for over twenty years now. Like, since the Clinton administration. It's always been a nightmare to deal with all of the aspects of that silly language.

    But wowza, things have changed. Tooling is just way, way better. I'm primarily web-oriented, and using React and Apollo together the past few years really opened my eyes to building rich apps. And I deeply apologize for using the phrase rich apps; I don't think I've ever said such Enterprisey words before.

    But yeah, things are different now. I still love Rails, and still use it for a lot of apps I build. But it's that silly rich apps phrase that's the problem. Users have way more comprehensive expectations than they did even five years ago, and the JS community does a good job at building tools and tech that tackle the problems of making heavy, complicated UI and frontend work.

    Obviously there's a lot of things happening here, so just saying "JavaScript isn't terrible" might encompass a huge amount of libraries and frameworks. But if you're like me, yeah, give things another shot- I'm somehow not hating on JavaScript anymore and... gulp... I kinda love it.

    See more
    Conor Myhrvold
    Tech Brand Mgr, Office of CTO at Uber · | 44 upvotes · 13M views

    How Uber developed the open source, end-to-end distributed tracing Jaeger , now a CNCF project:

    Distributed tracing is quickly becoming a must-have component in the tools that organizations use to monitor their complex, microservice-based architectures. At Uber, our open source distributed tracing system Jaeger saw large-scale internal adoption throughout 2016, integrated into hundreds of microservices and now recording thousands of traces every second.

    Here is the story of how we got here, from investigating off-the-shelf solutions like Zipkin, to why we switched from pull to push architecture, and how distributed tracing will continue to evolve:

    https://eng.uber.com/distributed-tracing/

    (GitHub Pages : https://www.jaegertracing.io/, GitHub: https://github.com/jaegertracing/jaeger)

    Bindings/Operator: Python Java Node.js Go C++ Kubernetes JavaScript OpenShift C# Apache Spark

    See more