Alternatives to Visual Basic logo

Alternatives to Visual Basic

Python, JavaScript, MATLAB, Visual Studio, and Java are the most popular alternatives and competitors to Visual Basic.
527
492
+ 1
8

What is Visual Basic and what are its top alternatives?

Visual Basic is derived from BASIC and enables the rapid application development (RAD) of graphical user interface (GUI) applications, access to databases using Data Access Objects, Remote Data Objects, or ActiveX Data Objects, and creation of ActiveX controls and objects.
Visual Basic is a tool in the Languages category of a tech stack.

Top Alternatives to Visual Basic

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

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

  • MATLAB
    MATLAB

    Using MATLAB, you can analyze data, develop algorithms, and create models and applications. The language, tools, and built-in math functions enable you to explore multiple approaches and reach a solution faster than with spreadsheets or traditional programming languages, such as C/C++ or Java. ...

  • Visual Studio
    Visual Studio

    Visual Studio is a suite of component-based software development tools and other technologies for building powerful, high-performance applications. ...

  • Java
    Java

    Java is a programming language and computing platform first released by Sun Microsystems in 1995. There are lots of applications and websites that will not work unless you have Java installed, and more are created every day. Java is fast, secure, and reliable. From laptops to datacenters, game consoles to scientific supercomputers, cell phones to the Internet, Java is everywhere! ...

  • VBScript
    VBScript

    It is an Active Scripting language developed by Microsoft that is modeled on Visual Basic. It allows Microsoft Windows system administrators to generate powerful tools for managing computers with error handling, subroutines, and other advanced programming constructs. ...

  • PowerShell
    PowerShell

    A command-line shell and scripting language built on .NET. Helps system administrators and power-users rapidly automate tasks that manage operating systems (Linux, macOS, and Windows) and processes. ...

  • PHP
    PHP

    Fast, flexible and pragmatic, PHP powers everything from your blog to the most popular websites in the world. ...

Visual Basic alternatives & related posts

Python logo

Python

224K
185.5K
6.8K
A clear and powerful object-oriented programming language, comparable to Perl, Ruby, Scheme, or Java.
224K
185.5K
+ 1
6.8K
PROS OF PYTHON
  • 1.2K
    Great libraries
  • 956
    Readable code
  • 840
    Beautiful code
  • 783
    Rapid development
  • 687
    Large community
  • 431
    Open source
  • 389
    Elegant
  • 280
    Great community
  • 272
    Object oriented
  • 216
    Dynamic typing
  • 77
    Great standard library
  • 58
    Very fast
  • 53
    Functional programming
  • 46
    Easy to learn
  • 45
    Scientific computing
  • 35
    Great documentation
  • 28
    Matlab alternative
  • 27
    Productivity
  • 27
    Easy to read
  • 23
    Simple is better than complex
  • 20
    It's the way I think
  • 19
    Imperative
  • 18
    Free
  • 17
    Very programmer and non-programmer friendly
  • 16
    Powerfull language
  • 16
    Machine learning support
  • 15
    Fast and simple
  • 14
    Scripting
  • 12
    Explicit is better than implicit
  • 10
    Ease of development
  • 9
    Unlimited power
  • 9
    Clear and easy and powerfull
  • 8
    Import antigravity
  • 7
    Print "life is short, use python"
  • 7
    It's lean and fun to code
  • 6
    Now is better than never
  • 6
    Fast coding and good for competitions
  • 6
    There should be one-- and preferably only one --obvious
  • 6
    High Documented language
  • 6
    I love snakes
  • 6
    Although practicality beats purity
  • 6
    Python has great libraries for data processing
  • 6
    Flat is better than nested
  • 6
    Great for tooling
  • 5
    Rapid Prototyping
  • 5
    Readability counts
  • 4
    Lists, tuples, dictionaries
  • 4
    Web scraping
  • 4
    CG industry needs
  • 4
    Great for analytics
  • 4
    Socially engaged community
  • 4
    Complex is better than complicated
  • 4
    Multiple Inheritence
  • 4
    Beautiful is better than ugly
  • 4
    Plotting
  • 3
    Simple and easy to learn
  • 3
    Import this
  • 3
    Many types of collections
  • 3
    If the implementation is easy to explain, it may be a g
  • 3
    Easy to setup and run smooth
  • 3
    Special cases aren't special enough to break the rules
  • 3
    Pip install everything
  • 3
    List comprehensions
  • 3
    No cruft
  • 3
    Easy to learn and use
  • 3
    Generators
  • 3
    If the implementation is hard to explain, it's a bad id
  • 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
    Good for hacking
  • 2
    Flexible and easy
  • 2
    It is Very easy , simple and will you be love programmi
  • 2
    Batteries included
  • 2
    Can understand easily who are new to programming
  • 2
    Powerful language for AI
  • 1
    Securit
  • 0
    Powerful
