Welcome!


Because of the efforts of people like Steve Souders, John Resig, Sergey Chernyshev, Paul Irish, ... a lot has changed when it comes to optimizing web site performance. Browser and Application Performance Vendors built tools to make Web Performance Optimization easier than ever before. ...
Let’s start with the basic question: What is the disruptor? The disruptor is a concurrency framework for Java that allows data sharing between threads. The age old way of coding a producer-consumer model is to use a queue as the buffer area between the producer and the consumer, where ...
Service Oriented Architecture was hailed as the next major leap ahead in the ICT industry and was predicted by many to be as big a leap forward as that achieved with Object-Oriented software design patterns. For example, in 2006, Joseph Bih introduced SOA in a research article as an in...

CTOlabs.com is a research tool information on technologies, concepts and companies of interest to enterprise IT professionals. The CTOlabs Disruptive IT List is a curated list of firms we believe hold the greatest potential for positive disruption in the enterprise IT space. Our wri...

In this article I will provide you an effective and optimized approach of Factory Design Pattern in Java. As you know theFactory Method Pattern or popularly known as the Factory Design Pattern is one the design patterns under the category of "Creational Design Pattern". The basic prin...
Consumers are continuing to adopt multiple connected devices and video content is expected to reach more than 70 percent of global traffic. This growth and the increased reliance on wireless networks is putting stress on existing 802.11a/b/g/n networks. As a result of this high usage, ...
This article gives you an inner insight into the design of a better singleton design pattern. In this article you will be able to learn how break a singleton design if it not designed properly. It will help you to follow the best practices adopted in the industry. A few days ago when ...
Open source software has probably been the biggest driver of complex software solutions in the last decade. Access to a large variety of quality, peer-reviewed software has accelerated product development, reduced product introduction intervals and lowered the costs for producers of so...
Business processes manage the operational flow of business and when optimized achieve cost containment and flexibility as they need to be efficient and able to adapt to changing business conditions. The art of planning and implementing process management requires all the best cross-fun...
Studies suggest that businesses are adopting cloud much faster than IT, which is fair considering the fact that tightly coupled on-premise applications and outdated platforms from the previous decade made businesses realize only 30% of their budgets as business capabilities and the res...
The Datapower appliances support the use of the FTP protocols for message transport. The purpose of this article is to present number of common use case scenarios for FTP polling, illustrating correct configurations of the device to support the use case. The use case scenarios are as ...
Some people might think of cloud adoption as a marathon: a set distance to a clear goal, where keeping focus and maintaining a steady pace will ensure a winning outcome. While there is an element of truth to that, I consider the implementation process more of an obstacle course, with t...
Design patterns are one of the most successful advances in software engineering, by any measure. The history of design patterns is a strange one though, and somewhere along the way, much of their original utility and elegance has been forgotten, misplaced, or simply miscommunicated. Th...
Modularity plays an important role in software architecture. It fills a gap that has existed since we began developing enterprise software systems in Java. This chapter discusses that gap and explores how modularity is an important intermediary technology that fills that gap. There a...
Many organizations are starting to look at cloud computing as a universal solution, but there are many applications that cannot be considered unless the framework of cloud computing includes Timing as a Service (TaaS) as part of its fabric. Mission-critical applications require securit...
In a recent article, CIO.com said that analytics and BI will be the top technology priorities for CIOs in 2012, based on a Gartner Inc. survey of IT executives. However, if you look back in time, reports show that BI was a top priority even then. Although we have fast-forwarded many ye...
In a time where the clock speeds of processors have been stable over the past couple of years, and Moore's Law is instead being applied by increasing the number of processor cores, it is getting more important for applications to use concurrent processing to reduce run/response times, ...
Any application you pick up, there are some issues – big or small. There will be copy-paste code, mistakes, algorithms which could have better thought through. But what distinguishes an antipattern from these normal errors is that like patterns these antipatterns are recurring througho...
The Spring Data Neo4j Project This project is part of the Spring Data project, which brings the convenient programming model of the Spring Framework to modern NOSQL databases. Spring Data Neo4j, as the name alludes to, aims to provide support for the graph database Neo4j. The first p...
Defining "Who sees what" and "who does what" are the two important aspects of access control in any software application. "Security" is a much larger subject, but this article focuses on just the access control aspects of Security in a software application. When you build a custom ap...
Performance is one word that is used to describe multiple scenarios when talking about application performance. When someone says I need a High Performance Application, it might mean any/all of the following: Low web latency application ( meaning low page loading times) Application t...
HTML5 is a draft specification for the next major iteration of HTML. It represents a break from its predecessors, HTML4 and XHTML. Some elements have been removed and it is no longer based on SGML, an older standard for document markup. HTML5 also has more allowances for incorrect synt...
In early JVM releases, it was common to delegate Java monitor operations directly to operating system monitors, or mutex primitives. As a result, a Java application experiencing lock contention would exhibit high values of system CPU utilization since operating system mutex primitives ...
Most Java performance opportunities fall into one or more of the following categories: Using a more efficient algorithm. The largest gains in the performance of an application come from the use of a more efficient algorithm. The use of a more efficient algorithm allows an application ...
The term Business Transactions and Business Transaction Management is widely used in the industry but it’s not always well understood what we really mean by it. The BTM Industry Portal provides some good articles on this topic and is definitely recommended to check out. The general goa...
It’s a scenario with which many Java developers are all too familiar – and one which many fear. You log on to the network or arrive at the office to discover your Chief Security or Compliance Officer, Application Manager or even a VP of Sales and Marketing in a state of panic. A common...
JavaServer Faces (JSF) technology is used for developing server-side user interfaces (UI) for Java EE applications. JSF 2.0 architecture has introduced several new features, most of which we shall discuss in this article. The salient new features in JSF 2.0 are State Saving, Facelets, ...
The recent spike in insider threats, coupled with a rise in compliance considerations, has forced organizations to ensure only authorized users access sensitive application functionality and data. Historically, user entitlements or authorization logic has been embedded inside an applic...
If you are in IT, there is good chance that you are maintaining multiple B2B integration systems for data exchange and translation. Every IT leader has considered consolidating these products into a single B2B suite to reduce costs and improve supply chain agility. Historically, each B...
Tomcat is a widely popular lightweight application server. When securing Tomcat web applications, Valve, JAAS and Filter are used in various scenarios. The challenges for developers are when to use each of these methods and how to integrate them together if more than one method is chos...
Performance is one of the major concerns in the cloud. But the question should not really be whether or not the cloud performs, but whether the Application in question can and does perform in the cloud. The main problem here is that application performance is either not managed at all ...
One sure fire way to keep budget and buzz away from your projects is for you and your department to be associated with incremental improvement. Projects can generally be classified into two categories. The first is “business transformation,” which includes projects that generate excite...
I’ve been programming since around 1982, first using an Apple in high school and then finally getting my first computer, the Timex Sinclair 1000 (2k of ROM and 2k of RAM), that same year. Both computers came with a form of the BASIC programming language and it was the start of my lifel...
Response times are in many – if not in most – cases the basis for performance analysis. When they are within expected boundaries everything is ok. When they get to high we start optimizing our applications. So response times play a central role in performance monitoring and analysis. ...
The OSGi framework is a popular platform for developing multifunctional desktop systems, enterprise systems and complex applications. OSGi uses a modular approach where each bundle is regarded as a relatively independent and separate unit. The framework controls maintenance-based tas...
Current SQL support of relational, XML and hierarchical legacy data such as IMS is driven by flattening the hierarchical data. This is needed in order to integrate it naturally with relational (flat) data so that it can be processed relationally. Unfortunately, this strips out the natu...
OSGi technology brings a number of much needed benefits to the Java enterprise application market, and is disruptive in that it impacts the software development, deployment, and management practices of many organizations. OSGi impacts deployment given the shared, modular nature of OSGi...
Which mobile device should I target for my application? That's one of the first questions you need to answer as a mobile developer. You might select the device based on personal preference or what looks cool today. The problem is that mobile technology choices are diverse and evolvi...
Hierarchical structures have an inherent ability for significant data value increases beyond the data collected. This will be shown to exist in hierarchical structures and even more powerfully in their natural hierarchical processing capabilities. These will demonstrate flexible and e...
There are two major drivers behind the need to embrace parallelism: the dramatic shift to commodity multicore CPUs, and the striking increase in the amount of data being processed by the applications that run our enterprises. These two factors must be addressed by any approach to paral...