~/devreads

#software development

44 posts

23 Jul

Scott Batson 7 min read

How a feature goes from idea to prototype to shipped For years, there’s been this really popular Chrome extension for adding a table of contents to your Medium stories. Props to Vinicius De Antoni for writing a popular chrome extension all those years go. The extension was so popular, we even wrote about it in our Medium Handbook. How to…

programmingsoftware-engineeringweb-developmentjavascriptsoftware-development

3 Jul

4 Jun

Bo Teng 10 min read

How Airbnb built a Kubernetes sidecar to deliver dynamic configuration reliably at scale. By : Bo Teng , Cosmo Qiu , Siyuan Zhou , Ankur Soni , Xin Huang , Willis Harvey Introduction In our previous post , we explored Airbnb’s dynamic configuration system, Sitar, with a focus on service architecture and configuration change safety. Now for the harder question:…

distributed-systemsinfrastructuresoftware-architectureengineeringsoftware-development

26 May

Jacob Bennett 5 min read

This was originally written and published by Christophe Spy (Director of Engineering, Medium) as an internal Medium Eng post. Desired outcomes (what “good” looks like) 🙏🏻 These are the kinds of changes we want to see if AI is going well at Medium. Less drudgery, more leverage Engineers use AI to remove repetitive, low‑leverage work (e.g. tedious refactors, boilerplate, large…

aisoftware-engineeringai-agentsoftware-development

Criteo Tech 9 min read

Authors: Auriane Bonmarchand , Carolina Tealdo & Minh-Quyên NGUYEN In our previous post , we explained the Engineering Program Manager role at Criteo at a high level: EPMs sit at the intersection of business ambition, technical reality, and execution, helping complex cross-team initiatives move from intent to delivery. But if you are considering this role, that high-level description is only…

software-developmentengineeringprogram-managersoftware-engineeringway-of-working

22 Apr

Criteo Tech 9 min read

Authors: Auriane Bonmarchand , Carolina Tealdo & Minh-Quyên NGUYEN At Criteo, Engineering Program Managers (EPMs) sit at the heart of our most complex, cross-team initiatives. We connect business ambition with technical reality, helping engineering teams ship impactful products at scale. In this article, three EPMs share what the role really looks like, why we love it, and how your career…

company-cultureengineeringsoftware-developmentsoftware-engineeringway-of-working

5 Mar

Thumbtack People Team 3 min read

Kenza Boulisfane, Software Engineer at Thumbtack, works at the intersection of data, AI, and real business impact. In this Q&A, she shares how she’s building an AI-powered Marketing Analytics Agent designed to make complex marketing data accessible to everyone. She also reflects on team culture, technical challenges, and why diverse perspectives make engineering stronger. What are you currently working on?…

careerssoftware-developmentaidatatechnology

2 Feb

Matthew Pennell 8 min read

The necessity of imperfection: Designing for distributed ownership in Backstage Imagine an internal engineering platform — tooling that is accessed by thousands of developers every day — where every new feature, every piece of critical functionality, is designed, built and maintained by a different, autonomous team. For years, that was the reality of our internal tooling at Booking.com; a productive,…

backstagesoftware-developmentux-designplatform

25 Aug 2025

Raphael Montaud 10 min read

Hard vs Soft Filtering and how this applies to Medium’s Recommendation System In this part 3 we’ll see how we modified one of our hard filtering rules and attempted to turn it into a machine learning based “soft filter”. Intro : This is a 4-part series breaking down improvements to the algorithm behind the Medium’s Daily Digest over the past…

software-developmentrecommendation-systemsoftware-engineeringmachine-learning

18 Jun 2025

Juan Pablo Lorenzo 7 min read

Unlocking the Power of Customization: How Our Enrichment System Transforms Recommendation Data Enrichments How are accurate property prices on Booking.com connected to machine learning that recommends appealing property photos? What about the number of users who have wishlisted a property? And how can developers assess if their recommendation models effectively boost traveler clicks? None of these pieces of information are…

javaaisoftware-developmentrecommendation-systemmachine-learning

27 Feb 2025

Egor Savochkin 11 min read

Scrum, Agile Fitting Scrum for Software Development — Part II Break down stories like a boss and a few more tricks source Many software teams use Scrum, but it comes with challenges. While it originated in software development, its creators made it broad enough to work across industries. The idea? Teams should adapt and improve it while sticking to core…

programmingsoftware-developmentagiletechnologyscrum

24 Jan 2025

Egor Savochkin 11 min read

Scrum, Agile Make your stand-ups short and concise, focus on value added source Scrum is a framework that gives teams the freedom to build their own processes. Unfortunately, teams often create complex, bloated processes that eat up all their time and leave little room for value-added or improvement work. How often do your daily stand-ups stretch past 30 minutes? Last…

technologysoftware-developmentagilescrumprogramming

20 Dec 2024

Hritik Jaiswal 6 min read

Forms are everywhere online, from signing up for newsletters to making purchases. But let’s be honest — nothing’s more frustrating than a form that’s hard to fill out or riddled with unclear error messages. In this post, we’ll dive into practical tips and tricks to make your form validation seamless, user-friendly, and maybe even enjoyable! We’ll walk through tips for…

javascriptprogrammingtechnologysoftware-developmentux

2 Dec 2024

Fabien RAYNAUD 3 min read

Conduct a technical migration within less than 6 months — Part 3 (final) based on Next.js migration, performed at JobTeaser What is this 3-parts article about: sharing my own experience with handling a technical migration 📖 some additional elements that I find relevant and could help (identified with 📖 emoji) but not personally tested What this presentation is NOT about:…

software-developmentnextjsdeveloper-experienceproject-management

Fabien RAYNAUD 3 min read

Conduct a technical migration within less than 6 months — Part 2 based on Next.js migration, performed at JobTeaser What is this 3-parts article about: sharing my own experience with handling a technical migration 📖 some additional elements that I find relevant and could help (identified with 📖 emoji) but not personally tested What this presentation is NOT about: technical…

developer-experiencesoftware-developmentnextjsproject-management

Fabien RAYNAUD 4 min read

Conduct a technical migration within less than 6 months — Part 1 based on Next.js migration, performed at JobTeaser What is this 3-parts article about: sharing my own experience with handling a technical migration 📖 some additional elements that I find relevant and could help (identified with 📖 emoji) but not personally tested What this presentation is NOT about: technical…

software-developmentproject-managementnextjsdeveloper-experience

1 Oct 2024

Ryan Lattanzi 6 min read

The Two Billion Claps Bug TL;DR A user was able to exploit a race condition in our backend system to manipulate clap counts on posts. Users are supposed to only be able to clap between 0 and 50 times for a given post, but this hack allowed them to go outside those bounds (both above and below). Our fix leverages…

dynamodbsoftware-developmentprogrammingbug-bounty

24 Jul 2023

Eric Elliott 11 min read

AI language models, such as ChatGPT and Claude, empower anyone to create software. These models can intelligently understand problems, create solutions, and explain the solutions. But natural language isn’t always the best way to communicate with AI. If you need to keep track of complex data and define how you interact with that data in specific ways, SudoLang can help.…

technologysoftware-developmentfutureaichatgpt

6 Jul 2023

Joyce Lin 3 min read

Get started with the Home Assistant WebSocket API In Part 1 of this series, we learned about the WebSocket protocol and how to set up our own WebSocket server in Node.js . Next, let’s explore how to use a public WebSocket API to access smart devices around a connected home. REST and WebSockets for a connected home When it comes…

home-assistantwebsocketapiiotsoftware-development

28 Jun 2023

Joyce Lin 2 min read

It’s not just developers who rely on APIs. DevOps engineers and data engineers also use APIs for many reasons, including to manage cloud infrastructure. For example, you can programmatically manage resources, configure services, and perform operations using APIs. Let’s review other reasons to use cloud APIs. Reasons to use cloud APIs In addition to providing a management console and SDKs,…

infrastructuredevopssoftware-developmentgcpapi

12 Jun 2023

Eric Elliott 10 min read

Your First Steps with SudoLang If you want to build chat bots, games, or applications using AI models like ChatGPT, you’ve come to the right place. In this article, we’re going to dive into the basics of SudoLang, a powerful natural language pseudocode programming language designed to instruct advanced language models like OpenAI’s GPT-4, Anthropic’s Claude, and others. SudoLang was…

chatgpttechnologysoftware-developmentaiprogramming

1 May 2023

Eric Elliott 16 min read

Image by Eric Elliott using PromptCrafter and Midjourney SudoLang is a powerful natural language pseudocode programming language that makes it easier to instruct OpenAI’s GPT-4, Anthropic’s Claude, and other language models. For an overview of language features and benefits, check out The Art of Effortless Programming and Unit Testing ChatGPT Prompts: Introducing Riteway for SudoLang . To gain a better…

chatgptsoftware-engineeringaisoftware-developmenttechnology

26 Apr 2023

Shahar Davidson 4 min read

Ready to take your engineering ship to Warp 9? (by Christopher Chiu-Tabet) Nowadays, everyone is examining how to increase efficiencies and cut costs to improve their bottom line. Although it may seem counterintuitive, engineering managers can help increase efficiencies by investing in tools for their engineering group that can help increase the team’s velocity and therefore increase efficiencies and the…

developer-productivitysoftware-developmentplatformstartupengineering-mangement

25 Apr 2023

Eric Elliott 16 min read

Why Every Developer Should Learn ChatGPT and SudoLang I recently started using an AI Driven Development (AIDD) process that has many benefits: Increased development productivity 10x — 20x , allowing us to take on more projects, and more ambitious challenges that would previously have been too resource-intensive to tackle. Opened up our applications to magical features we could not have…

chatgptartificial-intelligencesoftware-developmentmachine-learningai

1 Apr 2023

Eric Elliott 15 min read

Pseudocode is a fantastic way to sketch programs using informal, natural language, without worrying about specific syntax. It’s like sketching your thoughts before diving into the nitty-gritty of coding. It’s useful for brainstorming and communicating ideas with others. I have been using pseudocode to express ideas to Large Language Models (LLMs) since GPT-3 was announced in mid 2020. However, up…

chatgptnlpsoftware-developmenttechnologyai

13 Feb 2023

Joyce Lin 5 min read

Storing Postman scripts within reusable components in an OpenAPI definition In programming, “hacking” has historically meant making something do what it wasn’t originally intended to do, like using a whistle from a cereal box prize to play the tone into a pay phone to get free long distance calls. Today, it also refers to finding an inelegant solution to a…

javascriptpostmanapisoftware-developmentengineering

1 Feb 2023

Joyce Lin 4 min read

And use Postman to send and receive messages across the WebSocket connection The WebSocket protocol provides a way to exchange data between a client and server over a persistent connection. The data can be passed in both directions with low latency and overhead, and without breaking the connection. This means the server can independently send data to the client without…

nodejswebsocketengineeringsoftware-developmentapi

7 Jan 2023

Henrik Warne 4 min read

Every time I hear about software maintenance as a distinct activity, I cringe. That’s because it is based on the outdated notion that first software is developed, then it is maintained. But that is not how software development works today. … Continue reading →

programmingsoftware developmentsoftware maintenance

1 Nov 2022

Avery Dunn 6 min read

My name is Avery Dunn and I am a rising master’s student at Washington University in St. Louis studying computer science. For the past 12 weeks, I have been a software engineering intern on the API & Platform pod of the Foundation team. I am an active Strava user and have been for approximately 3 years with my favorite activity…

software-developmentgraphqlmicroservicesapiinternships

9 Aug 2022

23 Feb 2022

David Andrade 4 min read

That’s a bold statement I know, but let me explain exactly why I believe this is true, and why I’m so passionate about it. The BBC which is celebrating its centenary this year is like no other organisation in the world. Our job is simple, to ensure that it remains just as relevant in the future as it has been…

productsoftware-developmentsoftware-engineeringtechnologybbc

15 Feb 2022

Louise Ankers 2 min read

Much like Sir David Attenborough I was not successful on my first application to the BBC , however I was not dissuaded and applied again! Fortunately, I was successful last year and have joined the BBC as Senior Product Manager — Children’s Apps. CBeebies Playtime Island app icon On my first day all the team were very welcoming and friendly,…

software-developmentbbcagileproduct-managementnew-starter

10 Feb 2022

David Buckhurst 4 min read

Hackathons, innovation days, codefests — whatever you call them — have been a feature of the tech industry for the last 20 years, and one of the most powerful ideation tools at our disposal. The premise is simple, given a theme or problem space, the hackathon participants must self-organise into teams to explore ideas, write some code, and deliver a…

hackathonshackinginnovationbbcsoftware-development

31 Jan 2022

Joyce Lin 5 min read

Learn to JAM with scripts, mock servers, and the visualizer Jamstack originally referenced a web architecture composed of JAM: JavaScript, APIs, and Markup. Websites could be delivered statically, such as serving HTML from static hosting, while providing dynamic content and an interactive experience through JavaScript and APIs. “A modern web development architecture based on client-side JavaScript, reusable APIs, and prebuilt…

codingsoftware-developmentjavascriptjamstackapi

3 Sept 2021

Pratik Shekhar 3 min read

3 Rules/Guidelines to Reduce Implementation Flaws When I hear the word “rule”, I think back to grade school. “Be quiet when the teacher is talking.” “No interrupting, you must raise your hand with a question.” But what makes this different than following a set of guidelines? There was always that one kid who never listened to the rules. In coding,…

techcoding-stylesoftware-development

20 Mar 2020

0xADADA 4 min read

This articles describes the difference between how component invocation differs when using curlies {​{...}}, angle brackets <...> or an (...) s-expression in Ember templates. Ember has three methods for invoking components and helpers in a template, either of the three can be used to invoke both classic and modern glimmer components. The “classic” syntax in the form that uses curly…

projectsopen-sourcesoftware-developmentember.jsweb development

22 Dec 2017

0xADADA 26 min read

A summary of my notes taken while reading Programming Phoenix. Ch.1 The layers of phoenix, the endpoint is where the HTTP connection contacts phoenix, from there it goes to the router which directs a request to the appropriate controller, passing through a series of pipelines. Pipelines chain functions together to handle tasks that span across multiple controllers, such as browser…

notessoftware-developmentelixir

9 Oct 2017

0xADADA 5 min read

In early 2015, I was working at an artificial intelligence startup. My team was planning to build a web application to connect to our neural network platform. The team as a whole had experience (on the AI–side) with Python, and the web team had a lot of experience using Django. We’d implemented a hybrid-app in Cordova using Backbone.js the previous…

essaysopen-sourcesoftware-developmentjavascriptframeworks

3 Aug 2015

0xADADA 6 min read

I’ve seen many articles and discussions online discussing the merits of merge and rebase when integrating parallel branches into the main branch. It seems there are two camps arguing “which is better” when in reality, both have their own use cases. The task we need to accomplish is to determine which workflow is right for your project. This article will…

essayssoftware-developmentversion-control

8 Jun 2014

13 Feb 2013

Schakko 5 min read

A few days ago I finished my bachelor thesis with the title Integrating Xtext in an existing Software development process. I developed a domain specific language with Xtext and some extensions for easily adding new generators as new Eclipse plug-ins. After finishing the thesis I added a Maven Tycho based build […] The post Build and deploy your Xtext DSL…

software developmentxtextautomaticbuildserverdsl

31 Aug 2012

Schakko 2 min read

Task for today was making the NuGet repository of TeamCity available in our local network. Sounds easier as it was as our TeamCity instance is available from the Internet but you can only access the rontend with valid domain credentials (LDAP/Active Directory authentication). Enabling the guest account feature in TeamCity would […] The post TeamCity: Make the NuGet repository available…

active directory ldapapachesoftware developmentnugetpacket manager

8 Aug 2010

Schakko 1 min read

Für mein aktuelles Projekt setze ich u.a. JPA/EclipseLink, Maven und Spring. Damit der Build-Prozess von Maven und das automatische Deployen in den Tomcat-Container von Eclipse funktioniert, musste ich ein paar Änderungen an der .settings/org.eclipse.wst.common.component durchführen: &lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;project-modules id="moduleCoreId" project-version="1.5.0"&gt; &lt;wb-module deploy-name="YourProject"&gt; &lt;wb-resource deploy-path="/" source-path="/src/main/webap

software developmenteclipseeclipselinkkomischpersistence.xml

22 Jul 2010

Schakko 1 min read

Da ich gegenwärtig an libopenranked von etqw-openranked arbeite und ich vermute, dass ich meine Erkenntnisse nach einiger Zeit wieder vergesse, gibt es hier die Kurzfassung. Damit bei einem Segmentation Fault eine Core-Dump erzeugt wird, muss ulimit -c unlimited aufgerufen. Damit wird festgelegt, dass der Core-Dump beliebig groß sein darf. Mit […] The post Debugging von C-Applikationen unter Linux appeared first…

linuxsoftware developmentdebugfaultgdb