* Bad code plagues business applications, especially Java ones: An article discussing a quite sad (but true) study regarding business applications code. It seems that bad code plagues applications which are built based on bad coding practices that affect security, performance and uptime. The saddest part: Java Enterprise Edition applications were found to have the greatest number of problems. Also check out How many bugs do you have in your code?
* Pagination with Cassandra and what we can learn from it: This article explains how to implement pagination with Cassandra and how the concept could be also used in traditional RDBMSs. In short, you simply remember the last returned column name and use it as a starting point in the next request..
* A Java Developer’s Guide to PaaS: Must read article for those wishing to embark on the “cloud” journey with Java. It discusses PaaS, i.e. a cloud service in which the provider delivers not only on-demand hardware and operating-system services, but also application platforms and solution stacks. From vendors, Amazon Elastic Beanstalk, CloudBees, Cloud Foundry, Google App Engine for Java, Heroku for Java and Red Hat OpenShift are compared.
* Rollbacks and Other Deployment Myths: In this article, the author discusses deployment, risks, roll-backs and SLAs. As he mentions, the way to reduce risk is not to add more risky behavior but to reduce the risk associated with deploys is to break them into smaller chunks.
* The Mature Programmer: A somewhat unconventional article talking about the “mature programmer” (MP), the one that has had histime programming and knows holds quite the experience. For example, the MP knows that maintenance is as much work as the initial writing and code always takes longer than you think, that any changes to code can introduce bugs etc.
* What does it cost to start a company?: An overview of all the infrastructure costs that a startup company might face, including issue tracking, web advertising, virtualized servers etc. The conclusion is that starting a company is now quite easy, but there are many different things you need when starting from scratch.
* Garbage collection in HotSpot JVM: A great post talking about garbage collection in the HotSpot JVM. The various GC modes are discussed and the corresponding JVM switch is provided. As a nice add-on, log samples (when GC logging is enabled) for each one of the modes is provided. Also check out JVM options: -client vs -server.
* Why I Will Never Feel Threatened by Programmers in Cheap Overseas Programming: Here the author discusses why outsourcing development does not work and provides some reasons for that (e.g. real-time communication is inconvenient, reduced sense of accountability etc.) along with some of his past experiences on the matter.
* Facebook shares some secrets on making MySQL scale: This article discuses how Facebook has managed to build a MySQL environment capable of handling everything the company needs in terms of scale, performance and availability. Facebook relies heavily on the open-source memcached MySQL caching tool, as well as it custom-built Flashcache module for caching data on solid-state drives. Facebook has the best MySQL team around which allows it to fine tune the DB to the max.
* Understanding Java Garbage Collection and What You Can Do about It: This presentation explains the workings of a garbage collector: terminology, metrics, fundamentals, key mechanisms, classification of current GCs, the “Application Memory Wall” problem and provides some details on Azul C4 GC.
That’s all for this week. Stay tuned for more, here at Java Code Geeks.