Daily del.icio.us for September 24th through September 27th

  • Completely Test Your BlackBerry Phone for any Problems with this Secret Shortcut – If you own a BlackBerry mobile phone (or plan to buy one), here’s a very useful shortcut (or can we say Easter Egg) that enables you to perform a complete health checkup of your BlackBerry hardware.
  • Using Java Persistence in a J2EE 1.4 Web Application – This document takes you through the basics of how to add Java™ Persistence functionality to a J2EE 1.4 web application. Though the Java Persistence API was introduced as part of the Java EE 5 platform, it is possible to use Java Persistence in a J2EE 1.4 application
  • FactCheck.org: FactChecking Debate No. 1 – McCain and Obama contradicted each other repeatedly during their first debate, and each volunteered some factual misstatements as well. Here’s how we sort them out:
  • Davenport WebDAV-SMB Gateway – Davenport is a servlet which provides a WebDAV gateway to SMB shared resources. Typical usage would be to provide web-based read and write access to Windows shared drives. WebDAV clients, such as Windows' "Web Folders" can copy files to and from the shares over HTTP. Non-WebDAV-capable web browsers can also access the network, downloading files from shared folders in a seamless fashion.
  • Bailout Could Deepen Crisis, CBO Chief Says – washingtonpost.com – The director of the Congressional Budget Office said yesterday that the proposed Wall Street bailout could actually worsen the current financial crisis
  • Oracle enters hardware market; Launches storage server to ride shotgun with database | Between the Lines | ZDNet.com – Oracle CEO Larry Ellison on Wednesday unveiled its first ever hardware product–a storage server with embedded software designed to work with the company’s databases and be used in a grid. The Exadata programmable storage server aims to put database intelligence next to each drive. Oracle and HP also launched a “database machine.”
  • The Geek Stuff » Turbocharge PuTTY with 12 Powerful Add-Ons – Software for Geeks #3 – PuTTY is hands-down the best, free, and lightweight SSH client for Windows. I have provided list of 12 powerful PuTTY add-ons with screenshots, that will solve few shortcomings of the original PuTTY
  • InfoQ: Joshua Bloch: Bumper-Sticker API Design – I distilled the essence of the talk down to a modest collection of pithy maxims, in the spirit of Jon Bentley's classic Bumper-Sticker Computer Science, Item 6 in his excellent book, More Programming Pearls: Confessions of a Coder (Addison-Wesley, 1988).
  • Bliki in a Jar 3.0.9 released – Bliki in a Jar is a small Wiki written in Java with focus on supporting the Wikipedia syntax. It is intended to run on an USB stick as a replacement for a paper notebook as a Personal Information Manager
  • Ext JS – Improving Application Usability with Ext JS Keyboard Handling – As you can see, adding custom key handling within an Ext JS application is quite easy. For any custom keys, including function keys, alpha keys with or without modifiers (alt/shift/ctrl) there is Ext.KeyMap. For navigation, arrows, paging, home/end there is Ext.KeyNav.
  • Hey Rod, You Are Killing Your Company – Weiqi Gao’s Observations – After a new major version of Spring is released, community maintenance updates will be issued for three months to address initial stability issues. Subsequent maintenance releases will be available to SpringSource Enterprise customers. Bug fixes will be folded into the open source development trunk and will be made available in the next major community release of the software.

