Here the ARCsoft team write about things we’ve learned or are excited about! Each member contributes an article periodically, both as part of our mission to contribute to the community as well as to grow personally and professionally.
In a recent client project, we needed to mirror a specific subdirectory from our GitLab monorepo to a GitHub repository–complete with version history. This article explains why we chose Git Subtree over simpler approaches, the challenges we encountered, and how we implemented a mirroring solution in our CI pipeline.
In our CI pipelines, we originally relied on Docker-in-Docker (DinD)–which worked, but not without its drawbacks. This article aims to clarify why DinD is not apt for container image builds and why we shifted to using Buildah instead.
ARCsoft recently came across a project that uses Svelte. The framework is pretty neat and it comes with many unique features compared to other frontend technologies. Let’s discover those features together in this article.
Sometimes people do funky things with data. We have a use case where two two-digit codes are mashed together into a four-digit code, and we need to split them. These codes are stored as integers because, well, why not.
If you’ve ever written unit tests, you’ve probably encountered situations where a function depends on an external API, a database, or a cloud service. These things are difficult to control in a test environment. This is where mocking comes in.
Over the last year, we’ve been adapting DBSSIN (Database-Spreadsheet-Ingestion) to better fit current projects, and it’s come with its share of development challenges. The ARCsoft team has been pushing the library forward, cleaning up the mapping system, and handling some unique security and access issues.
One of the most powerful features that come with Django is the ORM
(object-relational mapping). It allows you to easily fetch data from the
database by writing intuitive Python code. However, if you don’t know (maybe
read a different article if you do), there is more to
Django’s ORM than the simple objects.get
and objects.filter
. This article
aims to take your ability to use the Django’s ORM to the next level.
Recently, I built a program that directly interacts with OpenStack cloud operations and its various components. It was a solid learning experience, and I want to share what I learned so future ARCsoft developers can hit the ground running.
It can take a while to learn a team’s culture, and there’s no quick solve for that: it’s the culmination not only of the group’s shared experience but the years of lived experience each individual brings in, and it evolves over time and is always unique. Expected practice, on the other hand, can and should be clarified–and if your team culture has “inclusion” as a core tenet, then setting clear expectations is essential to keeping everybody on the same page.
STRAP is one of the most important projects that ARCsoft is working on. To deploy applications onto STRAP, we use a user-friendly web application named Strapper. Today, I will show you a quick demo of how we can have an application up and running with just a few clicks using Strapper.