Steven Haines

Contributor

Steven Haines is a senior technologist, accomplished architect, author and educator. He is currently working at Turbonomic as a Principal Software Architect in their Advanced Engineering team, focused on cloud initiatives. Previously he worked in various principal and lead architect roles at Disney, spending the better part of the past six years in their architecture team building out the next generation of Disney's guest experience and leading various Disney initiatives, from a solutions perspective. His specializations have been in performance and scalability, cloud-based architectures, high-availability, fault tolerance, business analytics and integration with new and emerging technologies.

As an author, he has written two books on Java programming: Java 2 From Scratch (Que Publishing, 1999) and Java 2 Primer Plus (SAMS Publishing, 2002), and one on Java Performance Management: Pro Java EE 5 Performance Management and Optimization (Apress, 2006). He has written over 500 articles for publications such as JavaWorld, InformIT.com (Pearson Education), and Dr. Dobb's Journal. And he has written over a dozen white papers and ebooks on performance management and cloud-based architectures to empower companies relay their product value to the market.

As an educator, Steven has taught Computer Science and Java at both Learning Tree University as well as the University of California Irvine and maintains a website dedicated helping technologists grow in their knowledge: www.geekcap.com (by Geeks for Geeks).

The opinions expressed in this blog are those of Steven Haines and do not necessarily represent those of IDG Communications, Inc., its parent, subsidiary or affiliated companies.

Java tip: Composite keys in JPA and Hibernate

Java tip: Inheritance relationships in JPA and Hibernate
Tip

Java tip: Inheritance relationships in JPA and Hibernate

Learn four ways to manage inheritance relationships and support polymorphic querying in Java ORM

Java persistence with JPA and Hibernate, Part 2: Many-to-many relationships

Java persistence with JPA and Hibernate, Part 2: Many-to-many relationships

Many-to-many relationships and cascade type strategies in JPA and Hibernate

Java persistence with JPA and Hibernate, Part 1: Entities and relationships

Java persistence with JPA and Hibernate, Part 1: Entities and relationships

Get started modeling entities and relationships for Java data persistence, using an example application based on Java 8 with Hibernate 5.3.6

Mastering Spring framework 5, Part 2: Spring WebFlux

Mastering Spring framework 5, Part 2: Spring WebFlux

Build reactive web applications using Spring WebFlux annotations and functional programming techniques

Mastering Spring framework 5, Part 1: Spring MVC

Mastering Spring framework 5, Part 1: Spring MVC

If you like the Spring framework, you'll want to explore Spring MVC 5 for Java web development. This tutorial shows you how to fast-track Spring-based development with Spring MVC 5, Spring Boot, and Spring Initializr.

Big data analytics with Neo4j and Java, Part 2

Big data analytics with Neo4j and Java, Part 2

The tricky part of Neo4j is learning to work with its Cypher Query Language, which requires thinking graphically. Once you've got that down, writing a Java application that integrates with your Neo4j data store is easy.

Big data analytics with Neo4j and Java, Part 1

Big data analytics with Neo4j and Java, Part 1

Graph databases like Neo4j are ideal for modeling complex relationships--and they move through big data at lightspeed

Serverless computing with AWS Lambda, Part 2

Serverless computing with AWS Lambda, Part 2

Integrate your AWS Lambda backend with a DynamoDB datastore, then use the AWS SDK to invoke Lambda functions from a Java client

Serverless computing with AWS Lambda, Part 1

Serverless computing with AWS Lambda, Part 1

Serverless computing is no magic carpet, but how does it really work? Get an overview of AWS Lambda's nanoservices architecture and execution model, then build your first Lambda function in Java

Continuous integration with Jenkins

Continuous integration with Jenkins

Setup a continuous integration process to build and test a Java web app with Jenkins

Clustering with Docker Swarm

Find out why clustering is an important technique for working with Docker containers, then develop a two-node enterprise cluster with Docker Swarm

Load More