ProGuard – A free Java class file shrinker, optimizer, obfuscator, and preverifier – ProGuard is a free Java class file shrinker, optimizer, obfuscator, and preverifier. It detects and removes unused classes, fields, methods, and attributes. It optimizes bytecode and removes unused instructions. It renames the remaining classes, fields, and methods using short meaningless names. Finally, it preverifies the processed code for Java 6 or for Java Micro Edition.
GWT 2.5 SuperDevMode and Google App Engine – Now an Amazing Combination – With the advent of GWT's new SuperDevMode (SDM), you can easily modify your Java client code and see it quickly reflected in GAE's development environment without any restart necessary. This is an addition to the other native Java debugging features introduced as a result of SDM. Below is a quick screencast of this capability:
MongoDB SQL Server Importer – If you want a quick (but kinda dirty) way to import your SQL Server database to MongoDB, this is your tool. MongoDB SQL Server Importer (Sql2Mongo) is for those who wants to leverage their existing database to learn MongoDB.
Extreme Performance with Java – Charlie Hunt explains what can be done to lower the latency introduced by the Java GC and JIT, including coding tips, and introducing tools for tuning the performance of Java applications.
Protean Echo | Fuse all your cards into one – Echo is the last payment card you'll ever carry. It's your debit, credit, loyalty, and prepaid cards – even your student ID – all combined into a single, elegantly crafted card.
Legit – Git Workflow for Humans – Legit is a complementary command-line interface for Git, optimized for workflow simplicity. It is heavily inspired by GitHub for Mac.
Automating Unit Tests | Blog | Sencha – Unit tests are an important part of the software development process. By clearly defining what we expect from our code, unit tests allow us to develop a high degree of confidence that our applications will function as intended. Automating our unit tests reduces the number of bugs and decreases the amount of time we need to spend manually testing our code.
Martin Fowler on Software Patents – At a time when our future affluence depends so heavily on innovation, we have drifted toward a patent regime that not only fails to fulfil its justifying function, to incentivise innovation, but actively impedes innovation
Nick Farina – An iOS Developer Takes on Android – Recently, we released the Android version of Meridian, our platform for building location-based apps. We didn't use one of these "Cross Platform!" tools like Titanium. We wrote it, from scratch, in Java, like you do in Android.
Idiomatic Layouts with Sencha Touch | Learn | Sencha – In this two-part series, we show how, with a single code-base, we can create an app which responds to these conventions, and which, through the use of the Sencha Touch 'application profiles' mechanism, delivers familiar user interfaces to both phone and tablet users.
(def title nil): Quick(er)sort Through Parallelism – We will detail two effective synchronization policies for parallel Quicksort in Java. One is usable in production now, one is coming soon in JDK 7. Shared count down latch and Fork/Join framework, new in JDK 7 (JSR 166)
NoSQL Databases – A Look at Apache Cassandra – Cassandra is a fully distributed column-oriented data store that provides MapReduce implementation using Hadoop. All the nodes in the cluster play the same role. The data (existing and new) are shared automatically among the nodes
Monitis Blog – Picking the Right NoSQL Database Tool – Interesting read on the Monitis Blog about picking the right NoSQL tool. They dive into what it is, what's possibly wrong with RDBMS, describe the different categories of NoSQL and the pros and cons of the different types
The Future Of Java | Forrester Blogs – I disagree with Forrester's research note on the Future of Java. They make some good points about how Java's future will be constrained by the bounds of Oracle's business model.
Apache HttpClient 4.1 (GA) released – TheServerSide.com – The Apache HttpComponents project is pleased to announce 4.1 release of Apache HttpClient. HttpClient 4.1 builds upon the stable foundation laid by HttpClient 4.0 and adds several functional improvements and popular features
Hg Init: a Mercurial tutorial by Joel Spolsky – Mercurial is a modern, open source, distributed version control system, and a compelling upgrade from older systems like Subversion. In this user-friendly, six-part tutorial, Joel Spolsky teaches you the key concepts.
Visualising Garbage Collection in the JVM | RedStack – Recently, I have been working with a number of customers on JVM tuning exercises. It seems that there is not widespread knowledge amongst developers and administrators about how garbage collection works, and how the JVM uses memory.
Keep My Opt-Outs – Chrome Web Store – Keep My Opt-Outs is an extension for users who aren’t comfortable with personalization of the ads they see on the web. It’s a one-step, persistent opt-out of personalized advertising and related data tracking performed by companies adopting the industry privacy standards for online advertising
InfoQ: Scooter Framework; Java Made CRUD And Simple – The development of the Scooter framework has been inspired by the simplicity of use exhibited in Ruby on Rails. The Scooter framework presents an alternative for developing Java web applications using Struts, Spring and Hibernate, with a CRUD generator and the ActiveRecord as key features
Random Thoughts » Spring + JTA + JPA + JMS – In this post I will create a simple Order Processing Message Driven Bean that showcases this integration. I will be using an Oracle database and deploy the application on a WebLogic 10.3 server
InfoQ: Open Source VI (vSphere) Java API for Managing VMware Platforms – This talk gives an overview of VMware management APIs, the open source VI Java API, how to leverage VMware vSphere for your development, testing and deployment using the API, the basic concepts and object model of the API, how to configure vSphere/VMware Server, provisioning new virtual machines and managing their lifecycles, monitoring system performance, and automating system management.
Ext JS Blog – » Implementation Spotlight: Jama Contour – Contour is a fully web-based requirements management application, sports a complete Ext-based user interface from top to bottom. It’s easily one of the most sophisticated and visually polished Ext applications we’ve seen yet
Ajax on the network side – Java World – Making the most of Ajax doesn't end with beautiful code: you also need a solid network infrastructure that won't choke when client calls surge. This article introduces Ajax basics, offers tips for optimizing, monitoring, and securing Ajax applications
» Terracotta Server as a Message Bus – But I?m a guy that really likes simple. TC lets us make an entirely POJO system that runs beautifully in IntelliJ. A single ?container? type main program can run all our components in a single JVM simply by loading all our various Spring configs.
What is Visual VM? – Visual VM is a new project whose goal is to provide monitoring and profiling tools for the JVM with a GUI. Visual VM is a standalone application (based on NetBeans platform :).
Dr. Dobb’s | NetBeans 6.0: A First Look | January 24, 2008 – Sun Microsystems recently released NetBeans 6.0 which came with significant improvements, almost all in direct response to user requests. Even the developers who like NetBeans have posted complaints about its editor, especially when compared with Eclipse.
Roller: free and open source Java blog software – Apache Roller 4.0 has been released and is now available for download. This is a major new Roller release which includes easier blog theme customization, a much more simple installation/upgrade process, infrastructure improvements and other small fixes.
infinitest – Google Code – Infinitest is a continuous JUnit test runner designed to facilitate Test Driven Development. Infinitest helps you learn TDD by providing feedback as you work, and helps you master TDD by reducing your feedback cycle from minutes to mere seconds
dev2dev: Using Asynchronous Servlets to Deal with Hung Threads – BEA WebLogic Server 9.2 and later versions expose an Abstract Asynchronous Servlet class, which allows you to decouple receiving a servlet request from sending its response. The class also provides a Future Response Servlet, which lets the server handle s
Yahoo! UI Library: Charts – The YUI Charts Control visualizes tabular data on a web page in several possible formats including vertical columns, horizontal bars, lines, and pies. Features include support for the DataSource Utility, customizable serie, axes, mouse-over datatip
Ext JS LiveGrid Component – The Ext JS LiveGrid Component is a user extension that’s build upon the wonderful Ext JS Framework. The component allows to read chunks of data from an underlying storage (common use case: a database) without the need of paging. Means: You can virtually d
Ext JS Blog – » Ext 2.0 Final Released – The Ext team is proud to announce that the official release of Ext v2.0 is available for download. Ext 2.0 is a dramatic step forward from all previous versions of Ext, providing increased performance, ease of configurations, flexibility and UI capabiliti
Adobe Debuts Flash Media Server 3 – Slashes Price – The Flash Media Interactive Server includes the debut of streaming HD video. FMS3 will offer H.264 video streaming, as well as support for High Efficiency AAC (HE-AAC) audio that can be streamed to Flash player, AIR applications, or Adobe’s Media Player a
NetBeans Magazine – To coincide with the launch of 6.0, this latest issue of NetBeans Magazine features 62 pages of in-depth articles. NetBeans IDE 6.0 features Ruby/JRuby/Ruby on Rails support, enhancements for improved Swing development, a new Visual Game Designer, updated
InfoQ: System Integration Testing Using Spring – When it comes to system integration testing Spring adds real value. In this session, Rod Johnson discusses: integration testing and the support that Spring provides for it, issues around testing the persistence layer, testing web applications.
InfoQ: Using Java to Crack Office 2007 – With Office 2007, no third-party libraries are necessary-a Java application can now read and write any Office 2007 document, because Office 2007 documents are now nothing more than ZIP files of XML documents known as the OpenXML
Welcome to jXLS – jXLS is small and easy-to-use Java library for generating Excel files using XLS templates. Also jXLS can be used to read XLS files and populate Java beans with spreadsheet data according to XML configuration file
How To Read / Write Excel Spreadsheet From Java – Both JExcelAPI and Jakarta POI (HSSF) are open source software to read & write data from / to Excel spreadsheet even on non-Microsoft platforms. In my tests HSSF came out to be the clear leader and recommended solution because of robustness and features.
Greg the Architect : Episodes – Find out what happens when Greg tries to swallow three different SOA pitches in one day. Will he save the day, or will Greg have to chuck the project?
Dr. Dobb’s | Java Message Service | July 2, 2007 – SOAP-based web-service development continues to grow, and uses XML and HTTP to remove the implementation details from remote procedure calls. But while SOAP has broken new ground in distributed computing, message-oriented middleware such as the Java Messa
Plans for the Rich Web Application Backplane – Both mashups and Ajax are now firmly entrenched in the Web landscape. Put them together and you have the makings for Rich Web applications. This article explains the Rich Web Application Backplane, currently a W3C Note, which is designed to bring standard
OpenJPA no longer requires bytecode processing – Historically, OpenJPA required that you either run a post-compilation tool or run your application with a javaagent. The latest build of OpenJPA removes this restriction by providing various levels of support for unenhanced classes.
ONJava.com: Asynchronous Messaging Made Easy With Spring JMS » The Spring framework simplifies the task of working with JEE components, including JMS. It provides a template mechanism to hide the details of a typical JMS implementation so developers can concentrate on the actual task of processing messages instead of