What is Node.js and what are its top alternatives?
Top Alternatives to Node.js
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’s syntax to express your application’s components clearly and succinctly. It automatically synchronizes data from your UI (view) with your JavaScript objects (model) through 2-way data binding. ...
PHP
Fast, flexible and pragmatic, PHP powers everything from your blog to the most popular websites in the world. ...
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 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. ...
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. ...
Django
Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design. ...
ASP.NET
.NET is a developer platform made up of tools, programming languages, and libraries for building many different types of applications. ...
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! ...
Node.js alternatives & related posts
- Quick to develop885
- Great mvc589
- Powerful571
- Restful522
- Backed by google504
- Two-way data binding350
- Javascript344
- Open source329
- Dependency injection306
- Readable197
- Fast75
- Directives64
- Great community63
- Free55
- Extend html vocabulary38
- Components29
- Easy to test25
- Easy to learn24
- Easy to templates23
- Great documentation23
- Easy to start21
- Awesome17
- Light weight17
- Angular 2.014
- Javascript mvw framework14
- Great extensions13
- Efficient13
- Easy to prototype with10
- High performance8
- Lots of community modules8
- Coffeescript8
- Two-way binding7
- Mvc7
- Easy to e2e6
- Clean and keeps code readable6
- One of the best frameworks5
- Easy for small applications5
- Works great with jquery4
- Fast development4
- Hierarchical Data Structure2
- The two-way Data Binding is awesome2
- Community2
- Typescript2
- Declarative programming2
- I do not touch DOM2
- Be a developer, not a plumber.2
- Dart2
- Fkin awesome1
- Scopes1
- The powerful of binding, routing and controlling routes1
- Supports api , easy development1
- Opinionated in the right areas1
- Amazing community support1
- Common Place1
- Very very useful and fast framework for development.1
- Great1
- Programming fun again1
- Readable code1
- Linear learning curve1
- Complex10
- Dependency injection3
- Learning Curve2
- Event Listener Overload2
- Hard to learn1
related AngularJS posts
















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.
























