What is Proper Continuous Integration?

Marko Anastasov · Engineering

Continuous integration (CI) is confusing. As with all ideas, everybody does their own version of it in practice. Get a clear, concise summary of CI, continuous deployment and continuous delivery. Understand how these practices complement each other, and how they can help you develop robust software faster.


Rails Testing Handbook

Bugs and messy code slow down development, and can make complex projects fail. We write code with good intentions, but in practice as complexity increases we need a system to help us avoid problems.

This is where BDD (Behavior-driven Development) can make a huge difference: it provides us with a sustainable process for continuously producing high-quality software, with clean code and automated tests as a side effect.


Docker Image Size - Does It Matter?

Does Docker image size matter? The answer I usually hear is "yes". The logical question that follows is "why?". I've heard the following two answers too often for my liking:

  • A smaller image takes less disk space.
  • A large image is difficult to upload. It takes a long time.

Alhough both these statements sound like they make sense, neither is generally true.


Gant Laborde of Infinite Red Ignite

In the Developer Interview series, we talk to engineers who use Semaphore. We pick their brains about how they work, what wisdom they would like to pass on, and the most challenging problems they’ve faced during development.

This time around, we had the pleasure to talk to Gant Laborde, a member of the Ignite team and chief technology strategist for the San Francisco company Infinite Red.


7 Ways Continuous Delivery Helps Build a Culture of Learning

At the heart of continuous delivery is a fast feedback loop that immediately shows developers the effects of their work. Mistakes are found and fixed quickly, while beneficial changes can be released and deployed to customers without having to wait for a distant future release date. This rapid feedback helps build an organizational culture of learning and responsibility.


This is a guest post by Kendal Miller, Senior Engineer at par8o. Read it to discover how par8o reduced build time from over 2 hours to 13 minutes with Semaphore Boosters, fully automated parallel CI for Rails.

par8o is a platform designed for healthcare teams to coordinate, communicate, and close the loop on patient referrals - for better relationships with providers and patients. par8o also offers a chat platform to encourage office-to-office and referral communication for quicker results.

The referral portion of par8o is a large application built with Ruby on Rails and AngularJS. It is configurable to support the workflow needs of different organizations. The application is also used to integrate with other healthcare systems.

The engineering team at par8o takes testing seriously and uses MiniTest for unit and controller tests and RSpec for browser testing. We use a development workflow that is very similar to the GitHub workflow, but instead of merging to master after a story has been verified in production, we merge to master once a story has been verified in our QA environment by our quality assurance team.


From Tuesday, December 12 until Sunday, December 17, the Semaphore build cluster suffered from sporadic network instabilities due to a faulty device at a Tier 1 network provider. We know how much you rely on Semaphore, and our top priority is to provide a reliable service. To the customers that were affected: we are deeply sorry for the instabilities that you were facing during these days. In this post, we will share what were the technical details and challenges that we faced, the steps we took to resolve the issues, and what we plan to do to prevent similar issues from happening in the future.


1 2 3 4 5 6 7 8 9 10 11

Occasional lightweight product and blog updates. Unsubscribe at any time.

© 2009-2018 Rendered Text. All rights reserved. Terms of Service, Privacy policy, Security.