My Reader


Developer’s Blogs

CodeSlut

  1. Feature Flags made easy
  2. Mapping Immutable Value-Objects with Dozer
  3. Sending Emails using Spring-Mail
  4. Software Craftsmanship
  5. Event Horizon

@Blogger public class Bivas

  1. Duration to Human Readable Format
  2. Factory Pattern
  3. Prevent EhCache From Storing Null Values in Cache
  4. Running Play Framework Application on CloudFoundry
  5. Why Do We Care?

Bits and Bytes

  1. Fight My Monster Architecture in 5 mins! - We computing engineers live in exciting times. The Internet and its supporting infrastructures really have come of age, and all of a sudden things can, and mostly importantly should be done in new ways. Some small teams are successfully scaling enterprises to massive scale on tiny budgets, and the new generation of applications and games [...] What I am reading
  2. ConcurrentHashMap – avoid a common misuse! - If you program systems with Java, you have probably long been using ConcurrentHashMap. This post explores a caveat. ConcurrentHashMap is often introduced to simplify code and application logic. For example: HashMap<String, MyClass> m = new HashMap<String, MyClass>(); ... synchronized (m) {     for each (Entry<String, MyClass> e in m.entrySet())         system.out.println(e.getKey()+"="+e.getValue()); [...] What I am reading
  3. Fight My Monster in TechCrunch - Fight My Monster was in TechCrunch today, which deserves a big hooray and thank you!!! We’re working hard and hope we can fulfill expectations. Thanks too to Moshi for setting an inspiring example. Please note we want to be as big as Moshi Monsters, not imitate them! The game design and vision are very different. [...] What I am reading
  4. PayPal recurring payments and bonkers docs - If you’ve ever tried to integrate with PayPal recurring payments, you’ll know that the documentation only covers most of the API. I started a thread to try and clarify the key issues, here https://www.x.com/message/204623 What I am reading
  5. 10 steps to upgrade a Cassandra node - The following steps might prove interesting to those with a new Cassandra cluster who are wondering how to upgrade, or to those investigating Cassandra who are interested in what an online upgrade looks like. The good news for those in production, is that if your cluster has a replication factor (RF) of at least 3, [...] What I am reading

prettyprint.me

reversim

  1. 182 Varnish
  2. קופון הנחה ל DevCon יוני 2013
  3. 181 Carburetors 7
  4. 180 Scala Conf
  5. 179 Station Configuation

Robert C. Martin’s Weblog

  1. Apprenticeship -- The untold story. - The trials and tribulations of an apprentice at Object Mentor.
  2. Differentiation through Obfuscation - Every software vendor needs to convince you that their product is _different_ from all the others. Unfortunately, one of the most common strategies for differentiation is obfuscation.
  3. The Tortoise and the Hare - In software the race goes to those who go well, not those who go fast.
  4. Modelling the real world. - The concept of modeling the real world has been so badly abused in the OO community, that I want to find the person who first coined the notion and flay him alive. (not really.)
  5. YAGNI - There's a lot of emotional reaction and baggage surrounding this controvertial saying. And yet it's synonymous with the old KISS principle. Keep It Simple Stupid.

Eclipse On E

  1. Skip over certain classes when using Step Into in Eclipse’s debugger - Whenever I use the Step Into feature (F5) in Eclipse’s debugger, I’m mainly interested in stepping through code in my own classes, not the ones from external libraries or even Java classes. For example, there’s almost no reason to ever want to step into Spring’s code or proxy classes (other than to learn more about […] What I am reading
  2. The easiest ways to navigate methods in a class using Eclipse keyboard shortcuts - Java classes can get big and hairy, making it difficult to find the method you’re looking for when browsing or editing a class. There is no specific order to where methods can be in a class and different developers have different preferences about where to put them. You could use the mouse wheel and scroll […] What I am reading
  3. Generate, rename and delete getters/setters instantly in Eclipse - Despite the arguments and debates about getters and setters in Java, the fact is that they’re a reality and you have to work with them. But managing getters and setters is a time-consuming effort. Creating a getter/setter for 5 fields in a class can take minutes, renaming one is error-prone and deleting one is just […] What I am reading
  4. The fastest ways to open editors in Eclipse using the keyboard - Something you do a lot in Eclipse is open files such as classes, XML files and property files in editors. But using the mouse to hunt through the Package Explorer folder hierarchy takes a long time, especially if you forgot where the files are located. The problem gets worse the more projects and files you […] What I am reading
  5. Configure those annoying tooltips in Eclipse to only popup on request - Whenever you hover over any piece of code in Eclipse, it pops up a tooltip that displays more information about the item, such as its declaration, variable values or Javadoc information, as in the example below. Although useful at times, this becomes extremely annoying after a while, especially when you’re using your mouse to browse […] What I am reading

Jenkov.com

  1. Java Exception Handling - New book published! - Download this book for free from Amazon until and including march 1st! Exception handling is an aspect of Java development that has not received as much attention as it deserves. If you do not have exception handling under control, you risk that your application or data ends up in an unhealthy state, which can have serious consequences. That is why I wrote this book.
  2. HTML4 Compressed - Kindle book published - In this day and age it should be easy and cheap to learn HTML4, which everyone needs to learn in order to learn HTML5. Therefore I published this Kindle book which explains HTML4. The parts of HTML4 that is not removed in HTML5, that is.
  3. jQuery Compressed - Updated - I have updated the jQuery Compressed book to be compatible with version 1.9.1 of jQuery.
  4. Displaying SVG in Browsers - The SVG tutorial has been updated, showing how to include SVG in HTML pages using the img HTML element, or the SVG element.
  5. Maven Tutorial. - This Maven tutorial explains the core concepts of Maven which are important to understand for new Maven users.

snax

  1. a programmer’s guide to healing RSI - I am not a doctor. This blog is not intended to substitute for professional medical advice. See your general practitioner to discuss your symptoms and treatment, as well as an orthopedic specialist and a licensed physical therapist if you are able, before making any changes that may impact your health. I have struggled on two separate occasions [...] What I am reading
  2. hello heroku world - I’ve been investigating various platform-as-a-service providers, and did some basic benchmarking on Heroku. I deployed a number of HTTP hello-world apps on the Cedar stack and hammered them via autobench. The results may be interesting to you if you are trying to maximize your hello-world dollar. setup Each Heroku dyno is an lxc container with 512MB of ram [...] What I am reading
  3. ideal hdtv settings for xbox 360 - My XBox 360 broke, and since my new one supported HDMI, I reworked the connection to the TV (a Samsung PN50A450 plasma). It’s tricky to get the best performance out of the combination so I wanted to mention it here. scalers Even though the HDMI connection is digital, both the XBox and the TV have [...] What I am reading
  4. memcached gem performance across VMs - Thanks to Evan Phoenix, memcached.gem 1.3.2 is compatible with Rubinius again. I have added Rubinius to the release QA, so it will stay this way.  The master branch is compatible with JRuby, but a JRuby segfault (as well as a mkmf bug) prevents it from working for most people. vm comparison Memcached.gem makes an unusual [...] What I am reading
  5. simplicity - Maximizing simplicity is the only guaranteed way to minimize software maintenance. Other techniques exist, but are situational. No complex system will be cheaper to maintain than a simple one that meets the same goals. ‘Simple’, pedantically, means ‘not composed of parts’. However! Whatever system you are working on may already be a part of a whole. [...] What I am reading

Java Tuning

  1. Quickest way for a one-off XML sort – OR – Learning to keep the heavy tools in the shed - What’s the quickest way/tool to sort a 1000 entries xml file? Your requirements: The xml is parked on your desktop. You only need to sort it just once so you can manually examine it. Sort by the tag “relevance:score”. How would you go about it? Would you: A) Craft a pipe stream of shell utils?…
  2. Specifing arrays size/capacity – my latest buggy code and a best practice - We’re often required to specify size/capacity when allocating array like structures. While you MUST specify size for Java’s primitive arrays. With realizable arrays like ArrayList/Vector, specifying #capacity is too often a #premature-optimization, that you could avoid.     I happened to introduce a bug to our code base, by initialized an ArrayList with a negative…
  3. Cleaner code with Apache Commons - It seems I can no longer write any piece of code without including the Apache Commons libraries. They just contain everything that the ancient architects of the Java language forgot to include in the java.* APIs; Commons save huge amounts of coding debugging time, by capturing ever repeating patterns, allowing effective reuse which results helps…
  4. HPEL – A fast binary logging for WebSphere v8 - Troubleshooting Java EE apps running on WebSphere just got a bit easier with WebSphere v8′s new binary logging and tracing mechanism: HPEL (High Performance Extensible Logging). HPEL provides logging/tracing run-time performance boost (x3.5-x5 claimed) increasing the chances that you’ll be able to turn on tracing on a production system. HPEL comes with two offline viewing…
  5. 10 things I like about Android development - Java – Write in Java on both the Client and Server sides. Simplifies development and presents a low learning curve for newcomers. Paid apps culture - Unlike when using web apps, mobile app users we’re tamed to pay for the apps they like (Thank you Apple for cracking the ice). Developing for Android might be…

DevIL’s Diary

  1. False Positives in Database Integration Tests
  2. The Danger Of Mislead Solutions: Constructor Over-Injection
  3. Spring.NET AOP - Behind The Scenes (3)
  4. Spring. NET AOP - behind the scenes (2)
  5. Happy New Year!

Doron’s .NET Space

  1. Charniak Parser on Windows
  2. Adapting Lucene scoring for an n-gram index
  3. Console.ReadKey .NET 4.5 changes may deadlock your system
  4. On The .NET Implementation of String.Equals
  5. NuGet Annoyance

All Things Distributed

  1. Amazon Redshift and Designing for Security -

    It’s been a few months since I last wrote about Amazon Redshift and I thought I’d update you on some of the things we are hearing from customers. Since we launched, we’ve been adding over a hundred customers a week and are well over a thousand today. That’s pretty stunning. As far as I know, it’s unprecedented for this space. We’ve enabled our customers to save tens of millions of dollars in up front capital expenses by using Amazon Redshift.

    It’s clear that Amazon Redshift’s message of price, performance and simplicity has resonated with our customers. That’s no surprise – these are core principles for every AWS service. But when we launched Amazon Redshift, a number of people asked me, “Aren’t data warehouses enterprise products? Do you really do enterprise? How do you handle availability, security, and integration?” My first reaction to that was, “Wait, doesn’t everybody care about these things? These aren’t enterprise-specific.” But, even if we accept that framing, we don’t have to limit ourselves to the enterprise. A lot of the power of AWS comes from the fact that we can invest in expertise in these sorts of areas and spread the benefits across all our customers. I’ve talked about performance and availability in Amazon Redshift before. This time, let’s take a look at how Amazon Redshift secures your data. I suspect it’s a lot more than what most people are doing on premise today. This is especially timely since Amazon Redshift has just been included in our SOC1 and SOC2 compliance reports.

    Amazon Redshift starts with the security foundation underlying all AWS services. There are physical controls for datacenter access. Machines are wiped before they are provisioned. Physical media is destroyed before leaving our facilities. Drivers, BIOS, and NICs are protected. Access by our staff is monitored, logged and audited.

    As a managed service, Amazon Redshift builds on this foundation by automatically configuring multiple firewalls, known as security groups, to control access to customer data warehouse clusters. Customers can explicitly set up ingress and egress rules or place their SQL endpoint inside their own VPC, isolating it from the rest of the AWS cloud. For multi-node clusters, the nodes storing customer data are isolated in their own security group, preventing direct access by the customer or the rest of the AWS network. Customers can require SSL for their own accesses to their cluster while the AWS operations to monitor and manage their cluster are always secured by SSL.

    redshiftsecure What I am reading

    Amazon Redshift can also be set up to encrypt all data at rest using hardware-accelerated AES-256. All data includes all data blocks, system metadata, partial results from queries and backups stored in S3. Each data block gets its own unique randomly generated key. These keys are further encrypted with a randomly generated cluster-specific key that is encrypted and stored off-cluster, outside the AWS network, and only kept in-memory on the cluster itself. By using unique keys per-block and per-cluster, Amazon Redshift dramatically reduces the cost of key rotation and helps prevent unauthorized splicing of data from different blocks or clusters. We plan to support customer-managed hardware security modules (HSM) by further encrypting the cluster key, using Amazon CloudHSM or an on-premise HSM environment.

    I always tell developers that they should obsess not only on the things that our customers ask for but also on the things they just expect. Chief amongst those is security. Every day, we need to come in and work hard to maintain the trust our customers have placed in us. I’m delighted to see how much work the Amazon Redshift team put into this area out of the gate.


Sites

SpringSource Team Blog

  1. Spring Framework 4.0 M1: WebSocket Support - As you may have seen, the first milestone of Spring Framework 4.0 was already announced and with it we've released early WebSocket support. Why WebSocket matters? It enables efficient, two-way communication over the web that is essential in applications where messages need to be exchanged between client (typically browser) and server at high frequency and Read more... What I am reading
  2. Spring Framework 4.0 M1 & 3.2.3 available - Dear Spring community, It's my pleasure to announce the first milestone towards Spring Framework 4.0, delivering a first cut of our work on several key themes: the first wave of Java SE 8 / OpenJDK 8 support (some details following below) initial support for JMS 2.0, JPA 2.1, Bean Validation 1.1, and JSR-236 concurrency (from Read more... What I am reading
  3. Reactor – a foundation for asynchronous applications on the JVM - We’re pleased to announce that, after a long period of internal incubation, we’re releasing a foundational framework for asynchronous applications on the JVM which we’re calling Reactor. It provides abstractions for Java, Groovy and other JVM languages to make building event and data-driven applications easier. It’s also really fast. On modest hardware, it's possible to Read more... What I am reading
  4. Content Negotiation using Spring MVC - There are two ways to generate output using Spring MVC: You can use the RESTful @ResponseBody approach and HTTP message converters, typically to return data-formats like JSON or XML. Programmatic clients, mobile apps and AJAX enabled browsers are the usual clients. Alternatively you may use view resolution. Although views are perfectly capable of generating JSON Read more... What I am reading
  5. Spring Data Arora SR1 released - I am pleased to announce the first service release for the Spring Data Arora release. It includes the following modules: Spring Data Commons 1.5.1 – Changelog Spring Data JPA 1.3.1 – Changelog Spring Data MongoDB 1.2.1 – Changelog Spring Data Neo4j 2.2.1 – Changelog Spring Data Redis 1.0.4 – Changelog Spring Data Gemfire 1.3.1 – Read more... What I am reading

InfoQ

  1. Synchronized jQuery 1.10 and 2.0.1 Releases - jQuery 1.10 and 2.0.1 has been released. The primary goal of this release is to synchronize the features of the 1.x and 2.x lines. The jQuery 2.x line has the same API as the 1.x line, but does not support Internet Explorer 6, 7, or 8. If you are planning to upgrade and you currently using jQuery 1.8 and below, please make sure you read the jQuery 1.9 Upgrade Guide due to major changes to the API. By Bienvenido David III
  2. Presentation: Quora on Mobile: A Product-Centered Approach to Multi-Platform Deployment - Anne Halsall reviews the nearly two-year process of designing, developing, and releasing the official mobile apps for Quora, sharing lessons and advice for creating apps across multiple platforms. By Anne Halsall
  3. Presentation: Clojure in the Field - Stuart Halloway shares insight from his experience using Clojure for production systems since 2008. By Stuart Halloway
  4. Presentation: Cooking on Gas: How to Use Chef to Get a Better Cloud Deal - Stephen Nelson-Smith discusses the idea of financial intermediation in cloud computing and explores how to use the Chef cloud automation framework to make it easy to move between cloud providers. By Stephen Nelson-Smith
  5. Use Web Components Today With Google's Polymer - At Google I/O last week, Google launched Polymer, a new library to build web applications using Web Components, the new HTML5 standard to build reusable components for the web. Polymer provides polyfills for many of the Web Components technologies, enabling developers to create their own reusable components before all browser support them. By Zef Hemel

JavaLobby

  1. Why You Shouldn't Hire a DevOps Engineer - Lately there have been a lot of organizations trying to hire a DevOps engineer. I myself have been asked to fill in DevOps roles. There are a number of issues with that. The biggest problem is that I always have to ask what exactly the organisation is looking for. Preview Text:  Lately there have been a lot of organizations trying to... What I am reading
  2. Building and Scaling a Test-Driven Culture - I gave a talk last week at AppNexus on building and scaling a test-driven culture.http://www.youtube.com/watch?v=QvHf94hxzRc Preview Text:  I gave a talk last week at AppNexus on building and scaling a test-driven culture... Legacy Sponsored:  unsponsored What I am reading
  3. Few More Thoughts on Android Studio - Well, I watched the tech session. Unbelievably, in an hour long session, which btw, was really sloppy and poorly presented, there was not a single mention of testing.. !! What year is it?? I thought we stopped arguing whether TDD was a priority a decade ago. Not google, apparently. Went on to find out that there is no test runner support in the IDE at all right now! You have... What I am reading
  4. Book review: The Object-Oriented Thought Process - If you were to ask me a book to understand the Object oriented concepts in a practical way- I will surely recommend “The Object Oriented Thought process”.These are some of the good things I found: Preview Text:  If you were to ask me a book to understand the Object oriented concepts in a practical way- I will surely recommend “The Object... What I am reading
  5. Android Native Development Kit Cookbook - Preview Text:  A fantastic journey into Android dark side ISBN or ASIN:  1849691509 Book Author(s):  Feipeng Liu Publisher:  packtpub ... What I am reading

dzone

  1. Web API: Custom header value provider
  2. Using Bit Fields: in C#
  3. Creating a dotPeek Plugin is New Project, NuGet Easy
  4. 40 Fresh Examples of Flat Web Design
  5. Build your own supercomputer out of Raspberry Pi boards

TheServerSide

  1. Rebel Labs Report - "Pragmatic DevOps: Virtualization & Provisioning with Vagrant & Chef"
  2. Automating a complex build process
  3. Concurrent garbage collection in Java
  4. The great Java app server debate with Tomcat/TomEE & JBoss
  5. Fix memory leaks in Java production applications in 5 steps