ARTICLE

From Testing JavaScript Applications by Lucas da Costa

In this article, I will teach you techniques to help you write better assertions. You will learn how to make them catch as many bugs as possible, without having to update tests too often, lessening your maintenance burden.

Take 40% off Testing JavaScript Applications by entering fccdacosta into the discount code box at checkout at manning.com.

It takes a unique baker to recognize a unique cake. When examining batter’s consistency or a cake’s texture, an excellent pastry chef knows what to look for. Without rigorous quality control, you can’t bake tasty desserts.

In the same way, excellent engineers know what…


ARTICLE

By Dennis Byrne

This article explores securing data using keyed hashing in Python.

Take 40% off Practical Python Security by entering fccbyrne into the discount box at checkout at manning.com.

Data authentication

Suppose Alice, a computer programmer, wants to secure the data of a document management system. The system currently stores each new document with a hash value. To verify the integrity of a document the system rehashes it and compares the new hash value to the old hash value. If the hash values don’t match, the document is considered corrupt. If the hash values do match, the document is considered intact.

Alice’s system effectively…


FREE EBOOK

With chapters selected by Felienne Hermans

As a developer, your most valuable asset is your time. Getting the most out of your productivity takes solid planning, perseverance, and great productivity tools! In this free mini ebook, you’ll discover programming tools and techniques that save time, simplify tasks, and help you work smarter, not harder.

Exploring Productivity Tools features four chapters from Manning books that spotlight tools and techniques for increasing efficiency, decreasing errors, and making the most of resources. You’ll explore memory-supporting tools that make reading complex code easier and faster, and learn to roll with change thanks to time-saving unit testing practices. Discover how making…


ARTICLE

From Tiny Python Projects by Ken Youens-Clark

Photo by Franck on Unsplash

This article delves into how to make really memorable and secure passwords — with Python!

Take 40% off Tiny Python Projects by entering fccclark into the discount code box at checkout at manning.com.

It’s not easy to create passwords that are both difficult to guess and easy to remember. An XKCD comic (https://xkcd.com/936/) describes an algorithm which provides both security and recall by suggesting that a password be composed of “four random common words.” …


ARTICLE

A domain-specific language is a software language that allows domain experts to capture their knowledge in a precise enough way to make that executable.

The following article is a standalone excerpt from the opening chapter of my book Domain-Specific Languages Made Easy for Manning Publications. This book is going to be available spring 2021, but is already part of the Manning Early Access Program (MEAP). You can take 40% off by entering fccboersma into the discount code box at checkout at manning.com.

This article contains ideas, excerpts, and material from chapter 1: “What is a Domain-Specific Language?”

Figure 1. The DSL-based (“model-driven”) approach to developing software systems.

The book focuses…


ARTICLE

This article shows you how to extract the meaningful bits of information from raw text and how to identify their roles. Let’s first look into why identifying roles is important.

Take 40% off Getting Started with Natural Language Processing by entering fcckochmar into the discount code box at checkout at manning.com.

Understanding word types

The first fact to notice is that there‘s a conceptual difference between the bits of the expression like “[Harry] [met] [Sally]”: “Harry” and “Sally” both refer to people participating in the event, and “met” represents an action. When we humans read text like this, we subconsciously determine the roles…


ARTICLE

From Microservice APIs in Python by Jose Haro Peralta

In this article we will explain what web APIs are. You will learn that a web API is a specific instance of the more general concept of Application Programming Interface (API). It is important to understand that an API is just a layer on top of an application, and that there are many different types of interfaces.

Take 40% off Microservice APIs in Python by entering fccperalta into the discount code box at checkout at manning.com.

Let’s begin by defining what exactly an API is, and then we will move on to explaining the defining features of a well implemented…


ARTICLE

From Testing JavaScript Applications by Lucas da Costa

In this article, you’ll learn how to use Node and Jest to test code written to run in a browser.

Take 40% off Testing JavaScript Applications by entering fccdacosta into the discount code box at checkout at manning.com.

Baking in a professional kitchen is quite different from baking at home. At home, you won’t always have all the unique ingredients you would find on a chef’s shelves. You probably won’t have the same fancy appliances, or the same impeccable kitchen. Nevertheless, that doesn’t mean you can’t bake excellent desserts. You’ve just got to adapt.

Similarly, running JavaScript in a browser…


ARTICLE

From Dependency Injection, Principles, Practices, and Patterns by Steven van Deursen and Mark Seemann

This article delves into the PROPERTY INJECTION DI pattern — what it is and how, when, and why to use it.

Take 37% off Dependency Injection, Principles, Practices, and Patterns. Just enter code fccseemann into the discount code box at checkout at manning.com.

How do we enable DI as an option in a class when we have a good Local Default?

By exposing a writable property that lets callers supply a DEPENDENCY if they want to override the default behavior.

Listing 1. Injecting a DEPENDENCY using PROPERTY INJECTION

public class Consumer
{
public IDependency Dependency { get; set; } ❶
= new DefaultImplementation(); ❷

public void DoSomething() ❸
{
this.Dependency.DoStuff();
}
}

Public property allows setting a…


Brian Goetz is one of the leading figures in the Java world. As Java Language Architect at Oracle, he helps steer the direction of the language’s evolution and its supporting libraries. He has led the language through several important modernizations, including Project Lambda. Brian has a long career in software engineering and is the author of the best-selling book “Java Concurrency in Practice.” (Addison-Wesley, 2006)

Take 40% off Classic Computer Science Problems in Java by entering fcckopec3 into the discount code box at checkout at manning.com.

This interview, taken from Chapter 10, was conducted on August 25th, 2020 at Brian’s…

Manning Publications

Follow Manning Publications on Medium for free content and exclusive discounts.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store