Those who have read Evernote Tech Blog in the past may already know what Serge is. It is an open-source tool that we developed to continuously localize all Evernote clients and marketing materials into 25+ languages. Today, we’re marking a new release which accumulates numerous improvements across the board. If your team is seeking for ways to optimize localization process and free developers from a repetitive work of exporting resources
Some things just go together. Peanut butter and jelly. Time and tide. Abbott and Costello. Web Clipper and Evernote. Adding the Web Clipper extension to your browser makes Evernote a more powerful and essential part of your day. Here’s why: 1) So quick, it’s kinda like cheating – If I think an article or piece of inspiration will come in handy one day, Web Clipper lets me make it mine.
Scheduling background jobs on Android is a headache. Not only has Google introduced quite a few APIs over the years, but they’ve also changed their behavior. It’s difficult as a developer to pick the correct framework and to implement all necessary classes properly. In order to use all features from newer APIs and to support older devices at the same time, you need to write a lot of boilerplate code.
By 2016, the developers of Evernote for iOS were struggling to add new features to the app, keep it working with new versions of iOS, and untangle technical debt in the code. To fix this, we began an effort that ultimately produced an app with a new design, a new user interface, and a new software architecture—all delivered by a mostly new team. Why rebuild? The previous version of Evernote
This is the final post in a 5-part series on Evernote’s transition to Google Cloud Platform (GCP). To read this series from the beginning, see Part 1. All of the planning and processes explored in parts 1-4 of this series got us ready to build the next generation of Evernote. So how were we able to achieve the migration so quickly? Ruthless Focus In order to stand any chance of
This is Part 4 of a 5-part series on Evernote’s transition to Google Cloud Platform (GCP). To read this series from the beginning, see Part 1. In planning the migration of the Evernote service, we wanted to minimize user downtime wherever possible, but also knew our existing architecture would not support a zero-downtime migration. We had the following requirements as inputs when planning the migration methodology and maintenance windows: We
This is Part 3 of a 5-part series on Evernote’s transition to Google Cloud Platform (GCP). To read this series from the beginning, see Part 1. Our System Architecture Our next big decision was to agree on the overall system architecture we would be building towards. We agreed that the following were important requirements/considerations: The Evernote application was architected for all services to run out of a single datacenter site
This is Part 2 of a 5-part series on Evernote’s transition to Google Cloud Platform (GCP). To read this series from the beginning, see Part 1. Our security team’s charter is to protect customer data. When we started the project to move to a cloud infrastructure, and Google specifically, we started work in parallel to understand how to keep customer data secure as we migrated into GCP. We focused on
We at Evernote believe in open source. That’s why we frequently release and contribute to open source projects like Serge, our continuous localization solution, and Android-Job, an Android library to easily handle background jobs. We’re not only giving back some of our work, but we’re also using a couple of open source projects in our own products. One we rely on heavily is Icepick from Frankie Sardo. Icepick is described as “an