Java

Java

Application and Data / Languages & Frameworks / Languages

Decision about SonarQube, Codacy, Docker, Git, Apache Maven, Amazon EC2 Container Service, Microsoft Azure, Amazon Route 53, Elasticsearch, Solr, Amazon RDS, Amazon S3, Heroku, Hibernate, MySQL, Node.js, Java, Bootstrap, jQuery Mobile, jQuery UI, jQuery, JavaScript, React Native, React Router, React

Avatar of ganesa-vijayakumar
Full Stack Coder | Module Lead ·

I'm planning to create a web application and also a mobile application to provide a very good shopping experience to the end customers. Shortly, my application will be aggregate the product details from difference sources and giving a clear picture to the user that when and where to buy that product with best in Quality and cost.

I have planned to develop this in many milestones for adding N number of features and I have picked my first part to complete the core part (aggregate the product details from different sources).

As per my work experience and knowledge, I have chosen the followings stacks to this mission.

UI: I would like to develop this application using React, React Router and React Native since I'm a little bit familiar on this and also most importantly these will help on developing both web and mobile apps. In addition, I'm gonna use the stacks JavaScript, jQuery, jQuery UI, jQuery Mobile, Bootstrap wherever required.

Service: I have planned to use Java as the main business layer language as I have 7+ years of experience on this I believe I can do better work using Java than other languages. In addition, I'm thinking to use the stacks Node.js.

Database and ORM: I'm gonna pick MySQL as DB and Hibernate as ORM since I have a piece of good knowledge and also work experience on this combination.

Search Engine: I need to deal with a large amount of product data and it's in-detailed info to provide enough details to end user at the same time I need to focus on the performance area too. so I have decided to use Solr as a search engine for product search and suggestions. In addition, I'm thinking to replace Solr by Elasticsearch once explored/reviewed enough about Elasticsearch.

Host: As of now, my plan to complete the application with decent features first and deploy it in a free hosting environment like Docker and Heroku and then once it is stable then I have planned to use the AWS products Amazon S3, EC2, Amazon RDS and Amazon Route 53. I'm not sure about Microsoft Azure that what is the specialty in it than Heroku and Amazon EC2 Container Service. Anyhow, I will do explore these once again and pick the best suite one for my requirement once I reached this level.

Build and Repositories: I have decided to choose Apache Maven and Git as these are my favorites and also so popular on respectively build and repositories.

Additional Utilities :) - I would like to choose Codacy for code review as their Startup plan will be very helpful to this application. I'm already experienced with Google CheckStyle and SonarQube even I'm looking something on Codacy.

Happy Coding! Suggestions are welcome! :)

Thanks, Ganesa

15 upvotes·13 comments·88.4K views

Decision at Samosprava about Java, Visual Studio Code, JavaScript, TypeScript

Avatar of frido

I use TypeScript because it is strongly typed superset of JavaScript that provides many benefits. Integration with #IDE like Visual Studio Code is excellent. The main benefit is maintainability. Many error can be caught before code running. Also Angular recommends TypeScript as better alternative to JavaScript . Syntax is very easy to learn especially for people from the Java world.

14 upvotes·44.2K views

Decision at Uber Technologies about Apache Spark, C#, OpenShift, JavaScript, Kubernetes, C++, Go, Node.js, Java, Python, Jaeger

Avatar of conor
Tech Brand Mgr, Office of CTO at Uber ·

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

10 upvotes·1 comment·259.6K views

Decision about PagerDuty, Slack, Go, PHP, Java, Python, Ruby, Node.js, Sqreen

Avatar of paulblei

I chose Sqreen because it provides an out-of-the-box Security as a Service solution to protect my customer data. I get full visibility over my application security in real-time and I reduce my risk against the most common threats. My customers are happy and I don't need to spend any engineering resources or time on this. We're only alerted when our attention is required and the data that is provided helps engineering teams easily remediate vulnerabilities. The platform grows with us and will allow us to have all the right tools in place when our first security engineer joins the company. Advanced security protections against business logic threats can then be implemented.

Installation was super easy on my Node.js and Ruby apps. But Sqreen also supports Python , Java , PHP and soon Go .

It integrates well with the tools I'm using every day Slack , PagerDuty and more.

10 upvotes·77.2K views

Decision about SVN (Subversion), Git, JSON, XML, Python, PHP, Java, Swift, JavaScript, Linux, GitHub, Visual Studio Code

Avatar of fraigo

