Software Craftsmanship

Software Craftsmanship

Terminal telekinesis

Tl;dr In my experience, software developers’ skills regarding tasks in a terminal range from desperately slow to impressively swift. I believe that, for a large part, this is caused by an abundance of articles not discussing the real problems software developers are dealing with daily. Namely, how to feel productive on a terminal, after using omnipotent integrated software environments for so long. This article aims at bridging this gap by sharing carefully selected tips that can, in my opinion, dramatically increase the terminal productivity of…

Lire la suite
Software Craftsmanship

Putting an end to « Technical Debt »

The First Law of Technology Transfer: Long-range good tends to be sacrificed to short-range good. The Second Law of Technology Transfer: Short-range feasibility tends to be sacrificed to long-range perfection. Jerry Weinberg - Quality Software Management In this discussion, the term: heuristic refers to a method used in a given context, with no guaranteed outcome, that possibly contradicts other heuristics, and which helps reduce the time required to find a solution. The acceptance of such heuristic depends on the context of use, and not on…

Lire la suite
Software Craftsmanship

Software Craftsmanship and OPS scripting: a love story

Alright, story time fellas. TL;DR; We’re working with Terraform, layering and workspaces. This makes the standard `terraform workspace select x` pretty cumbersome and dangerous. We wrote a Ruby wrapper using Test-Driven Development. It allows us to have a tested, maintainable and efficient solution to the aforementioned issue. You can find the actual project here: https://github.com/sebiwi/terraform-wrapper If you keep reading, we’re going to talk about scripting, Test-Driven Development, Terraform and Ruby.

Lire la suite
Software Craftsmanship

The Wizard: Scenarios

This is another episode of the “The Wizard” series. If you haven’t read the previous episodes, you can find them here and here. You just don’t know how to do it. You’ve been thinking about it for a while too. It’s an important issue. The crafting of the spell is the most important part. The journey is usually more important than the destination itself. But you don’t feel like you are doing it right.

Lire la suite
Software Craftsmanship

How to do TDD on Auth0 scripts

Auth0 is a SaaS platform that offers a set of tools to implement Authentication and Authorization for your web, mobile and legacy applications. This platform provides a great developer experience with a good documentation and innovative features, such as rules, JavaScript functions that are executed when a user authenticates to your application.

Lire la suite
Software Craftsmanship

Clean Node – Part 1

I have been working with Node.js for almost 6 years now (started back in 2012 with 0.6.10). During these years, co-workers have been asking me the same question over and over again: "What does your application look like?". It is now time to answer this question (or at least try to) !

Lire la suite
Software Craftsmanship

The Wizard: Side effects

See the previous episode here. He has questions. Nevertheless, he has not yet arrived. And you know you have answers. You interrupt your summoning, and sit down. You can continue in another moment. Everything happens for a reason. You just hope the reason is good. N appears right next to you. Hey, what’s up? I'm setting up the auto-scaling configuration of the new project. Nothing huge. Cool. I need some help. He has progressed immensely since the last time you saw him. People are starting to…

Lire la suite
Software Craftsmanship

The semicircle (episode 11 — Boxes and Arrows)

You're running late, and not just a little late. You throw your bag under the table and boot up your PC. “Hi! Sorry I’m so late! You say hello to Jeremy, Audrey, and Farid. Audrey says: “Maria came by. She was looking for you.” “Did she say what for?” Hmmm - ‘I’m waiting for an action plan. I don't see anything coming. I'm worried’ “OK” Not OK. This action plan that Maria is waiting for has been spinning in your head for over a week…

Lire la suite
Software Craftsmanship

The semicircle (episode 10 — Either … or …)

The Eye-Brain Law: To a certain extent, mental power can compensate for observational weakness. The Brain-Eye Law: To a certain extent, observational power can compensate for mental weakness. Jerry Weinberg "I received your email. I get what you want to do. But, what's the goal?" Comfortably secured in a state-of-the-art ergonomic seat, and protected by a natural fortification of edible, combustible, destructible, fungible, flexible, securely-fixed, decay-prone, sensitive and transmissible elements, Mazare observes both you and Jeremy. Jeremy answers, "We would like to analyze the lead…

Lire la suite