Daily del.icio.us for August 11th through August 15th

  • LocalCooling – Free Power Management Tool to Optimize Energy Savings – LocalCooling is a 100% FREE power management tool, from Uniblue Research Labs, that allows users to optimize their energy savings in minutes and as a result reduce greenhouse gas emissions.
  • Type-safe Builder Pattern in Java « Michid’s Weblog – Recently I read this rather fascinating post about a Type-safe Builder Pattern in Scala. When Heinz Kabutz mentioned the builder pattern in his latest issues of the The Java Specialists’ Newsletter I decided to try to come up with a type safe version for Java.
  • leejeok: Setup Java, Tomcat, MySQL on Ubuntu (JSP Hosting) – This tutorial will lead you to setup a simple JSP hosting on Ubuntu machine. You may want to consider this as a basic setup to host any of your web application which developed using Java – JSP or Servlet, Tomcat and MySQL
  • InfoQ: Spring 2.5: New Features in Spring MVC – This article is the second part of a three-part series exploring annotations introduced in Spring 2.5. It covers annotations support in the Web layer. The final article will highlight additional features available for integration and testing.
  • jetlang – Message based concurrency for Java – Jetlang provides a high performance java threading library. The library is based upon Retlang. The library is a complement to the java.util.concurrent package introduced in 1.5. The library should be used for message based concurrency similar to event based actors in Scala. The library does not provide remote messaging capabilities. It is designed specifically for high performance in-memory messaging.
  • keyczar: Toolkit for safe and simple cryptography – Google Code – Keyczar is an open source cryptographic toolkit designed to make it easier and safer for devlopers to use cryptography in their applications. Keyczar supports authentication and encryption with both symmetric and asymmetric keys
  • Linux.com :: Using free software for HTTP load testing – A good way to see how your Web applications and server will behave under high load is by testing them with a simulated load. We tested several free software tools that do such testing to see which work best for what kinds of sites.
  • Op-Ed Columnist – Eight Strikes and You’re Out – Op-Ed – NYTimes.com – Senator McCain did not show up for the crucial vote on July 30, and the renewable energy bill was defeated for the eighth time. In fact, John McCain has a perfect record on this renewable energy legislation. He has missed all eight votes over the last year
  • IntelliJ IDEA Blog » Blog Archive » IntelliJ IDEA 7.0.4 Takes Off – Good news, everyone! We’re happy to announce the release of IntelliJ IDEA 7.0.4! Though this is a regular maintenance release, we have some cool stuff (besides performance improvements and bug-fixes — things you can typically find in any maintenance release) up our sleeve for you: Reworked Ruby, JRuby and Rails support, Way better smart Maven integration, Version control with Subversion 1.5
  • Hadoop: When grownups do open source | The Register – Despite being a canon of Java engineering, Hadoop is actually pretty useful, if you've got a problem it can solve.

Daily del.icio.us for August 6th through August 11th

Daily del.icio.us for June 15th through June 17th

Daily del.icio.us for January 19th through January 20th

Daily del.icio.us for January 3rd

Daily del.icio.us for for January 3rd:

Daily del.icio.us for Dec 26, 2007

  • Advanced Topics in JPA – Parleys – Parleys.com – a Belgian Java User Group initiative – In this talk we will introduce a few of the common features and use them as a platform on which we can discuss some of the higher order JPA topics. We will show how to use multiple persistence units, define and tune identifier generators, create and invok
  • SpringSource Team Blog » Is it a Tomcat, or the Elephant in the Room? – In the era of open source, the traditional API-led sale for application servers has been replaced by a QoS sale
  • Samples Updated for AIR Beta 3 | Kevin Hoyt – What started as a couple dozen examples has also now grown to be over forty (40) AIR samples, to include a number of full applications. That being said, I?m happy to announce that the samples update for AIR Beta 3 is complete, and are available for down
  • High Performance Ajax Applications » SlideShare – High Performance Ajax Applications presentation at Yahoo by Julien Lecome. Topics include * Developing for high performance, High performance page load, High performance JavaScript, High performance DHTML, High performance layout and CSS, High perfor
  • The Google Enigma – In his new book, The Future of Management, London Business School professor Gary Hamel calls Google ?a modern management pioneer? that ?has much to teach us about how to build companies that are truly fit for the 21st century.?

PHP Acceleration – Pick Your Poison

As I deployed more applications and web sites on my server, I started running into resource issues. Since most of the applications I write are in Java, I run Tomcat on my Linux server. But I also run Apache as a front-end host for Tomcat as well as several PHP applications like WordPress, Vanilla and a few other PHP applications that I’ve written. I am not an expert PHP developer by any stretch of the imagination but I tinker with enough PHP that I decided to take a look at PHP Acceleration software.

For the uninitiated, PHP is a scripting language that is interpreted and compiled on the server side. PHP Accelerators offer caching of the PHP scripts in their compiled state along with optimization. There are several PHP optimization products out there and I decided to give eAccelerator, XCache and APC a try on my Linux machine. For the record, the box is running CentOS 4.4 which is essentially a distribution that is repackaged Red Hat Enterprise Linux 4.x.

  • eAccelerator – eAccelerator is a free open-source PHP accelerator, optimizer, and dynamic content cache. It increases the performance of PHP scripts by caching them in their compiled state, so that the overhead of compiling is almost completely eliminated. It also optimizes scripts to speed up their execution. eAccelerator typically reduces server load and increases the speed of your PHP code by 1-10 times.
  • XCache – XCache is a fast, stable PHP opcode cacher that has been tested and is now running on production servers under high load.
  • APC – The Alternative PHP Cache (APC) is a free and open opcode cache for PHP. It was conceived of to provide a free, open, and robust framework for caching and optimizing PHP intermediate code.

