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

Java

132K
99.8K
+ 1
3.7K
JavaScript

349.2K
265.8K
+ 1
8.1K
Add tool

Java vs JavaScript: What are the differences?

Java and JavaScript are both popular programming languages. Here are the key differences between Java and JavaScript:

  1. Language Purpose and Execution Environment: Java is a general-purpose programming language designed for building scalable applications. It is compiled to bytecode and runs on the Java Virtual Machine (JVM), which allows Java programs to be executed on any platform. JavaScript, on the other hand, is primarily used for client-side web development. It is interpreted by web browsers and runs in the browser's JavaScript engine, providing dynamic behavior to web pages.

  2. Typing and Object-Oriented Programming: Java is a statically typed language, meaning that variable types are explicitly declared. It follows a strong type system and supports strict object-oriented programming (OOP) principles such as classes, interfaces, and inheritance. JavaScript, on the other hand, is a dynamically typed language, allowing for flexibility and more concise coding. It is based on a prototype-based object-oriented programming model and supports object creation and manipulation at runtime.

  3. Application Scope: Java is commonly used for developing large-scale enterprise applications, including server-side applications, web services, and Android apps. It offers extensive libraries, frameworks, and tools that facilitate enterprise development. JavaScript, on the other hand, is primarily used for web development and runs directly in web browsers. It provides functionalities for client-side scripting, manipulating the Document Object Model (DOM), and creating interactive web interfaces. JavaScript is also widely used for server-side development with frameworks like Node.js.

  4. Concurrency and Multithreading: Java has built-in support for multithreading and provides a robust concurrency model. It offers thread management and synchronization mechanisms to create multithreaded applications for concurrent processing and improved performance. JavaScript, however, is single-threaded by nature, meaning it can execute only one task at a time. However, with the introduction of asynchronous programming using callbacks, promises, and async/await, JavaScript can handle concurrent operations efficiently.

  5. Performance and Optimization: Java's bytecode compilation and JVM execution enable optimization for efficient applications. The JIT compilation in the JVM dynamically enhances code performance. Although JavaScript's interpretation may have limitations, modern engines like V8 (e.g., in Google Chrome) have greatly improved JavaScript's speed through JIT compilation and runtime optimizations.

In summary, Java is a statically typed language with a strong focus on enterprise-level application development and runs on the JVM. JavaScript, on the other hand, is a dynamically typed language primarily used for web development and executed within web browsers.

Advice on Java and JavaScript
Nikhilesh Swaminathan
Needs advice
on
JavaJavaJavaScriptJavaScript
and
PythonPython
Please Help in creating a test framework

Hello Devs,

I am planning to implement a ETL test system for checking data quality and business use cases. I am confused on what stack to use. Any advice on the below will be very helpful.

  1. Any existing frameworks and its source code for help
  2. Any other stack apart from the mentioned stack (that might be suitable)
  3. Any ideas for features are welcomed.
  4. The usage of multiple BE stacks.
See more
Replies (1)

If you want to create using Python language, Robot Framework is one very helpful tool to improve your test scripting and we have a lot of methods created by the community. If you want to use Javascript, Cypress in terms of benefits is the better option to create and maintain tests, and run and generate reports in many browsers is really easy with them.

See more
Needs advice
on
C#C#JavaScriptJavaScript
and
KotlinKotlin

Hello everybody,

I'm Syed, recently graduated from university. I studied C++ as the first programming language and later I have (a little) experience working with C#. I also have a basic understanding of Kotlin, JavaScript and Python. As of today, I am studying Kotlin from https://developer.android.com/.

Please give me some tips about my career. Which language should I choose in today's modern era? Whether I go with Web development or work on Android app development. Thank you for your assistance.

See more
Replies (1)
Recommends
on
DartDartFlutterFlutterReactReact

Hi Syed, I wish you all the best. I'm an experienced programmer with more than 15 years of experience. Recently in my company, we were trying to hire a MERN Full-Stack developer and we found many who can code in React but few who were capable of thinking logically and actually able to solve the business problem. Learn any language or package, but keep in mind to learn for a goal. Syntaxes don't matter, we hire to achieve goals. Small to medium companies, usually hire full-stack developers due to the lack of resources. So it would be great to learn the following: For Web, I would suggest "React", and for mobile development, "Flutter" comes in handy with lots of promising future. How about learning both? much better but it's all about you. Good luck!

