How AI startups use changelogs to win developer trustHow AI startups use changelogs to win developer trustJune 4, 2025Developer ProductsDesign for DevtoolsDesign Engineering
Exploring the OKLCH ecosystem and its toolsExploring the OKLCH ecosystem and its toolsMay 28, 2025Developer ProductsDesignDXOKR-driven product developmentDesign for DevtoolsOKLCHCSS
How Recraft's lean team is challenging the AI image generation giantsHow Recraft's lean team is challenging the AI image generation giantsMay 20, 2025Developer ProductsDesign for DevtoolsDesign Engineering
Demo app design for Medplum, open source healthcare developer platformDemo app design for Medplum, open source healthcare developer platformMay 15, 2025Developer ProductsDesignCase StudyDesign for DevtoolsDesign Engineering
GMI Cloud meets Webflow and speeds ahead in the AI compute raceGMI Cloud meets Webflow and speeds ahead in the AI compute raceApril 30, 2025Developer ProductsDesignAICase StudyDesign Engineering
Rails, hacking, and Stripe as a scoreboard: Marc Köhlbrugge’s playbookRails, hacking, and Stripe as a scoreboard: Marc Köhlbrugge’s playbookApril 29, 2025Developer CommunityRails
Join our email newsletterGet all the new posts delivered directly to your inbox. Unsubscribe anytime.Your emailSubscribeOr subscribe to a feed
UI for Quotient AI: the developer tool for prompt engineersUI for Quotient AI: the developer tool for prompt engineersApril 23, 2025DesignAICase StudyDesign EngineeringFigmaLLMs
Making desktop apps with revved-up potential: Rust + Tauri + sidecarMaking desktop apps with revved-up potential: Rust + Tauri + sidecarApril 22, 2025OKR-driven product developmentRustTypeScript
Let there be docs! Generating an OpenAPI schema across the Rails stackLet there be docs! Generating an OpenAPI schema across the Rails stackApril 8, 2025RailsOKR-driven product developmentRuby
Attention: An Important Brand Update From The Evil Martians BlogAttention: An Important Brand Update From The Evil Martians BlogApril 1, 2025AI
Hey developer tool teams, don’t copy these copywriting clichés!Hey developer tool teams, don’t copy these copywriting clichés!March 26, 2025Developer ProductsDeveloper MarketingDeveloper Community
Simple Declarative Presence for Hotwire apps with AnyCableSimple Declarative Presence for Hotwire apps with AnyCableMarch 18, 2025Real-timeRailsOKR-driven product developmentWebSocketHotwire
PostCSS creator shares how to make your open source popularPostCSS creator shares how to make your open source popularMarch 12, 2025Open SourceDeveloper Community
How to kill conversions on your developer tool's landing pageHow to kill conversions on your developer tool's landing pageMarch 5, 2025Developer ProductsDeveloper Marketing
How to make web videos way smaller in 2025 using the AV1 codecHow to make web videos way smaller in 2025 using the AV1 codecMarch 4, 2025OKR-driven product developmentDesign for Devtools
How Doximity brought real-time Go power to their Rails appHow Doximity brought real-time Go power to their Rails appFebruary 25, 2025Real-timeCase StudyRailsPerformanceGo
Hire better, 10X faster: how we screen 50 engineers weekly with no HRHire better, 10X faster: how we screen 50 engineers weekly with no HRFebruary 19, 2025Developer ProductsDeveloper Community
Ruby on Rails on WebAssembly: a guide to full-stack in‑browser actionRuby on Rails on WebAssembly: a guide to full-stack in‑browser actionFebruary 18, 2025RailsLocal-firstOpen SourceOKR-driven product developmentWasmRubyJavaScript
How to Favicon in 2025: Three files that fit most needsHow to Favicon in 2025: Three files that fit most needsFebruary 4, 2025OKR-driven product developmentCSS
3 smart ways to highlight features for landing pages or launch weeks3 smart ways to highlight features for landing pages or launch weeksJanuary 28, 2025DesignDeveloper ProductsDesign for DevtoolsDesign Engineering
Martian Kubernetes Kit: running apps—and running them wellMartian Kubernetes Kit: running apps—and running them wellJanuary 22, 2025InfrastructureOKR-driven product developmentKubernetesPrometheusDocker
Devs in mind 2025: how to design interfaces for developer toolsDevs in mind 2025: how to design interfaces for developer toolsJanuary 14, 2025DesignDeveloper ProductsDeveloper CommunityDesign for Devtools
The 16 most active developer tool investors and VCs going into 2025The 16 most active developer tool investors and VCs going into 2025January 7, 2025Developer ProductsAI
Railsmas on Mars: 12 Days of Mandatory Developer Joy and ChallengeRailsmas on Mars: 12 Days of Mandatory Developer Joy and ChallengeDecember 31, 2024RailsOpen SourceRuby
Don't just slap on a chatbot: building AI that works before you askDon't just slap on a chatbot: building AI that works before you askDecember 30, 2024DesignAIDeveloper ProductsLLMsMLDeep Learning
Ease and epiphany: 4 ways to stop misguided dev tools user onboardingEase and epiphany: 4 ways to stop misguided dev tools user onboardingDecember 17, 2024DesignDeveloper ProductsDXDesign for Devtools
Keeping Rails cool: the modern frontend toolkitKeeping Rails cool: the modern frontend toolkitDecember 10, 2024Open SourceRailsGo
bolt.new from StackBlitz: how they surfed the AI wave—with no wipeoutsbolt.new from StackBlitz: how they surfed the AI wave—with no wipeoutsDecember 2, 2024Developer ProductsAIRailsDeveloper CommunityDeveloper MarketingCase Study
Founders, if you want A+ startup success, do the homework first!Founders, if you want A+ startup success, do the homework first!November 19, 2024Developer ProductsDeveloper Marketing
Hey, AnyCable speaking! Needing help with a Twilio-OpenAI connection?Hey, AnyCable speaking! Needing help with a Twilio-OpenAI connection?November 12, 2024AIRailsOpen SourceReal-timeOKR-driven product developmentAI IntegrationLLMsMLTwilio
How to do launch weeks for developer tools, startups, and small teamsHow to do launch weeks for developer tools, startups, and small teamsNovember 5, 2024Developer ProductsDeveloper MarketingDeveloper Community
Woah, opacity! A full guide to this badass hero of efficient UI designWoah, opacity! A full guide to this badass hero of efficient UI designOctober 29, 2024DesignDXDesign for Devtools
11 HTML best practices for login & sign-up forms11 HTML best practices for login & sign-up formsOctober 23, 2024Open SourceOKR-driven product developmentA11yCSSJavaScript
A taste of Go code generator magic: a quick guide to getting startedA taste of Go code generator magic: a quick guide to getting startedOctober 15, 2024Open SourcePerformanceDXOKR-driven product developmentGo
Designing Tegon: a signature vision for the AI-driven issue trackerDesigning Tegon: a signature vision for the AI-driven issue trackerSeptember 25, 2024Developer ProductsDesignAICase StudyDesign for DevtoolsDesign EngineeringLLMsMLDeep Learning
Creating a winning sales flow with authentic writing from engineersCreating a winning sales flow with authentic writing from engineersSeptember 18, 2024Developer ProductsDeveloper MarketingDeveloper Community
A letter to founders: join the local-first movement!A letter to founders: join the local-first movement!September 10, 2024Developer ProductsLocal-firstAI
How to quickly (and weightlessly) convert Chrome extensions to SafariHow to quickly (and weightlessly) convert Chrome extensions to SafariAugust 28, 2024Developer ProductsSDKs and PluginsOKR-driven product developmentSDKs, Extensions & PluginsJavaScriptTypeScriptSwift
Dev tools AI‑fication 101: lessons from Martian robotsDev tools AI‑fication 101: lessons from Martian robotsAugust 20, 2024AIPerformanceDXAI IntegrationPerformance & ScalabilityLLMsMLRails
Railing against time: tools and techniques that got us 5X faster testsRailing against time: tools and techniques that got us 5X faster testsAugust 14, 2024Case StudyRubyRailsCI
TestProf III: guided and automated Ruby test profilingTestProf III: guided and automated Ruby test profilingAugust 13, 2024PerformanceOpen SourceOKR-driven product developmentPerformance & ScalabilityRubyRailsCI
TestProf II: Factory therapy for your Ruby testsTestProf II: Factory therapy for your Ruby testsAugust 12, 2024PerformanceOpen SourceRailsOKR-driven product developmentPerformance & ScalabilityRubyCI
TestProf: a good doctor for slow Ruby testsTestProf: a good doctor for slow Ruby testsAugust 11, 2024PerformanceOpen SourceRailsOKR-driven product developmentPerformance & ScalabilityRubyCI
The SDK Imperative: why developer tools live or die by their SDKsThe SDK Imperative: why developer tools live or die by their SDKsAugust 10, 2024Developer ProductsSDKs and PluginsOpen SourceOKR-driven product developmentGitHeroku
Want to make a great developer tool UI? Follow this fundamental rule!Want to make a great developer tool UI? Follow this fundamental rule!August 5, 2024DesignDesign for Devtools
git push --force and how to deal with itgit push --force and how to deal with itJuly 30, 2024DXOKR-driven product developmentGitHeroku
Engineering connections: a conference talk primer for humansEngineering connections: a conference talk primer for humansJuly 29, 2024Developer Community
Flying free: a tale of partitioning with canaries in PostgreSQLFlying free: a tale of partitioning with canaries in PostgreSQLJuly 23, 2024OKR-driven product developmentPostgreSQL
OKLCH in CSS: why we moved from RGB and HSLOKLCH in CSS: why we moved from RGB and HSLJuly 18, 2024Developer ProductsDesignDXOKR-driven product developmentDesign for DevtoolsOKLCHCSSPostCSS
How to make complex Chrome extensions: a zero gravity guideHow to make complex Chrome extensions: a zero gravity guideJuly 16, 2024Developer ProductsSDKs and PluginsOKR-driven product developmentSDKs, Extensions & PluginsJavaScriptTypeScriptReact
Startups on Rails in 2024: my keynote at RailsConfStartups on Rails in 2024: my keynote at RailsConfJuly 15, 2024Developer ProductsRailsOKR-driven product development
Connection avalanche safety tips and prepping for real-time applicationsConnection avalanche safety tips and prepping for real-time applicationsJuly 9, 2024Real-timeInfrastructurePerformancePerformance & ScalabilityOKR-driven product developmentWebSocketHotwireRails
Recapping the first Local‑First conference in 15 minutesRecapping the first Local‑First conference in 15 minutesJuly 8, 2024Local-firstDeveloper CommunityOKR-driven product developmentCRDTJavaScript
Realtime diagnostic logging, or how to really spy on your Go web appsRealtime diagnostic logging, or how to really spy on your Go web appsJuly 2, 2024DXOKR-driven product developmentGo
Beyond monospace: the search for the perfect coding fontBeyond monospace: the search for the perfect coding fontJune 25, 2024DesignDesign for DevtoolsFonts
Inertia.js in Rails: a new era of effortless integrationInertia.js in Rails: a new era of effortless integrationJune 18, 2024RailsOKR-driven product developmentReactJavaScriptTailwind CSS
The art of Turbo Mount: Hotwire meets modern JS frameworksThe art of Turbo Mount: Hotwire meets modern JS frameworksJune 11, 2024RailsOKR-driven product developmentHotwireReactJavaScript
The lion's den: NestJS and authentication with AWS CognitoThe lion's den: NestJS and authentication with AWS CognitoJune 10, 2024OKR-driven product developmentTypeScriptNode.jsAWS
Gemfile of dreams: the libraries we use to build Rails appsGemfile of dreams: the libraries we use to build Rails appsMay 28, 2024RailsPerformanceOpen SourceOKR-driven product developmentPerformance & ScalabilityRubyPostgreSQLGraphQL
How does your chatbot UX size up? The 5 laws of ChatRoboticsHow does your chatbot UX size up? The 5 laws of ChatRoboticsMay 22, 2024AIOKR-driven product developmentJavaScriptNode.js
Keep it together: 5 essential design patterns for dev tool UIsKeep it together: 5 essential design patterns for dev tool UIsMay 7, 2024DesignDesign for DevtoolsA11y
Let's have more tech meetups! A quick-start guide to holding your ownLet's have more tech meetups! A quick-start guide to holding your ownApril 30, 2024Developer CommunityRuby
Next-level docs with Next.js: Teleport’s new customer acquisition channelNext-level docs with Next.js: Teleport’s new customer acquisition channelApril 24, 2024Developer ProductsDXOpen SourceSDKs and PluginsOKR-driven product developmentNext.js
How to manifest streamlined authentication: AWS Cognito in a React appHow to manifest streamlined authentication: AWS Cognito in a React appApril 22, 2024OKR-driven product developmentReactTypeScriptAWS
CLI UX best practices: 3 patterns for improving progress displaysCLI UX best practices: 3 patterns for improving progress displaysApril 15, 2024DesignDXDesign EngineeringDesign for DevtoolsLean Software DevelopmentGoRust
Let there be docs! A documentation-first approach to Rails API developmentLet there be docs! A documentation-first approach to Rails API developmentApril 9, 2024RailsOKR-driven product developmentRubyMicroservices
MVPs, prototypes, results: how to win with a Martian Design SprintMVPs, prototypes, results: how to win with a Martian Design SprintApril 8, 2024DesignDeveloper ProductsDesign EngineeringDesign for DevtoolsCJMFigma
Kamal: hot deployment tool to watch—or a total game changer?Kamal: hot deployment tool to watch—or a total game changer?April 2, 2024InfrastructureOKR-driven product developmentKamalKubernetesAWS
Beyond bars and lines: 7 cool ways to visualize data in your dev toolBeyond bars and lines: 7 cool ways to visualize data in your dev toolMarch 26, 2024DesignDesign for DevtoolsA11y
Why should developers write? 3 reasons and 3 common blocksWhy should developers write? 3 reasons and 3 common blocksMarch 20, 2024Developer Marketing
Martian Kubernetes Kit: unboxing our toolkit's technical secretsMartian Kubernetes Kit: unboxing our toolkit's technical secretsMarch 12, 2024InfrastructureOKR-driven product developmentKubernetesPrometheusDocker
How to make complex serverless file processing a piece of cakeHow to make complex serverless file processing a piece of cakeMarch 6, 2024InfrastructureServerlessGoogle CloudTypeScript
The complete guide to multi-tenant SaaS, part 1: collaborationThe complete guide to multi-tenant SaaS, part 1: collaborationFebruary 28, 2024Developer ProductsDesignOKR-driven product developmentDesign for Devtools
“Fair” multi-tenant prioritization of Sidekiq jobs—and our gem for it!“Fair” multi-tenant prioritization of Sidekiq jobs—and our gem for it!February 14, 2024RailsPerformanceOKR-driven product developmentRubyRedis
First steps with ruby.wasm: or how we built Ruby Next PlaygroundFirst steps with ruby.wasm: or how we built Ruby Next PlaygroundFebruary 6, 2024Open SourceLocal-firstOKR-driven product developmentWasmRubyJavaScript
Hiring a product designer: 1 hard skill and 3 soft skills to look forHiring a product designer: 1 hard skill and 3 soft skills to look forJanuary 30, 2024DesignDeveloper ProductsDesign for DevtoolsOKR-driven product developmentLean Software Development
Value pricing for Dev Tools: a strategy beneficial for both sidesValue pricing for Dev Tools: a strategy beneficial for both sidesJanuary 24, 2024Developer ProductsOKR-driven product development
ViewComponent in the Wild III: TailwindCSS classes & HTML attributesViewComponent in the Wild III: TailwindCSS classes & HTML attributesJanuary 23, 2024RailsOKR-driven product developmentRubyCSS
5 cool (and surprising) ways to configure Lefthook for automation joy5 cool (and surprising) ways to configure Lefthook for automation joyJanuary 18, 2024Open SourcePerformanceOKR-driven product developmentPerformance & ScalabilityGoRubyJavaScript
How to cultivate capital: 6 tips from developer tools founders and VCsHow to cultivate capital: 6 tips from developer tools founders and VCsJanuary 10, 2024Developer ProductsOpen Source
UX research for dev tools must not be neglected: our quick-start guideUX research for dev tools must not be neglected: our quick-start guideDecember 27, 2023DesignDeveloper ProductsDesign for DevtoolsOKR-driven product development
Martian Kubernetes Kit: a smooth-sailing toolkit from our SRE teamMartian Kubernetes Kit: a smooth-sailing toolkit from our SRE teamDecember 20, 2023InfrastructureOKR-driven product developmentKubernetesPrometheusDocker
Figma plugin magic tricks: mixing colors with SVG and Canvas APIFigma plugin magic tricks: mixing colors with SVG and Canvas APIDecember 12, 2023SDKs and PluginsDXOKR-driven product developmentSDKs, Extensions & PluginsFigmaTypeScriptReact
Pen, paper, IDE: a DevTool Founder’s early-stage product design guidePen, paper, IDE: a DevTool Founder’s early-stage product design guideDecember 4, 2023DesignDeveloper ProductsDesign for DevtoolsOKR-driven product developmentLean Software Development
Care beyond code: 7 best design practices for frontend developersCare beyond code: 7 best design practices for frontend developersNovember 28, 2023DesignOKR-driven product developmentCSSJavaScript
Extremely open and incredibly close: should you go open source?Extremely open and incredibly close: should you go open source?November 20, 2023Developer ProductsOKR-driven product development
Freezolite: the magic gem for keeping Ruby literals safely frozenFreezolite: the magic gem for keeping Ruby literals safely frozenNovember 14, 2023PerformanceDXOKR-driven product developmentPerformance & ScalabilityRubyRails
Figma plugin API: diving into advanced algorithms & data structuresFigma plugin API: diving into advanced algorithms & data structuresNovember 13, 2023SDKs and PluginsDXOKR-driven product developmentSDKs, Extensions & PluginsFigmaTypeScriptReact
DIY PaaS: serverless real-time with one commandDIY PaaS: serverless real-time with one commandNovember 8, 2023Real-timeOKR-driven product developmentServerlessWebSocketNode.js
Midjourney vs. human illustrators II: more Martians join the battle!Midjourney vs. human illustrators II: more Martians join the battle!November 6, 2023DesignAIDesign for DevtoolsAI IntegrationNeural Networks
Better dynamic themes in Tailwind with OKLCH color magicBetter dynamic themes in Tailwind with OKLCH color magicOctober 31, 2023DesignDXTailwind CSSOKLCHCSS
The future of full-stack Rails II: Turbo View TransitionsThe future of full-stack Rails II: Turbo View TransitionsOctober 23, 2023RailsOKR-driven product developmentHotwireRubyJavaScript
The future of full-stack Rails: Turbo Morph DriveThe future of full-stack Rails: Turbo Morph DriveOctober 16, 2023RailsOKR-driven product developmentHotwireRubyJavaScript
5 best practices for preventing chaos in Tailwind CSS5 best practices for preventing chaos in Tailwind CSSOctober 10, 2023OKR-driven product developmentTailwind CSSCSSJavaScript
It’s dangerous to go alone: take our guide to the “IDEAL” HTTP client!It’s dangerous to go alone: take our guide to the “IDEAL” HTTP client!September 12, 2023PerformanceOKR-driven product developmentMicroservicesRubyRails
It deserved its own tome: Layered Design and the Extended Rails WayIt deserved its own tome: Layered Design and the Extended Rails WayAugust 29, 2023RailsDeveloper CommunityOKR-driven product developmentHotwireRuby
Successful balance: gracefully and tactfully raising a dev tool priceSuccessful balance: gracefully and tactfully raising a dev tool priceAugust 23, 2023Developer ProductsDesignOKR-driven product developmentDesign for Devtools
How to make next-level Figma plugins: auth, routing, storage, and moreHow to make next-level Figma plugins: auth, routing, storage, and moreAugust 22, 2023Developer ProductsDXSDKs and PluginsOKR-driven product developmentSDKs, Extensions & PluginsFigmaJavaScriptTypeScript
Super GitHub Pages: budget frontend staging, with Storybook and moreSuper GitHub Pages: budget frontend staging, with Storybook and moreAugust 4, 2023OKR-driven product developmentGit
imgproxy goes solo: unveiling a bold future for this new companyimgproxy goes solo: unveiling a bold future for this new companyJuly 20, 2023Developer ProductsOKR-driven product developmentML
Enter AnyCable v1.4: reliable real-time features for apps of any sizeEnter AnyCable v1.4: reliable real-time features for apps of any sizeJuly 14, 2023Real-timeOKR-driven product developmentRailsHotwireWebSocket
How a year-long LeetCode habit upped my professional gameHow a year-long LeetCode habit upped my professional gameJuly 5, 2023Developer MarketingOKR-driven product developmentJavaScript
“AI” marks the spot: a quick AI treasure map for businesses“AI” marks the spot: a quick AI treasure map for businessesJune 28, 2023Developer ProductsAIDesignDesign for DevtoolsOKR-driven product developmentML
Before your next frontend pull request, use this checklistBefore your next frontend pull request, use this checklistJune 7, 2023OKR-driven product developmentA11yCSSJavaScript
How to turn an open source project into a profitable businessHow to turn an open source project into a profitable businessMay 31, 2023Developer ProductsOpen SourceOKR-driven product developmentHiring & Training
From Ruby to Crystal? Writing and distributing a CLI toolFrom Ruby to Crystal? Writing and distributing a CLI toolMay 16, 2023Case StudyOKR-driven product developmentCrystalRuby
Icon transcendence: customizing icons to complement fontsIcon transcendence: customizing icons to complement fontsMay 3, 2023DesignDesign for DevtoolsOKR-driven product development
Go integration testing with courage and coverageGo integration testing with courage and coverageApril 19, 2023DXOKR-driven product developmentGoWebSocket
Don’t wait, let’s use the browser Contact Picker API nowDon’t wait, let’s use the browser Contact Picker API nowApril 13, 2023OKR-driven product developmentJavaScriptTypeScriptReact
Ruby Bytes, or generating standalone generatorsRuby Bytes, or generating standalone generatorsApril 4, 2023DXOKR-driven product developmentRubyRails
RuboCoping with legacy: Bring your Ruby code up to StandardRuboCoping with legacy: Bring your Ruby code up to StandardMarch 28, 2023DXOKR-driven product developmentRubyRailsCI
AnyCable off Rails: connecting Twilio streams with HanamiAnyCable off Rails: connecting Twilio streams with HanamiMarch 21, 2023Real-timeOKR-driven product developmentGoWebSocketTwilio
Cool frontend arts of local-first: storage, sync, conflictsCool frontend arts of local-first: storage, sync, conflictsMarch 15, 2023DesignDeveloper ProductsLocal-firstOKR-driven product developmentDesign for DevtoolsCRDTJavaScriptLean Software Development
“Design first, then build”: let’s bury this myth forevermore“Design first, then build”: let’s bury this myth forevermoreMarch 10, 2023DesignDeveloper ProductsDesign for DevtoolsOKR-driven product developmentLean Software Development
Real-time magic, no elixirs: optimizing Sera with AnyCableReal-time magic, no elixirs: optimizing Sera with AnyCableMarch 1, 2023InfrastructureReal-timeCase StudyPerformanceOKR-driven product developmentWebSocketgRPCAWS
How to avoid tricky async state manager pitfalls in ReactHow to avoid tricky async state manager pitfalls in ReactFebruary 21, 2023OKR-driven product developmentReactJavaScript
OK, OKLCH: a color picker made to help think perceptivelyOK, OKLCH: a color picker made to help think perceptivelyFebruary 7, 2023Developer ProductsDesignDXDesign for DevtoolsOKR-driven product developmentOKLCHCSS
UI design for HTTPie: macOS vibes for the API testing clientUI design for HTTPie: macOS vibes for the API testing clientJanuary 30, 2023Developer ProductsAIDesignCase StudyOKR-driven product developmentDesign for DevtoolsFigmaAgileElectron
How to build a better React map with Pigeon Maps and MapboxHow to build a better React map with Pigeon Maps and MapboxJanuary 24, 2023DesignDeveloper ProductsOKR-driven product developmentDesign for DevtoolsJavaScriptReactGatsby
Decentralized app design: first aid for common dApp UI painsDecentralized app design: first aid for common dApp UI painsDecember 19, 2022DesignDesign for DevtoolsBlockchainEthereum
Midjourney vs. human illustrators: has AI already won?Midjourney vs. human illustrators: has AI already won?December 13, 2022DesignAIDesign for DevtoolsAI IntegrationNeural Networks
Blend to my will! Fonts on cylinder objects in BlenderBlend to my will! Fonts on cylinder objects in BlenderDecember 5, 2022DesignDesign for DevtoolsOKR-driven product developmentFontsBlender
Realtime text analysis with Word Tagger: recipe reader, part 2Realtime text analysis with Word Tagger: recipe reader, part 2November 22, 2022AIAI IntegrationiOSSwiftComputer Vision
One does not simply design: designers as product ownersOne does not simply design: designers as product ownersNovember 17, 2022DesignDeveloper ProductsDesign for DevtoolsDesign EngineeringLean Software Development
Web Summit 2022: what you missed and how to be ready for next yearWeb Summit 2022: what you missed and how to be ready for next yearNovember 14, 2022Developer CommunityDeveloper ProductsOKR-driven product developmentHiring & Training
ViewComponent in the Wild II: supercharging your componentsViewComponent in the Wild II: supercharging your componentsOctober 18, 2022OKR-driven product developmentRailsRubyCSS
ViewComponent in the Wild I: building modern Rails frontendsViewComponent in the Wild I: building modern Rails frontendsOctober 12, 2022RailsOKR-driven product developmentRuby
RubyKaigi 2022: a report from an Evil Martian in JapanRubyKaigi 2022: a report from an Evil Martian in JapanOctober 3, 2022Developer CommunityOKR-driven product developmentRailsRuby
WebSocket Director: scenario-based integration tests for realtime appsWebSocket Director: scenario-based integration tests for realtime appsSeptember 20, 2022InfrastructureReal-timeDXOKR-driven product developmentWebSocketRailsRuby
The journey from CircleCI to GitHub ActionsThe journey from CircleCI to GitHub ActionsSeptember 15, 2022InfrastructureOKR-driven product developmentCIDockerRails
5 signs your project needs a design system5 signs your project needs a design systemSeptember 8, 2022DesignDeveloper ProductsOKR-driven product developmentDesign for Devtools
Martians unveiled: infusing a new site with extraterrestrial tech and soulMartians unveiled: infusing a new site with extraterrestrial tech and soulSeptember 5, 2022DesignDeveloper ProductsOKR-driven product developmentDesign for DevtoolsFontsOKLCHJamstack
The sword is yours: transferring projects to another team unscathedThe sword is yours: transferring projects to another team unscathedAugust 19, 2022InfrastructureOKR-driven product developmentHiring & Training Google CloudCI
Lefthook: refactoring the Git Hooks automation tool back into shapeLefthook: refactoring the Git Hooks automation tool back into shapeAugust 18, 2022DXOKR-driven product developmentDesign EngineeringGoCIGit
Taking off the Heroku training wheels: the Rails preflight checklistTaking off the Heroku training wheels: the Rails preflight checklistAugust 9, 2022InfrastructureRailsOKR-driven product developmentHerokuRubyAWS
Phone inputs and you: the designer's essential UI guidePhone inputs and you: the designer's essential UI guideAugust 3, 2022DesignDesign for DevtoolsOKR-driven product development
And they lived happily ever after… the M&AAnd they lived happily ever after… the M&AJuly 27, 2022Developer ProductsOKR-driven product developmentLean Software Development
Smartly contracted: UI design and frontend for CertoraSmartly contracted: UI design and frontend for CertoraJuly 21, 2022Developer ProductsDesignSDKs and PluginsOKR-driven product developmentDesign for DevtoolsBlockchainRustSolidity
Down the caching‑hole: adventures in 'HTTP caching and Faraday' landDown the caching‑hole: adventures in 'HTTP caching and Faraday' landJuly 15, 2022PerformanceOKR-driven product developmentPerformance & ScalabilityRailsRuby
The joy of Variable Fonts: getting started on the FrontendThe joy of Variable Fonts: getting started on the FrontendJuly 6, 2022DesignOKR-driven product developmentDesign for DevtoolsFontsCSS
Vite-lizing Rails: get live reload and hot replacement with Vite RubyVite-lizing Rails: get live reload and hot replacement with Vite RubyJune 28, 2022RailsDXOKR-driven product developmentViteWebpackRuby
Collaborative real-time security: Logux for AkeeroCollaborative real-time security: Logux for AkeeroJune 23, 2022Developer ProductsDesignReal-timeOKR-driven product developmentDesign for DevtoolsTypeScriptWebSocketAWS
How to make absolutely any app look like a macOS appHow to make absolutely any app look like a macOS appJune 16, 2022DesignDesign for Devtools
Building FEED: the tech behind the appBuilding FEED: the tech behind the appJune 9, 2022Case StudyDesignAIInfrastructureDesign EngineeringDesign for DevtoolsiOSSwiftML
Figma DIY: Building a color system pluginFigma DIY: Building a color system pluginJune 2, 2022DesignDXDeveloper ProductsSDKs and PluginsDesign for DevtoolsSDKs, Extensions & PluginsFigmaTypeScriptCSS
How to use P3 colors with SVGsHow to use P3 colors with SVGsMay 25, 2022OKR-driven product developmentOKLCHCSS
Soft deletion with PostgreSQL: but with logic on the database!Soft deletion with PostgreSQL: but with logic on the database!May 16, 2022PerformanceOKR-driven product developmentPostgreSQLRailsRuby
eBaymag magic: under the hood of the international eBay spinoffeBaymag magic: under the hood of the international eBay spinoffMay 12, 2022Developer ProductsDesignPerformanceInfrastructureOKR-driven product developmentDesign for DevtoolsGrowth HackingLean Software DevelopmentRails
Realtime text analysis with Word Tagger: pro computer vision, part 1Realtime text analysis with Word Tagger: pro computer vision, part 1April 27, 2022AIAI IntegrationiOSSwiftComputer Vision
A slice of life: table partitioning in PostgreSQL databasesA slice of life: table partitioning in PostgreSQL databasesApril 12, 2022PerformanceRailsOKR-driven product developmentPerformance & ScalabilityPostgreSQLRuby
Variable fonts in real life: how to use and love themVariable fonts in real life: how to use and love themMarch 24, 2022DesignDesign for DevtoolsFonts
Ruby on Whales: Dockerizing Ruby and Rails developmentRuby on Whales: Dockerizing Ruby and Rails developmentMarch 15, 2022PerformanceRailsDXOKR-driven product developmentPerformance & ScalabilityRubyDockerPostgreSQL
Object Detection with Create ML: training and demo appObject Detection with Create ML: training and demo appFebruary 17, 2022AIAI IntegrationiOSTLML
Object Detection with Create ML: images and datasetObject Detection with Create ML: images and datasetFebruary 9, 2022AIAI IntegrationiOSML
Our slice of the metaverse: 7 key AR features for iOS devsOur slice of the metaverse: 7 key AR features for iOS devsJanuary 5, 2022AIAI IntegrationiOSARML
AI and the auteur: using neural networks as artistic toolsAI and the auteur: using neural networks as artistic toolsDecember 21, 2021Developer MarketingAIAI IntegrationMLNeural NetworksPython
Comms Pro: building a social video app for FEEDComms Pro: building a social video app for FEEDDecember 9, 2021Case StudyDesignAIDesign EngineeringOKR-driven product developmentiOSSwiftSwiftUI
Kubing Rails: stressless Kubernetes deployments with KubyKubing Rails: stressless Kubernetes deployments with KubyNovember 30, 2021InfrastructureRailsOKR-driven product developmentKubernetesCIRuby
The Martian Design Sprint: starting and running projects fasterThe Martian Design Sprint: starting and running projects fasterNovember 24, 2021DesignDeveloper ProductsDesign EngineeringDesign for DevtoolsCJMFigma
TimescaleDB: integrating time-series data with Ruby on RailsTimescaleDB: integrating time-series data with Ruby on RailsNovember 16, 2021RailsOKR-driven product developmentTimescaleDBPostgreSQLRuby
A no-go fantasy: writing Go in Ruby with Ruby NextA no-go fantasy: writing Go in Ruby with Ruby NextNovember 9, 2021OKR-driven product developmentGoRuby
What could Go wrong with a mutex, or the Go profiling storyWhat could Go wrong with a mutex, or the Go profiling storyOctober 27, 2021PerformanceOKR-driven product developmentPerformance & ScalabilityGoWebSocketGrafana
Pro becomes smart: imgproxy Pro engages machine learningPro becomes smart: imgproxy Pro engages machine learningOctober 5, 2021Developer ProductsAIOKR-driven product developmentAI IntegrationGoML
The tale of Sprockets and Webpacker dualityThe tale of Sprockets and Webpacker dualitySeptember 13, 2021RailsOKR-driven product developmentRubyWebpackJavaScript
Real-time stress: AnyCable, k6, WebSockets, and YabedaReal-time stress: AnyCable, k6, WebSockets, and YabedaSeptember 7, 2021PerformanceReal-timeOKR-driven product developmentRailsRubyPrometheus
SPA hexagon: Robust app architecture for mobile and webSPA hexagon: Robust app architecture for mobile and webAugust 23, 2021OKR-driven product developmentReact NativeTypeScriptGraphQL
One row, many threads: How to avoid database duplicates in Rails applicationsOne row, many threads: How to avoid database duplicates in Rails applicationsAugust 18, 2021RailsOKR-driven product developmentRubyPostgreSQL
Decoding AVIF: Deep dive with cats and imgproxyDecoding AVIF: Deep dive with cats and imgproxyAugust 13, 2021OKR-driven product development
Introducing JavaScript and TypeScript client for AnyCableIntroducing JavaScript and TypeScript client for AnyCableJuly 28, 2021Real-timeOpen SourceOKR-driven product developmentJavaScriptTypeScriptNode.js
Accessible design from the get-goAccessible design from the get-goJuly 26, 2021DesignDXDesign for DevtoolsOKR-driven product developmentA11yFigmaSketch
Designing Machine Learning for DVC StudioDesigning Machine Learning for DVC StudioJuly 5, 2021Developer ProductsDesignAICase StudyDesign for DevtoolsOKR-driven product developmentReactNext.jsGatsby
Custom "cops" for RuboCop: an emergency service for your Ruby codeCustom "cops" for RuboCop: an emergency service for your Ruby codeJune 22, 2021DXOKR-driven product developmentRubyGraphQLRails
AnyCable Goes Pro: Fast WebSockets for Ruby, at scaleAnyCable Goes Pro: Fast WebSockets for Ruby, at scaleJune 16, 2021Real-timeOpen SourceOKR-driven product developmentWebSocketRubyGo
Premium design: Building a mobile app for LoewePremium design: Building a mobile app for LoeweJune 3, 2021DesignDesign EngineeringOKR-driven product developmentReact NativeiOSAndroid
A broader picture: A guide on imgproxy for businessesA broader picture: A guide on imgproxy for businessesMay 24, 2021Developer ProductsGoAWSDocker
Hotwire: Reactive Rails with no JavaScript?Hotwire: Reactive Rails with no JavaScript?April 12, 2021RailsOKR-driven product developmentHotwireRubyJavaScript
Set up Tailwind CSS JIT in a Rails project to compile styles 20x fasterSet up Tailwind CSS JIT in a Rails project to compile styles 20x fasterApril 6, 2021RailsOKR-driven product developmentPerformance & ScalabilityTailwind CSSWebpackRuby
Build images on GitHub Actions with Docker layer cachingBuild images on GitHub Actions with Docker layer cachingMarch 11, 2021InfrastructureCIDockerKubernetes
Serverless TypeScript: A complete setup for AWS SAM LambdasServerless TypeScript: A complete setup for AWS SAM LambdasFebruary 17, 2021InfrastructureDXOKR-driven product developmentServerlessTypeScriptAWS
Logidze 1.0: Active Record, Postgres, Rails, and time travelLogidze 1.0: Active Record, Postgres, Rails, and time travelJanuary 27, 2021RailsPerformanceOpen SourceOKR-driven product developmentRubyPostgreSQL
Social background: Martians behind eBay Social's techSocial background: Martians behind eBay Social's techJanuary 25, 2021Developer ProductsDesignInfrastructureOKR-driven product developmentDesign for DevtoolsLean Software DevelopmentGrowth HackingRails
Climbing Steep hills, or adopting Ruby 3 types with RBSClimbing Steep hills, or adopting Ruby 3 types with RBSDecember 10, 2020DXOKR-driven product developmentRuby
Reusable development containers with Docker Compose and DipReusable development containers with Docker Compose and DipNovember 17, 2020DXOKR-driven product developmentDockerRubyRails
How to GraphQL with Ruby, Rails, Active Record, and no N+1How to GraphQL with Ruby, Rails, Active Record, and no N+1November 9, 2020RailsOKR-driven product developmentRubyGraphQL
Big refactoring: Fix that app for Fund That FlipBig refactoring: Fix that app for Fund That FlipNovember 4, 2020Developer ProductsCase StudyOKR-driven product developmentHiring & Training RailsCI
Squash N+1 queries early with n_plus_one_control test matchers for Ruby and RailsSquash N+1 queries early with n_plus_one_control test matchers for Ruby and RailsOctober 27, 2020PerformanceRailsOKR-driven product developmentPerformance & ScalabilityRuby
Finding growth: how to hack eBaymag with Growth HackingFinding growth: how to hack eBaymag with Growth HackingOctober 20, 2020Developer ProductsDesignOKR-driven product developmentDesign for DevtoolsGrowth Hacking
Easy multi-language, multi-version documentation with Docsify, Git, and GitHub ActionsEasy multi-language, multi-version documentation with Docsify, Git, and GitHub ActionsOctober 7, 2020Open SourceOKR-driven product developmentGitCIJavaScript
PostCSS 8.0: Plugin migration guidePostCSS 8.0: Plugin migration guideSeptember 14, 2020OKR-driven product developmentPostCSSCSSJavaScript
System of a test II: Robust Rails browser testing with SitePrismSystem of a test II: Robust Rails browser testing with SitePrismAugust 31, 2020RailsOKR-driven product developmentRuby
Cloud Teleport: Building access plugins for GravitationalCloud Teleport: Building access plugins for GravitationalAugust 27, 2020Developer ProductsSDKs and PluginsOpen SourceInfrastructureOKR-driven product developmentGoKubernetesgRPC
Hands-on WebAssembly: Try the basicsHands-on WebAssembly: Try the basicsAugust 25, 2020OKR-driven product developmentWasmRustWebpack
System of a test: Proper browser testing in Ruby on RailsSystem of a test: Proper browser testing in Ruby on RailsJuly 14, 2020RailsOKR-driven product developmentRubyWebpackDocker
Apollo launch: Building a migration architecture for 2UApollo launch: Building a migration architecture for 2UJuly 13, 2020Developer ProductsPerformancePerformance & ScalabilityOKR-driven product developmentGraphQLApolloMicroservices
AnyCable 1.0: Four years of real-time web with Ruby and GoAnyCable 1.0: Four years of real-time web with Ruby and GoJuly 1, 2020InfrastructureOKR-driven product developmentWebSocketRailsGo
Power for Kadenze: More performance, less cloud costsPower for Kadenze: More performance, less cloud costsJune 29, 2020Developer ProductsPerformanceInfrastructurePerformance & ScalabilityOKR-driven product developmentRailsAWSRuby
Figma Auto Layout: Practical tips for dynamic designsFigma Auto Layout: Practical tips for dynamic designsJune 15, 2020DesignDesign for DevtoolsFigmaCSS
Desktop frontier: Video app optimization for LowkeyDesktop frontier: Video app optimization for LowkeyJune 11, 2020Developer ProductsPerformancePerformance & ScalabilityOKR-driven product developmentElectronJavaScript
Keep up with the Tines: Rails frontend revampKeep up with the Tines: Rails frontend revampJune 3, 2020DesignPerformanceDeveloper ProductsCase StudyRailsOpen SourceDesign for DevtoolsOKR-driven product developmentRubyReactMobX
Product design that sells: the smart UX for TinesProduct design that sells: the smart UX for TinesMay 26, 2020Developer ProductsDesignPerformanceCase StudyDesign for DevtoolsDesign EngineeringReactMobXGraphQL
Catch a batch: Making Mayhem 5 times more responsiveCatch a batch: Making Mayhem 5 times more responsiveMay 11, 2020Developer ProductsPerformanceRailsCase StudyPerformance & ScalabilityOKR-driven product development
Ruby Next: Make all Rubies quack alikeRuby Next: Make all Rubies quack alikeMay 4, 2020Open SourceDXOKR-driven product developmentRuby
Anyway Config: Keep your Ruby configuration saneAnyway Config: Keep your Ruby configuration saneApril 14, 2020RailsOpen SourceDXOKR-driven product developmentRubyHerokuAWS
PostCSS 8.0 is coming: Here's what it bringsPostCSS 8.0 is coming: Here's what it bringsApril 6, 2020OKR-driven product developmentPostCSSJavaScriptTailwind CSS
Beyond fashion: Deep Learning with CatalystBeyond fashion: Deep Learning with CatalystMarch 2, 2020AIAI IntegrationDeep LearningCatalystPython
What I learned as a developer from accidents in spaceWhat I learned as a developer from accidents in spaceJanuary 21, 2020Developer MarketingOKR-driven product development
New home for Logux: Pouring love into an OSS documentation websiteNew home for Logux: Pouring love into an OSS documentation websiteDecember 18, 2019PerformanceDesignOKR-driven product developmentPerformance & ScalabilityCSSPostCSSJavaScript
Pulling the trigger: How to update counter caches in your Rails app without Active Record callbacksPulling the trigger: How to update counter caches in your Rails app without Active Record callbacksNovember 19, 2019PerformanceOKR-driven product developmentPerformance & ScalabilityRailsPostgreSQLElasticsearch
Persisted queries in GraphQL: Slim down Apollo requests to your Ruby applicationPersisted queries in GraphQL: Slim down Apollo requests to your Ruby applicationNovember 5, 2019OKR-driven product developmentRailsGraphQLApollo
Images done right: Web graphics, good to the last byteImages done right: Web graphics, good to the last byteOctober 7, 2019PerformanceOKR-driven product developmentPerformance & ScalabilityCSSSketch
GitHub Actions: First impressionsGitHub Actions: First impressionsSeptember 4, 2019Open SourcePerformanceOKR-driven product developmentPerformance & ScalabilityCIJRuby
Keeping OSS documentation in check with docsify, Lefthook, and friendsKeeping OSS documentation in check with docsify, Lefthook, and friendsAugust 28, 2019Open SourceOKR-driven product developmentCIReactGo
Fullstaq Ruby: First impressions, and how to migrate your Docker/Kubernetes Ruby apps todayFullstaq Ruby: First impressions, and how to migrate your Docker/Kubernetes Ruby apps todayAugust 10, 2019InfrastructurePerformanceOKR-driven product developmentPerformance & ScalabilityRubyDockerKubernetes
Speeding up Go Modules for Docker and CISpeeding up Go Modules for Docker and CIAugust 5, 2019PerformanceOKR-driven product developmentGoCIDocker
Lefthook: knock your team’s code back into shapeLefthook: knock your team’s code back into shapeJuly 30, 2019PerformanceOKR-driven product developmentPerformance & ScalabilityCIGoJavaScript
Reporting non-nullable violations in graphql-ruby properlyReporting non-nullable violations in graphql-ruby properlyJuly 19, 2019OKR-driven product developmentRubyGraphQLRails
GraphQL on Rails: On the way to perfectionGraphQL on Rails: On the way to perfectionJuly 16, 2019OKR-driven product developmentRailsGraphQLApollo
Lefthook, Crystalball, and git magic for smooth development experienceLefthook, Crystalball, and git magic for smooth development experienceJuly 10, 2019OKR-driven product developmentGitCIGo
Asynchronous adventures: Aborting queries and mutations in react-apolloAsynchronous adventures: Aborting queries and mutations in react-apolloJuly 9, 2019OKR-driven product developmentReactApolloGraphQL
Danger on Rails: make robots do some code review for you!Danger on Rails: make robots do some code review for you!July 2, 2019PerformanceOKR-driven product developmentPerformance & ScalabilityRubyRailsCI
Sorbetting a gem, or the story of the first adoptionSorbetting a gem, or the story of the first adoptionJune 24, 2019OKR-driven product developmentRuby
GraphQL on Rails: Updating the dataGraphQL on Rails: Updating the dataJune 19, 2019OKR-driven product developmentRailsGraphQLApollo
Normalization, consistency, and ClowneNormalization, consistency, and ClowneJune 10, 2019OKR-driven product developmentRailsRubyPostgreSQL
GraphQL on Rails: From zero to the first queryGraphQL on Rails: From zero to the first queryJune 4, 2019OKR-driven product developmentRailsGraphQLApollo
A fixture-based approach to interface testing in RailsA fixture-based approach to interface testing in RailsMay 27, 2019OKR-driven product developmentRailsRubyGraphQL
Exposing permissions in GraphQL APIs with Action PolicyExposing permissions in GraphQL APIs with Action PolicyMay 21, 2019OKR-driven product developmentRailsRubyGraphQL
RubyKaigi 2019: A speaker’s reportRubyKaigi 2019: A speaker’s reportMay 14, 2019Developer CommunityOKR-driven product developmentRubymRubyRails
Rails 6: B-Sides and RaritiesRails 6: B-Sides and RaritiesApril 29, 2019RailsOKR-driven product developmentRubyWebSocketJavaScript
Active Storage meets GraphQL pt. 2: exposing attachment URLsActive Storage meets GraphQL pt. 2: exposing attachment URLsApril 23, 2019OKR-driven product developmentRailsRubyGraphQL
Storeon: "Redux" in 173 bytesStoreon: "Redux" in 173 bytesApril 22, 2019OKR-driven product developmentJavaScriptReduxReact
Try Astrograph: Your GraphQL lens for Stellar blockchainTry Astrograph: Your GraphQL lens for Stellar blockchainApril 9, 2019OKR-driven product developmentStellarBlockchainGraphQL
Faster WebGL/Three.js 3D graphics with OffscreenCanvas and Web WorkersFaster WebGL/Three.js 3D graphics with OffscreenCanvas and Web WorkersApril 2, 2019PerformanceOKR-driven product developmentPerformance & ScalabilityWebGLJavaScript
Active Storage meets GraphQL: Direct UploadsActive Storage meets GraphQL: Direct UploadsApril 2, 2019OKR-driven product developmentRailsRubyGraphQL
Cables vs. malloc_trim, or yet another Ruby memory usage benchmarkCables vs. malloc_trim, or yet another Ruby memory usage benchmarkMarch 19, 2019PerformanceOKR-driven product developmentPerformance & ScalabilityWebSocketRailsRuby
Wrapping JSON-based ActiveRecord attributes with classesWrapping JSON-based ActiveRecord attributes with classesFebruary 26, 2019OKR-driven product developmentRailsRubyPostgreSQL
Carve your controllers like Papa CarloCarve your controllers like Papa CarloFebruary 12, 2019OKR-driven product developmentRailsRubyGraphQL
Rails profiling story, or how I caught Faker trying to teach my app Australian SlangRails profiling story, or how I caught Faker trying to teach my app Australian SlangFebruary 12, 2019OKR-driven product developmentRailsRuby
CSS and JS are at war, here’s how to stop itCSS and JS are at war, here’s how to stop itJanuary 29, 2019OKR-driven product developmentCSSJavaScriptA11y
Anonymous web authentication with Stellar blockchainAnonymous web authentication with Stellar blockchainJanuary 29, 2019OKR-driven product developmentStellarBlockchainCryptography
Crafting user notifications in Rails with Active DeliveryCrafting user notifications in Rails with Active DeliveryJanuary 15, 2019OKR-driven product developmentRubyRails
My Ruby 2018: Around the world in nine conferencesMy Ruby 2018: Around the world in nine conferencesJanuary 7, 2019Developer CommunityOKR-driven product developmentRubyRailsGraphQL
Big on Heroku: Scaling Fountain without losing a dropBig on Heroku: Scaling Fountain without losing a dropDecember 4, 2018Developer ProductsPerformanceInfrastructureOKR-driven product developmentPerformance & ScalabilityRailsHerokuPostgreSQL
Errors in Go: From denial to acceptanceErrors in Go: From denial to acceptanceNovember 26, 2018OKR-driven product developmentGo
Five years of PostCSS: State of the UnionFive years of PostCSS: State of the UnionNovember 5, 2018OKR-driven product developmentPostCSSCSSJavaScript
How a month without computers changed meHow a month without computers changed meOctober 31, 2018Developer Marketing
Meet Yabeda: A Ruby instrumentation frameworkMeet Yabeda: A Ruby instrumentation frameworkOctober 22, 2018InfrastructureOKR-driven product developmentRubyRailsPrometheus
Learning how to learn deep learningLearning how to learn deep learningSeptember 27, 2018AIAI IntegrationDeep LearningComputer VisionNeural Networks
Lean by design: 5 wins for one productLean by design: 5 wins for one productAugust 1, 2018Developer ProductsDesignOKR-driven product developmentDesign for DevtoolsLean Software DevelopmentAgileGoogle Analytics
The silence of the Ruby exceptions: a Rails/PostgreSQL database transaction thrillerThe silence of the Ruby exceptions: a Rails/PostgreSQL database transaction thrillerJuly 24, 2018PerformanceOKR-driven product developmentPerformance & ScalabilityRailsRubyPostgreSQL
Painless migration of existing Helm’s Tiller setup to Kubernetes SecretsPainless migration of existing Helm’s Tiller setup to Kubernetes SecretsJuly 4, 2018InfrastructureKubernetesHelm
Level up for UX: Design lessons from video gamesLevel up for UX: Design lessons from video gamesJune 28, 2018DesignDesign for Devtools
Living in sin (with Spring)Living in sin (with Spring)June 19, 2018OKR-driven product developmentRailsRuby
Stick with security: YubiKey, SSH, GnuPG, macOSStick with security: YubiKey, SSH, GnuPG, macOSJune 11, 2018Infrastructure
Is React Native podium-ready?Is React Native podium-ready?May 14, 2018Developer ProductsPerformanceOKR-driven product developmentPerformance & ScalabilityReact NativeiOSAndroid
Deploying Ruby apps to Google Cloud Kubernetes Engine continuously with CircleCIDeploying Ruby apps to Google Cloud Kubernetes Engine continuously with CircleCIMay 1, 2018InfrastructureOKR-driven product developmentRailsGoogle CloudKubernetes
Scroll to the futureScroll to the futureApril 12, 2018DesignOKR-driven product developmentDesign for DevtoolsCSSJavaScriptiOS
Optimizing React: Virtual DOM explainedOptimizing React: Virtual DOM explainedMarch 28, 2018PerformanceOKR-driven product developmentPerformance & ScalabilityReactReduxJavaScript
Clowne: Clone Ruby models with a smileClowne: Clone Ruby models with a smileFebruary 27, 2018OKR-driven product developmentRubyRails
Rails’ after_commit everywhereRails’ after_commit everywhereFebruary 21, 2018OKR-driven product developmentRailsRubyPostgreSQL
Rails 5.2: Active Storage and beyondRails 5.2: Active Storage and beyondJanuary 31, 2018OKR-driven product developmentRailsRuby
Evil Front Part 3: Modern Frontend in RailsEvil Front Part 3: Modern Frontend in RailsDecember 20, 2017OKR-driven product developmentRailsWebpackJavaScript
Evil Front Part 2: Modern Frontend in RailsEvil Front Part 2: Modern Frontend in RailsDecember 12, 2017OKR-driven product developmentRailsWebpackPostCSS
Evil Front Part 1: Modern Frontend in RailsEvil Front Part 1: Modern Frontend in RailsDecember 5, 2017OKR-driven product developmentRailsWebpackPostCSS
Zero downtime rebrandingZero downtime rebrandingNovember 27, 2017InfrastructureDeveloper ProductsOKR-driven product developmentHerokuRailsRuby
Spend less on Google TranslateSpend less on Google TranslateNovember 20, 2017PerformanceOKR-driven product developmentPerformance & ScalabilityRuby
Embracing metrics as new testsEmbracing metrics as new testsNovember 13, 2017InfrastructureOKR-driven product developmentPrometheusGrafanaRuby
Partition and conquerPartition and conquerNovember 7, 2017PerformanceOKR-driven product developmentPerformance & ScalabilityPostgreSQLRailsRuby
imgproxy: Resize your images instantly and securelyimgproxy: Resize your images instantly and securelySeptember 26, 2017Developer ProductsOKR-driven product developmentGoDockerHeroku
Size Limit: Make the Web lighterSize Limit: Make the Web lighterSeptember 5, 2017PerformanceOKR-driven product developmentPerformance & ScalabilityJavaScriptNode.jsCI
Factories or fixtures? Give me both!Factories or fixtures? Give me both!August 21, 2017OKR-driven product developmentRubyRails
Introducing Overmind and HivemindIntroducing Overmind and HivemindAugust 7, 2017OKR-driven product developmentGo
Fighting the Hydra of N+1 queriesFighting the Hydra of N+1 queriesMay 16, 2017PerformanceOKR-driven product developmentPerformance & ScalabilityRailsRubyPostgreSQL
Autoprefixer 7.0 and Browserslist 2.0Autoprefixer 7.0 and Browserslist 2.0May 6, 2017OKR-driven product developmentPostCSSJavaScriptWebpack
Open Source Software. What is in a poke?Open Source Software. What is in a poke?January 26, 2017Developer ProductsOKR-driven product developmentRubyRails
AnyCable: Action Cable on steroidsAnyCable: Action Cable on steroidsDecember 20, 2016PerformanceOKR-driven product developmentPerformance & ScalabilityWebSocketRubyRails
Handling errors in a non-geek interfaceHandling errors in a non-geek interfaceOctober 31, 2016DesignDesign for Devtools
Frontend Challenge Accepted: CSS 3D CubeFrontend Challenge Accepted: CSS 3D CubeSeptember 6, 2016OKR-driven product developmentCSSJavaScript
Logidze: for all those tired of versioning dataLogidze: for all those tired of versioning dataJune 28, 2016OKR-driven product developmentRailsRubyPostgreSQL
Compo: UI components in SketchCompo: UI components in SketchMay 12, 2016DesignDXDeveloper ProductsDesign for DevtoolsSketch
PostgreSQL and Rails, sitting in a treePostgreSQL and Rails, sitting in a treeMarch 9, 2016RailsPerformanceOKR-driven product developmentPostgreSQLRuby
PostCSS-modules: Isolate ’em all!PostCSS-modules: Isolate ’em all!March 3, 2016OKR-driven product developmentPostCSSCSSJavaScript
An invitation system using URL Schemes and Universal LinksAn invitation system using URL Schemes and Universal LinksFebruary 8, 2016iOSSwift
Bootstrap: an interventionBootstrap: an interventionJanuary 19, 2016DesignOKR-driven product developmentDesign for DevtoolsCSSJavaScript
5 tips for dealing with heavy ActiveRecord dashboards in Rails5 tips for dealing with heavy ActiveRecord dashboards in RailsJanuary 12, 2016PerformanceOKR-driven product developmentPerformance & ScalabilityRailsPostgreSQLRuby
How Ruby 2.2 can cause an out-of-memory server crashHow Ruby 2.2 can cause an out-of-memory server crashDecember 24, 2015PerformanceOKR-driven product developmentPerformance & ScalabilityRuby
PostCSS becomes 1.5x fasterPostCSS becomes 1.5x fasterNovember 10, 2015PerformanceOKR-driven product developmentPerformance & ScalabilityPostCSSJavaScriptNode.js
Making a custom logger for Rails query optimizationMaking a custom logger for Rails query optimizationOctober 20, 2015PerformanceOKR-driven product developmentPerformance & ScalabilityRailsRuby
PostCSS Second BirthdayPostCSS Second BirthdaySeptember 7, 2015OKR-driven product developmentPostCSSCSSJavaScript
State Machine: The State SwitcherState Machine: The State SwitcherAugust 6, 2015DesignDXDeveloper ProductsDesign for DevtoolsSketch
New feature in Rails 5: Render views outside of actionsNew feature in Rails 5: Render views outside of actionsJuly 7, 2015OKR-driven product developmentRailsRuby
RailsConf 2015 Recap and ThoughtsRailsConf 2015 Recap and ThoughtsApril 25, 2015Developer CommunityOKR-driven product developmentRailsRubyRust
An annoying Capistrano, Unicorn and Bundler issueAn annoying Capistrano, Unicorn and Bundler issueMarch 22, 2015InfrastructureOKR-driven product developmentRailsRubyZabbix
Irina Nazarova CEO at Evil MartiansEvil Martians transform growth-stage startups into unicorns, build developer tools, and create open source products. Hire us to design and build your productSchedule callSend email instead