BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Articles

  • Building a Real-time, Personalized Recommendation System with Kiji

    Jon Natkins explains in this article how to create a personalized recommendation system fed with large amounts of real-time data using Kiji, which leverages HBase, Avro, Map-Reduce and Scalding.

  • Visualizing Java Garbage Collection

    Garbage Collection, like Backgammon takes minutes to learn and a lifetime to master. In this article Master trainer/consultant Ben Evans summarizes his recent InfoQ presentation "Visualizing Garbage Collection" where he discusses Garbage Collection from the ground up.

  • Book Review and Author Q&A - Explore It! by Elisabeth Hendrickson

    Elisabeth Hendrickson has released a book on the practices, techniques and mindset of exploratory testing. Sharon Robson reviewed the book and raised some questions with the author.

  • PyParallel: A Fast Parallel Version of Python

    By combining asynchronous I/O with a shared-nothing architecture, PyParallel research project is able to execute code in a parallel context faster than it can using CPython’s normal interpreter. And it does this without removing the GIL. The secret, no reference counting or garbage collection of any kind.

  • Architecture and Agility: Married, Divorced, or Just Good Friends?

    This article describes the relationship between architecture and process of software development and how architecture can responds to a set of needs, such as functional requirements, operational characteristics, and developer habitability. It also talks about the role of pragmatic architects when working with developers and stakeholders.

  • The Gentle Art of Running a Lean Startup

    Yiannis relates the practices and approach of running a Lean Startup organisation with the skills and disciplines needed in the martial arts through his practice of Brazilian Jiu-Jitsu. He shows how the underlying practices of both are very similar and how understanding the martial arts approach can assist in conserving energy and maximising outcomes in a lean startup organisation.

  • Cassandra CLI Internals Using JArchitect

    Cassandra CLI is a useful tool for Cassandra administrators. It's a good example of how to implement a Cassandra client and CLI internals help us to develop custom Cassandra clients or even extend the CLI tool. In this article, author explores Cassandra CLI architecture model using JArchitect tool and CQLinq language to analyze its code base.

  • Don’t jump the SQL ship just yet

    The SQL language has been evolving steadily over the last two decades. At the same time, the verbosity caused by the JDBC API in Java client code and the lack of first class SQL support within the Java language have led to the introduction of ORMs such as Hibernate, which was later standardised into JPA and the Criteria API.If SQL and JPA are diverging, where will our data interaction patterns go?

  • Introduction to Graph Visualization with Alexander Smirnov

    To help the user understand what they are seeing, developers often turn to bar and pie charts. But that only works for discrete data; when at the links between data other tools come into play. We asked Alexander Smirnov, creator of GraphX, to explain what graph visualization is and how it can be used.

  • Spreading CMMI Practices among Agile Teams in Big Organizations

    Agile methodologies have become mainstream because they provide a better fit to the modern, changing software world. CMMI is a cross-organizational approach which has proven successful in terms of quality assurance and cost when executed properly. Big organizations with self-organized agile teams can achieve technical maturity levels, by using a common metalanguage and a good-practices catalog.

  • Meet Elaine: A Persona- Driven Approach to Exploring Architecturally Significant Requirements

    Often, requirements elicited from stakeholders describe a system’s functionality but fail to address qualities such as performance, reliability, & availability. Documenting these requirements is often overlooked because there are implicit assumptions that the system will perform to expected levels. This article describes a process developed on the idea of persona sketches to address this problem.

  • Agile Walls

    BVCs, TOWs and POWs are very important tools in the agile world but what exactly are they? BVCs are Big Visible Charts, TOWs are Things on Walls and POWs are Plain Old Whiteboards – information radiators all. Using the right wallware and the information they provide can make or break an agile team.

BT