Get ready to lock and load through this quick overview of some of the newest most innovative, tools around. In case you’ve missed it, RebelLabs recently released the results of a global survey of the Java tools and technologies landscape. Alongside the big names and established tools, the market is bubbling with fresh tools and frameworks that not so many people have heard of (yet). In this post I decided to gather a short list of such tools, most of them launched just recently. Some are Java specific and some support other languages as well, but they’re all great for Java projects and share a vision of simplicity. Let’s roll.
- JClarity – Performance Monitoring
Launched last September, JClarity is now offering two products around Java performance: Illuminate and Censum. Illuminate is a performance monitoring tool, while Censum is an application focused on garbage collection logs analysis. More than just collecting data or visualizing it, both tools provide actionable insights to solve the issues they detect.
“What we want to do is to move the problem from data collection to data analysis and insight”
– JClarity Co-Founder Ben Evans.
- Bottleneck detection (Disk I/O, Garbage Collection, Deadlocks, and more).
- Action plan – Recommendations to solve the problem, such as “The application needs to increase the number of active threads”.
- Explanation – Defining the problem in general and the common causes for it, for example “A high percentage of time spent paused in GC may mean that the heap has been under-sized”.
What’s unique about it: offers the next step after monitoring and identifying your performance problems – actionable insights to solve issues on the spot.
Behind the curtain: London based JClarity was founded by Martijn Verburg, Kirk Pepperdin and Ben Evans, both are well known Java performance veterans. Read more about how JClarity came to be, right here.
Java developers are being kept in the dark in a way when importing libraries from “anonymous” repositories. Bintray adds a face to the code and actually, serves as a social platform for developers to share open-source packages (Did someone say GitHub for binaries? Login with GitHub for the full inception effect to kick in). It has over 85,000 packages in 18,000 repositories, while showcasing popular repositories and new releases.
- Upload your binaries for the world to see, get feedback and interact with other developers.
- Download libraries with Gradle / Maven / Yum / Apt, or just directly.
- Manage release notes and documentation.
- REST API – Search / Retrieve binaries and automate distribution.
What’s unique about it: Bintray’s basic functionality is similar to Maven Central. However, it adds a social layer and offers an easy process to upload files to a CDN.
Behind the curtain: Bintray is developed by JFrog, based in Israel and California. It was made public April last year and won Duke’s choice award at the last JavaOne conference. JFrog is also the company behind Artifactory. Which is also hosted on Bintray. Of course.
A hosted service for monitoring and managing cloud applications, Librato can create custom dashboards in seconds without a need to set up or deploy any software. Oh, and it just looks and feels so buttery smooth compared to other dashboards.
“Data is only as valuable as the actionable insights you can surface from it”, says Joe Ruscio, Co-Founder & CTO.
- Data collection: Integration with Heroku, AWS, tens of collection agents (Even Nest) and pure language bindings with Java, Clojure and others.
- Custom reports: Metrics & alerts through email, HipChat, Campfire, and just HTTP POST requests to integrate with anything you can think of.
- Data visualization: Beautiful graphs with annotations, correlations, sharing and embedding options.
- Alerts: Automatic notifications when metrics cross certain thresholds.
What’s unique about it: It would be hard to find anything that Librato doesn’t know how to talk with and help make sense of its data.
Behind the curtain: Based in San Francisco, Librato was founded by Fred van den Bosch, Joe Ruscio, Mike Heffner and Dan Stodin.
Takipi was built with a simple objective in mind: Telling developers exactly when and why production code breaks. Whenever a new exception is thrown or a log error occurs – Takipi captures it and shows you the variable state which caused it, across methods and machines. Takipi will overlay this over the actual code which executed at the moment of error – so you can analyze the exception as if you were there when it happened.
- Detect – Caught/uncaught exceptions, Http and logged errors.
- Prioritize – How often errors happen across your cluster, if they involve new or modified code, and whether that rate is increasing.
- Analyze – See the actual code and variable state, even across different machines and applications.
What’s unique about it: God mode in production code. Shows you the exact code and variable state at the moment of error, as if you were there when it happened.
Behind the curtain: Psst, it’s us. Takipi was founded in 2012 and based in San Francisco and Tel Aviv. Each exception type and error has a unique monster that represents it.
Elasticsearch has been around for a while, but Elasticsearch 1.0.0 was released just recently in February. It’s an open-source project built on top of Apache Lucene and hosted on GitHub with over 200 contributors. You can check out the code right here. The main promise Elasticsearch provides is an easy to use scalable distributed RESTful search.
- Near real-time document store where each field is indexed and searchable.
- Distributed search with an architecture built to scale from small to large applications.
- A RESTful and a native Java API among others. It also has a library for Hadoop.
- Works out of the box and doesn’t necessarily require deep understanding of search, it can also be schema free so you can start real fast.
What’s unique about it: Like it says on the tin, it’s elastic. Built with flexibility and ease of use in mind, provides an easy place to start and to scale without compromising on hardcore features and customization options.
Behind the curtain: Elasticsearch was founded by Shay Banon back in 2010 and just recently raised $70M in funding. Before founding it Banon ran the Compass open-source project and is now a renowned search expert. His motivation to get into search? An application he built for his wife to store and retrieve her favorite recipes.
Back to pure Java, Spark is a Sinatra inspired micro web framework for quickly creating web applications. It was rewritten last month to support Java 8 and lambdas, Spark is open-source and its code is available on GitHub right here. It’s being developed by Per Wendel and a small number of contributors over the last few years in a mission to support rapid creation of web applications with minimal effort.
- Quick and simple setup for your first deployment.
- Intuitive route matcher.
- A template engine to create reusable components that supports Freemarker, Apache Velocity and Mustache.
- Standalone Spark runs on Jetty but can also run on Tomcat.
What’s unique about it: A picture is worth a 1000 words, but a screenshot would be more straightforward. Check it out.
Behind the curtain: Per Wendel is the Sweden based founder of Spark, working on Spark with over 20 contributors. Check out the discussion group and learn more about Spark, how you can contribute and solve issues.
Going deeper in the JVM, the Garbage Collector scans for objects that are no longer being used. However, sometimes developers will still hold references to objects in memory they no longer use. This is where memory leaks happen, and where Plumbr comes in. It detects and reports if the application has memory leakage issues and provides actionable information to fix it.
- Live memory leak detection and alerts.
- A report with time, size, velocity (MB/h) and significance of the leak.
- The location of the memory leak in your code.
What’s unique about it: Quick and to the point, gathering insights from your code and telling you what you need to fix.
Behind the curtain: Based in Estonia, Plumbr was founded by Priit Potter, Ivo Mägi, Nikita Salnikov-Tarnovski and Vladimir Šor. Joining forces in a seasoned Java team, mostly known as “the guys who help projects that are stuck”. Makes sense.
Did we miss any other cool tools? What’s the best new tool you use? Please let us know.
|Reference:||7 New Tools Java Developers Should Know from our JCG partner Alex Zhitnitsky at the Takipi blog.|
Bulletproof Java Code: A Practical Strategy for Developing Functional, Reliable, and Secure Java Code
Use Java? If you do, you know that Java software can be used to drive application logic of Web services or Web applications. Perhaps you use it for desktop applications? Or, embedded devices? Whatever your use of Java code, functional errors are the enemy!
To combat this enemy, your team might already perform functional testing. Even so, you're taking significant risks if you have not yet implemented a comprehensive team-wide quality management strategy. Such a strategy alleviates reliability, security, and performance problems to ensure that your code is free of functionality errors.Read this article to learn about this simple four-step strategy that is proven to make Java code more reliable, more secure, and easier to maintain.