Loading
Project Management

Customize Jira's Advanced Planning Tool for Multiple Teams & Projects

Jira’s Advanced Planning tool (the artist formerly known as Advanced Roadmaps) allows users to manage work across multiple projects, products, and teams. However, if you try to use Advanced Planning at scale, it is impossible to set up plans that give each organizational unit what it needs—a plan that shows their work and how it relates to other teams' work.

Benn Lynch

Benn Lynch

Protect Your Business from IT Disasters: Lessons from the CrowdStrike Outage

Businesses heavily rely on IT infrastructure for smooth operations and security, but what happens when that infrastructure breaks? Thousands of companies were blindsided by a sudden CrowdStrike outage on Friday, July 19th, leading to a projected cost of $1 Billion. With an estimated 8.5 million devices impacted by the outage, over 5,000 canceled flights, and hundreds of hospital computer systems offline, you’re probably wondering: What can I do to prevent a CrowdStrike-level business disruption?

Amy Cutlip

Amy Cutlip

React

More Mocks! Mocking Modules in Vitest

As of 2024, Vitest is all the rage for testing. But can we apply what we learned about mocking modules in Jest to Vitest? Absolutely!

Rich McNeary

Rich McNeary

Backend

Your Next AI Startup Should Be Built on Temporal [Part 3: Automated Prompt Testing]

Welcome to part three of our series on using Temporal to improve the reliability of applications built around LLMs like the one that powers ChatGPT. In part one, you learned how to use Temporal to clone a repo and ingest its documentation into an RAG Database for use with your LLM. Part two taught you how to use context injection to give users more accurate answers to prompts made against that documentation. In this post, you’ll use Temporal and another LLM to automatically test the accuracy of your application’s answers to the prompts from part two.

Marshall Thompson

Marshall Thompson

Developer

DevOps

CI/CD Pipelines & Use Cases: Everything DevOps Consulting Has Taught Me

Throughout my DevOps consulting career, I've realized that the true value of our work lies in optimizing processes to free up developer time. A key part of optimizing DevOps processes is understanding the difference between manual (on-demand) and automated (triggered) processes.

In this post, we’ll dive into both manual and automated triggers, exploring their roles and integration in CI/CD pipelines. We’ll also tackle the differences between Continuous Delivery and Continuous Deployment, and why one might be a more realistic goal than the other. By understanding these mechanisms and exploring automation opportunities, you can streamline workflows, reduce errors, and boost productivity in your development process.

Max Cascone

Max Cascone

DevOps

CI/CD Tools & Processes: Everything DevOps Consulting Has Taught Me

Continuous Integration (CI) and Continuous Delivery & Deployment (CD) are pivotal concepts in modern software development, facilitating rapid and reliable delivery. By frequently integrating code into a shared repository, detecting issues early, and automating deployments, CI/CD ensures that software can consistently be released to production with high confidence.

Max Cascone

Max Cascone

DevOps

Automate Jest Tests in Your DevOps Pipeline with GitHub Actions

In the fast-paced world of DevOps, it’s challenging to produce and test high-quality software without sacrificing efficiency. But what if we told you there’s a better way?

Max Cascone

Max Cascone

Backend

Your Next AI Startup Should Be Built on Temporal [Part 2: Prompt Engineering]

Welcome to part two of our series about using Temporal to improve the reliability of applications built around Large Language Models (LLM) like the one that powers ChatGPT. Part one explained how to build a Temporal Workflow to process a series of documents and make them accessible to your LLM. This post will show how to develop a Temporal Workflow to find documents relevant to a user’s query and supply them as context to a prompt sent to the LLM using Context Injection. You’ll also learn how Temporal's abstraction will make your application more reliable and make it easier for you to extend it with new features.

Kevin Phillips

Kevin Phillips

Director of Backend Development