An Introduction to Reactive Programming with RxJava – Part 2

Introducing RxJava To write reactive programs, we need a library or a specific programming language, because building something like that ourselves is quite a difficult task. Java is not really a reactive programming language (it provides some tools like the java.util.Observable class, but they are quite limited). It is a statically typed, object-oriented language, and […]

Continue Reading

An Introduction to Reactive Programming with RxJava – Part 1

Nowadays, the term reactive programming is trending. Libraries and frameworks in various programming languages are emerging. Blog posts, articles and presentations about reactive programming are being created. Big companies, such as Facebook, SoundCloud, Microsoft, and Netflix, are supporting and using this concept. So we, as programmers, are starting to wonder about it. Why are people […]

Continue Reading

What Is Apache Spark

Apache Spark is a cluster computing platform designed to be fast and general-purpose. On the speed side, Spark extends the popular MapReduce model to efficiently support more types of computations, including interactive queries and stream processing. Speed is important in processing large datasets, as it means the difference between exploring data interactively and waiting minutes […]

Continue Reading

BDD with Cucumber and Ruby: fast intro for impatient developers

Cucumber is a very fun and cool tool for writing automated acceptance tests to support software development in the behavior-driven development (BDD) style. Getting ready In the BDD style, when a developer starts writing a test case, unlike writing a test method in TDD, he/she writes a “feature” belonging to a “story” which describes the […]

Continue Reading

Using Test Doubles with Unit Tests – PART 2

Getting back to the example, using the same repository and test that we outlined previously, we now convert that test to use a mock created by Moq instead of the repository stub. Listing below demonstrates how the code looks. using System; using System.Data.SqlClient; using Microsoft.Practices.Unity; using Microsoft.VisualStudio.TestTools.UnitTesting; using Moq; namespace CodeSamples.Ch05_ClassMocking.Listing04 { public class MockingExample […]

Continue Reading

Scaled Agile Framework

Created by Dean Leffingwell, Scaled Agile Framework (SAFe), is an approach to scaling agile practices across an enterprise. Providing guidance at the portfolio, program and team level, its’ a proven framework based on the principles of Lean and Agile. What is SAFe™ The Scaled Agile Framework® (pronounced SAFe™) is an interactive knowledge base for implementing agile practices […]

Continue Reading

Two Wrongs Can Make a Right (and Are Difficult to Fix)

CODE NEVER LIES, BUT IT CAN CONTRADICT ITSELF. Some contradictions lead to those “How can that possibly work?” moments. In an interview, the principal designer of the Apollo 11 Lunar Module software, Allan Klumpp, disclosed that the software controlling the engines contained a bug that should have made the lander unstable. However, another bug compensated […]

Continue Reading