Creating Java web applications using Spring Framework has never been easier. If you’re already familiar with Java and have little to no experience creating web applications, or if you’re worried that all the cool kids abandoned Java in favor of Ruby and Node.js, you want to read this.
My intention is to provide here a practical guide to get up and running quickly on creating modern web applications using Java and Spring.
We’ll be using the latest versions of Java, Spring Framework (4.x), Spring Boot (v1.2.x), Spring Security, Spring Data JPA, Thymeleaf and Maven 3 frameworks.
In one of my previous posts I already discussed how to process the Twitter sample feed using Apache Storm, and now we’re going to walk through the steps of creating a sample Spring Boot application that reads messages from Twitter sample feed using the Spring Social Twitter framework and writes data to Neo4J using Spring Data Neo4J.
The whole project is available on Github at https://github.com/davidkiss/twitter-keyword-graph, but we’ll be discussing here each step one-by-one.
There’s been a lot of discussions on 10x developers, whether they exist or not (for example, here and here). I believe they do exist and by following a blueprint eventually we can all become one. Based on my 10+ years experience as a software developer I put together a list of actionable guidelines that can help anyone get closer to 10x. Continue reading
Being a lazy developer, I was recently searching for a way to automatically generate release notes instead of manually compiling the list. Fortunately, the maven changes plugin comes to the rescue. It can not only generate the release notes from JIRA tasks, but also email it to a list of email addresses. Continue reading
Hibernate is a great tool for integrating Java web applications with a SQL database, but what should we do when the application’s response times start increasing considerably? What should we do when we’re getting doubts whether the application will scale with the growth of our customer base?
Before spending a fortune on hosting or rewriting the code, consider analysing and improving these 7 areas of your web application. Continue reading
In this post I’m going to share my experiences with tuning slow SQL queries in Java web applications. Following these 5 super-easy steps you’ll have a clear understanding on the performance bottlenecks in sql database and the indexes you’ll need to add to improve performance of your queries.
One of the cool things I love about Grails is its out-of-the box support for different environments (dev, test, prod, etc.). I can have separate configuration for them – making life easy when doing deployment – or enable/disable certain features of the application depending on which environment the application is running on. Continue reading
The Storm framework is an open-source distributed and fault-tolerant real-time processing system used by many companies including Groupon, Twitter, Alibaba, Klout, etc. It’s the Hadoop of real-time processing and it can be used for real-time analytics, online machine learning and parsing social media stream, just to name a few. This post will help you getting started with Storm via a sample Java project that you can run on any desktop environment.
Posted in Uncategorized
Tagged analytics, Apache Hadoop, Groupon, hadoop in real time, it analytics, java, Klout, MapReduce, open-source, real-time, Real-time computing, Spout, spout bolt, Storm, storm and hadoop, Twitter, twitter4j
Me and a friend of mine recently started working on a startup.
Do you wear glasses? If yes, can you spare 2 minutes for this survey? We need your valuable feedback.
(Photo credit: Wikipedia)
Most of the applications that I’ve worked on as a Software Developer were running in a Linux environment. Using the right tools can boost our productivity and save us a considerable amount of time.
Here’s a list of command line tools that I find most convenient when working Linux. Continue reading
Posted in linux
Tagged bash, command line, df, grep, less, linux, productivity, ps, shell, software, su, sudo, sudo su, top