background preloader

Programming

Facebook Twitter

Handling password arguments in a command-line. Feature Toggles. Feature toggles are a powerful technique, allowing teams to modify system behavior without changing code.

Feature Toggles

They fall into various usage categories, and it's important to take that categorization into account when implementing and managing toggles. Toggles introduce complexity. We can keep that complexity in check by using smart toggle implementation practices and appropriate tools to manage our toggle configuration, but we should also aim to constrain the number of toggles in our system. "Feature Toggling" is a set of patterns which can help a team to deliver new functionality to users rapidly but safely.

In this article on Feature Toggling we'll start off with a short story showing some typical scenarios where Feature Toggles are helpful. A Toggling Tale Picture the scene. You want to avoid branching for this work if at all possible, based on previous painful experiences of merging long-lived branches in the past. The birth of a Feature Toggle before function reticulateSplines(){ } after. CircuitBreaker. Delivery · application architecture tags: It's common for software systems to make remote calls to software running in different processes, probably on different machines across a network.

CircuitBreaker

One of the big differences between in-memory calls and remote calls is that remote calls can fail, or hang without a response until some timeout limit is reached. What's worse if you have many callers on a unresponsive supplier, then you can run out of critical resources leading to cascading failures across multiple systems. In his excellent book Release It , Michael Nygard popularized the Circuit Breaker pattern to prevent this kind of catastrophic cascade. The basic idea behind the circuit breaker is very simple. Here's a simple example of this behavior in Ruby, protecting against timeouts. I set up the breaker with a block (Lambda) which is the protected call. cb = CircuitBreaker.new {|arg| @supplier.func arg} RubyMonk - Ruby Primer - Introduction to Arrays.

It is easier than you think.

RubyMonk - Ruby Primer - Introduction to Arrays

There is a [] typed into the code editor already. This is how you create an array. You can also do the same thing by Array.new. You can create an array with a set of values by simply placing them inside [] like this: [1, 2, 3]. Try this out by creating an array with the numbers 1 through 5, inclusive. Arrays in Ruby allow you to store any kind of objects in any combination with no restrictions on type. In Ruby, the size of an array is not fixed. Unlike many other languages, you will always find multiple ways to perform the same action in Ruby.

Using '<<' is the most common method to add an element to an Array. How To Set Up SSH Keys. About SSH Keys SSH keys provide a more secure way of logging into a virtual private server with SSH than using a password alone.

How To Set Up SSH Keys

While a password can eventually be cracked with a brute force attack, SSH keys are nearly impossible to decipher by brute force alone. Generating a key pair provides you with two long string of characters: a public and a private key. You can place the public key on any server, and then unlock it by connecting to it with a client that already has the private key. When the two match up, the system unlocks without the need for a password. Step One—Create the RSA Key Pair The first step is to create the key pair on the client machine (there is a good chance that this will just be your computer): ssh-keygen -t rsa Step Two—Store the Keys and Passphrase.

SSH Case Studies: Connecting Through a Gateway Host. O'Reilly Book Excerpts:SSH, The Secure Shell: The Definitive Guide Case Studies: Connecting Through a Gateway by Daniel J.

SSH Case Studies: Connecting Through a Gateway Host

Barrett and Richard E. Silverman Connecting Through a Gateway Host All along we've assumed that your outgoing connectivity is unlimited: that you can establish any outgoing TCP connection you desire. In the corporate world, companies commonly require all outgoing connections to pass through a proxy server or gateway host : a machine connected to both the company network and the outside. Guide to Windows Batch Scripting - /* steve jansen */ I love shell scripting – it’s the duct tape of programming to me.

Guide to Windows Batch Scripting - /* steve jansen */

Low cost, high benefit. And it feels like art, where one can learn to do increasinlgy complex tasks with greater simplicity. Sadly, I feel like it’s a developer skill on the decline. Maybe new developers feel it’s “not real programming”. Perhaps the growing dominance of Java as the lingua franca of academic comp sci courses has made shell scripting less relevant in university settings. True, shell scripting feel a bit “vocational”, maybe even a bit unsexy compared to Python/Ruby/LISP/blah/blah/blah.

Why Windows? This series will share some of the tips and tricks I’ve picked up through the years of working with Windows professionally. Why DOS-style Batch Files? This series will share some conventions I picked up along the way for scripting in Windows via command prompt batch files. Series Parts. JUnit - About. Refactoring Databases - Introduce Calculated Column. Dip.pdf.

Testing Frameworks

Linux. Python. Javascript. Tutorials for Fortran, EasyMock, Object Oriented Analysis & Design, Tika, DOM, AngularJS, IMS-DB, NGN, Sed, WCF, JPA, Apache POI, Signals and Systems, JOGL, DB2, PhoneGap, SVG, VSAM, COBOL, XSD, XPath, Redis, XSLT, Java XML, VBA, JFreeChart, Lucene, Selen.