昨天我们公司的现场救助志愿者发回邮件的时候,公司里许多人哭了。不过令人欣慰的是,这次天灾以后我们看到了一个团结的民族,一个理性的民族,一个充满希望的国家和民族。我们看到了台湾同胞血浓于水的兄弟感情,得到了国际上的朋友的支持。我们甚至感染了那些以往对我们并不那么友好的一部分人。
死者已逝 - 为他们点一只蜡烛。天堂的路上,不再孤独。
(转一篇俄罗斯国家新闻网报道)
中国不需要同情,中国需要理解;中国不需要安慰,中国需要支持。我们愿以杯水之力,尽寸尺之能,和中国人民站在一起。我们知道,一个总理能在两小时就飞赴
灾区的国家,一个能够出动十万救援人员的国家,一个企业和私人捐款达到数百亿的国家,一个因争相献血、自愿抢救伤员而造成交通堵塞的国家,永远不会被打
垮。
希望必将与中国同在。
让我们为生者祝福,为死者祈祷。中国,走好。
|
I'm beginning to think we "undersold" GFv3 TP2 when we called it a Technology Preview as pretty much anything we are throwing at it works! Check out Vivek's latest note on Scala Lift Framework. Starting with a Maven Archetype, it creates a Scala Lift project using a Derby database that can deploy on GFv3 and, with a small change it can use v3 tp2 embedded for ease of development through mvn glassfish:run. Neat! |
I did a session last week at JavaOne 2008 where I talked about how application development, and the role of application developers, is changing. Here's the abstract:
When we engineers normally think of applications, we think of elaborate technology that takes highly trained developers weeks, months, or years to develop and debug. But our days are possibly numbered. In this era of light-speed boom and bust, the demand for technology is higher than ever and engineers and their traditional development techniques simply can’t keep up. What’s needed is “disposable applications,” applications so quick and easy to write that they are cheaper to throw away than to maintain and which the increasing numbers of casual technologists can consume and even create themselves.Fueling this demand in recent months has been the release of high-profile web platforms (such as Facebook, Ning, Meebo, and others) that increasingly enable nontechnical users to compose mashups and other social and situational applications out of widgets and RESTful-style web services, all built by use of lightweight technologies and composed right from the browser.
This session describes how these factors are coming together to produce a new paradigm of application development in which hordes of 16-year-olds are in charge and software engineers are overwhelmed by the flood of applications created by tech-savvy novices. It also examines the roles of high technology versus technology for the masses and shows that they are actually complementary and a boon to engineers and nonengineers alike.
...
I presented to about 500 people over two sessions on Wednesday and Friday, and despite the fact that I could not show a demo, it was a rapt audience. Since then, coverage has been popping up around the Web.
Here are slides and links to articles and other material:
Articles
Blogs
LDoms 1.0.3 adds a number of virtual I/O enhancements with Solaris 10 5/08 OS and supports the UltraSPARC T2 Plus, UltraSPARC T2 and UltraSPARC T1 based servers:
| Top
10 |
What
is it ? |
Know
more... |
| JavaFX
SDK |
The
JavaFX SDK is (almost) here ! |
Hot
demos (there
were quite a few) and a cool new
website are all good, but signing up
for the SDK to get it next month or so is going to be
awesome. Its built with Java,
built on Java. Its built in Java. JavaFX can run parleys.com. Did I mention its fast ? |
| JDK 6 is everywhere | JDK bundled with Linux, JDK 6 for Mac |
On
stage, I mentioned that the JDK,
from the OpenJDK JDK6 project, is
bundled with the latest
release of the Ubuntu distro. Since then, its started shipping
inside Red Hat's Fedora 9, and Red Hat's Enterprise Lunix
too. Who's next ? And, have you tried the JDK 6 release for OS-X yet ? |
| The
Consumer JRE |
Get the latest beta of JRE 6u10, its quick, quick, quick. | Quick
to
download,
quick to install,
quick to start
applets. Applets that you can pull out of the web page. Applets that can live beyond the browser and drop onto the desktop. Applets that developers can write in Java or designers can write in JavaFX Script. See and believe that applets are back. |
| VisualVM |
Get the release candidate of THE single cockpit for watching, diagnosing and tuning Java applications. | If
you thought JConsole
was cool, you need to check
VisualVM out. It integrates all the management
and profiling tools for
Sun's JDK into a graphical environment. See
it for yourself. |
| On2
Media and JavaFX |
Cross
screen video, cross device
sound. |
Finally,
one rich media format you can
depend on
that spans
all the devices you own. Because it'll be built into
JavaFX. |
| JavaFX
Tools |
First
views of new tooling. |
You've
had the NetBeans support for
nearly a
year for JavaFX Script - and Eclipse
support for that matter - but we previewed a new tool called JavaFX
Distiller (see here:
jump to minute 14). If you've ever written a GUI, and needed a
little artistic help from a visual designer, this is one you need
to know about. |
| Java
ME LWUIT |
Making
better looking
applications easier on today's Java ME devices. |
This
is a new open source community
project
in early access to add some portable
fit and finish to your MIDP 2.0 applications. Shrinking some of the familar
core pieces of the Swing framework, all you need is the NetBean
Mobility pack to get started with
it. |
| Java
SE 7 sightings |
Modularity, OSGi and turbo charging multiple languages | I
talked with Bob about some of the pieces we'd like to
include in Java SE 7 that are progressing well. Here
also are my session slides with more detail. In particular, the Java
Module System, and its support for OSGi
in JDK 7 (which is gaining some
encouraging support) and the DaVinci project for accelerating
multiple language support which has started producing
prototypes. |
| BluRay,
Java and Neil Young |
Java
as foundation for HD
content. |
In
January, BluRay emerged as the winner of the biggest
format war for a
generation. So just in case you didn't know BD-J, the programming
model for interactive BluRay content (so its on all the BluRay
players), is based on Java
ME (Personal
Basis Profile, to be precise), and Neil Young announced he's
releasing his full catalog on BluRay, using BD-J to provide all the
interactivity. |
| Java
SE Performance |
Latest high performance release
of Java
SE |
Its
tuned for the racetrack and breaking
records ! |
What's the hard sell when it comes to portal technology? Divide potential portal users up into two groups:
Most people fall into category 2. They have a website that's a hodge-podge of technology. It may be portal-like, but doesn't use any portal software to render pages. They don't have the resources or the stamina required to start all over. And there's the problem. Portals require you to use their proprietary page-building technology. Each portal does it differently. There's the portlet standard, but that doesn't handle the overall page, just the content inside the "boxes".
What's really required is the ability to evolve an existing website to use portlets. How about a portal that can syndicate portlet content, allowing the content to be pulled into existing websites?
We did a proof of concept of this for the WebSynergy project at JavaONE. Click on the portlet's icon (upper left corner) and get a popup giving the portlet's URL. In the simplest case, this URL can be used as the source for an iframe. To see it work, just paste it into your browser's location bar.
This idea has obvious problems ...
Solving the iframe issue requires some changes to the portal core. Specifically, clicks on the portlet need to be routed back to the portal server, and the browser needs to return to the website page after processing. The default setup on the portal will return the user to the portal's page after processing (hint: getPortletURL()).
Authentication might be handled by something like OAuth.
Styling could be handled by encapsulating it within the portlet. It could also be handled by providing an extra layer around the portlet URL that injects style into the resulting page. The website tells the portal that it wants portlet X with the Y style.
Just some ideas.
This blog talks about creating a JDBC Connection Pool and an associated JDBC resource with MySQL as the Database vendor.
The
default database "sakila" of MySQL is used in this example. All these
could be done so easily with Netbeans 6.1 after installing the
GlassFish V3 plugin.
This screencast explains how to create a JDBC Connection pool in the
administration console and its associated JDBC resource. It also shows
a HelloWorld web application that used this resource to get some values
from a table in sakila database.
Download GlassFish V3 TP2 from https://glassfish.dev.java.net/downloads/v3-techPreview-2.html
The preliminary agenda for the Sun HPC Consortium has been published on their conference site. Andy Bechtolsheim, Sun co-founder and Chief Architect, will keynote the event.
The Sun HPC Consortium is an independent, volunteer-organized, international group of member organizations that own or use Sun computer systems with emphasis on high-performance, technical computing, and visualization.
Participants represent a broad range of computing applications and environments. The meeting format is designed to give participants the opportunity to present HPC developments, discuss applications and needs with their peers, and to hear and provide feedback on Sun's engineering plans.
Who should attend:
All Sun scientific, engineering, or research computing customers or anyone interested in high-performance computing on Sun technologies. Each meeting is designed to address a wide range of intrests from application developers to CIOs and VPs of Research. Registration site
Maybe you were lucky and managed to get one of the nice GlassFish memory sticks during JavaOne. But, if you didn't, here is your oppty: Jen, who put together the content for the original memory sticks has posted the same content in her blog. Just follow the links from her "Fish Stick Anyone?" writeup.
|
The virtual memory stick includes GlassFish v3 TP3, GlassFish v2UR2, MySQL, NetBeans, Hands-on Labs, WebSynergy, Screencasts, Documentation, Blogs, and more. It looks very complete. The World Wide Web - the ultimate (virtual) memory stick! :-) or, strictly speaking, USB flash drive... |
EJB 3.1 aims to further simplify EJB programming model, introducing a series of new features like no-interface local view, .war file packaging, singleton bean, cron-like schedule-based timer, asynchronous invocation, etc. Some of them have already been implemented by GlassFish V3. Ken's blog has more details on many proposed new features in EJB 3.1. Mahesh from GlassFish EJB container team gave a preview of EJB 3.1 container in GlassFish v3 TP2. In this post, I will share a riddles webapp to showcase the use of certain EJB 3.1 features and how they interact with web-tier components like Servlet, JSP, and JSTL.
1, Download GlassFish V3 Technology Preview 2 (TP2) at GlassFish download page. See the installation instructions for installation steps, and the Quick Start Guide to get up and running quickly.
For NetBeans 6.1 users, this can be completely automated with GlassFish V3 plugin (see ludo's blog). Eclipse plugin for GlassFish V3 TP2 is also available (see Arun's blog).
2. Install EJB container on top of V3 TP2 by running <glassfish_home>/bin/updatetool. Follow on-screen instructions, and choose to install glassfishv3-ejb from Available Add-ons.
3. Start V3 TP2 by running <glassfish_home>/bin/asadmin start-domain, or from within NetBeans or Eclipse.
4. Create a webapp named riddles. The exact steps vary depending on IDE, but it simply contains:
The stateless bean class RiddleBean is annotated with @Stateless but implements no interfaces. All public methods (only getRiddle method in this case) in the bean class and its superclasses are exposed as business methods. @PostConstruct method is invoked after the bean instance is created and before any business method invocation. It initializes riddle data in classpath with class.getResourceAsStream().
@Stateless
public class RiddleBean {
public Riddle getRiddle() {
String data = riddleData[rand.nextInt(riddleData.length)];
return new Riddle(data);
}
@PostConstruct
private void postConstruct() {
//read riddle data with getResourceAsStream
}
RiddleServlet acts as the client of RiddleBean EJB, a reference of which is injected into RiddleServlet. With no-interface local view, the client references EJB with its bean class type. But the client must still obtain the reference either through injection or lookup, not new operator.
The servlet does not create any response; it merely sets the injected bean reference into application scope so that it is available for JSP pages. The purpose is to demonstrate the use of @EJB injection. Alternatively, this servlet can be replaced with a context listener or filter, or totally removed by declaring <ejb-ref> in web.xml.
public class RiddleServlet extends HttpServlet {
@EJB private RiddleBean riddleBean;
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
getServletContext().setAttribute("riddleBean", riddleBean);
getServletContext().getRequestDispatcher("/riddle.jsp"
.forward(request, response);
}
riddle.jsp shows how easy it is to invoke EJB methods with JSP expression language (EL) , without using any java code. The expression ${riddleBean.riddle} has the same effect as calling riddleBean.getRiddle(). The return vaue, a value object of type Riddle, is stored as riddle in page scope.
<c:set var="riddle" value="${riddleBean.riddle}" scope="page" />
... ...
<p><h4>Q: ${riddle.question}</h4></p>
<p><h4>A: ${riddle.answer}</h4></p>
In your project, EJB source files reside in the same place as servlet and other web component classes. With .war packaging, EJB classes can be packaged under WEB-INF/classes or inside a jar file under WEB-INF/lib, just like any other .war classes. It's no different than an ordinary .war, with no EJB interfaces (not even local business interface), no ejb-jar.xml, no ejb-jar, and no EAR. This is the content of the war file after building the project:
WEB-INF/classes/riddle/Riddle.class
WEB-INF/classes/riddle/RiddleBean.class
WEB-INF/classes/riddle/RiddleServlet.class
WEB-INF/web.xml
riddle.jsp
As for the riddle data file riddles.txt, you can package it inside the .war as WEB-INF/classes/riddles.txt. Or you can jar it up as riddles.jar and copy riddles.jar to $GLASSFISH_HOME/domains/domain1/lib. Any jars in this directory will be made available to all apps in domain1. In GlassFish V2, I used to directly copy classes and resources to domain1/lib/classes without the wrapper jar, but this doesn't seem to be supported yet. riddles.txt must follow certain format to be parsed properly (A: Q: %):
FORTUNE PROVIDES QUESTIONS FOR THE GREAT ANSWERS:
A: To be or not to be.
Q: What is the square root of 4b^2?
%
In my Ubuntu machine, I just use /usr/share/games/fortunes/riddles file. riddles.war with sample riddles can be downloaded here.
5. Deploy riddles.war using autodeploy or asadmin deploy:
cp riddles.war $GLASSFISH_HOME/domains/domain1/autodeployor
$GLASSFISH_HOME/bin/asadmin deploy riddles.war
Optionally, verify that the .war is deployed with
$GLASSFISH_HOME/bin/asadmin list-components
6. Play riddles with EJB 3.1 at http://localhost:8080/riddles/

If you're like most people, when it comes to Virtualization you've probably heard the names VMware or Xen.
There is a new name in town, VirtualBox. 
VirtualBox is a family of powerful x86 virtualization products for enterprise as well as home use. Not only is VirtualBox an extremely feature rich, high performance product for enterprise customers, it is also the only professional solution that is freely available as Open Source Software under the terms of the GNU General Public License (GPL). See "About VirtualBox" for an introduction.
Since being acquired by Sun Microsystems, VirtualBox Version 1.6 is the first major release since the acquisition.
Version 1.6, has new host platform support, for Mac and Solaris, as well as new high performance virtual devices, and improved scalability.
VirtualBox also runs on Windows, Linux, Macintosh and OpenSolaris hosts and supports a large number of guest operating systems including but not limited to Windows (NT 4.0, 2000, XP, Server 2003, Vista), DOS/Windows 3.x, Linux (2.4 and 2.6), and OpenBSD.
Well let's give it a look! In this exercise, I already have VirtualBox installed, and wanted to create two local VM's (local machines). Part I OpenSolaris 2008.05, and Part II Windows XP
Equipment Used:
You'll first need to download VirtualBox, by clicking here.
Select the Platform and Language you desire. In my case since my Toshiba M9 laptop has a Intel dual core proccessor, and running Solaris Nevada Build 87, I selected the Platform OpenSolaris AMD64.
With VirtualBox, you can run unmodified operating systems – including all of the software that is installed on them – directly on top of your existing operating system, in a special environment that is called a “virtual machine”. Your physical computer is then usually called the “host”, while the virtual machine is often called a “guest”.
Step1: Let's start by launching Sun xVM VirtualBox.
root@sunrise8 # /opt/VirtualBox/VirtualBox
You will now see the Welcome to VirtualBox window
Step2: Let's create a new virtual machine. Start by clicking on the New button in the VirtualBox. You now get a dialog window stating, Welcome to the New Virtual machine Wizard box! Select the Next button.
Step3: In the VM Name and OS Type dialog window, give the name to the new Virtual Machine and the OS Type. In this case you'll notice the name I've selected is OpenSolaris2008.05 and the OS Type I've selected from the OS Type drop-down menu is Solaris. Now click the Next button.
Step4: In the Create New Virtual Machine Memory dialog you can adjust the memory size of your virtual machine. You'll notice it gives you a recommended base memory size of 512mb. In this case I've chosen to give this virtual machine 1024mb or 1gb. You do this by moving the Base Memory Size Slide Bar or just change the number in the associated box. After making your the necessary changes click the Next button.
Step5: In the Create New Virtual Machine Virtual Hard Disk dialog, you will select the image to be used as the boot hard disk for the virtual machine. You can either create a new hard disk using the New button or select an existing hard disk image from the drop-down list or by pressing the Existing button to invoke the Virtual Disk Manager dialog.
In this case I will choose New to create a new hard disk.
Step6: The Welcome to the New Virtual Disk Wizard dialog will appear which will help you create a new virtual hard disks image for your virtual machine.
In this case we will using the Next button to go to the next page of the wizard.
Step7: The Virtual Disk Image Type dialog window, you will now have two choices for your virtual disk image type. You can have either a dynamic expanding image, or a fixed-sized image. Please read the captions for each choice. Choice wisely!!!
In our case here, since I have enough disk space, we'll choose the dynamic expanding image.
Step8: In the Virtual Disk Location and Size dialog you can press the select buttonto select the location and name of the file to store the virtual hard disk image, or type the file name in the entry field.
In our case shown here the Image File Name was pre-selected for us call OpenSolairs2008.05. Also in this dialog window you will select the size of the virtual hard disk image in megabytes. This size will be reported to the Guest OS as the size of the virtual hard disk.
By default the wizard has chosen 16.00gb for our virtual hard disk image size. I will change this to 10gb for this exercise. Then click the Next button
Note: If you selected dynamic expanding image in the previous Virtual Disk Image Type dialog window above, the size of the image that is created here will not necessarily be 10gb, but could expand if needed to the full 10gb size. Keep your disk space in mind!!!!
Step9: The Create New Virtual Disk Summary dialog window will appear to give you a summary of the how your new virtual hard disk will be created.
The following screen shows your virtual hard disk image parameters. You can go back and change things if you'd like or in our case we will click the Finish button.
Step10: The Virtual Hard Disk dialog showing the Boot hard Disk (Primary Master)
This dialog well show you the path to the Virtual Hard Disk Image file. Click the Next button.
Step11: The Create New Virtual Machine Summary dialog will now show you the parameters of your new soon to be created virtual machine.
Click the Finish button
Note: To conserve the amount of reading in this post, I repeated Step1 through Step11 for my Windows XP virtual machine.
The next screenshot of the Sun xVM VirtualBox now shows the two Virtual Machines that are ready to be created and loaded.
Step12: From the Sun xVM VirtualBox dialog window, in our case here, we will need change some details shown on the right in the dialog window. For installing the the OpenSolaris2008.05 OS image and the WIndows XP image we will click on the CD/DVD-ROM details link and change the following parameters.
Note: I ignored the following error dialog box that appeared, warning me about the USB Proxy Service has not been ported to this host. I just clicked OK to move ahead.
In the OpenSolaris2008.05 Settings dialog window, I've selected the Mount CD/DVD-ROM checkbox, and the ISO Image File checkbox. Click the Select folder next to the drop-down box, to tell the installer the location of the OS image file. The Virtual Disk Manager dialog will open where you can added image locations. After adding the location of the image, click the Select button, then you can click the OK button, in this case the OpenSolaris2008.05 Settings dialog window.
Step13: Now you will see the Sun xVM VirtualBox dialog window with changes you made above, showing the details of the new OpenSolaris2008.05 virtual machine.
Highlight the Virtual Machine you want to install and click the Start button.
After clicking the Start Button you will now see the following informational dialog box. As you will notice the Auto capture keyboard option is turned on. this will cause the Virtual Machine to automatically capture the keyboard everytime the VM window is activated and make it unavailable to other applications running on your host machine. You can press the host key identified here as the Right Ctrl key to uncapture the keyboard and mouse. Please read it carefully, and click the OK button
Step14: After clicking the OK button in the VirtualBox - Information dialog, you will now begin the installation of the OS for the new Virtual Machine. You will be asked several questions before the OS actually starts loading. For this first installation we will be installing OpenSolaris 2008.05 release. Select OpenSolaris 2008.05 in the Grub menu, and hit enter.
After selecting OpenSolaris 2008.05 from the Grub menu, You'll now be prepare the live image for the new virtual machine for installation. On the new screen you will be asked to select a keyboard type. The default is 41 US English. For this exercise we'll take the default.
Now you'll be asked to select the desktop language you'd prefer. The default is English. In this case we'll take the default!! The system will now start configuring the devices, mount local partitions/cdrom, and read ZFS configuration.
After the virtual machine is configured you will see the following VirtualBox Informational dialog appear. Read the dialog for virtual machine optimization, and click OK to accept. After clicking the OK.
Please read the "OpenSolaris License". When finished click the Close button
After reading the "OpenSolaris License", your OpenSolaris 2008.05 Virtual Machine is running and ready to be installed with you Operating System. As shown below. Let's start by shutting down the virtual machine and restart it. From the Systems drop-down menu select shutdown
To restart the new OpenSolaris 2008.05 virtual machine, from the VitualBox widow select the OpenSolaris 2008.05 virtual machine and click the Start button.
Step15: You are now ready to install OpenSolaris 2008.05 release on the Virtual Machine. From the Virtual Machine click on the Install OpenSolaris icon to invoke the OpenSolaris 2008.05 installer.
You will now be presented with the OpenSolaris 1008.05 Installer dialog window. Read and click the Next button
The installer will now ask you where should OpenSolaris be install? The following dialog window is for Disk partition configuration. For this exercise we will take the default shown below. Click the Next button
Select Time Zone & Date Information. I've select the appropriate values for the OpenSolaris Virtual machine and clicked the Next button
You select the appropriate Locale for you OpenSolaris installation, then click the Next button
Next the installer will ask you for the Users information. The Root users password, you will create a new user as welll as naming you system.
A review on the installation settings before proceeding. You have the option of going back to change information. In our case we'll accept the setting and click the Install button.
Installing OpenSolaris 2008.05 on your Virtual Machine.
Your installation of OpenSolaris 2008.05 is now complete. As stated review the OpenSolairs install log for information. You now must reboot to start the system. However first I found you needed to quit and shutdown the virtual machine and unmount the ISO image or it will just read the mounted information and try to install again. So click on the Quit button, the install dialog window will go away.
Now select System and shutdown your virtual machine.
From the Sun xVM VirtualBox window, click on the CD/DVD-ROM link the following OpenSolaris2008.05 Settings dialog window will open.
Uncheck the Mount CD/DVD-ROM drive checkbox to unmount the ISO Image.
Step16: From the Sun xVM VirtualBox window, highlight the Virtual Machine you want to Power-on and click the Start button. In this case we'll highlight the newly installed OpenSolaris2008.05 virtual machine.
Again by clicking the Start button, this will Power-on the new OpenSolaris2008.05 virtual machine, and you will again see the familiar VirtualBox informational dialog box. As you will notice the Auto capture keyboard option is turned on. this will cause the Virtual Machine to automatically capture the keyboard every time the VM window is activated and make it unavailable to other applications running on your host machine. You can press the host key identified here as the Right Ctrl key to uncapture the keyboard and mouse. Please read it carefully, and click the OK button
Step17: After clicking the OK button above your virtual machine, will now be running and you will be presented with the Grub menu showing your new VirtualBox boot environment. Shown here. Select the OS from the Grub menu and boot OpenSolaris2008.08.
OpenSolaris 2008.05 should now be boot as shown below here.
Step18: Now that we have OpenSolaris 2008.05 booted, let's log in using the userID and password (or the Root User), we created when we installed the OpenSolaris2008.05 Operating System.
This next screenshot, I've launched a terminal window showing I've successfully booted a VM running OpenSolaris on a ZFS root filesystem.
There you go, "Basic VirtualBox in a Nutshell" Part II Running Windows XP in a VirtualBox VM next post.
OpenSolaris 2008.05 is a Live CD, allowing users to experience OpenSolaris immediately, without the need to install it to their systems. When ready, installation is a single click away with a new improved easy-to-use installer. This release also introduces IPS, a new network based package management system, allowing users to install additional software from the network.
ZFS is also the default root file-system, allowing unique snapshot and rollback features, especially useful during system upgrade. OpenSolaris 2008.05 has a significantly improved user environment, in particular for those familiar with other Linux distributions.
Download OpenSolaris Now at OpenSolaris.com 
Software downloaded here or available from the OpenSolaris Package Repository
is subject to LICENSE TERMS.
The CSI armada of shows is sailing in shark-infested waters and each of the shows is jumping them.
CSI: Miami jumped years ago. I stopped watching when I couldn't take the show, or David Caruso, seriously anymore. The only time I see the show is on The Soup, when they make fun of David Caruso.
The original CSI is usually pretty good, but it had a potential shark moment with the episode written by the guys who write Two and a Half Men. That idea doesn't even sound good on paper, so I can only assume it was some bizarre concession made to end the writers' strike.
And while CSI: NY as never been awesome, I watch it when I can. That may change if the New Yorkers don't stop being so Web 2.0 savvy, or at least thinking that they're savvy. It's bad enough when they try to solve crimes in Second Life, but the most recent episode actually featured the following line when tracking down a kidnapped blogger, who continued blog while captured:
I'll create a GUI interface using Visual Basic. See if I can track an IP address.
-- Spoken by Agent Dumbass
Are you freaking kidding me? That is just so wrong on so many levels. I had flashbacks to the magical "Unix GUI" in Jurassic Park. She might as well have said, "I'm going to draw a pretty picture with Crayola Brand crayons."
I could not watch any more after that. I should just delete that episode from my TiVo before those bits corrupt any of my other shows with their lameness.
Update: Look for CSI: Target soon.
Thanks to my colleague Terry Sigle who referred Tripit.com to me Tuesday evening. I have been delighted with its real-world features that simplified my work life.
This afternoon, I completed a travel itinerary that required three separate reservations - two through the AMEX travel website and one through a direct call from a hotel. I then simply sent the three reservation emails, untouched, to tripit.com.
Voila! As if by magic, I received an email with a link to a composite itinerary complete with day-by-day weather forecasts, maps and driving directions. I easily verifed that everything was in sync printed out a combined schedule. Plus, all the individual reservations showed up on my i-cal compatible calendar and I easily accessed the itinerary via the mobile Tripit site.
In addition to this capability, Tripit.com has a social networking capability, similar to Dopplr, that allows travellers to link to each other and share travel plans. Please email me at mgd [at] sun [dot] com if you would like to connect and keep abreast of each other's travel schedule.
This, my friends, is great stuff!
Technorati Tags: Tripit, Travel, Social Networking
When I started blogging, most of the people in the circles I run in didn't know what a blog is, exactly.
I'd say: "Guess what! I'm a blogger. Check it out: MaryMaryQuiteContrary."
And I'd get this quizical look.
Sometimes I'd get a quizical look with a raised eyebrow.
Which would trigger my eyeballs sliding into the rolled back and locked position.
But the point is lots of people didn't really know what a blog is.
(This was before I was selected as Time Magazine's Person of the Year, obviously :-)
(and before I truly embraced the reality that I could have close personal friends who are complete strangers.)
Now, we're seeing the same thing happening w/Twitter.
There are tons of Sun employees on Twitter.
OK, maybe not tons but lots and lots and lots of the really cool (and high-ranking) ones, and my favorite new-hire one.
Still, lots of folks don't know what Twitter is, exactly.
In an effort to spare the Twitter-ati among us the quizzical looks the statement "I tweet" might solicit.....
I found a great little video explaining it. Thought I'd share.
Mary
Sun is now showing measured watts with measured performance for X64 servers as well, the rumor mill inside Sun is saying we are going see a lot more soon:
2008: X64 Virtualization
2008: X64 Java
Real measured watts on a variety of workloads is critical to truly inform customers.
Looking for one-stop shopping to find technical documentation at Sun? Check out the newly updated Documentation Center. This page not only links to product documentation on docs.sun.com, but also to other Sun sites and other open source sites. You can begin to navigate through a broad range of information products for Sun software and hardware, all from a single landing page.
It is that time of the year when many PostgreSQL fans gather in Ottawa, Canada for PGCon 2008 next week. This will be my first visit to PGCon in Ottawa. Earlier this year I had presented two sessions "PostgreSQL and Benchmarks" and "Best Practices of PostgreSQL on Solaris" at PostgreSQL Conference 2008 East in Maryland. Thanks to that visit, this time I might recognize many people by face this time around.
Sun is a Gold Sponsor at PGCon 2008. There will be quite a bit of presence from Sun in PGCon. Josh, Max, Robert, Magne, Zdenek, Jim, Mayuresh et all will be present out there.
Josh Berkus is doing a tutorial on "GUCs: A Three Hour Tour" on Tuesday morning 9:00 am.
Susanne Ebrecht (from MySQL team @ Sun) will also be presenting "What PostgreSQL could learn from MySQL" on Thursday 1:30pm.
I will be presenting "Problems with PostgreSQL on multi-core Systems with multi-terabyte Data" at Thursday 3:00pm. I am actually presenting on behalf of the PostgreSQL Performance Team @ Sun and based on various performance work done by the group.
Robert Lor is also doing a 5-min Lightning Talk on New DTrace Probes proposed for PostgreSQL 8.4. Not to steal his thunder but the demo will be quite interesting. It is part of Lightning Talks on Thursday 5:30pm
Zdenek Kotala will be presenting "PostgreSQL Upgrade Project" on Friday 3:00pm . In-place Upgrade in an eagerly awaited project.
Personally I will be meeting many of the Sun folks also for the first time in person. Generally we talk on conference calls, emails, etc. Definitely looking forward to that.
OpenSolaris is now ready on
Amazon EC2 and you could add GlassFishv2 too..........
AWS...Cloud computing..............
Now developers could try and deploy on our
OpenSolaris
on Amazon EC2. It is in beta program.
After getting access to the latest OpenSolaris, now you could try
GlassFish v2 on OpenSolaris, too.
Here are the few steps you need to do.
1) pkg set-authority -O http://pkg.opensolaris.org:80 opensolaris.org
2) pkg refresh
3) pkg install glassfishv2
4) Then run the command to create a default domain1
/usr/appserver/bin/asadmin create-domain --user admin --adminport 4848 domain1
During the creation of new domain
a)type (typical default) admin password : adminadmin
b)type (typical default) master password : changeit
5) Then run the command to start the newly created default domain1
/usr/appserver/bin/asadmin start-domain --user admin domain1
6) Now you should be able to access the GlassFishv2 on OpenSolaris
GlassFish Admin Console
http://hostname_or_ip_address:4848
GlassFish HTTP
http://hostname_or_ip_address:8080
https://hostname_or_ip_address:8181
Virtualization
Virtualization is not a new idea, since it has been around for a long
time.............
However, some ideas always could be a fresh idea.
-Hyau.
GlassFish Quality Community - Come and join us.
Just mentioning it because a blogger asked: What does it mean if your blog has suddenly disappeared from planetnetbeans.org? Did you say something wrong, did we kick you out? No!
In 99.9% of the cases, your xml feed did not validate, and your blog was just temporarily excluded until the 'offending' xml has scrolled off (or until you find a way to fix the xml manually).
Usually blog feeds are auto-generated, so it's probably not your fault, ;-) but if you can fix the xml issue, please do so -- and you're automatically back on the planet in the next cycle.
If you wonder whether your blog is affected, check the PlanetNetBeans error log. Presently, there are only a handful of people on it, but it's good to know where to find this page if you wonder whether your feed validated or not:
See the long list of fellow NetBeans blogger's on the right hand side? The last item in the list says "Where's my blog?!" It'll take you to the Validating Incoming Feeds info page, from which you can always find the error log, and links to w3c approved validators. Happy blogging!
~20 mins.
In this video, Fritz Ferstl, Director of Sun Grid Engineering and HPC on Solaris, keynotes the Open Source Grid & Cluster Confernence. Download the iPod video version
One of the things that I spend a lot of my time thinking about is performance. It's not easy to observe and profile a system like Darkstar, and it's even harder to come up with quantifiable answers to these kinds of questions. A large part of this is because the performance of the system has a lot to do with the game that is running. If you've got a game that basically just does communication and persists little data, this will obviously behave very differently than one that does a lot of server-side manipulation of data. I end up spending a reasonable amount of time every week just looking at running applications, trying to understand what we can learn from these games and also how we can use this to improve the overall performance and features of Darkstar.
Given all this, I tend not to talk a lot about specific benchmarks, or quote specific numbers to the questions above. It's not that I'm unwilling to talk about the system's performance; Darkstar is open source, and anyone can run it and see for themselves how it behaves. No, it's just that it's really hard to come up with general truisms, and I'd rather cite meaningful data. In regards to the forum post above, however, there was a question about specific hardware. After a short disclaimer that you really can't make general statements about how many players will fit on a given system, I made a somewhat flip comment about a specific Sun product that we've been using for testing. I say "somewhat" because I've played with this hardware enough to know that it's an excellent target system for the size of game that was being asked about. I say "flip" because I thought it would be obvious that I was joking around a little (note the smiley). I was very interested by the flurry of responses.
First off, I think a lot of the questions being asked are exactly right. You need to know what the tests are that are being used to come up with the numbers of clients that a piece of hardware can support. You need to understand what kind of behavior is being stressed or simulated, and why that looks at all like a real application. You need to know whether this is being run in different scenarios, with different kinds of networks, different client behaviors, etc. Without these kinds of data-points, metrics are pretty useless.
What tests have I been running? Unfortunately, the core team hasn't had a lot of time to write full applications, so the tests are still somewhat limited. One test we're running comes from Project Wonderland, which is building a set of automated stress tests. You can download these directly from their subversion tree. Another source of data are the simple tests that we've got in the Darkstar test and example directories. We have a few test apps that we're working to clean up and get posted. We also have a few test cases that I can't share right now (sorry). I will take it as a task to get a wiki page going with performance results so some of the specific numbers we're seeing can be collected.
Second, while it's important to base metrics on understood test cases, I think it's also important not to get so caught up in the minute that systems become less usable. A lot of people come to Darkstar and want to get a rough sense of what they should expect. Is it reasonable to expect an average game can host 200 clients on a server? If so, what kind of server? No, it's not very scientific, but answering these kinds of baseline questions help people who are new to the technology and the model, and may get them interested enough to start learning more about what that actually means.
This is what I was trying to do in the forums: engage a newcomer to the community, with the caveat that the answer doesn't mean very much. I think it's important to set the course-grained expectations, even if that doesn't match with my instincts as a systems hacker. I also know from experience profiling many applications that the expectation I was setting is pretty reasonable. Besides trying to set some expectations, I did something else: I asked for more details about the application. This is really important, because the whole community really needs to hear more about how Darkstar is being used, and how well it's performing for any given design. I was pretty disappointed that no one picked up on this point, especially because everyone chiming in on that thread has at least one game that they could profile today.
So, finally, let me issue a challenge back to the community. Yes, the core Darkstar development team can and arguably should be posting benchmarks and profiling experience. However, anyone else in the community can be doing the same thing. I want to hear about your applications. I want to hear what your design looks like, and what assumptions you're making. I want to see detailed profiling results that illustrate what you're experiencing (I'll make it a priority to post to my blog soon about the profiling system in Darkstar). The questions that get asked in the forums are often very good, but I'd like to see more data get pooled. If I setup a wiki (or something) for collecting these experiences, who will step up and help people understand how Darkstar is actually working?
Let me get to the point: Sun is a great place to work and our eco friendly servers, our offices and way of doing business are proof.
Ok, now that's off my shoulders let me give you some proof.
My SUV (GASP, that's not ECO) gets 15 miles per gallon. It's about 60 miles to my office. So 120 miles a day @ 15 mpg = 8 gallons of gas a day. Five days a week would come out to (8*5) = 40 gallons of gas. At todays rate of around 4$usd / gallon thats (4*40) 160$usd/week. Thats $640usd a month for gas on avg.
I have no idea what this means in green house gas but it can not be good...
Well, if I had to commute daily we can see I could buy a nice Prius or bluetec diesel and still save money.
You see, I could rationalize ECO responsibility like this all day but the fact is, I am able to do my job effectively from home. Around here it's a cycle for me. Therefore, I really hardly drive and when I do it's usually with the need to go places a car would not dare.
The offset is I have an office in my house with it's own air conditioning, florescent and LED lighting and great insulation. So, yes I do use some resources but the saving in green house gas are real and significant.
Sun does not just talk and market Eco responsibility - but it's in the fiber of the company and I respect that. Check out our eco info http://www.sun.com/aboutsun/environment/why.jsp
-brian
Part of Jessica's blog post was a reference to the Liller Family Blog Entry on Asperger's Syndrome, which starts off with this excellent summary:
Paul is almost six feet tall now and just about done with his Sophomore year in High School. We were thrilled today to hear that he has just passed the California High School Exit Exam (CAHSEE). (Paul will be in High School for two more years. He took the CAHSEE this year just in case he needed several tries to pass it.) During our family dinner tonight celebrating Paul's passing the CAHSEE, John and Jessica and Paul and I made a list of benefits and disadvantages of Paul's social-cognitive challenges. As you will see, the two are almost mirror images of each other:
Of course, some of these behaviors sound like any teenage boy... (Also, Jessica says she treats all of her Engineering friends like they have Asperger's and this works very well.) Paul has been enjoying taking Art this year. Here he is with his new self-portrait:
|
|
Images Copyright 2008 by Katy Dickinson
Hi all,
The wheels are turning. Everyday, MySQL is being further integrated in NetBeans. Now you have access to databases formerly associated with Java DB. A good example would be the Travel database. A lot of Visual Web JSF tutorials use this database, and until now, if you wanted to use this database you had to use the Java DB Database Server. Not any more. Now you can use MySQL. I'll show you how.








Cheers!
--James
Described as the French "Shakespeare in Love," I watched the film "Molière" about the famous but new-to-me 17th century French playwright and one verbal exchange stuck with me. The exchange is described in the wikipedia article about Molière:
In Le Bourgeois Gentilhomme, the title character, M. Jourdain, composes a love note as follows: "Beautiful marchioness, your beautiful eyes make me die from love" ("Belle marquise, vos beaux yeux me font mourir d'amour"). He then asks his philosophy teacher to rephrase the sentence which he does by shuffling the words in nearly every single way ("Beautiful marchioness, from love," etc.). M. Jourdain then asks which phrasing is best and the teacher promptly replies that the first is best. The phrase "Belle marquise..." is now used to indicate that two different sentences mean the same thing.
I was immediately reminded of the Adventure game's many variants of "A twisty maze of little passages, all different." Exploring the space of combinatorial permutations has had recognized literary value for longer than I thought!
My daughter acquired a princess net for her room and was adamant that I install it this evening. Whilst I was looking for a suitable hook in the garage when she joined me and the following conversation ensued:
"Daddy, what's that blue flashing light?"
“That’s the Internet router.”
“What’s the Internet?
“Well it's a lot of wires that connect computers together.”
“Why?”
“So we can exchange information such as sending photos and email to grandpa.”
“Mommy said she ordered my princess net on her computer. Did she use the Internet?”
“Yes the Internet can also be used for shopping.”
“And the net arrived the next day!”
”Sometimes it is faster to shop using the Internet.”
“So, daddy, can I get a computer please I want to order a new American Girl?”
”Did you finish your homework?”
”But daddy……!”









See also the post from yesterday. Here's the remainder of them, again in no particular order.
"A blog of 3D stereoscopic images, movies, technology and musings."
"Mothers and Kids. Make and Learn Together."
Also check out the web site of Ji Sun Lee.
"Hands-on Science Exhibits and Education."
"Make Some Characters. Make Some Moods. Make Some Comics!"
"The World's Biggest Show & Tell."
There's so much good stuff on this site. The two that grabbed my eye at the Maker Faire were LED Throwies and Thai Iced Tea.
"The Revolution will be Caramelized."
Checkout their amazing creations on their 3D sugar printer.
Awww. So damn cute. Must...resist...impulse...to...buy...one.
Gorgeous glass creations turned into jewelry.
More amazing glass creations.
"Smart Devices Make Things Simple".
An electronic product studio.
My colleague and friend Art runs what I think is one of the best and coolest communities at Sun. It's called the PASIG for the Preservation and Archiving Special Interest Group. He and Mike Keller, Chief Cybrarian at Stanford, have brought together what amounts to the world's best and brightest minds in the digital library community to discuss strategies for preserving access to the world's collective digital culture. I'm jazzed to be giving a talk on Wonderland and our Immersive Education community work at the upcoming meeting this month in San Francisco. Join us if you can for what is sure to be another great event.
If you understand german, are interested in virtualization and listen to podcasts, don't miss the current episode of the POFACS podcast.
POFACS, the podcast for alternative computer systems is a german podcast that coveres everything non-mainstream in computing. From people running their business on a Commodore 64 to the state of the art Amiga OS to office packages that fit on a floppy disk or one of the many Linux variants.
There have been a few episodes covering Solaris related technologies, such as ZFS and Project Indiana. Today adds an interview with my colleague Detlef from Berlin about virtualization.
Actually, whenever I listen to one of the POFACS episodes about some crazy new operating system that's being developed somewhere, I've always liked to try it out and see how it is. The perfect way to do that of course is to use virtualization, so you don't have to re-install your machine again. Well, that's where Sun's VirtualBox comes in: It comes with a great range of supported operating systems so there's a good chance it will run even the strangest alternative OS just fine.
But now, let me download Detlef's interview myself and listen to is. Enjoy!
Something many of you may not know is that I play music. You see, my grandparents and my great grandparents were musicians. My Grandfather Joe still plays a few days a week for various venues. He's in his 80's, oh - you should hear my grandma belt out You Are My Sunshine! I started playing in 5th grade. Now, I focus on the drums and play in a blues band. I love music and spent years in the music industry in IT at various levels.
What's this have to do with Sun? Working for Sun, I get to help the organization better it's processes and encourage positive simple and effective work. Lately, in doing my work, I have been helping our partners work together effectively. Oh, the struggles of getting various gr