Jira Integrations

What are some of the best integrations available to optimize your JIRA workflow?

I love finding ways to wring out some extra efficiency in my workflow. Watching those little automations and smooth processes brings a smile to my face. I know I’m not alone in occasionally having spent far more time getting that little boost to work correctly than it ends up saving me.

Continue Reading…

Fork/Join: The Fork Awakens

How does the Fork/Join framework act under different configurations?

Just like the upcoming episode of Star Wars, there has been a lot of excitement mixed with criticism around Java 8 parallelism. The syntactic sugar of parallel streams brought some hype almost like the new lightsaber we’ve seen in the trailer. With many ways now to do parallelism in Java, we wanted to get a sense of the performance benefits and the dangers of parallel processing. After over 260 test runs, some new insights rose from the data and we wanted to share these with you in this post.

Continue Reading…

Thread Fred

What are some of the least known facts and use cases for Java threads?

Some people like mountain climbing, others do sky diving. Me, I like Java. One of the things I love about it is that you never stop learning. The tools you use on a daily basis can often reveal a whole new side to them, with methods and interesting use cases you haven’t had a chance to see yet. Like threads for example. Actual threads. Or better put, the Thread class itself. Concurrent programming never stops posing challenges when we’re dealing with high scalability systems, but now we’ll talk about something a bit different.

In this post you’ll see some of the lesser known yet useful techniques and methods that threads support. Whether you’re a beginner, advanced user or an expert Java developer, try to see which of these you already know and what comes off as new to you. Is there something else about threads you feel worth mentioning? I’d love to hear about it in the comments below. Let’s get started.

Continue Reading…

DevOps Fred

The ultimate survival kit for new deployments

Unlike toying around with zombie apocalypse scenarios, debating the machete versus the shotgun, troubles in Java production environments are quite real, especially after new deployments (but it’s good to be ready for zombies as well). Taking this a step further, it’s much easier to get into trouble today than ever before when new code shipping cycles are cut down to weeks and sometimes days or even multiple times a day. To avoid being run down by the zombies, here’s the survival kit setup you need to fully understand the impact of new code on your system. Did anything break? Is it slowing you down? And how to fix it? Here’s the tool set and architecture to crack it once and for all.

Continue Reading…

A first hand experience and an introduction to Clojure at scale

Still considered a bit of an esoteric language, Clojure is one of the JVM languages that get us excited. There aren’t many stories around about why companies start using Clojure or how they use it to build systems at Scale. We were lucky to hear an excellent example of using Clojure during a demo of Takipi’s error viewer for Clojure at AppsFlyer’s office where we learned about the architecture that powers their mobile app measuring and tracking platform.

In this post we’re sharing with you the experience of our new friends from AppsFlyer, Adi Shacham-Shavit, who manages the R&D department, and Ron Klein, a senior backend developer. First thing’s first, a huge thanks to Ron and Adi who treated us to behind the scenes of Clojure at AppsFlyer! If you have any questions for them and interested to learn more, please feel free to use the comments section below.

Continue Reading…

Leaking Pipe

The quick and dirty deadlock solution to get those threads off your back

A few weeks ago we’ve asked you to send us your best Java code hacks, and share the stories behind them. What exactly is a code hack? We’ve asked what’s the most useful debugging trick you use, what are some of the things you do that most developers aren’t aware of and how you managed to solve that issue that was bugging you for way too long. Basically any non-straight forward solution using a piece of gum and a paperclip.

This post is the first story in the series, kicking it off with Uri Shamay, Principal Lead System Software Engineer at Akamai, who shares a story of deadlock madness.

Thanks Uri, enjoy your new Kano DIY computer!

Share your hack and get a Kano computer – Send us your story!

Continue Reading…



Apache Hadoop, Apache Spark, Akka, Java 8 streams and Quasar: The classic use cases to the newest concurrency approaches for Java developers

There’s a lot of chatter going around about newer concepts in concurrency, yet many developers haven’t had a chance to wrap their heads around them yet. In this post we’ll go through the things you need to know about Java 8 streams, Hadoop, Apache Spark, Quasar fibers and the Reactive programming approach – and help you stay in the loop, especially if you’re not working with them on a regular basis. It’s not the future, this is happening right now.

Continue Reading…

Java 9 Duke

We’ve asked over 350 developers and 3 JCP experts about their Java 9 expectations, here’s what we found out.

When we asked the Java community to share their thoughts about Java 9, we could hardly imagine that the best comment we’ll receive won’t have anything to do with Java: “To make fun of Microsoft, they should skip Java 9 and go straight to Java 10”, wrote John Doe. So thank you anonymous commentator, wherever you are.

Over 350 Java developers participated in this project, which gives us a great overview of the features developers really want to see in the next version. We did see some of the usual suspects, but there were also some features we were surprised to see at the top of the list.

We then asked 3 JCP experts to share the features they’d like to see the most in the next releases, to get a better understanding about the way the actual release is heading down.


Continue Reading…

Duke pipes

What are the most extraordinary pieces of Java code you’ve had the chance to write? Share your story and win a Kano – A Raspberry pi DIY computer kit

Having so much Java code written every day can produce quite a lot of quirks and trouble. It can make you laugh, it can make you cry, but when it finally works it sometimes feels like magic. In this post we’re looking hear your stories from the trenches of your IDE: What’s the most useful debugging trick you use? What are some of the things you do that most developers aren’t aware of? How did you manage to solve that issue that was bugging you for way too long?

Continue Reading…

jstack breakdance

A guide for using jstack to debug live Java production servers

jstack is like U2 – it’s been with us since the dawn of time, and we can’t seem to be rid of it. Jokes aside, jstack is by far one of the handiest tools in your arsenal to debug a live production server. Even so, I still feel it’s deeply underused in terms of its ability to pull you out of the fire when things go bad, so I wanted to share a few ways in which you can supercharge into an even stronger weapon in your war against production bugs.

Continue Reading…