CONS OF PYTHON
  • 52
    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
    Not everything is expression
  • 7
    Incredibly slow
  • 7
    Explicit self parameter in methods
  • 7
    Indentations matter a lot
  • 6
    Requires C functions for dynamic modules
  • 6
    No anonymous functions
  • 6
    Poor DSL capabilities
  • 5
    Fake object-oriented programming
  • 5
    Threading
  • 5
    The "lisp style" whitespaces
  • 5
    Official documentation is unclear.
  • 5
    Hard to obfuscate
  • 4
    Lack of Syntax Sugar leads to "the pyramid of doom"
  • 4
    Circular import
  • 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 · | 43 upvotes · 7.3M 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 · 2.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
JavaScript logo

JavaScript

327.9K
253.7K
8K
Lightweight, interpreted, object-oriented language with first-class functions
327.9K
253.7K
+ 1
8K
PROS OF JAVASCRIPT
  • 1.7K
    Can be used on frontend/backend
  • 1.5K
    It's everywhere
  • 1.2K
    Lots of great frameworks
  • 896
    Fast
  • 745
    Light weight
  • 425
    Flexible
  • 392
    You can't get a device today that doesn't run js
  • 286
    Non-blocking i/o
  • 236
    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
    Setup is easy
  • 12
    Its everywhere
  • 11
    JavaScript is the New PHP
  • 11
    Because I love functions
  • 10
    Like it or not, JS is part of the web standard
  • 9
    Easy
  • 9
    Future Language of The Web
  • 9
    Can be used in backend, frontend and DB
  • 9
    Expansive community
  • 8
    Everyone use it
  • 8
    For the good parts
  • 8
    No need to use PHP
  • 8
    Easy to hire developers
  • 8
    Most Popular Language in the World
  • 8
    Can be used both as frontend and backend as well
  • 7
    Supports lambdas and closures
  • 7
    Powerful
  • 7
    Photoshop has 3 JS runtimes built in
  • 7
    Evolution of C
  • 7
    Popularized Class-Less Architecture & Lambdas
  • 7
    Agile, packages simple to use
  • 7
    Love-hate relationship
  • 6
    It let's me use Babel & Typescript
  • 6
    1.6K Can be used on frontend/backend
  • 6
    It's fun
  • 6
    Nice
  • 6
    Hard not to use
  • 6
    Client side JS uses the visitors CPU to save Server Res
  • 6
    Versitile
  • 6
    Easy to make something
  • 6
    Its fun and fast
  • 6
    Can be used on frontend/backend/Mobile/create PRO Ui
  • 5
    What to add
  • 5
    Clojurescript
  • 5
    Promise relationship
  • 5
    Stockholm Syndrome
  • 5
    Function expressions are useful for callbacks
  • 5
    Scope manipulation
  • 5
    Everywhere
  • 5
    Client processing
  • 4
    Only Programming language on browser
  • 4
    Because it is so simple and lightweight
  • 1
    Test2
  • 1
    Easy to understand
  • 1
    Not the best
  • 1
    Hard to learn
  • 1
    Subskill #4
  • 1
    Test
  • 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

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 · | 43 upvotes · 7.3M 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
MATLAB logo

MATLAB

866
679
37
A high-level language and interactive environment for numerical computation, visualization, and programming
866
679
+ 1
37
PROS OF MATLAB
  • 20
    Simulink
  • 5
    Model based software development
  • 5
    Functions, statements, plots, directory navigation easy
  • 3
    S-Functions
  • 2
    REPL
  • 1
    Simple variabel control
  • 1
    Solve invertible matrix
CONS OF MATLAB
  • 2
    Parameter-value pairs syntax to pass arguments clunky
  • 2
    Doesn't allow unpacking tuples/arguments lists with *
  • 2
    Does not support named function arguments

related MATLAB posts

Visual Studio logo

Visual Studio

