The first rule of programming is “it’s always your fault.” Which, like all good rules, has some exceptions. After eliminating all other possibilities, I discovered a few issues in IBM’s Java Runtime (also known as the IBM J9 JVM) that were definitely not my fault. I consider the discovery of these issues to have been … Continue reading Finding Bugs in IBM Java
Author: Craig Andrews
Precompiling with Web Deploy
Web Deploy is a great tool for deploying ASP.NET projects: it simplifies deployments, can target IIS 6 or 7, is pretty easy to get working on the server and the project side, and is supported by many hosting providers. It works really well when used along with continuous integration. In the first phase, the project … Continue reading Precompiling with Web Deploy
HTTP Response Caching for Java and Android
HTTP caching is both important, as it reduces bandwidth use and improves performance, and complex, as the rules are far from simple. In my experience, most Java and Android applications either don’t do HTTP caching, or they roll their own and up doing it wrong or in way too complicated a fashion. In other words, … Continue reading HTTP Response Caching for Java and Android
jshint in msbuild
I recently had to add build time Javascript validation to an ASP.NET project. It took me quite a while to figure out how to do so in a (reasonably) maintainable, understandable way. I’m using Visual Studio 2010, and the project targets .NET 3.5. The same approach would work fine if the project was targeting .NET … Continue reading jshint in msbuild
Best way to use HttpClient in Android
Many Android applications access the Internet resources over HTTP (and my projects are no exception). There are 2 common ways to do that: use Apache HttpClient 4.x (which is included in Android) or use HttpURLConnection (from Java). Google stated in a September 29, 2011 blog post that they prefer you use HttpURLConnection, but many apps … Continue reading Best way to use HttpClient in Android
My First Android App: CallerID
I’ve been looking for an excuse to write an Android app, and those annoying “unknown number” phone calls presented themselves at the perfect problem to solve. My CallerID application consists of two parts: a service that runs on a server and given a phone number returns the information associated with it, and an Android app … Continue reading My First Android App: CallerID
The Coming IPv6 Evolution
Learn why IPv6 is important and how IPv4 exhaustion will affect you
Facebook Went Down – Did You?
Facebook’s downtime affected 1,000s of sites. Is having a single point of failure worth it?
Microblogging inside the Firewall
Cross posted to Molecular Voices. Please comment there. Little strings of text are big business – both publicly and inside the corporate firewall. As we all know, Twitter is pretty big – TV and radio ads for major companies mention their Twitter sites and even business cards reference Twitter URLs nowadays. But Twitter cannot be … Continue reading Microblogging inside the Firewall
Running Ubuntu in VMWare
VMWare is a leading (if not the leading) virtualization solution. Unfortunately, it is also proprietary software, which means that distributions tend not to care too much about it (and in my opinion, rightfully so!). My employer is one such company that uses VMWare, and it recently instituted a policy that all VMs must have VMWare … Continue reading Running Ubuntu in VMWare