See more
Needs advice
on
AngularJSAngularJSC++C++
and
JavaJava

I will use Elixir for personal projects. It's productive, reliable, secure, simple, etc. But when performance is critical, I need job opportunities, when I work with mutability, which do I pick? I need advice on which "bureaucratic, mainstream" programming language to pick when wanting performance and jobs. Elixir is often "slow", and it hasn't boomed yet the way Golang and Rust have, so which?

See more
Replies (1)
FREDRICK OLUOCH
Lead Software Developer at Blaqueyard · | 3 upvotes · 54.8K views
Recommends
on
ElixirElixirRustRust
at

Well for those performant tasks maybe you can use Rust nifs for elixir. Elixir enables to write fault-tolerant, scalable code for concurrent systems, and as such, it is perfect for messaging systems and web applications that might need to handle a lot of users efficiently. But if you need speed you can plug in Rust or write a microservice using Goland/Rust.

See more
Sachin K
Cloud Engineer and Developer · | 6 upvotes · 90.8K views
Needs advice
on
GolangGolangJavaJava
and
PythonPython

Hello Folks, my first time here, and for requesting advice. I am trying to create some automation from my cloud stack on AWS to something more cloud native. I have containerised the services, however, I am stuck at DB, my Data warehouse, and messaging. Would love some recommendations on how can I automate this for some future work too.

See more
Replies (1)
Simon Banks
Principal Software Engineer at AtCore Tech · | 3 upvotes · 87.2K views
Recommends

I recommend cloud-init for base setup of machines and configuring them.. Its simple (YAML file) and is industry standard. Even works on bare metal as well as cloud.

See more
Paul Morgan
Researcher at Working on it · | 25 upvotes · 245.1K views
Needs advice
on
JavaScriptJavaScriptPythonPython
and
ReactReact

Hey everyone, I have a matrix chart drawn in HTML5/CSS 3 dominantly using CSS grid. I would like to add interactive features and am unsure about the best tool. My programming knowledge is limited to 2 semesters of Java in college, so I'd have to learn the language as I go. I am open to anything, but the selected languages would be useful in future projects.

Here are the features I am attempting to add to the site linked as my blog:

  • Assign over 120 attributes each to over 400 elements (probably in a DB)

  • Procedurally position elements in a matrix chart based on user-inputted filters (filtering and searching)

  • Procedurally position matrix elements based on attributes weighted by user-input

  • Change style of elements based on user input (highlighting)

  • Allow saving matrix chart states to be revisited or shared

  • Provide a user-friendly interface for users to submit the above input

  • Build several columns or matrices that are separate but related and seamless to the viewer

See more
Replies (5)

PyCharm + Python + Flask + Jinja2 is enough to build web server/ajax and JavaScript + JQuery (maybe React). You can write small easy application but also extreme high scalable application.

I know Java but it need 4x time more code and code is not clear (too much forced use of @decorators) - too complex and takes more memory :)

Remember if you code in Python it is easy to code in Java but if you code in Java you must understand that Python is much more flexible and powerful - also easier to learn.

See more

