Dieter Rams: ten principles for good design – As good design cannot be measured in a finite way he set about expressing the ten most important principles for what he considered was good design. (Sometimes they are referred as the ‘Ten commandments’.)
Hypercritical: Code Hard or Go Home – Given these graphs, and knowing the history between Apple and Google over the past decade, one of two things seemed inevitable: either Google was going to become the new de facto “owner” of WebKit development, or it was going to create its own fork of WebK
Software Leadership #4: Slow Down to Speed Up – Building a quality-focused team isn't easy. But creating a culture that slows down to do the right thing, while simultaneously moving fast, provides an enormous competetive advantage. It's not as common as you might think.
Groovy & Grails for Java Developers – Peter Ledbrook shows how Groovy can be useful for writing scripts, unit tests or builds for Spring projects and how Grails simplifies web application development.
15 Programming Skills Most Coveted By Employers – ReadWrite – So what skills are the most sought after? That's an ever-fluctuating, somewhat difficult thing to track. Normally, we'd avoid turning to a single source for such data, but its very nature makes Indeed.com an ideal place to look. The job search site aggregates more than 16 million listings from a wide range of sources, so it's fairly comprehensive.
Appcache Facts – The application cache is a poorly understood part of the HTML5 specification with a lot of potential. Let's get rid of some of the confusion and make the web a faster place.
Introducing the OpenStack Activity Board » The OpenStack Blog – I am pleased to announce that a beta release of the OpenStack Activity Board (beta) is now live. The development Activity Board announced few months ago provides a visual overview of all the OpenStack public activity of community members across multiple dimensions: contributors and organizations, projects and tools
We need a data democracy, not a data dictatorship – There are few companies that helped spur the democratization of data over the past few years more than Tableau. It has become the face of the next-generation business intelligence software thanks to its ease of use and focus on appealing visualization, and its free public software has found avid users even among relative data novices like myself.
America’s Real Criminal Element: Lead – Cleaning up the rest of the lead that remains in our environment could turn out to be the cheapest, most effective crime prevention tool we have. And we could start doing it tomorrow.
Seven Deadly Sins of Modern Objective-C – We're all guilty of some Objective-C sins, I'm sure, but the important thing is to improve. We're at the dawn of a new year. Why not take this opportunity to reflect on why you've been so sinful and find ways to code more virtuously in the new year?
Introducing Spring Scala – The goal of the Spring Scala project is simply to make it easier to use the Spring framework in Scala. We believe that there are many Spring users out there who want to try Scala out, but do not want to leave their experience with Spring behind. This project is meant for those people.
twig-persist – Object Datastore for Google App Engine – Twig is an object persistence interface built on Google App Engine's low-level datastore which overcomes many of JDO-GAEs limitations including improved support for inheritance, polymorphism and generic types. You can easily configure, modify or extend Twigs behaviour by implementing your own strategies or overriding extension points in pure Java code.
Java.next() -> Scala or Groovy? – Generally the understanding is that scala has the ability to disrupt the status quo rather than incrementally improving it like Groovy. Scala has done and doing good job of reducing the cost of abstraction transliterate Java into Scala and end up with bytecode that is almost exactly the same. Scala has some original good ideas and well thought out type system.
Antivirus Makers Work on Software to Catch Malware More Effectively – NYTimes.com – Consumers and businesses spend billions of dollars every year on antivirus software. But these programs rarely, if ever, block freshly minted computer viruses, experts say, because the virus creators move too quickly. That is prompting start-ups and other companies to get creative about new approaches to computer security.
HtmlUnit vs JSoup: html parsing in Java – In this blog I will compare JSoup with other similar framework, HtmlUnit. Apparently both of them are good Html parsing frameworks and both can be used for web application unit testing and web scraping. In this blog, I will explain how HtmlUnit is better suited for web application unit testing automation and JSoup is better suited for Web Scraping.
Progress of Happiness – The first is that sucking at something is the first step of getting better at it. And that trying really hard isn’t supposed to be easy. In fact, getting better at anything isn’t supposed to be easy. You are bound to get fail, get hurt, fail again before you succeed.
Safeguard Your Phone from Malware – WSJ.com – According to a report by research group Juniper Networks, JNPR -2.07% hackers are increasingly targeting smartphones and other mobile devices with malicious software (also known as malware) to gain access to personal information. The threat is still small in comparison to computers, but that doesn't mean you shouldn't take precautions to protect your smartphone.
YouTube – Rod Johnson Says Java Can Learn Loads from the Rails Community – Rod Johnson, tells interviewer Cameron McKenzie that Java developers have a lot to learn from the Rails community. The response came from a question about what it would take for the enterprise Java community to eagerly adopt cloud based technologies like vFabric and the up and coming Code2Cloud initiative.
Sencha Touch – Intro to Listeners – Drew Neil (@nelstrom) describes the basics of how listeners work in Sencha Touch. This tutorial is perfect for beginners who want to understand how to create custom behavior and functionality inside their Sencha Touch mobile app.
Initializr – Start your HTML5 project in 15 seconds! – Initializr is an HTML5 templates generator to help you getting started with an HTML5 project. It is built on HTML5 Boilerplate, a powerful HTML5 template created by Paul Irish and Divya Manian. Initializr will generate for you a clean customizable template based on Boilerplate with just what you need to start.
W3C Releases Best Practices for Mobile Web Apps – International Web standards body, The World Wide Web Consortium (W3C) has released a new standard for developers of mobile Web applications. The document, published as a W3C Recommendation, is titled "The Mobile Web Application Best Practices"
InfoQ: Using REST for SOA – Stefan Tilkov makes a case for using REST in an enterprise SOA solution showing how to implement tricky features like encapsulation, transactions, stateful communication, reliable messaging, notifications, and security
SOA Makes Its Home in Financial Services Arena CIO.com – The death of SOA has been much exaggerated according to a new report. Forrester analyst Jost Hoppermann said that in financial services companies, SOA is very much alive and is being increasingly deployed within the industry
TIOBE Software: Tiobe Index – The TIOBE Programming Community index is an indicator of the popularity of programming languages. The index is updated once a month. The ratings are based on the number of skilled engineers world-wide, courses and third party vendors
Technology Review: Putting the Web in a Spreadsheet – BigSheets is built on top of another piece of software called Hadoop. This is an open-source platform for processing very large amounts of Web data by splitting up tasks and handing them off to a cluster of different computers
The CTO Corner – The CTO Corner is dedicated to the topics and issues important to today's busy technology executive, the Chief Technology Officer. This site focuses on leadership & management, technology trends, and contemporary development & programming practices
QuirksBlog: The iPhone obsession – Web developers should take a look at their sites on a Nokia and a BlackBerry and fix whatever’s wrong. It isn’t that hard to get your hands on a testing device
Nailgun: Insanely Fast Java – Nailgun is a client, protocol, and server for running Java programs from the command line without incurring the JVM startup overhead. Programs run in the server (which is implemented in Java), and are triggered by the client (written in C), which handles all I/O.
OrindaBuild Oracle Web Service Generator Features – OrindaBuild enables you to create Web Services for your existing Oracle database with minimal effort. OrindaBuild is integrated with Eclipse and works for both PL/SQL and SQL. Unlike other products OrindaBuild is designed specifically for Oracle and works with real world PL/SQL that involves records and arrays.
Google App Engine for Java (GAE/J) – Tutorial – The article demonstrates also the usage of Google Eclipse Plugin for developing, running and debugging the Google App Engine application. The tutorial is based on Java 1.6 and GAE version 1.3.
Intellij 9 and Gradle – The Rich Web Experience – One of the hidden gems of the Intellij 9 release is it's support for Gradle. Some of the information on the web is out of date and some features are not intuitive. This post will detail some of the nuances and follow it up with a wish list for the next update
InfoQ: Rod Johnson Discusses Spring 3.0 – Rod Johnson, the founder of Spring and the general manager of the SpringSource division of VMware, talks to InfoQ about Spring 3.0, the influence of Google Guice on Spring, Spring.NET, and Spring's tc Server.
Pragmatic Developer’s Blog – We have been busy developing our new baby JiraTouch for the last 3 months………..The only knowns were Jira and the C# language. I would like to share some of my observations in this blog post.
The Bloom Box – 60 Minutes – CBS News – Large corporations have been testing a new device that can generate power on the spot, without being connected to the electric grid. Will we have one in every home someday? Lesley Stahl reports
Google App Engine for Java: Part 3: Persistence and relationships – Data persistence is a cornerstone of scalable application delivery in enterprise environments. In this final article of his series introducing Google App Engine for Java™, Rick Hightower takes on the challenges of App Engine's current Java-based persistence framework
Google App Engine for Java: Part 2: Building the killer app – In this second part of his three-part introduction to Google App Engine for Java, Rick Hightower takes you beyond the ready-made examples of Part 1 with a step-by-step guide to writing and deploying a simple contact-management application using App Engine for Java.
Google App Engine for Java: Part 1: Rev it up! – In this article, you'll get an overview of why Google App Engine for Java could be the deployment platform for your next highly scalable killer app, then start using the Google Plugin for Eclipse to build two example apps: one based on Google Web Toolkit (GWT) and one based on the Java Servlet API.
Servlet 3.0: A Sneak Preview – Apart from the addition of functionalities such as filters and web application events, the Servlet specification—one of the key Java APIs for web application development—has not undergone any major changes since its introduction. However, the specification has remained robust, and the release of the new Servlet 3.0 specification (JSR 315) will affect a major change in the way developers build Java web applications.
Service Oriented Architecture Reference Architecture – This document specifies the OASIS Reference Architecture for Service Oriented Architecture. It follows from the concepts and relationships defined in the OASIS Reference Model for Service Oriented Architecture. While it remains abstract in nature, the current document describes one possible template upon which a SOA concrete architecture can be built.
wro4j – Web Resource Optimizer for Java – The purpose of wro4j project is to reduce the number of requests needed to load a page and the amount of data to transfer to clients, achieving drastic improvement of loading times. The resources can be benefit also from minification and compression.