Welcome!


From the Blogosphere

I was recently reading Freakonomics’ authors Steven D. Levitt & Stephen J. Dubner’s latest book, Think Like a Freak, and passed over a quote that really resonated with me: So rather than address their root causes, we often spend billions of dollars treating the symptoms and are left t...
This article defines long polling and presents a few techniques on how long polling could be used in Spring MVC web applications. Discussion covers both the AJAX and the server part of the solution as well as outlines a few possible options for implementation. The article compares perf...
The announcement this week that Facebook is acquiring Pryte should make operators sit up and take notice. The communications landscape is evolving at break neck speed and operators need to start shouting about where they can bring value, before they get drowned out by the noise. Beca...
HTML5 is still one of the most discussed topics amongst us technical types. The key challenge, however, has remained unanswered for a long time. How do you effectively wrap HTML5 for use in native mobile applications? Unfortunately I do not have a universal answer, but I do have a s...
Java 8 has been reengineered and the most significant enhancement in this release is Project Lambda Expressions for the Java Programming Language. To be more comprehensive, the standout features of JDK 8 are Project Lambda the Nashorn JavaScript Engine and a new Date and Time API. Al...
In the last post I covered several architectural techniques you can use to build a highly scalable, failure resistant application in the cloud. However, these architectural changes - along with the inherent unreliability of the cloud - introduce some new problems for application perfor...
Step 1 Create a project based on my blog “UPDATED Setting up a JEE 6 Web Profile Maven Project in Eclipse using TomEE”. Step 2 Eclipse reveals its special capabilities such as specialized editors based on the project’s facet. As … Co...
With a growing number of software developers and computer applications, computers systems are revised and renewed every day. Computer systems can become so large that they will need the expertise of a computerized Service Desk, which will help integrate a growing organization to get ma...
Note that in Information Technology (IT) conversations there are multiple meanings for SMB including Server Message Block aka Microsoft Windows CIFS (Common Internet File System) along with its SAMBA implementation, however for this piece the context is Small Medium Business. A decade...
Learn how to use the concurrent Ruby Web Server PUMA on Heroku. Over the last couple of months our business grew a lot and Unicorn seemed to take more resources than necessary. We switched to 2X instances and still needed quite a lot of workers. Although larger Heroku bills were part...
In a perfect world, APM has all the right elements in place, providing value to the business and IT by giving us the metrics we need and showing us the health of our applications. It alerts us to anomalies when slowdowns occur, and shows us trends on performance. But there are other el...
The simplicity of the term "proxy" belies the complex topological options available. Understanding the different deployment options will enable your proxy deployment to fit your environment and, more importantly, your applications. It seems so simple in theory. A proxy is a well-under...
Our new survey tells us that up to 50% of online shoppers this year will use their mobile device. Good news is that most retail stores that have an online store now also offer a mobile version, e.g., http://m.gap.com, http://m.jcpenney.com, http://m.bestbuy.com. In the past years we ha...
This article explains how to know which JVM System Properties are actually being queried by libraries. Many libraries use system properties for settings. For example, you usually have to set a property to enable debug traces or to activate certain behaviors. However, sometimes system ...
Many Java static analysis tools exist right there, each one focus on a specific area and has its advantages, however if these tools report thousands of violations it became a challenge to exploit them. Let's discover another way to exploit the result of these tools.
Many new programmers struggle when it comes to selecting their first language to learn. Which is easiest, the most professionally useful, the most newbie-friendly? Lets find out by showing you a range of options, their strengths and weaknesses, and some information about the most com...
We keep monitoring HealthCare.gov and created a web page that shows the latest monitoring results. If you are interested check it out: HealthCare.gov Performance Status. Heat Map of Average Response Time by State Page Load Time Comparison of HealthCare.gov, US Healthcare Facilities a...
Consider the possibility that a small innocuous code change could go undetected, promoted through Development & QA, and then have catastrophic effects on performance once it reaches production. The environmental variants need to be minimized and closely monitored to prevent the anomalo...
The vast majority of schema management today is handled through the generation, review, and execution of SQL scripts. These scripts can be tiny or huge; they can encapsulate the creation and relationships of several objects or they can describe a one-time alteration to a single object...
Learn how to set up Continuous Integration and Continuous Deployment for your node.js Application from GitHub to Heroku.
Learn how to set up Continuous Integration and Continuous Deployment for node.js apps from GitHub to Nodejitsu in less than 5 minutes. We are proud to announce a new member in our Codeship deployments family: Nodejitsu! Recently we experienced increasing interest in node.js deploymen...
A little while ago I wrote about the differences between routing and switching, or probably more the difference between ethernet and IP forwarding. Then focus of that article was very much on the differences between the two from a forwarding hardware perspective. This article last week...
The JVM issues vary from Java OutOfMemory Error to JVM Crash. Application developers might be not completely equipped to determine the root cause of the issue, hence DevOps can play a vital role in narrowing down the issue and connecting the right people/team to rectify the problem. ...
If you have a slow test suite and you are asking yourself "how can I make my tests faster?" then you are asking the wrong question. Most chances are that you have bigger problems than just slow tests. The test slowness is merely the symptom; what you should really address is the cause....
It is 11 October, 2014. I am writing this in Kathmandu, capital of Nepal at the foot of the majestic Himalayas. The date is only marginally significant - it is now 2 years and seven months since I was successfully operated on for pancreatic cancer - but the location perhaps is more rev...
Having a good support workflow in place is essential to a good business. Have a look at this case study on how you can answer your support requests quickly and thoroughly without automating every single step. Everyone in our team does support. To help our users we need to work togethe...
WebSockets provide new protocol between client and server which runs over a persistent TCP connection. Through this open connection, bi-directional, full-duplex messages can be sent between the single TCP socket connection (simultaneously or back and forth). Because it is an independen...
Performance for end-users is the metric by which most businesses judge their web applications' performance: is the responsiveness of the application an asset or a liability to the business? Studies show that users are growing more and more demanding, while average pageloads are gettin...
With OpsWorks, we can easily segregate our development environments in Stacks and control how each project gets built via Chef recipes. OpsWorks binds directly with your code repository of choice. When you initiate a new build, it will pull in the latest changes and build them for you....
Listening to our customers when they talk about their journey from Waterfall to Agile and now adopting DevOps principles made us realize that all of them share common challenges and best practices. Our blog allows us to educate a larger audience that DevOps is nothing to be scared abou...
One of the most popular sets of search terms we see in our website statistics relate to enabling Flash in WebRenderer. When we designed WebRenderer, we built it knowing that Flash was still being used and demanded by a lot of users, so we made sure that you could enable it within WebRe...
Mobility is a significant driver of technology today. Whether it's mobility of applications between data center and cloud, web and mobile device platform or users from corporate to home to publicly available networks, mobility is a significant factor impacting all aspects of applicatio...
We just don’t talk enough about the intersection of APIs and mobile middleware, but they really are a match made in heaven. APIs are the prevailing interface model, mobile middleware provides the Enterprise grade security and scalability, and HTML5 keeps mobile fragmentation costs at b...
At Usersnap we spend a lot of time thinking about optimizing the developer workflow. With great tech startups helping us with our tests, and Continuous Integration, we want to add Continuous Feedback to the dev checklist. Fortunately we don't need to stress the importance of receiving ...
Products & Packaging can not only be interactive themselves but also generate an interaction - the result - an item that stimulates interest, provides information, provides validation or an experience - and entice consumers to buy. According to ‘disruptive' technologies specialists, I...
It's time to update you with the most recent statistics on the Java & PHP software stacks' popularity within the Jelastiс PaaS. As usual, you'll see the overall numbers, distribution by regions and the monthly trends. This month, the results are more interesting with stats from another...
Eric Knipp’s fantastic post (Don’t let API Management Wag the Dog) on cautioning clients on selecting a strategy prior to jumping in with an API Management vendor was excellent. It seems that many of the popular API management vendors are doing a great job of marketing, so much so that...
Ruby on Rails 4 features Russian Doll caching. Here, I apply Russian Doll caching to one of my poorer performing Rails 3 pages using the cache_digests gem. ActionView puts forth a great development pattern of views and partials that is easy to understand, implement and maintain but th...
Apache TomEE supported in Jelastic PaaS is a Java EE server, which provides you with the best technology stack that can be deployed to a simple Java EE container. It's lightweight and at the same time is a full-blown application server, which remains simple and avoids architecture over...
Let’s look at some best practices for using another powerful class: ThreadLocal from java.lang, which is also implemented using WeakReference. As its name suggests, a single instance of ThreadLocal can store different values for each thread independently. Therefore, the value stored i...