Our whole Vue.js frontend stack (incl. SSR) consists of the following tools:
- Nuxt.js consisting of Vue CLI, Vue Router, vuex, Webpack and Sass (Bundler for HTML5, CSS 3), Babel (Transpiler for JavaScript),
- Vue Styleguidist as our style guide and pool of developed Vue.js components
- Vuetify as Material Component Framework (for fast app development)
- TypeScript as programming language
- Apollo / GraphQL (incl. GraphiQL) for data access layer (https://apollo.vuejs.org/)
- ESLint, TSLint and Prettier for coding style and code analyzes
- Jest as testing framework
- Google Fonts and Font Awesome for typography and icon toolkit
- NativeScript-Vue for mobile development
The main reason we have chosen Vue.js over React and AngularJS is related to the following artifacts:
- Empowered HTML. Vue.js has many similar approaches with Angular. This helps to optimize HTML blocks handling with the use of different components.
- Detailed documentation. Vue.js has very good documentation which can fasten learning curve for developers.
- Adaptability. It provides a rapid switching period from other frameworks. It has similarities with Angular and React in terms of design and architecture.
- Awesome integration. Vue.js can be used for both building single-page applications and more difficult web interfaces of apps. Smaller interactive parts can be easily integrated into the existing infrastructure with no negative effect on the entire system.
- Large scaling. Vue.js can help to develop pretty large reusable templates.
- Tiny size. Vue.js weights around 20KB keeping its speed and flexibility. It allows reaching much better performance in comparison to other frameworks.
PHP
- Large community938
- Open source800
- Easy deployment754
- Great frameworks480
- The best glue on the web384
- Continual improvements230
- Good old web180
- Web foundation141
- Community packages130
- Tool support123
- Used by wordpress31
- Excellent documentation30
- Used by Facebook25
- Because of Symfony23
- Dynamic Language16
- Awesome Language and easy to implement14
- Fast development12
- Cheap hosting11
- Very powerful web language11
- Flexibility, syntax, extensibility9
- Composer9
- Because of Laravel9
- Easy to learn7
- Short development lead times7
- Worst popularity quality ratio7
- Fastestest Time to Version 1.0 Deployments7
- Readable Code7
- Easiest deployment6
- Fast6
- Faster then ever6
- Most of the web uses it5
- Open source and large community4
- I have no choice :(4
- Easy to learn, a big community, lot of frameworks3
- Is like one zip of air3
- Has the best ecommerce(Magento,Prestashop,Opencart,etc)3
- Cheap to own3
- Simple, flexible yet Scalable3
- Easy to use and learn3
- Hard not to use2
- Large community, easy setup, easy deployment, framework2
- Safe the planet2
- Walk away2
- Great flexibility. From fast prototyping to large apps2
- Used by STOMT2
- Great developer experience2
- Open source and great framework2
- Fault tolerance2
- FFI2
- Interpreted at the run time2
- So easy to learn, good practices are hard to find19
- Inconsistent API16
- Fragmented community8
- Not secure5
- No routing system2
- Hard to debug1
- Old1
related PHP posts
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.
















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.
Python
- Great libraries1.1K
- Readable code921
- Beautiful code815
- Rapid development764
- Large community669
- Open source414
- Elegant375
- Great community264
- Object oriented257
- Dynamic typing206
- Great standard library68
- Very fast51
- Functional programming47
- Scientific computing33
- Easy to learn31
- Great documentation29
- Matlab alternative25
- Productivity22
- Easy to read21
- Simple is better than complex19
- It's the way I think17
- Imperative17
- Very programmer and non-programmer friendly15
- Powerful14
- Free14
- Fast and simple13
- Powerfull language13
- Scripting12
- Explicit is better than implicit9
- Machine learning support9
- Unlimited power8
- Ease of development8
- Import antigravity7
- Clear and easy and powerfull7
- It's lean and fun to code6
- Print "life is short, use python"6
- Great for tooling5
- Fast coding and good for competitions5
- There should be one-- and preferably only one --obvious5
- Python has great libraries for data processing5
- High Documented language5
- I love snakes5
- Although practicality beats purity5
- Flat is better than nested5
- Readability counts4
- Multiple Inheritence3
- Complex is better than complicated3
- Lists, tuples, dictionaries3
- Rapid Prototyping3
- Plotting3
- Socially engaged community3
- Great for analytics3
- Beautiful is better than ugly3
- CG industry needs3
- No cruft2
- Easy to learn and use2
- List comprehensions2
- Generators2
- Special cases aren't special enough to break the rules2
- Now is better than never2
- If the implementation is hard to explain, it's a bad id2
- If the implementation is easy to explain, it may be a g2
- Simple and easy to learn2
- Import this2
- It is Very easy , simple and will you be love programmi1
- Because of Netflix1
- Web scraping1
- Better outcome1
- Batteries included1
- Powerful language for AI1
- Easy to setup and run smooth1
- Pip install everything1
- Only one way to do it1
- A-to-Z1
- Many types of collections1
- Flexible and easy1
- Pro0
- Powerful0
- Still divided between python 2 and python 348
- Performance impact26
- Poor syntax for anonymous functions26
- Package management is a mess18
- GIL18
- Too imperative-oriented13
- Hard to understand12
- Dynamic typing10
- Very slow8
- Not everything is expression8
- Indentations matter a lot7
- Explicit self parameter in methods7
- Poor DSL capabilities6
- No anonymous functions6
- Requires C functions for dynamic modules6
- The "lisp style" whitespaces5
- Hard to obfuscate5
- The benevolent-dictator-for-life quit4
- Lack of Syntax Sugar leads to "the pyramid of doom"4
- Threading4
- Fake object-oriented programming4
- Incredibly slow4
- Not suitable for autocomplete3
- Official documentation is unclear.3
- Circular import2
- Training wheels (forced indentation)1
- Meta classes1
related Python posts











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
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
JavaScript
- Can be used on frontend/backend1.6K
- It's everywhere1.5K
- Lots of great frameworks1.1K
- Fast881
- Light weight730
- Flexible408
- You can't get a device today that doesn't run js374
- Non-blocking i/o278
- Ubiquitousness227
- Expressive182
- Extended functionality to web pages44
- Relatively easy language40
- Executed on the client side37
- Relatively fast to the end user22
- Pure Javascript18
- Functional programming13
- Async6
- Full-stack4
- Because I love functions4
- Setup is easy4
- JavaScript is the New PHP4
- Like it or not, JS is part of the web standard3
- Can be used in backend, frontend and DB3
- Its everywhere3
- Expansive community3
- Future Language of The Web3
- Evolution of C2
- For the good parts2
- Love-hate relationship2
- Popularized Class-Less Architecture & Lambdas2
- Everyone use it2
- Easy to hire developers2
- Supports lambdas and closures2
- Versitile1
- Powerful1
- 1.6K Can be used on frontend/backend1
- Can be used both as frontend and backend as well1
- Agile, packages simple to use1
- Can be used on frontend/backend/Mobile/create PRO Ui1
- No need to use PHP1
- It's fun1
- Its fun and fast1
- Most Popular Language in the World1
- Hard not to use1
- Stockholm Syndrome1
- Photoshop has 3 JS runtimes built in1
- Promise relationship1
- It let's me use Babel & Typescript1
- Function expressions are useful for callbacks1
- Scope manipulation1
- What to add1
- Clojurescript1
- Client processing1
- Everywhere1
- Only Programming language on browser1
- Nice1
- Client side JS uses the visitors CPU to save Server Res0
- Because it is so simple and lightweight0
- Easy to make something0
- Easy0
- A constant moving target, too much churn21
- Horribly inconsistent20
- Javascript is the New PHP13
- No ability to monitor memory utilitization8
- Shows Zero output in case of ANY error5
- Can be ugly4
- Thinks strange results are better than errors3
- No GitHub1
related JavaScript posts
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.











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
- Components737
- Virtual dom645
- Performance552
- Simplicity477
- Composable433
- Data flow171
- Declarative156
- Isn't an mvc framework121
- Reactive updates111
- Explicit app state109
- JSX28
- Learn once, write everywhere20
- Uni-directional data flow17
- Easy to Use16
- Works great with Flux Architecture14
- Great perfomance9
- Built by Facebook6
- Feels like the 90s4
- Speed4
- Scalable4
- Functional3
- Javascript3
- Easy to start3
- Server side views3
- TypeScript support2
- Great migration pathway for older systems2
- SSR2
- Fast evolving2
- Simple, easy to reason about and makes you productive2
- Fancy third party tools2
- Excellent Documentation2
- Scales super well2
- Just the View of MVC2
- Server Side Rendering2
- Awesome2
- Cross-platform2
- Hooks2
- Rich ecosystem2
- Split your UI into components with one true state1
- Props1
- Fragments1
- Sharable1
- Every decision architecture wise makes sense1
- Permissively-licensed1
- Super easy1
- Beautiful and Neat Component Management1
- Has functional components1
- Very gentle learning curve1
- Closer to standard JavaScript and HTML than others1
- Sdfsdfsdf1
- Strong Community1
- Has arrow functions1
- Allows creating single page applications1
- Simple1
- Start simple0
- Requires discipline to keep architecture organized31
- No predefined way to structure your app19
- Need to be familiar with lots of third party packages18
- JSX6
- Not enterprise friendly6
- State consistency with backend neglected1
- One-way binding only1
related React posts









I am starting to become a full-stack developer, by choosing and learning .NET Core for API Development, Angular CLI / React for UI Development, MongoDB for database, as it a NoSQL DB and Flutter / React Native for Mobile App Development. Using Postman, Markdown and Visual Studio Code for development.
I've used both Vue.js and React and I would stick with React. I know that Vue.js seems easier to write and its much faster to pick up however as you mentioned above React has way more ready made components you can just plugin, and the community for React is very big.
It might be a bit more of a steep learning curve for your friend to learn React over Vue.js but I think in the long run its the better option.
- Rapid development602
- Open source446
- Great community386
- Easy to learn337
- Mvc249
- Elegant202
- Beautiful code201
- Free180
- Great packages179
- Great libraries167
- Restful55
- Comes with auth and crud admin panel52
- Powerful51
- Great documentation48
- Great for web46
- Python36
- Great orm31
- Great for api27
- All included21
- Web Apps17
- Fast16
- Used by top startups14
- Clean12
- Easy setup11
- Sexy10
- Convention over configuration8
- ORM5
- Allows for very rapid development with great libraries5
- The Django community5
- Mvt3
- Its elegant and practical3
- Great MVC and templating engine3
- Easy to use2
- Easy to develop end to end AI Models2
- Easy Structure , useful inbuilt library2
- Cross-Platform2
- Fast prototyping2
- Full stack2
- Batteries included2
- Easy2
- Great peformance1
- Many libraries1
- Zero code burden to change databases1
- Have not found anything that it can't do1
- Map1
- Scaffold1
- Modular1
- Very quick to get something up and running1
- Just the right level of abstraction1
- Python community1
- Full-Text Search1
- King of backend world1
- Underpowered templating24
- Underpowered ORM19
- Autoreload restarts whole server18
- URL dispatcher ignores HTTP method15
- Internal subcomponents coupling10
- Not nodejs7
- Admin5
- Configuration hell4
- Not as clean and nice documentation like Laravel3
- Bloated admin panel included2
- Not typed2
- Python2
- Overwhelming folder structure2
- InEffective Multithreading1
related Django posts
Simple controls over complex technologies, as we put it, wouldn't be possible without neat UIs for our user areas including start page, dashboard, settings, and docs.
Initially, there was Django. Back in 2011, considering our Python-centric approach, that was the best choice. Later, we realized we needed to iterate on our website more quickly. And this led us to detaching Django from our front end. That was when we decided to build an SPA.
For building user interfaces, we're currently using React as it provided the fastest rendering back when we were building our toolkit. It’s worth mentioning Uploadcare is not a front-end-focused SPA: we aren’t running at high levels of complexity. If it were, we’d go with Ember.js.
However, there's a chance we will shift to the faster Preact, with its motto of using as little code as possible, and because it makes more use of browser APIs. One of our future tasks for our front end is to configure our Webpack bundler to split up the code for different site sections. For styles, we use PostCSS along with its plugins such as cssnano which minifies all the code.
All that allows us to provide a great user experience and quickly implement changes where they are needed with as little code as possible.
Hey, so I developed a basic application with Python. But to use it, you need a python interpreter. I want to add a GUI to make it more appealing. What should I choose to develop a GUI? I have very basic skills in front end development (CSS, JavaScript). I am fluent in python. I'm looking for a tool that is easy to use and doesn't require too much code knowledge. I have recently tried out Flask, but it is kinda complicated. Should I stick with it, move to Django, or is there another nice framework to use?
ASP.NET
- Great mvc6
related ASP.NET posts
Finding the most effective dev stack for a solo developer. Over the past year, I've been looking at many tech stacks that would be 'best' for me, as a solo, indie, developer to deliver a desktop app (Windows & Mac) plus mobile - iOS mainly. Initially, Xamarin started to stand-out. Using .NET Core as the run-time, Xamarin as the native API provider and Xamarin Forms for the UI seemed to solve all issues. But, the cracks soon started to appear. Xamarin Forms is mobile only; the Windows incarnation is different. There is no Mac UI solution (you have to code it natively in Mac OS Storyboard. I was also worried how Xamarin Forms , if I was to use it, was going to cope, in future, with Apple's new SwiftUI and Google's new Fuchsia.
This plethora of techs for the UI-layer made me reach for the safer waters of using Web-techs for the UI. Lovely! Consistency everywhere (well, mostly). But that consistency evaporates when platform issues are addressed. There are so many web frameworks!
But, I made a simple decision. It's just me...I am clever, but there is no army of coders here. And I have big plans for a business app. How could just 1 developer go-on to deploy a decent app to Windows, iPhone, iPad & Mac OS? I remembered earlier days when I've used Microsoft's ASP.NET to scaffold - generate - loads of Code for a web-app that I needed for several charities that I worked with. What 'generators' exist that do a lot of the platform-specific rubbish, allow the necessary customisation of such platform integration and provide a decent UI?
I've placed my colours to the Quasar Framework mast. Oh dear, that means Electron desktop apps doesn't it? Well, Ive had enough of loads of Developers saying that "the menus won't look native" or "it uses too much RAM" and so on. I've been using non-native UI-wrapped apps for ages - the date picker in Outlook on iOS is way better than the native date-picker and I'd been using it for years without getting hot under the collar about it. Developers do get so hung-up on things that busy Users hardly notice; don't you think?. As to the RAM usage issue; that's a bit true. But Users only really notice when an app uses so much RAM that the machine starts to page-out. Electron contributes towards that horizon but does not cause it. My Users will be business-users after all. Somewhat decent machines.
Looking forward to all that lovely Vue.js around my TypeScript and all those really, really, b e a u t I f u l UI controls of Quasar Framework . Still not sure that 1 dev can deliver all that... but I'm up for trying...
I found Heroku to be a great option to get ExpressJS up and running with very little hustle. The free tier is great, but I'd recommend to set up a cronjob to visit your site every few minutes so that the server stays awake. Netlify was the option to host the front-end because doing the server side rendering on #Heroku would have taken a little more time than I'd like to. For the moment pre-rendering the app with prerender-spa-plugin is enough to help with #seo. Puppeteer was my choice over other options because it made it easier to scrape websites made on ASP.NET which is what I needed in this case. And Vue.js is my top choice at the moment because it's really beginner friendly and it has a lot of the features I like about Angular 2 and React. vuex is a must in most of the app I build.
Java
- Great libraries572
- Widely used433
- Excellent tooling395
- Huge amount of documentation available378
- Large pool of developers available328
- Open source197
- Excellent performance192
- Great development150
- Used for android143
- Vast array of 3rd party libraries142
- Compiled Language54
- Used for Web46
- Managed memory42
- Native threads42
- High Performance40
- Statically typed35
- Easy to read31
- Great Community29
- Reliable platform25
- JVM compatibility23
- Sturdy garbage collection22
- Cross Platform Enterprise Integration19
- Universal platform18
- Great Support16
- Good amount of APIs16
- Lots of boilerplate11
- Great ecosystem10
- Backward compatible10
- Everywhere9
- Excellent SDK - JDK7
- Mature language thus stable systems6
- Better than Ruby5
- Portability5
- Cross-platform5
- Static typing5
- Clojure5
- It's Java5
- Old tech4
- Vast Collections Library4
- Most developers favorite3
- Stable platform, which many new languages depend on3
- Long term language3
- Great Structure3
- Best martial for design3
- Used for Android development3
- Testable2
- Javadoc1
- Verbosity29
- NullpointerException23
- Overcomplexity is praised in community culture15
- Nightmare to Write13
- Boiler plate code10
- Classpath hell prior to Java 98
- No REPL6
- No property4
- Code are too long2
- There is not optional parameter2
- Floating-point errors2
- Terrbible compared to Python/Batch Perormence1
- Java's too statically, stronglly, and strictly typed1
- Non-intuitive generic implementation1
- Returning Wildcard Types1
related Java posts











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