Semaphore is excited about building a collection of technical articles to help software developers expand their knowledge and advance their craft. The goal is to build a collection of high […]
Category: Software Engineering
How to Format Semaphore Tutorials for Publishing
Introduction This article explains how to format Semaphore tutorials. By following the details in this guide and the companion Style Guide, your tutorial will match all of the Semaphore guidelines. […]
How to Deploy Node.js Applications with Capistrano
Introduction Capistrano is a popular tool for web application deployment, especially in the Ruby ecosystem where it originated. But Capistrano is being used to deploy applications made in any programming […]
How to Deploy a Compojure Application to OpenShift
Introduction OpenShift is Red Hat’s cloud computing platform as a service. It’s based on open source OpenShift Origin project. The platform officially supports a number of languages: Java, PHP, Ruby, […]
Introduction to Gradle
Gradle is a free Java build tool for project automation, similar to Ant and Maven. It’s used by software developers working in Java for running common repetitive tasks in project […]
Getting Started with SSH
Introduction Over the last fifteen years, SSH has become a standard tool for remote management of Unix-like systems and many network devices. SSH stands for Secure Shell, and is one […]
Getting Started with Node.js and Jasmine
It’s a shame that, almost since its creation, JavaScript had been considered more of a quick hack than an actual programming language. Lacking the tools and the community that other […]
Getting Started with Composer for PHP Dependency Management
Introduction Dependencies are essential for modern development. They save you time and energy. Functionalities you may need for your app like sending e-mails or logging can all be easily included […]
Getting started with Grunt.js
Grunt is a command line Javascript task runner utilizing Node.js platform. It runs custom defined repetitious tasks and manages process automation. The project’s homepage lists many big players in software […]
Deploying PHP Applications with Rocketeer and Docker
Deploying web applications is an integral part of modern web development. From this need, many tools have emerged to make the process as easy as possible. Rocketeer is heavily influenced […]
How to Deploy Sinatra Applications with Capistrano
Introduction Rails is great, but often it is not the best tool for creating smaller applications. For smaller size apps, especially those that are mainly focused around pure JSON APIs, […]
Why We Need Continuous Integration
Introduction Continuous integration is a practice that helps developers deliver better software in a more reliable and predictable manner. This article deals with the problems developers face while writing, testing […]
Continuous Integration and Deployment of PHP applications from GitHub to Heroku with Semaphore
The practice of continuous delivery is steadily gaining ground in the PHP community. It is no wonder: continuous integration keeps your development risk-free by automatically testing every new version of […]
Introduction to Chef
Treating infrastructure as code refers to writing code, via any descriptive language, to manage server provisioning and configuration process in addition to deployment of actual application code. It involves adopting […]
BDD on Rails with Minitest, Part 2: Implementing a Feature
This is a guest blog post from Chris Kottom, a longtime Ruby and Rails developer and maker of the best chili con carne to be found in Prague.