Calm Blog | Engineering Blog

フィード

記事のアイキャッチ画像
How we migrated our Rush.js monorepo to Node type stripping
Calm Blog | Engineering Blog
A case study describing the business rationale, technical challenges, and impact of our migration to Node type stripping
2ヶ月前
記事のアイキャッチ画像
Bayesian Power Analysis at Calm with Google's Causal Impact Library
Calm Blog | Engineering Blog
One approach to rigorous Bayesian power analysis in a difference-in-differences related quasi-experiment.
6ヶ月前
記事のアイキャッチ画像
To automate, or not to automate?
Calm Blog | Engineering Blog
As engineers, we like boolean logic. We like yes or no answers. We like rightanswers. So, when coming across problems that do not have right answers, itinvokes a different pattern of thinking that we don’t use every day. One ofthese such problems is deciding whether you should spend the time engineeringa task, or just do it manually. I think as engineers we often default to thetechnical solution, even if it means spending way more time putting togetherthe pieces to automate something vs just copy pasting something 50 times.
7ヶ月前
記事のアイキャッチ画像
Using AI to Script Code Modifications
Calm Blog | Engineering Blog
How to be productive in a totally novel domain with little knowledge, using Artificial Intelligence.
9ヶ月前
記事のアイキャッチ画像
Not All Rabbit Holes Lead To Wonderland
Calm Blog | Engineering Blog
A cautionary tale of looking for a technical solution for Node unit test performance optimization where an easier less technical solution exists.
10ヶ月前
記事のアイキャッチ画像
Yes, you can get your idea on the product roadmap as an engineer
Calm Blog | Engineering Blog
User generated playlists has been the number one requested feature since I joined Calm 2.5 years ago. However, during that same time span, it was never prioritized high enough to make it onto a product roadmap. So, like a naive kid new to the corporate world, I set out on a journey to make playlists happen. How hard could it be?
1年前
記事のアイキャッチ画像
The art of moving off of an A/B Test system
Calm Blog | Engineering Blog
At Calm, as I assume is similar with many consumer tech companies,experimentation is a way of life. At the time of writing, I’m in the processof moving Calm away from not only our first in-house experimentation system,but our first external system. I don’t claim to be a SME in many things, butwhen it comes to deprecating old A/B test systems, I’m somewhat of a pro.
2年前
記事のアイキャッチ画像
What's a real engineer, anyway?
Calm Blog | Engineering Blog
In November of 2021 I received a life changing offer to join Calm as asoftware engineer. It was a dream come true and immensely exciting, but italso brought an uneasiness. I was a finance major in undergrad. I went tobusiness school. I was primarily self taught and worried that people wouldfind out that I scammed my way in, or I wouldn’t be taken seriously.
2年前
記事のアイキャッチ画像
Calm's App Intents integration: how (and how not to) work with new Apple developer technologies
Calm Blog | Engineering Blog
By Alaina Kafkes This blog post has been adapted from a presentation that I gave at SwiftConf 2023.Though the iOS engineering community is home to a diversity of dabblers, devotees, and debutants, we all have at least one thing in common: when June hits, we tune in to Apple's annual Worldwide Developers Conference, lovingly dubbed WWDC.WWDC is chock-full of anticipation, usually positive, so iOS folks have bestowed it with yet another pet name: developer Christmas, birthday, or any other gift-receiving event of their choosing. And Tim and Craig give generously to us underlings. They shower us in Swift language improvements, new features, new frameworks, new platforms, and increasingly specialized processing chips to power them all. But unbox these toys, play around with them, and you may start to see the cracks. Sometimes Apple releases its novelties before they've finished building and documenting them, and, unfortunately, their developer gifts don't come with a return policy or satis
2年前
記事のアイキャッチ画像
Automating Accessibility Testing for Android
Calm Blog | Engineering Blog
By Nishanth NagellaAccessibility is an important aspect of any application users interact with. Bybeing considerate about how the app would behave with accessibility services,you improve your app's usability and make it particularly helpful for peoplewith disabilities to use the app.Broadly, there are three ways to test an application's accessibility.Manual Testing: To test, we interact with the app using Accessibilityservices, as a person with disabilities would. On Android,Talk BackandSwitch Accessare the most commonly used services by the disabled.Testing with Analysis Tools: Run the app manually through Testing toolsto discover opportunities to improve your app's accessibility.Automated Testing: Write automated tests which can run on CI environmentsto detect accessibility issues. This helps catch accessibility issues earlyon in the development cycle. This document mostly focuses on AutomatedTesting.1. Manual TestingManual Accessibility Testing is an important step and can catch mos
2年前
記事のアイキャッチ画像
Search at Calm
Calm Blog | Engineering Blog
Calm’s Search feature is an integral part of our app experience. In 2021, we refreshed our app to accommodate the scale of our ever-expanding content library. With a larger content library, it became more important than ever to provide a world-class Search.
3年前
記事のアイキャッチ画像
Working Groups that Worked
Calm Blog | Engineering Blog
Many of Calm’s most compelling products and ideas come from organic collaboration. We see success when we collaborate across orgs, across experience levels, and across backgrounds. This commitment to openness is where we started talking about working groups.
5年前
記事のアイキャッチ画像
Zero to Launch Ready with Performance Testing
Calm Blog | Engineering Blog
How exactly do you prepare for a huge spike of new users from a partnership launch?
5年前
記事のアイキャッチ画像
How Apple’s 2017 App of the Year Transformed in 2018
Calm Blog | Engineering Blog
By Josh LiebermanAs we enter 2019, I’m grateful to reflect on an incredibly rewarding and productive year at Calm. Join me in exploring our iOS app’s evolution since our v3.12 release on January 2nd, 2018. Sometimes it’s hard to imagine Calm existing any differently than it does today, but know that we are always growing, always changing, and always testing new ideas. Our roadmap is infinite and our dreams flow with the breeze. Awesome ideas come from everywhere and everyone, and our goal is to streamline these inspirations into a beautiful experience that is continuously improving. Let’s get into it:v3.12 on left, v4.4.3 on rightHomepageOur homepage is the warm hello of Calm that greets every user when they arrive. We moved to a tab bar experience to make room for the two new content types we launched in 2018: Calm Masterclass and Calm Body. Within the tabs, we updated the architecture to allow the natural back-swipe gesture when dragging from the left edge of the phone to the right.
7年前
記事のアイキャッチ画像
Internationalization With React-Intl
Calm Blog | Engineering Blog
There’s a lot to keep in mind when it comes to internationalization of a project, but most companies don’t want to think about supporting multiple languages right from the start. In fact, most companies shouldn’t localize right from the start. It’s faster to develop when not thinking about translations.
7年前
記事のアイキャッチ画像
Flexible Mobile Content Layout
Calm Blog | Engineering Blog
How do you give your server fine-grained control over your mobile content layout, without losing the benefits of a native experience?
7年前