Skip to main content

Cay Horstmann

Cay Horstmann is author of Core Java (Sun Microsystems Press 1996-2009), Enterprise Java for Elvis (Sun Microsystems Press, to appear), and co-author of Core JSF (Sun Microsystems Press 2004-2009) Cay is professor of computer science at San Jose State University. He is a computer science series editor at Prentice-Hall and a frequent speaker at computer industry conferences. For four years, Cay was VP and CTO of an Internet startup that went from 3 people in a tiny office to a public company.


cayhorstmann's blog

Alice 3, CS1, and Quaternions

Posted by cayhorstmann on September 28, 2009 at 10:49 AM PDT

This semester, I am teaching the CS1 course again. If you just teach plain Java, it isn't easy to come up with interesting lab assignments. Some of the students have built exciting animations with Alice in the CS0 course. Somehow, they aren't as excited about printing prime numbers or digits of π in CS1.

A spoonful of Scala

Posted by cayhorstmann on August 11, 2009 at 9:22 PM PDT

I write my lecture slides in XHTML, using the marvelous HTML Slidy package. I just dump
the images into the same directory as the HTML files, which isn't so smart
because it makes it hard to copy a presentation from one directory to another.
I could change my habit, but hey, what is technology for?

Are you using static import?

Posted by cayhorstmann on August 6, 2009 at 10:00 PM PDT

I am rewriting a Java book for beginners, and it seems to make so much sense
to use

import static java.lang.System.out;

public class Greeting
   public static void main(String[] args)
      out.println("Hello, World!");


Say Sayonara to sPAL!

Posted by cayhorstmann on July 22, 2009 at 8:21 AM PDT

When I teach my JSF crash course to my software engineering students,
everyone nods, works through the lab, and I don't hear any JSF issues from them
for a couple of weeks. Then they run into sPAL.

Add an XSD file to Eclipse and Eliminate Those Pesky XML Warnings

Posted by cayhorstmann on July 21, 2009 at 8:27 AM PDT

If you work with Eclipse and JSF 2, you too may be annoyed at the little
that shows up next
to all your faces-config.xml files (even those that are blessedly

Are Web Services the New CORBA?

Posted by cayhorstmann on July 8, 2009 at 8:56 AM PDT

I am updating the “External Services” chapter in href="">Core JSF. There is lots of new and interesting
stuff: How to use JPA, stateless session beans, and WebBeans. I ditched the
LDAP sections (for which I had received very few queries, even though the
examples are notoriously hard to set up).

WebBeans in Glassfish v3

Posted by cayhorstmann on July 5, 2009 at 9:39 PM PDT

As I am updating my share of chapters in the Core JavaServer Faces book
(with the hard parts fortunately being tackled by my coauthor, David Geary), I
started playing with WebBeans, erm, Java Contexts
and Dependency Injection.
I'll keep calling it WebBeans—the alternative JavaCandi is more than I
can take.

A First Look at NetBeans 6.7

Posted by cayhorstmann on June 29, 2009 at 8:54 AM PDT

A few days after Eclipse Galileo, Netbeans released its latest offering,
Netbeans 6.7. Here is a first look, as always from my entirely biased


Upgrading to Eclipse Galileo

Posted by cayhorstmann on June 26, 2009 at 9:54 AM PDT

I just installed Eclipse 3.5 (Galileo)—it seemed a more attractive
thing to do than actually getting my work done. Fortunately, I only need three
Eclipse plugins right now. Here is how they fared with Galileo.

JSF 2.0 Refcard available

Posted by cayhorstmann on June 16, 2009 at 12:03 PM PDT