What with the double-dip recession, the ridiculous hike in petrol prices and year-on-year reduction in the number of promotions, especially at senior levels, the minimum that your organization can do is create designations that really sound cool!
Posted by indroneel on November 3, 2011
Posted by indroneel on February 18, 2009
Setting up the technology stack is usually the first stumbling block encountered while developing with PHP and MySQL. The common practice is to use Apache web server as the HTTP gateway. Setting up these three components separately is not a trivial task because of the variety of configuration parameters, file system paths and launch options involved.
To mitigate this, many a software provider have come up with pre-integrated Apache, PHP and MySQL distributions that require much less effort in configuration and setup. Usually called a LAMP (acronym for Linux, Apache, MySQL and PHP) or WAMP in case of windows, these bundles provide an accelerated approach for newbies who have embarked on the PHP track.
Simplicity notwithstanding, most LAMP/WAMP implementations still include certain limitations when it comes to extreme portability, configurability and custom integration. A separate discussion of these limitations is beyond the scope of this article. Instead, we shall guide you through a step-by-step approach to creating your own integrated, flexible and redistributable AMP environment from scratch. Read the rest of this entry »
Posted by indroneel on December 2, 2007
Modern enterprise applications are characterized by a preponderance of distributed computing paradigms and methodologies. In consequence, the network between different application elements (services) now play an increasingly significant role. Typically, the network layer for most distributed environments possess the following three characteristics:
- the nodes in the network (e. g. the services themselves) encapsulate complex functionality.
- the communication part is hierarchically layered into a set of relatively simple transports and protocols.
- the network topology is static with the location and capability of services defined a-priori.
In this article, we shall explore the feasibility and possible benefits of having a dynamic topology for the networking layer of enterprise applications. Read the rest of this entry »
Posted by indroneel on June 18, 2007
The Jetty web server is a standards compliant J2EE container that is regularly updated to conform with the latest servlet and JSP specifications. Because of its embeddable nature, it is a popular choice with developers who need to incorporate a servlet container /web server in their applications. It is also a natural choice to quickly debug and test web applications that are being developed using the Eclipse IDE. Read the rest of this entry »
Posted by indroneel on June 1, 2007
JAX India 2007 finally got over today. A quick Google search just before I started on with this blog entry, gives me the general impressions of ‘let-down’ and ‘not up-to-the-mark’ that is being shared by many of the attendees. After sitting through nearly three days worth of seminars and presentations from technology thought leaders, my opinions right now are definitely ambivalent. In this column I intend to reflect objectively upon the high and low points of the JAX India 2007 event. Read the rest of this entry »
Posted by indroneel on April 29, 2007
Of late, the dependency injection pattern has gained prominence as a common feature provided by many object-oriented frameworks. Included in this list are new entrants like JBoss Seam and Google Guice as alternatives to the more popular Spring framework. Existing platform, such as Struts and EJB, are also making a move towards this paradigm.
The prevalence of dependency injection has resulted in certain interesting possibilities that are mostly to do with interoperability, transparency and integration across frameworks and containers. In this article we shall take a closer look at these possibilities and propose solutions for the same. Read the rest of this entry »
Posted by indroneel on April 21, 2007
The term ‘workspace’ means different things to different people depending on the context in which it is used. In this article we shall use this term to denote the set of applications and associated data pertaining to an user’s daily activities on a single computer.
The user’s workspace is a dynamic environment. Applications are added or removed, usually using installation processes defined by the underlying operating system. At the same time, data associated with those applications are continuously modified. Workspaces tend to get fragmented over time with application files and user data spread across multiple folders in totally unrelated paths such as user profile, system and application root directories. All these factors make the workspace non-portable.
A portable workspace is one that can be moved across multiple computers without requiring repeated installation, customization and data setup. Such repetitions can be quite an overhead if your workspace includes applications that are non-trivial in nature (e.g. office suites, Web browsers, mail clients, multimedia tools and development environments to name a few). Read the rest of this entry »
Posted by indroneel on April 18, 2007
Creation of even the simplest graphical elements can be a tiresome experience without a prior background and training in visual design. Most developers would rather work on the next application functionality than fiddle around with Photoshop and similar imaging tools. Usability and aesthetics are considered to be the prerogatives of Web designers as a distinct and separate group of professionals.
This article takes a closer look at some of the major issues faced by programmers with image manipulation and proposes a developer-friendly solution for the same. Read the rest of this entry »
Posted by indroneel on April 11, 2007
The rise in popularity of object-oriented frameworks is synonymous to the growing prevalence of Java and .NET platforms for enterprise application development. With mature frameworks numbering in the hundreds, it is only natural that there is a significant overlap in the target scenarios addressed by these solutions. While this poses a problem for application developers in choosing the right set of frameworks, it is equally challenging for framework providers to encapsulate the right mix of paradigms, concepts and features for their products to be widely accepted.
Over a period of time, and with the availability of proven design patterns and principles, framework development has become increasingly standards-driven. This has reduced technical maturity to being a qualifying factor rather than a differentiator for competing frameworks in the same technical space.
This article outlines some of the factors (apart from technical maturity) that should be considered while developing effective object-oriented frameworks for better acceptance. Read the rest of this entry »
Posted by indroneel on April 4, 2007
A lot of programmers I interact with are unable to differentiate between dependency injection and inversion of control. Thanks to the popularity of Spring framework and EJB 3.0 there is now a tendency to use these terms interchangeably, even as they represent distinctly different concepts, resulting in a lot of ambiguities.
Inversion of control has its antecedents in the Hollywood principle (don’t call us, we’ll call you) and is not a design pattern. Rather, it is a general principle that is realized in multiple design patterns. Dependency injection is one such pattern that builds on top of this principle. Inversion of control is one of the tenets for all object-oriented frameworks, but not all object-oriented frameworks provide the features of dependency injection. Read the rest of this entry »
Posted by indroneel on March 31, 2007
Nine years and several technologies later, rich Internet applications are yet to attain maturity. Though AJAX and Flash have become widely accepted as the latest technologies for building RIA, these are far from being perfect solutions. This article presents a summary of the common problems that have assailed RIA development across successive generations of softwares and platforms. Read the rest of this entry »
Posted by indroneel on March 10, 2007
In a previous posting, we had an overview of community-powered applications as products that are being continuously enhanced, maintained and supported by their respective groups of end-users. The measurement of success, here, is not just acceptance but also user involvement. This article explores the factors that contribute to the success of community-powered applications. Read the rest of this entry »
Posted by indroneel on March 8, 2007
Community-powered applications have a significant amount of their development effort and post-rollout support provided by external users1. While Linux remains by far the largest and probably the first community effort, there are many others that deserve mention under this category. Read the rest of this entry »
Posted by indroneel on March 5, 2007
An Internet clipbook is a collection of Web page snippets, documents and links organized for easy browsing and quick accessibility. The imagery is drawn from a “real” paper scrapbook that contains among other things, photographs, handwritten memos, newspaper and magazine cuttings. Read the rest of this entry »
Posted by indroneel on March 1, 2007
Online information is growing at an unprecedented rate with more communities and users taking to the Web than ever before. In the face of this explosion, the top three search services (Google, Yahoo! and MSN) are encountering serious challenges to maintain the relevance of their results. New solutions are constantly being proposed to augment (and at times replace) the capabilities of these services. In this article we shall take a closer look at some of these approaches that have the potential to grow into the next big thing in the search technology space. Read the rest of this entry »
Posted by indroneel on February 25, 2007
It took me the better part of an hour to setup my profile and get ready for blogging. This delay was primarily due to the fact that I could not make up my mind about the user name to use and WordPress does not allow you to share the same email address between accounts (at least not during the initial sign up process). Read the rest of this entry »