The Java Tutorials' Weblog

pageicon Friday Dec 15, 2006

Why is Swing Called Swing?

Today I was asked about the product name of Swing, which of course, is the name of the Java SE package used for creating GUIs and related APIs. Since I started at Sun in June of '99 I only recalled that Swing was used as the code name and it stuck. So I asked Jeff Dinkins, one of the original Swing engineers and former manager of the Swing team. Here is the story, from Jeff.
Georges Saab came up with the name...

The story is: The team went to Hobees for lunch, and the topic turned to what to name the new toolkit we were writing. Up till then the name was code named KFC, which was chosen by our manager (Rick Levenson) as a way to ensure we'd come with with a better name before shipping; he knew there was no way "KFC", aka Kentucky Fried Chicken, would be allowed by the lawyers.

Some names that were tossed around included Juliet and Carousel. There were many more, but none felt "just right."

Finally after lunch, while driving back to Sun, Amy Fowler (lead engineer of the team) asked our most hip team member, Georges Saab, "Georges, you know what's up and coming... what's the new happening thing in San Francisco?"

Georges responded with "Swing dancing is getting to be really big." And that was it, we all knew it was perfect. When we got back to the office I did a global search and replace of "kfc" with "swing", and the rest is history.

Thanks for that bit of history, Jeff! Rick Levenson seems to be a manager capable of interesting motivational techniques.

Edited to add: Jeff has posted a link to this blog entry on javadesktop.org along with this most excellent graphic (Rick is on the left and Georges is on the right):

Thanks, Jeff!!

-- Sharon Zakhour

Comments:

ok so that old bit about how the MVC diagram looked like a swing was bs? - Peace

Posted by Dave King on December 19, 2006 at 10:34 AM PST #

Ah, I remember writing my first swing app (as an intern at Sun) and learning to swing dance the same summer.

Now I'm a member of the performance troupe Swing Cats (swingcats.net) and a NetBeans governance board member.

There ought to be a good application for this at JavaOne. The troupe's performed at Oracle's conference at Moscone, but not Sun's... :)

Posted by Rich Unger on December 19, 2006 at 12:20 PM PST #

"ok so that old bit about how the MVC diagram looked like a swing was bs? - Peace" Hah - I've not heard that one before. I like it though, wish I'd thought of it.

Posted by Jeff Dinkins on December 19, 2006 at 12:57 PM PST #

kfc is teh best

Posted by dillon on December 19, 2006 at 03:24 PM PST #

[Trackback] 昨晚在sun的网站上看到一篇文章比较有意思,简单翻译了一下为什么swing叫做swing今天我被问起swing这个产品的名字,也是JavaSEpackage中用来创建GUI和相关的API。因为我在...

Posted by Syhan on December 19, 2006 at 06:47 PM PST #

Now I got the reason! :)

Posted by Balakumar Muthu on December 20, 2006 at 03:08 AM PST #

this is so cool!!! I've been programming Swing since it first came out and I've been learning lindy hop for the last year. Up until now I had no idea these two were connected :))))

Posted by dmitry on December 21, 2006 at 09:28 AM PST #

There is more than that to the word Swing. In the movie industry, the Swing Gang is the team of carpenters who instantly prop up and take down sets and decors. The Swing Gang is part of the hidden infrastructure and organization that creates a movie's look and feel. This in itself make Swing a perfect nommer for what it is and does for programming.

Posted by Laurent Bilodeau on December 27, 2006 at 08:39 AM PST #

