BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Languages Content on InfoQ

  • Java Bytecode: Bending the Rules

    Throwing checked exceptions without declaration, changing final fields; these kinds of antics would never be tolerated by the Java language. But using Java bytecode these can be done readily. Few developers ever work with Java bytecode directly, but bytecode format is not difficult to understand. In this article Rafael Winterhalter takes us on a tour of Java bytecode & some of its capabilities

  • Interview and Book Review: Java in a Nutshell, 6th Edition

    Java in a Nutshell, 6th Edition by Benjamin J. Evans and David Flanagan is an update to the tried-and-true Java in a Nutshell series. This edition covers Java 8 for the experienced Java Developer, but it is also designed as a learning path for new developers.

  • The OpenJDK Revised Java Memory Model

    The existing Java Memory Model covers a lot in terms of Java language semantic guarantees. In this article we will delve into a few of those semantics, and attempt to communicate the motivation for an update to the existing Java Memory Model

  • Q&A on the Book Scenario-Focused Engineering

    The book Scenario-Focused Engineering describes a customer-centric lean and agile approach for developing and delivering software-based products. It provides ideas to understand customer needs based upon end-to-end experiences and for designing products in a customer-focused way using a fast feedback cycle.

  • Q&A with Alex Blewitt on Swift Essentials

    Less than a year ago, Apple introduced Swift to the developer community. While Objective-C is a very powerful and mature language, Apple obviously wanted to freshen up its development eco-system with a new language borrowing concepts from modern, functional and script-like languages. InfoQ caught up with Alex Blewitt, author of "Swift Essentials", a book on developing iOS apps using Swift.

  • Interview and Book Review: BDD In Action

    "BDD In Action" is a book that aims to cover the full spectrum of BDD practices from requirements through to the development of production code backed by executable specifications and automated tests.

  • Deploying Microservices to AWS at Gilt: Introducing ION-Roller

    Over a period of seven years, gilt.com has grown from an e-commerce start-up running a monolithic Ruby on Rails application to $1B luxury goods company operating a cloud-based microservice platform utilising Scala, Docker and AWS. This article introduces Gilt's ION-Roller continuous deployment application, and explains the history and motivations that lead to the creation of this tool.

  • Cloud Native Architectures - a Conversation with Matt Stine

    Rags Srinivas caught up with Matt Stine at the O'Reilly Architecture conference in Boston, MA. Matt talks about Cloud Native Architectures and some of the cultural and technological challenges. He talks about some of the NetFlix services and how Spring is wrapping it up to be able to architect and develop microservices on the platform. He also talks about SOA and what it probably missed out.

  • Concise Java

    Unix pioneer Ken Thompson once said, “one of my most productive days was throwing away 1000 lines of code.” In this article Cas Saternos highlights practices now possible for writing concise Java code, with a special focus on the new functionality available in JDK 8. Shorter, more elegant code is possible due to the inclusion of Lambda Expressions in the language.

  • Functional-Style Callbacks Using Java 8's CompletableFuture

    The innovation of parallel streams in Java 8 has diverted attention from a very substantial addition to the concurrency library, the CompletableFuture class. Author Maurice Naftalin eloquently explores CompletableFuture, why it is so useful in programming systems that depend on the interaction of asynchronous tasks, and how it complements fork/join-style parallelism, including parallel streams.

  • Metadata-Driven Design: Designing a Flexible Engine for API Data Retrieval

    Bulk data is commonly accessed via files & FTP. As the world moves toward APIs to facilitate collaboration, what are the requirements for data APIs? This article describes a meta-data driven architecture for bulk data ingestion. Two APIs operate in parallel to provide data changes as well as the data records themselves. An example demonstrates how API responses are parameterized using meta-data.

  • You’ve Completed Unit Testing; Your Testing has Just Begun

    Stopping testing your code when your unit tests all pass is like starting mass production of automobiles after testing the nuts and bolts. Integration testing guarantees that the collaboration of classes works. This article investigates some important techniques in integration testing.

BT