44.6K
35.4K
1.1K
State-of-the-art tools and services that you can use to create great apps for devices, the cloud, and everything...
44.6K
35.4K
+ 1
1.1K
PROS OF VISUAL STUDIO
  • 305
    Intellisense, ui
  • 244
    Complete ide and debugger
  • 165
    Plug-ins
  • 104
    Integrated
  • 93
    Documentation
  • 37
    Fast
  • 35
    Node tools for visual studio (ntvs)
  • 33
    Free Community edition
  • 24
    Simple
  • 17
    Bug free
  • 8
    Made by Microsoft
  • 6
    Full free community version
  • 5
    JetBrains plugins (ReSharper etc.) work sufficiently OK
  • 3
    Productivity Power Tools
  • 2
    Vim mode
  • 2
    VIM integration
  • 1
    I develop UWP apps and Intellisense is super useful
  • 1
    Cross platform development
  • 1
    The Power and Easiness to Do anything in any.. language
  • 1
    Available for Mac and Windows
CONS OF VISUAL STUDIO
  • 15
    Bulky
  • 14
    Made by Microsoft
  • 4
    Sometimes you need to restart to finish an update
  • 3
    Too much size for disk
  • 3
    Only avalible on Windows

related Visual Studio posts

Maria Naggaga
Senior Program Manager - .NET Team at Microsoft · | 8 upvotes · 634.9K views

.NET Core is #free, #cross-platform, and #opensource. A developer platform for building all types of apps ( #web apps #mobile #games #machinelearning #AI and #Desktop ).

Developers have chosen .NET for:

Productive: Combined with the extensive class libraries, common APIs, multi-language support, and the powerful tooling provided by the Visual Studio family ( Visual Studio and Visual Studio Code ), .NET is the most productive platform for developers.

Any app: From mobile applications running on iOS, Android and Windows, to Enterprise server applications running on Windows Server and Linux, or high-scale microservices running in the cloud, .NET provides a solution for you.

Performance: .NET is fast. Really fast! The popular TechEmpower benchmark compares web application frameworks with tasks like JSON serialization, database access, and server side template rendering - .NET performs faster than any other popular framework.

See more
Nicholas Rogoff

Secure Membership Web API backed by SQL Server. This is the backing API to store additional profile and complex membership metadata outside of an Azure AD B2C provider. The front-end using the Azure AD B2C to allow 3rd party trusted identity providers to authenticate. This API provides a way to add and manage more complex permission structures than can easily be maintained in Azure AD.

We have .Net developers and an Azure infrastructure environment using server-less functions, logic apps and SaaS where ever possible. For this service I opted to keep it as a classic WebAPI project and deployed to AppService.

  • Trusted Authentication Provider: @AzureActiveDirectoryB2C
  • Frameworks: .NET Core
  • Language: C# , Microsoft SQL Server , JavaScript
  • IDEs: Visual Studio Code , Visual Studio
  • Libraries: jQuery @EntityFramework, @AutoMapper, @FeatureToggle , @Swashbuckle
  • Database: @SqlAzure
  • Source Control: Git
  • Build and Release Pipelines: Azure DevOps
  • Test tools: Postman , Newman
  • Test framework: @nUnit, @moq
  • Infrastructure: @AzureAppService, @AzureAPIManagement
See more
Java logo

Java

125.5K
95.4K
3.7K
A concurrent, class-based, object-oriented, language specifically designed to have as few implementation dependencies as possible
125.5K
95.4K
+ 1
3.7K
PROS OF JAVA
  • 596
    Great libraries
  • 444
    Widely used
  • 399
    Excellent tooling
  • 393
    Huge amount of documentation available
  • 333
    Large pool of developers available
  • 206
    Open source
  • 201
    Excellent performance
  • 156
    Great development
  • 149
    Used for android
  • 149
    Vast array of 3rd party libraries
  • 60
    Compiled Language
  • 51
    Used for Web
  • 46
    Managed memory
  • 45
    High Performance
  • 44
    Native threads
  • 43
    Statically typed
  • 35
    Easy to read
  • 33
    Great Community
  • 29
    Reliable platform
  • 24
    Sturdy garbage collection
  • 24
    JVM compatibility
  • 22
    Cross Platform Enterprise Integration
  • 20
    Universal platform
  • 20
    Good amount of APIs
  • 18
    Great Support
  • 14
    Great ecosystem
  • 11
    Lots of boilerplate
  • 11
    Backward compatible
  • 10
    Everywhere
  • 9
    Excellent SDK - JDK
  • 7
    Static typing
  • 7
    Cross-platform
  • 7
    It's Java
  • 6
    Portability
  • 6
    Long term language
  • 6
    Better than Ruby
  • 6
    Mature language thus stable systems
  • 5
    Vast Collections Library
  • 5
    Clojure
  • 5
    Used for Android development
  • 4
    Old tech
  • 4
    Most developers favorite
  • 3
    History
  • 3
    Stable platform, which many new languages depend on
  • 3
    Best martial for design
  • 3
    Great Structure
  • 3
    Javadoc
  • 3
    Testable
  • 2
    Faster than python
  • 2
    Type Safe
  • 0
    Job