There are two main facets to interactivity - whether your frontend (Javacsript, HTML, CSS) is programmed to behave dynamically based on events and on any other preprogrammed behavior, and based on what information your server can send and receive and compute for the benefit of your frontend. For the former (a dynamic frontend) you'll need to use Javascript (or Typescript) in some form. For the latter (a server with custom behavior and data endpoints beyond just sending static HTML etc. files), any of the major languages can serve this purpose. However, if you are going to create a dynamic frontend with Javascript and don't know that language at all, then learning it will be a task in itself, and without knowing a backend language well either (probably the case with only two semesters of one language a while back), you ideally don't want to also have to learn a whole other backend language on top of that. That's where NodeJS comes in. It has essentially the same exact syntax as frontend Javascript (just different native libraries). Since you already need to learn Javascript to make the frontend behave dynamically, if you also want a custom backend, NodeJS will spare you a big learning curve on top of the existing learning curve of learning JS. NodeJS is also highly performant for low-compute high-volume requests, i.e. handling a large barrage of requests if each doesn't require a lot of complicated behavior on the backend. A lot of coding bootcamps teach this, commonly called "full stack JS", for this reason - it allows someone to learn a constellation of full stack web development skills from the mastery of one language syntax. NodeJS + ExpressJS is also one of the easiest backend languages + REST API library to use to build a backend. Look up "NodeJS Express Hello World", and you'll be shocked at how easy it is to build a basic server. As far as frontend frameworks go, if this project is very limited in scope, JQuery could be fine, but I'd highly recommend learning React for something more involved - it will be immensely easier to manage and maintain, and generally lends itself to much better and more intuitive code organization. Its use of components will also be somewhat familiar and intuitive from the object oriented programming you learned through Java. Create React App is great tool to use, especially when first learning React, to avoid all of the finicky nonsense in configuring transpilation etc.

See more
Recommends
on
ReactReact

React is hands-down the tool I recommend to add interactivity to your matrix. Because it is Javascript, it will leverage a lot of the formatting from Java. Python would be very foreign to you. React shines in allowing you to use OOP principles within the JavaScript language and it is really powerful, fast and browser friendly.

See more
Recommends

Use Javascript alongwith HTML CSS and you have complete set of application ready (even for future for PWA or bundled applications).

You can use charts.js library https://www.chartjs.org/ or https://apexcharts.com/javascript-chart-demos/. You can find many examples, you can have a look at https://codepen.io/ksarpotdar/pen/NWyqqZM?editors=0010

See more
Recommends
on
JavaScriptJavaScript

Ok. Clearly you forgot the best tool to give for interactive features. JavaScript! In particular I recommend the freeCodeCamp JavaScript course. Here it is.

See more
Needs advice
on
JavaScriptJavaScript
and
PythonPython

I am unhappy. When doing my research, I heard Python is useless. Data science is an unworthy field thanks to TensorFlow, and web scraping has also become pointless since the introduction of the PWA. Since PWAs are only frontend, I feel forced to learn JavaScript, and to ditch Python. I love Python with all my mind, it's simplicity, conciseness, and easiness as a tool. Here are a few questions:

  1. Should I forget Python and move on?
  2. Are there any PWA alternatives to JavaScript/TypeScript. I've been thinking of using Python for WASM and use HTML+CSS for the DOM to create the PWA. Is this possible?
  3. Why is JavaScript such a pain in the butt
  4. What's the point of me learning Python if it's not useful for web development?
See more
Replies (4)
Christophe Vermeulen
Engineer Counselor at IBPT · | 8 upvotes · 70.4K views
Recommends
on
PythonPython

You should not ditch or forget Python because of what you hear or because of one particular project. It's probably going to stay relevant and useful for the coming 20 years. If you're a programmer, you should however be prepared to use several tools, and programming languages are just part of the toolbox (like HTML or CSS, but also your IDE, powershell, linux commands, etc.) It's not for nothing that this site is called "stackshare".

See more
Adam Bouqdib
Software Engineer, Entrepreneur at ABE Media · | 6 upvotes · 69.2K views
Recommends
on
GolangGolang

Python is great for data science but it's not very performant and eats up loads of resources. I recommend that you give Go a go. It's easy to learn and very fast!

See more
Recommends

JavaScript is reduced Python. Python is powerful. If Python is not powerful you can mix it with C/C++ - this is not available in JavaScript in easy way. I am programmer and electrical engineer too - I think for research Python is the best thing. JavaScript is better for Web. I code in both very good.

See more
Recommends

Python is definitely not useless, It has a ton of usecases, with a huge community behind it, but not that performant and consumes lots of resources, I don't think you should abandon it, and PWA is kind a in its early stage, so I doubt that there will be any language better than js for developing it any time soon, so I guess there are no alternatives, but I guess you will like js/ts if you spend a little more time playing with it, and the same goes for wasm it is also in its early stage, and i guess web assembly and rust will be used a lot for that, and lets say you have built a frontend web app , now with the help of python + django or flask you can write server code, and learn a little bit about databases, then bravo you are a full stack dev.