I compiled and installed these PHP accelerators and found APC worked the best for me. XCache seemed to work well and actually provided a nice admin application that lets you peek inside the cache to see what’s cached, the hit/miss ratio, etc. eAccelerator also seemed to work well and offered a great performance boost but caused segmentation fault and made the Apache web server unusable. It could have been bad PHP code that was causing the segmentation faults but I didn’t really spend any times getting to the root cause. APC just worked, pretty much like XCache but seemed to offer a little better performance. Now I didn’t really perform any empirical testing here – I simply relied on my website monitor GrabPERF as I ran each PHP extension for a few days. Your mileage may vary based on your server architecture, application, lunar phase, etc but PHP APC seemed to work the best for me.

BEA Workshop Studio and Ubuntu

I have been following BEA’s acquisition of M7 to see what happens to the NitroX product. We are a big WebLogic shop and so I was curious to see what BEA is going to bake in the new release of NitroX renamed Workshop Studio. The new Workshop Suite is based on the Callisto (Eclipse 3.2 and WTP 1.5) release and is chalk-full of goodies including EJB 3.0 (JPA), Kodo, Spring, JSF (yuck), Struts, JSTL, Hibernate support among other specs/frameworks. Another cool thing in Workshop Studio is the ORM tool that is built-in that allows developers to access databases and build an object relational entity layer to model the data using persistence engine providers that implement the EJB3, JPA, Kodo and Hibernate. Workshop also supports Tomcat, Resin, Jetty, JBoss, and WebSphere in addition to WebLogic.

I am a die-hard IntelliJ IDEA fan and IDEA is still the BEST IDE in the market. IDEA has the best refactoring, smart-type auto completion, code analyzer capabilities and it is really the best IDE for writing code. However, it is missing many of the bells-n-whistles that Eclipse and now NetBeans have. In the last few months, I found myself looking at the NetBeans 5.5 betas and Eclipse 3.2 betas and wondering why IDEA was missing a lot of that functionality. Sun has really turned around NetBeans and the latest 5.5 betas have really rocked. The combination of the Profiler with NetBeans makes it a compelling offering and the price is right.

Guess I am getting off-topic here – So I’ve been playing with the latest release of Workshop Studio and my first impressions are very positive. I am hoping to use it exclusively for a month and then blog about my experiences. I recently upgraded my Linux box to Ubuntu (Dapper Drake) and I’ve been running more than SVN, MySQL, Apache, Tomcat and WebLogic on it. I try to install all of my development tools on my XP and Linux box for consistency and so I was able to install Workshop Studio on my Ubuntu Linux box without any problems. Out of the box, Workshop Studio doesn’t support Ubuntu but the installer does allow you to continue installation and use Workshop Studio. Here are the steps I used to install Workshop Studio:

I’m assuming you already have the 1.5 JDK installed on your box. If you don’t, you can use apt-get to get and install the latest SDK. This article at the Javalobby has a lot more details but here’s all I did for my installation:

sudo apt-get install sun-java5-jdk
sudo update-alternatives—config java
export JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun-1.5.0.06/
sudo ./WorkshopInstaller.bin

The installer clears the launcher icons in the directory of your choice and you should be all set to use Workshop Studio. On his blog, Bill Roth discusses his experiences of installing Workshop on his Ubuntu box using JRockit. In addition to being a fellow Marquette alum and an all around great guy, Bill is also the vice president of the BEA Workshop Business Unit at BEA Systems. Bill asks the question in his blog entry about BEA officially support Ubuntu in their products and I would have to say a resounding yes to that. Most enterprises use RedHat on their servers but Ubuntu is fast catching up on the desktop side and so BEA should support RedHat and Ubuntu. Cannot wait for the day when I get type in apt-get jrockit, workshop and weblogic.

Daily del.icio.us for Jun 06, 2006

  • Do you need a highly scalable architecture? Do you need to be able to handle hundreds of transactions a second? What works in small web apps doesn’t necessarily hold together in big apps under heavy loads. Binildas C. A. has this introduction to coding an
  • Discover three Ajax data transport mechanisms (XMLHttp, script tags, and frames or iframes) and their relative strengths and weaknesses. This tutorial provides code for both the server side and the client side and explains it in detail to provide the tech