CONS OF JAVA
  • 33
    Verbosity
  • 27
    NullpointerException
  • 17
    Nightmare to Write
  • 16
    Overcomplexity is praised in community culture
  • 12
    Boiler plate code
  • 8
    Classpath hell prior to Java 9
  • 6
    No REPL
  • 4
    No property
  • 3
    Code are too long
  • 2
    Non-intuitive generic implementation
  • 2
    There is not optional parameter
  • 2
    Floating-point errors
  • 1
    Java's too statically, stronglly, and strictly typed
  • 1
    Returning Wildcard Types
  • 1
    Terrbible compared to Python/Batch Perormence

related Java posts

Conor Myhrvold
Tech Brand Mgr, Office of CTO at Uber · | 43 upvotes · 7.3M 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
Kamil Kowalski
Lead Architect at Fresha · | 28 upvotes · 2.7M views

When you think about test automation, it’s crucial to make it everyone’s responsibility (not just QA Engineers'). We started with Selenium and Java, but with our platform revolving around Ruby, Elixir and JavaScript, QA Engineers were left alone to automate tests. Cypress was the answer, as we could switch to JS and simply involve more people from day one. There's a downside too, as it meant testing on Chrome only, but that was "good enough" for us + if really needed we can always cover some specific cases in a different way.

See more
VBScript logo

VBScript

50
49
0
An Active Scripting language that is modeled on Visual Basic
50
49
+ 1
0
PROS OF VBSCRIPT
    Be the first to leave a pro
    CONS OF VBSCRIPT
      Be the first to leave a con

      related VBScript posts

      PowerShell logo

      PowerShell

      3.8K
      966
      0
      A task automation and configuration management framework
      3.8K
      966
      + 1
      0
      PROS OF POWERSHELL
        Be the first to leave a pro
        CONS OF POWERSHELL
          Be the first to leave a con

          related PowerShell posts

          Shared insights
          on
          PowerShellPowerShellPythonPython

          I currently work helpdesk and have been for about 6 years. I am looking to become more valuable, and I can't decide what route to take? Python is of interest, and so is PowerShell. What are some recommendations? Maybe something that would benefit a helpdesk position or even get into a network administrator.

          See more

          Objective: I am trying to build a custom service that will create VMs in Azure, based on inputs taken from a web interface. I want the backend code that interacts with Azure to be PowerShell.

          Ask: Hoping to find help with deciding the simplest architecture of tools to achieve this.

          What I have so far with my Limited Knowledge: I am new to Azure and Jenkins. I arrived at Jenkins coz it can run PowerShell and has API that can be called to trigger a job. Although integrating with it over the web seems problematic since its on-prem network. I hear it is possible using the VPN. For the Web, I hope to use Azure Web App with Python/Node.js that I can manage to make API calls to Jenkins.

          Is there a better way? I just need help getting the right directions; I will walk the way.

          See more
          PHP logo

          PHP

          138K
          76.6K
          4.6K
          A popular general-purpose scripting language that is especially suited to web development
          138K
          76.6K
          + 1
          4.6K
          PROS OF PHP
          • 951
            Large community
          • 817
            Open source
          • 765
            Easy deployment
          • 487
            Great frameworks
          • 386
            The best glue on the web
          • 235
            Continual improvements
          • 184
            Good old web
          • 145
            Web foundation
          • 135
            Community packages
          • 125
            Tool support
          • 35
            Used by wordpress
          • 34
            Excellent documentation
          • 28
            Used by Facebook
          • 23
            Because of Symfony
          • 21
            Dynamic Language
          • 16
            Easy to learn
          • 16
            Cheap hosting
          • 14
            Awesome Language and easy to implement
          • 14
            Fast development
          • 14
            Very powerful web language
          • 13
            Composer
          • 12
            Because of Laravel
          • 11
            Flexibility, syntax, extensibility
          • 8
            Easiest deployment
          • 7
            Fastestest Time to Version 1.0 Deployments
          • 7
            Worst popularity quality ratio
          • 7
            Fast
          • 7
            Short development lead times
          • 7
            Readable Code
          • 6
            Faster then ever
          • 6
            Most of the web uses it
          • 5
            Simple, flexible yet Scalable
          • 5
            Open source and large community
          • 4
            Cheap to own
          • 4
            Easy to learn, a big community, lot of frameworks
          • 4
            Is like one zip of air
          • 4
            Large community, easy setup, easy deployment, framework
          • 4
            Has the best ecommerce(Magento,Prestashop,Opencart,etc)
          • 4
            Easy to use and learn
          • 4
            I have no choice :(
          • 4
            Open source and great framework
          • 3
            Great developer experience
          • 2
            Fault tolerance
          • 2
            Great flexibility. From fast prototyping to large apps
          • 2
            Interpreted at the run time
          • 2
            FFI
          • 2
            Safe the planet
          • 2
            Hard not to use
          • 2
            Used by STOMT
          • 2
            Walk away
          • 1
            Secure
          • 1
            Simplesaml
          • 1
            Bando
          • 0
            Secure
          CONS OF PHP
          • 21
            So easy to learn, good practices are hard to find
          • 16
            Inconsistent API
          • 8
            Fragmented community
          • 6
            Not secure
          • 3
            No routing system
          • 2
            Old
          • 2
            Hard to debug

          related PHP posts

          Nick Rockwell
          SVP, Engineering at Fastly · | 44 upvotes · 2.6M views

          When I joined NYT there was already broad dissatisfaction with the LAMP (Linux Apache HTTP Server MySQL PHP) Stack and the front end framework, in particular. So, I wasn't passing judgment on it. I mean, LAMP's fine, you can do good work in LAMP. It's a little dated at this point, but it's not ... I didn't want to rip it out for its own sake, but everyone else was like, "We don't like this, it's really inflexible." And I remember from being outside the company when that was called MIT FIVE when it had launched. And been observing it from the outside, and I was like, you guys took so long to do that and you did it so carefully, and yet you're not happy with your decisions. Why is that? That was more the impetus. If we're going to do this again, how are we going to do it in a way that we're gonna get a better result?

          So we're moving quickly away from LAMP, I would say. So, right now, the new front end is React based and using Apollo. And we've been in a long, protracted, gradual rollout of the core experiences.

          React is now talking to GraphQL as a primary API. There's a Node.js back end, to the front end, which is mainly for server-side rendering, as well.

          Behind there, the main repository for the GraphQL server is a big table repository, that we call Bodega because it's a convenience store. And that reads off of a Kafka pipeline.

          See more
          Simon Reymann
          Senior Fullstack Developer at QUANTUSflow Software GmbH · | 27 upvotes · 4.1M views

          Our whole Node.js backend stack consists of the following tools:

          • Lerna as a tool for multi package and multi repository management
          • npm as package manager
          • NestJS as Node.js framework
          • TypeScript as programming language
          • ExpressJS as web server
          • Swagger UI for visualizing and interacting with the API’s resources
          • Postman as a tool for API development
          • TypeORM as object relational mapping layer
          • JSON Web Token for access token management

          The main reason we have chosen Node.js over PHP is related to the following artifacts:

          • Made for the web and widely in use: Node.js is a software platform for developing server-side network services. Well-known projects that rely on Node.js include the blogging software Ghost, the project management tool Trello and the operating system WebOS. Node.js requires the JavaScript runtime environment V8, which was specially developed by Google for the popular Chrome browser. This guarantees a very resource-saving architecture, which qualifies Node.js especially for the operation of a web server. Ryan Dahl, the developer of Node.js, released the first stable version on May 27, 2009. He developed Node.js out of dissatisfaction with the possibilities that JavaScript offered at the time. The basic functionality of Node.js has been mapped with JavaScript since the first version, which can be expanded with a large number of different modules. The current package managers (npm or Yarn) for Node.js know more than 1,000,000 of these modules.
          • Fast server-side solutions: Node.js adopts the JavaScript "event-loop" to create non-blocking I/O applications that conveniently serve simultaneous events. With the standard available asynchronous processing within JavaScript/TypeScript, highly scalable, server-side solutions can be realized. The efficient use of the CPU and the RAM is maximized and more simultaneous requests can be processed than with conventional multi-thread servers.
          • A language along the entire stack: Widely used frameworks such as React or AngularJS or Vue.js, which we prefer, are written in JavaScript/TypeScript. If Node.js is now used on the server side, you can use all the advantages of a uniform script language throughout the entire application development. The same language in the back- and frontend simplifies the maintenance of the application and also the coordination within the development team.
          • Flexibility: Node.js sets very few strict dependencies, rules and guidelines and thus grants a high degree of flexibility in application development. There are no strict conventions so that the appropriate architecture, design structures, modules and features can be freely selected for the development.
          See more