See more
Needs advice
on
JavaJava
and
PHPPHP

Hi, I am working as a web developer (PHP, Laravel, AngularJS, and MySQL) with more than 8 years of experience and looking for a tech stack that pays better. I have a little bit of knowledge of Core Java. For better opportunities, Should I learn Java, Spring Boot or Python. Or should I learn Drupal, WordPress or Magento? Any guidance would be really appreciated! Thanks.

See more
Replies (3)
Recommends
on
FlaskFlaskJinja2Jinja2PythonPython

Hard to answer it depend on market. Python + Flask + Jinja2 is better that SpringBoot. Java can be paid better now but I think that future is Python. I code very good in PHP, Java, Python - prefer Python for less code and more effects. PHP is little ugly and limited to web.

See more
Ahmad Zain
Recommends
on
gogoPHPPHPPythonPython
at

easy and used in the most trending tech streams

See more
Recommends

What do you think about Node JS with React? I feel like this stack is fairly paid more than PHP.

I am also a Laravel developer, in process of transitioning towards Node js.

If you wanna personally connect with me, hit me up at @izshreyansh on twitter.

See more
Needs advice
on
C langC langJavaJava
and
PythonPython

Actually, I'll add, C++ and C# as well.

Well, I'm into Computer Science since 1996, so I understand a bit of everything plus a lot of different OSs, I study 10 hours per day every day. However back in the 90s we didn't have books or universities about programming, all were passed through if you knew somebody in that profession. Which I did and in that time, he showed me .NET and MySQL, and that offered a lot of jobs also Java. Today you have a lot of options but I'm already discarding new languages as I believe they will jot succeed.

My always dream was to create game, and software. I don't understand all programming concepts and I'm studying all languages at the same time, so I'm heavy loaded. But that keeps me more aware.

I made a choice: use Python for everything but if you want performance, apps, security, compatibility, Multiplatform. What should I choose? The real question here is: which language should I go 100% and that language will teach me all I need about programming BUT without getting lost in that language forever (I discard any Assembly possibility) and one that has full documentation, support and libraries.

In my experience: I found a lot of info for python and java. But hardly I have ever found anything for C lang, C++ and, what about C# (it's only for Windows, is it easy, I saw a lot of documentation). Thanks!!

See more
Replies (3)
Recommends
on
C++C++PythonPython

Python can be linked with C++ both language are similar in many places (using same libraries or concepts to build libraries) - except memory and static types. C++ is more assembler and have different syntax (need 3x-4x coding more).

If you do engineering it is perfect stack - Java is to slow in coding (4x more code) and little faster than Python - whatever it is hard to mix Java/C++ what is easy Python/C++.

In the most program you do not need super performance but if you need C++ is the best and have rich Object Language much richer than Java and more poor than Python. Python is true object language - everything is object.

Whatever sometimes more important is framework than language for specific use.

See more
Recommends
on
CythonCythonPythonPython

I would go with Python, it is fast to code, readable and very powerful without giving you too much to think about (e.g. memory management). If you're looking for speed, Cython is a fairly good way to get there, since Python is a C-based language it can be compiled to C using Cython and will get you a very significant boost in speed! You can also make use of C libraries if you prefer. The only downside to Cython over Python is that it is compiled and not interpreted, which can make debugging a pain (but you might find yourself doing most of the debugging in Python before switching to Cython). C languages are a bit of a pain to read up on (API, libraries etc.), but Stack Overflow has you covered in most cases!

See more
Recommends
on
JavaJava

All programming languages are cross platform except Java, but even that's not that bad. Performance: C(++), Go, Rust, Java, Ada, OCaml, Haskell, C# Apps: JS, TS, ReScript, Go, C(++), Java, Haskell, C#, Dart Security: Java, Go, Rust, COBOL, C(++), C# Compatibility: Java(due to it's VM), C(++), Go, C# Libraries: Java, Go, C(++), C# Documentation: Java, C(++) (since they are mature) What do you mean without getting lost in the language? I'd not advocate for C(or C++), considering it's hard to understand the memory, and it's for those into programming theory. You are looking for all you need. Go for Java, it has a library for everything, it has a reasonable learning curve, and pretty much you are going to encounter it everywhere- it's like a programming black hole you can't escape.