I AM A POLY STUDENT IAM DOING A SIMPLE PROJECT IN JAVA BUT IT GOT SO MANY PROBLEMS...CAN ANYBODY HELP ME TO DO IT...?MY PROGRAMMME CODE IS public class Pay { public static void main(String[]args)throws Exception { int i=0,k=0; double c=0,h,g=0; int[] j=new int[10]; //int[] b=new int[10]; double[] Salary=new double[10]; char a; String[] E_Name=new String[10]; String[] Chek=new String[10]; String[] Appo={"Programmer","Supervisor","Manager"}; System.out.println("Payroll Menu"); System.out.println("============"); do { System.out.println("1. Enter Name,Appointment and Years of Experiance"); System.out.println("2. List All Employees and Calculate Payout"); System.out.println("Q. Quit"); System.out.print("Please enter your choice < 1, 2 or Q>:"); a=(char)System.in.read(); System.in.read(); System.in.read(); switch(a) { case '1': System.out.println("Details of Employee "+(k+1)); System.out.println("====================="); System.out.print("Enter Name:"); E_Name[i]=CspInput.readString(); System.out.print("Select Appointment[1 for programmer],[2 for Supervisor],[3 for Manager]:"); do { j[i]=CspInput.readInt(); if(j[i]<0||j[i]>3) System.out.print("Wrong, Please re-enter:"); }while(j[i]<0||j[i]>3); //c=CspInput.readInt(); System.out.print("Years in this appointment:"); //b[i]=CspInput.readInt(); h=CspInput.readInt(); if(j[i]==1) c=getSalary(800,h,80); else if(j[i]==2) c=getSalary(1800,h,180); else if(j[i]==3) c=getSalary(3000,h,300); Salary[i]=c; System.out.println(E_Name[i]+"'s appointment is "+Appo[(j[i]-1)]+"; Earning "+Salary[i]+"\n\n"); k++; i++; break; case '2': i=0; System.out.println("List of "+(k)+" Employees"); System.out.println("==========================="); System.out.println("S/No\tName\t\tSalary\t\tAppointment"); System.out.println("====\t====\t\t======\t\t==========="); for(i=0;i<k;i++) { System.out.println((i+1)+"\t"+E_Name[i]+"\t\t"+Salary[i]+"\t\t"+Appo[j[i]-1]); g=g+Salary[i]; } System.out.println("Total Payout per month:"+g+"\n\n"); break; case 'Q':break; case 'q':break; default:System.out.println("Error Please RE_ENTER"); break; } }while(a!='Q'&&a!='q'); } static double getSalary(int a,double b,int c) { return a+(b*c); } } PLS DO IT FOR MEEE PLS PLS PLS...

Posted by arjun on January 31, 2007 at 07:31 PM PST #

I always thought swing was a tribute to the Java Mascotte, Duke and Duke Ellington, the king of Swing Music.

Posted by Jan de Rijke on March 18, 2007 at 02:32 AM PDT #

thank you very much

Posted by mirc indir on February 17, 2008 at 01:11 PM PST #

cool

Posted by wow gold on November 02, 2008 at 05:24 PM PST #

thanks

Posted by ekin nakliyat on November 26, 2008 at 10:31 AM PST #

great thanx

Posted by nakliyat on November 29, 2008 at 02:40 PM PST #

thanks

Posted by sohbet on December 10, 2008 at 09:18 AM PST #

Neat info. Thanks for posting!

Posted by indoor antenna on February 19, 2009 at 09:13 PM PST #

Upon first glance, I thought this was an article about the dancing style... haha...

Posted by 1 hour cash advance on February 19, 2009 at 09:15 PM PST #

I love history!

Posted by Rick Levenson on May 28, 2009 at 10:31 AM PDT #

thank you

Posted by Tuzcuoğlu nakliyat on August 18, 2009 at 04:05 PM PDT #

Upon first glance, I thought this was an article about the dancing style.

Posted by Serkan Koçak on August 18, 2009 at 04:05 PM PDT #

metin2 yang
metin2 yang

Posted by metin2 yang on November 20, 2009 at 11:24 PM PST #

Post a Comment:
  • HTML Syntax: NOT allowed

« November 2009
SunMonTueWedThuFriSat
1
2
3
4
5
6
7
8
9
10
12
14
15
16
18
19
20
21
22
23
25
26
27
28
29
30
     
       
Today

Feeds

Search this blog

Links

Weblog menu

Today's referrers

Today's Page Hits: 719