I use Visual Studio Code because at this time is a mature software and I can do practically everything using it.

  • It's free and open source: The project is hosted on GitHub and it’s free to download, fork, modify and contribute to the project.

  • Multi-platform: You can download binaries for different platforms, included Windows (x64), MacOS and Linux (.rpm and .deb packages)

  • LightWeight: It runs smoothly in different devices. It has an average memory and CPU usage. Starts almost immediately and it’s very stable.

  • Extended language support: Supports by default the majority of the most used languages and syntax like JavaScript, HTML, C#, Swift, Java, PHP, Python and others. Also, VS Code supports different file types associated to projects like .ini, .properties, XML and JSON files.

  • Integrated tools: Includes an integrated terminal, debugger, problem list and console output inspector. The project navigator sidebar is simple and powerful: you can manage your files and folders with ease. The command palette helps you find commands by text. The search widget has a powerful auto-complete feature to search and find your files.

  • Extensible and configurable: There are many extensions available for every language supported, including syntax highlighters, IntelliSense and code completion, and debuggers. There are also extension to manage application configuration and architecture like Docker and Jenkins.

  • Integrated with Git: You can visually manage your project repositories, pull, commit and push your changes, and easy conflict resolution.( there is support for SVN (Subversion) users by plugin)

10 upvotes·51.7K views

Decision at Epsagon about AWS Lambda, GitHub, Java, Go, Node.js, npm, Serverless, Python

Avatar of nshap

At Epsagon, we use hundreds of AWS Lambda functions, most of them are written in Python, and the Serverless Framework to pack and deploy them. One of the issues we've encountered is the difficulty to package external libraries into the Lambda environment using the Serverless Framework. This limitation is probably by design since the external code your Lambda needs can be usually included with a package manager.

In order to overcome this issue, we've developed a tool, which we also published as open-source (see link below), which automatically packs these libraries using a simple npm package and a YAML configuration file. Support for Node.js, Go, and Java will be available soon.

The GitHub respoitory: https://github.com/epsagon/serverless-package-external

10 upvotes·1 comment·50.2K views

Decision at Sequoia Consulting Group about Java, Go, Node.js

Avatar of vishwa161
Fullstack Developer at Sequoia ·

Our new backend micro services are primarily written in Node.js and Go and legacy systems are written in Java. For our new stack decision, we aimed to achieve greater developer productivity, low IO latency and good community so we had couple of technologies in hand to choose but finally we concluded to go for Node.js for API layer and Go for CPU/IO intensive tasks. Currently the inter-services communication is happening via REST but soon to be moved to RPC-based communication.

9 upvotes·2.2K views

Decision at BootstrapCDN about MaxCDN, Java

Avatar of jdorfman
Developer Evangelist at StackShare ·

This is the fourth Stack Decision of this series. Read the last one to catch up.

My friend and I were driving up to northern California, I got a tweet saying that their corporate anti-virus software was reporting that certain files on BootstrapCDN contained malicious code that installed Java malware on Windows XP workstations. The hackers were clever, using MaxCDN's #API they found a way to update the origin server URL & port (8080) to their server and only updated a few files to fly under the radar.

I thought it was over, who was going to use BootstrapCDN after this? Well, like earlier I was wrong again. After the postmortem was written people left comments and emailed us saying “thanks” which I can’t thank those who did, it kept me going. Which was needed because the next wave of issues are coming in part 5.

AMA below. 👇

8 upvotes·6.6K views

Decision about ExpressJS, Flask, Sinatra, Node.js, PHP, Python, Perl, Ruby, Java, C++, Piwitch, SipWitchQt, Bayonne

Avatar of tychosoft
Chief at Cherokees Of Idaho ·

My view of the enterprise software stack I think is different than most. I find that I use C++ and #Qt in many of the roles most used Java and typically in #SipWitchQt and #Bayonne. I also have come to adopt Ruby in those other places where I had used Perl, Python , and PHP in the past, and certainly in preference to Node.js. In particular I am starting to really like Ruby and Sinatra over Python and Flask or Node.js with ExpressJS for writing quick web api and microservices, hence why I am using Sinatra in #PiWitch going forward. I do not pick a language because of popularity, but rather based on whether I can be effective in it for the problem I am trying solve.

7 upvotes·3 comments·53.9K views

Decision at Intuit about Apache Maven, Java, GitHub, Travis CI, Karate DSL

Avatar of ptrthomas
Distinguished Engineer at Intuit ·

As the maintainer of the Karate DSL open-source project - I found Travis CI very easy to integrate into the GitHub workflow and it has been steady sailing for more than 2 years now ! It works well for Java / Apache Maven projects and we were able to configure it to use the latest Oracle JDK as per our needs. Thanks to the Travis CI team for this service to the open-source community !

7 upvotes·9.7K views