See more
fisher boy
Intern web developer at Stepway · | 9 upvotes · 100.2K views
Needs advice
on
CSS 3CSS 3HTML5HTML5
and
JavaScriptJavaScript
in

Hey I'm currently an undergraduate in computer science for almost 5 years now, still left with a few courses before I complete. I know that I'm not good at programming but still I choose developer based programming career approach, I have made plans to start my career in websites, etc, for that, I have purchased books related to HTML5, CSS , JavaScript. I'm currently learning HTML5 and CSS only and after this some JavaScript I am really confident in my decision but would love to know what an expert developer advice thanks in advance.

See more
Replies (7)

Whatever you do don't go WordPress path. Developers over-there tend to ignore system limitations and hardcode and overengineer their solutions so as to please their clients. If you are a beginner probably you'll get to work on someone else's shitty code and will be asked by your boss to do "yet another impossible thing with Wordpress". And... Probably... You'll do it.

My suggestion is: think in stacks and don't start too low. Starting with HTML, CSS3 and JavaScript is too low. Start on higher levels and with something practical. You'll have time for basics some time later and it would be much easier, because you'll see those technologies are compliment to what you do and not your main objective.

My suggestion for you:

  • Android Mobile App Development path (complex enough so you won't get bored)
  • All things web3 crypto, nft, virtual reality, blockchain path (has tons of computing web development tasks)
  • Cloud computing setup and administration path (good, because you say you're not good at programming)
  • Artificial intelligence and automation (this is future, people need this)

I've also found it helpful to think of each stack as a surface (find Google Images "radar chart") . Every time you try to learn something new you start in the center, with all technology-points overlapping. You are as low as you can get and you know nothing. Your job is to expand outwards each technology so as to make a stack-surace. The more surface the better. You'll see that some technological-aspects are easier to expand than others and plan your time accordingly.

Have a good start!

See more

You can also try starting with one of the big marketing agencies. Even if you don't feel like you're ready to start as a web developer (you likely are, though, they hire at all levels) you can start as a content author or similar supporting role until you're more comfortable, then transition into a development role within the same company when you're ready.

See more
Shanover Saiyed
Software Engineer (Web) · | 4 upvotes · 43.1K views
Recommends
on
SvelteSvelteVue.jsVue.js

I would recommend you to learn these quickly and get on learning a good front-end framework like Vue, ReactJs, Svelte. Pick up real world projects not just learn from books. Always keep learning about the new technologies used to develop things because IT Web development tools and their approach is growing faster than ever, you have got to keep up with those new techs and tools. Final advise, open any job portal, find your targeted job and see what requirements are their.

See more
Jose Vargas
Recommends
on
JavaScriptJavaScript

JavaScript is an ever growing technology with lots of opportunities and great depth for both front end and back end development. I would say that JavaScript is a safe bet in terms of furthering your career as a developer in 2022 and beyond. There’s lots of tools and frameworks based on this language that you would have to make decisions on which ones you want to become an expert. I recommend you follow interesting people that you admire to draw inspiration from. Such as Ben Awad or Jeff Delaney. Check this web page recommended to me by the latter on his YouTube channel “Fireship”: https://2021.stateofjs.com/en-US/resources/

See more
Recommends

I don't believe that you are confident about your decision to follow a career path as a developer. This migh be your department's fault and not necessarily yours. Most good developers are already working as developers at that age. Although your current status states that you are an intern you are struggling to find a good starting point. Since you are interested in website developmnet you can start learning programming using a mainstream CMS such as wordpress. Do you know how many companies and self employed guys make their living by customizing wordpess? But if you want to step out of the crowd then seek for junior jobs on a fintech or on a vertical market such as travel or betting. Search for online job oportunities and find out what technologies these guys use then take an online course and start learning the language. Within a month or two apply for a job as a junior and use as reference the online course.

See more
Recommends

JS + HTML + CSS only tackles the front-end of programming. I suggest you can start to learn by finding an open API related to something you love and then creating a website for it. (E.g. movies, documentaries, music, whatever you are into) Also you can do this dude's tutorials https://www.youtube.com/watch?v=dtKciwk_si4

Later on, when you've already one a few projects, start to learn the backend side of things (database + whatever you want - C#, Python...)

See more
Recommends

this article might help you. Web development is a combination of skills. not only developing skills but also SEO and other stuff. codehub.lk/web-development-skills-you-must-have/

See more
Needs advice
on
ASP.NETASP.NETJavaScriptJavaScript
and
Node.jsNode.js

I am about to complete my graduation with a computer science background. I want to pursue my career in software development. My front-end knowledge is very poor. I didn't like PHP so I didn't go for Laravel. My university offers a course on ASP.NET, I liked C# that's why I took asp.net. But now I think .net tech is unnecessarily complicated and most of the job offers available for .net are not for freshers. Should I try js and Node.js now? I mean as a fresher which tech stack should I choose for web development(Backend)?

See more
Replies (2)
Anthony Chiboucas
Software Engineer & Support Operations Lead · | 5 upvotes · 87.4K views
Recommends
on
JavaScriptJavaScriptNode.jsNode.js

Just don't .NET. It was a failed idea from the start. Node and javascript are easier to learn, with much wider adoption, and more active communities.

.NET is an old experiment in using a markup language to separate the UI from the business logic. The idea was that this would allow a small team of hyper-competent engineers to build the tooling and code for a large team of less-skilled front-end developers to leverage. In practice, leveraging that customized UI markup requires understanding and adjusting the underlying code. The result is that any UI change requires a hyper-competent .NET engineer.

However, many larger companies bought into it a long time ago, and now have a hard dependency on old monolithic .NET ecosystems, and they do need .NET developers to maintain them.

So, you can get a well paying .NET job without much difficulty. However, you'll neither like it, nor be doing anything interesting. There's no growth here, only a very long slow death of .NET (that'll probably take another 20 years).

Node and Javascript are sticking around, and still growing.

See more
Mahmoud Gabr
Software engineer at AlgoDriven · | 4 upvotes · 87.6K views
Recommends
on
ASP.NETASP.NET

What I can see, you are confusing yourself, if you studied .Net now it's better to work as .Net developer, and you will find opportunities as fresh. Just search and don't waste your time. After you get more experience in .Net, then you can learn NodeJS if you still need to learn it.

See more
Decisions about Java and JavaScript
Frank Neff

We're moving from Java to Kotlin with our Microservice Stack (Spring Boot) because it is excellently supported by framework and tools and the learning curve is not very steep Kotlin is way more straightforward and convenient to use while providing less boilerplate and more strictness, which finally leads to better code, which is more readable, maintainable and less error-prone. We especially like Kotlin's (functional) data structures, which are, e.g. compared to Scala, easier to understand and don't require deep knowledge in functional programming.

See more
Piotr Czarnas

We have chosen a mix of Java and Python for building an open source data observability tool. The application can work as a standalone command line tool with a rich shell interface (using even command completion). The Java ecosystem is more mature when it comes to connectivity to various databases using JDBC. Also picocli with jline3 let us make a very dynamic shell interface with command completion. The definitions of data quality checks that should be executed are defined in YAML files, backed by a YAML (in fact JSON) schema files. Our YAML files can be edited in Visual Studio Code (and other code editors) with support of the code completion. It is possible because all the data model is defined as pure Java classes for which we are generating a YAML/JSON schema. There is still place for Python because it is very popular in the database space. We are simply starting a Python interpreter in the background (from a Java code). Python is used to evaluate validation rules (defined as Python functions) and render SQL queries from Jinja2 templates.

See more

I wanted to develop a student app that possibly could be used by many teams (students from other schools)

I chose Ionic, because:

  • single codebase: previously, we used React Native for Android and Angular for web/PWA, which was troublesome

  • portability: runs on PWA (which is important, because iOS license is too expensive for school app), web, Android iOS (+ others, if needed)

  • full use of web technologies: Next.js, Tailwind, React in this example (in oppose to Flutter/Java/Kotlin)

  • stability and maintainability: low-entry level due to basic web technologies without new syntax (in oppose to React Native and Flutter), web is really stable and won't lose support (which doesn't have to be true with Flutter/Dart)

See more
Jacob M
Brand Director at NCINTEV · | 15 upvotes · 108.9K views

I’m well aware of the hate that php receives and some of it is well warranted. But the ease of implementation for so many features that I find myself needed on a daily basis is head and shoulders above what I could achieve with JavaScript on my backend. I can do more without the need of frameworks but I still have many options if I want that. Especially with database handling I find many of the complainants about php to be pure rhetoric.

See more

Python will be used in order to train machine learning models from our data. We chose python for this task because it is the most common language for machine learning. It has very performant libraries like numpy and scikit-learn that provide functionality for manipulating data and creating models that you cannot get in other languages like JavaScript and Java. Additionally, it is the most familiar language for us to use for machine learning because almost every machine learning course teaches ml using python.

See more

Javascript will be used for both our frontend and backend on the web service. JavaScript is ubiquitous as the language to use for the frontend. For the backend, we decided to create our server using JavaScript because of its easy setup; using Express we can create a server in just a few short lines of code. It is simple not only to run the server locally, but to host it as well because any major service will support the language. JavaScript is a simple language to code in and familiar among our team members, so using it will help speed up development. Using JavaScript allows us to use NodeJS and npm, so we can use packages to easily set up the server, connect to a database and other convenient utilities. We also considered Python for our server. It is also very simple to create a server in Python, especially using flask. However, the extra familiarity with the JavaScript language and the ease of using packages were enough for us to pick JavaScript as our language of choice.

See more

Python: The top language in machine learning area because of the various open-source libraries. Our company will rely on open-source libraries for development as well.

Amazon EC2: Training machine learning model needs to be running on independent 3rd party computing resources. AWS EC2 can provide a variety of virtual computing resources based on what users need.

React+Javascript: React is popular and everyone in the team is familiar with it. React is an open-source JavaScript library that is used for building user interfaces specifically for single-page applications.

ExpressJS: Everyone in the team has used expressJS for development. It can create server-side web applications faster and smarter.

Amazon RDS: relational database service and free to use

Postman: Tool for the team to test API endpoint.

Circle CI: is lightweight and open. Therefore for faster deployment jobs, one can execute their codes on CircleCI as it deploys on scalable and robust cloud servers.

Docker: Easily pack, ship, and run any application as a lightweight, portable, self-sufficient container, which can run virtually anywhere

Github+Git: Julian is from Github so no other choice for us 😎

Slack: Everyone likes it and it's free

See more

Python: Top one language in machine learning area because of the various open source libraries. Our company will rely on the open source libraries for development as well.

Amazon EC2: Training machine learning model needs to be ran on independent 3rd party computing resources. AWS EC2 can provide variety of virtual computing resources based on what users need.

React+Javascript: React is popular and everyone in the team is familiar with it. React is an open-source JavaScript library that is used for building user interfaces specifically for single-page applications.

ExpressJS: Everyone in the team has used expressJS for development. It can create server-side web applications faster and smarter.

Amazon RDS: relational database service and free to use

Postman: Tool for the team to test API end point.

Circle CI: is lightweight and open. Therefore for faster deployment jobs, one can execute their codes on CircleCI as it deploys on scalable and robust cloud servers.

Docker: Easily pack, ship, and run any application as a lightweight, portable, self-sufficient container, which can run virtually anywhere

Github+Git: Julian is from Github so no other choice for us 😎

Slack: Everyone likes it and it's free

See more

2 major challenges for which JS comes as a handy tool, 1st its integration with AWS SDK was at par as Python and .net and the solution comes to hand with the reverse proxy solutions for the application to be running as an instance taking the situation of inside organization demography of resources expertise over the technology.

See more
Gabor Galazzo

As a startup, we need the maximum flexibility and the ability to reach our customers in a more suitable way. So a hybrid application approach is the best because it allows you to develop a cross-platform application in a unique codebase. The choice behind Ionic is Angular, I think that angular is the best framework to develop a complex application that needs a lot of service interaction, its modularity forces you (the developer) to write the code in the correct way, so it can be maintainable and reusable.

See more
Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of Java
Pros of JavaScript
  • 599
    Great libraries
  • 445
    Widely used
  • 400
    Excellent tooling
  • 395
    Huge amount of documentation available
  • 334
    Large pool of developers available
  • 208
    Open source
  • 202
    Excellent performance
  • 157
    Great development
  • 150
    Used for android
  • 148
    Vast array of 3rd party libraries
  • 60
    Compiled Language
  • 52
    Used for Web
  • 46
    High Performance
  • 46
    Managed memory
  • 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
    Backward compatible
  • 11
    Lots of boilerplate
  • 10
    Everywhere
  • 9
    Excellent SDK - JDK
  • 7
    It's Java
  • 7
    Cross-platform
  • 7
    Static typing
  • 6
    Mature language thus stable systems
  • 6
    Better than Ruby
  • 6
    Long term language
  • 6
    Portability
  • 5
    Clojure
  • 5
    Vast Collections Library
  • 5
    Used for Android development
  • 4
    Most developers favorite
  • 4
    Old tech
  • 3
    History
  • 3
    Great Structure
  • 3
    Stable platform, which many new languages depend on
  • 3
    Javadoc
  • 3
    Testable
  • 3
    Best martial for design
  • 2
    Type Safe
  • 2
    Faster than python
  • 0
    Job
  • 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
    Can be used in backend, frontend and DB
  • 9
    Expansive community
  • 9
    Future Language of The Web
  • 9
    Easy
  • 8
    No need to use PHP
  • 8
    For the good parts
  • 8
    Can be used both as frontend and backend as well
  • 8
    Everyone use it
  • 8
    Most Popular Language in the World
  • 8
    Easy to hire developers
  • 7
    Love-hate relationship
  • 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
    Supports lambdas and closures
  • 6
    1.6K Can be used on frontend/backend
  • 6
    It's fun
  • 6
    Hard not to use
  • 6
    Nice
  • 6
    Client side JS uses the visitors CPU to save Server Res
  • 6
    Versitile
  • 6
    It let's me use Babel & Typescript
  • 6
    Easy to make something
  • 6
    Its fun and fast
  • 6
    Can be used on frontend/backend/Mobile/create PRO Ui
  • 5
    Function expressions are useful for callbacks
  • 5
    What to add
  • 5
    Client processing
  • 5
    Everywhere
  • 5
    Scope manipulation
  • 5
    Stockholm Syndrome
  • 5
    Promise relationship
  • 5
    Clojurescript
  • 4
    Because it is so simple and lightweight
  • 4
    Only Programming language on browser
  • 1
    Hard to learn
  • 1
    Test
  • 1
    Test2
  • 1
    Easy to understand
  • 1
    Not the best
  • 1
    Easy to learn
  • 1
    Subskill #4
  • 0
    Hard 彤

Sign up to add or upvote prosMake informed product decisions

Cons of Java
Cons of JavaScript
  • 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
  • 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

Sign up to add or upvote consMake informed product decisions

What is 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!

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

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

What companies use Java?
What companies use JavaScript?
See which teams inside your own company are using Java or JavaScript.
Sign up for StackShare EnterpriseLearn More

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

What tools integrate with Java?
What tools integrate with JavaScript?

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

Blog Posts

May 6 2020 at 6:34AM

Pinterest

JavaScriptC++Varnish+6
5
3364
JavaScriptGitHubReact+12
5
4131
Oct 24 2019 at 7:43PM

AppSignal

JavaScriptNode.jsJava+8
5
954
What are some alternatives to Java and JavaScript?
C lang
Abstract
Abstract builds upon and extends the stable technology of Git to host and manage your work.
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.
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.
Scala
Scala is an acronym for “Scalable Language”. This means that Scala grows with you. You can play with it by typing one-line expressions and observing the results. But you can also rely on it for large mission critical systems, as many companies, including Twitter, LinkedIn, or Intel do. To some, Scala feels like a scripting language. Its syntax is concise and low ceremony; its types get out of the way because the compiler can infer them.
See all alternatives