Double Shot #2304
- Technical Debt is like Tetris - If you let too much pile up, you'll lose the game.
- Taming the Rate of Change - What might it take to improve stability without sacrificing speed?
- MicroServices - Check Size Before Ordering - If you're not having coordination problems, microservices might be a really bad idea.
- Firefox Send - Simple file sharing with automatic encryption and time-limited links. Here's the announcement. The source is available too. And there's also a third-party command-line client out there.
- Sublime Text 3.2 - Now with pretty solid built-in git integration.
- How testing processes should change when you shift left - Testing early and often is a big piece of delivering value quickly & continuously.
- Add It Up: C-suite Doesn’t Have a Clue About App Dev - All too often true.
- Give Me Back My Monolith - We're starting to see some more skeptical takes on microservices now.
- Putting AWS security services to work for you - Security is hard, but if you're on AWS you're probably not using all the available tools.
- Dumbass Home 2.0 - A deep dive into the craptacular mess that is home automation. Personally, I say it's spinach and I say the hell with it, but this is a pretty good survey of possibilities and pitfalls.
- Making the Most of Your First Three Months as a New Manager - Some things to take advantage of in your honeymoon period.
Double Shot #2303
- How to make your organization attractive to engineering talent - Hint: it's not about foosball or the possibility of "disruption."
- How did we get to service meshes? - A look at what drives the service mesh architecture to handle crosscutting concerns in microservices.
- Deprecation Notice: MIT and BSD - Argument that we need a better permissive open source license, from one of the authors of the Blue Oak Model License.
- How NOT to hire a software engineer - It's amazing how many bad patterns persist in our industry. I just went through another round of this myself. One tiny data point: out of 25 companies, 11 couldn't even be arsed to acknowledge applications, not even with an autoresponder.
- Introducing Engineering Management to a Growing Organization - It's not just gonna grow by itself. At least, not well.
- An Intro to zsh-utils - A minimalist framework for zsh configuration.
- Kardashians of Code: The Perfect Life of Pull Request Influencers - "git rebase is the Photoshop for pull requests."
- Ruby 2.6.2 Released - Bug fixes and security updates, you know the drill.
- Roll Your Own Analytics - You don't need Google to track what visitors to your site are doing.
- What's Next for Coda? - Panic offers a sneak peek at their plans for the next version of this web editor.
- Announcing Linaria 1.0 - A zero-runtime CSS in JS solution.
Double Shot #2302
- Hindsight - Lessons from ten years of bootstrapping a SAAS application.
- git curate - Tool to help clean up local repo branches.
- Goodbye Docker and Thanks for all the Fish - In a world of competing container runtimes, "All the cool kids on the block are no longer using docker as the underlying runtime."
- NGINX to Join F5: Proud to Finish One Chapter and Excited to Start the Next - Half a billion dollar plus exit for an open source project, not bad.
- How to Create a Feedback Culture - A set of ideas on how to encourage more internal communication in organizations.
- Inclusive Design Principles - Start of a series from Microsoft. Check out their downloadable resources too.
- Open Source needs Open Source companies. - A skeptical reaction to Amazon's announcment of their own ElasticSearch distribution.
- The Cost of Bad Software Architecture - Dollars and cents.
- graphql2chartjs - From GraphQL API to ChartJS chart in one easy step.
- What causes Ruby memory bloat? - Hongli Lai dug in and has some theories worth testing.
- 20 Patterns to Watch for in Your Engineering Team - Downloadable ebook for managers from GitPrime.
Double Shot #2301
This is my first day as the Lead Architect at Beterra Health. Thanks to everyone who helped with my job search in any way. Beterra is very supportive of learning and sharing, so there shouldn't be any impact on my ability to continue sharing interesting development-related links every weekday.
- If Marcus Aurelius were a software developer - Applying the lessons of stoicism to our daily development lives.
- ArchiveBox - "The open-source self-hosted web archive." Protect yourself from bitrot by saving everything locally.
- Why deadlines and sprints are bad for you - An argument for Kanban over Scrum, based on personal and project health.
- Unicode::X 12 - A collection of Unicode support libraries for Ruby.
- Quick take on Hasura: a daemon for GraphQL on Postgres - RedMonk points to some interesting software.
- Welcome to Season of Docs - This year Google is sponsoring technical writers to work on open source docs. Nice.
- Getting Toasty: Observations on Burnout - Burnout sucks, it's real, and this industry encourages it.
- radicle - Decentralized collaborative coding via IPFS and a customized Lisp dialect.
- Restricted Shells: Sometimes Persuasive But Usually Fallacious - Security theater, anyone?
- Iodide: an experimental tool for scientific communication and exploration on the web - Some fascinating in-browser living document work from Mozilla.
- Understanding the Stellar Consensus Protocol - A dive into the procedures that underlie the Stellar payment network.
Double Shot #2300
- EditorConfig - A tool to help maintain consistent coding styles even if your team is using diverse editors & IDEs.
- @pika/web - Another approach to handling NPM dependencies in your web code.
- Deno - "A browser-like command line runtime" to provide a different way to think about scripting.
- You Should Not Ignore the Mastodon Social Network Any More - There are over 2 million Mastodon users now.
- Vulcanizer: a library for operating Elasticsearch - Code from GitHub to operate a cluster (as opposed to querying it).
- 15 lessons from our first $15 million - Courtesy of ConvertKit. My favorite: "You don’t have to be an asshole to build a successful company."
- chunkwm - A tiling window manager for MacOS.
- Chief Diversity Officers Are Set Up To Fail - So says Fortune, summarizing a research report. Seems like one of those areas that should be everyone's business, not delegated to a single person to drive.
- "Oh What a Strange Month it has Been" - Another dismal story about diversity from the high-tech trenches.
- Growth, but at what cost? - Sometimes it's at a cost that no sensible organization would pay.
- Quality of Code is Quality of Life - You're writing code for other people to maintain. Keep that in mind.
- Chrome as a service for Rails testing - Replacing capybara-webkit.
Double Shot #2299
- Best Deep Learning Books: Updated for 2019 - Looks like a useful place to start digging in.
- UI redesigns are mostly a waste of time - An argument that change is usually bad.
- Your migrations are bad, and you should feel bad - A fresh look at how to handle database schema diffs.
- How to build a technology platform - Teasing apart the distinction between platforms & products.
- Our books are now free - A fresh giveaway from Thoughtbot.
- How to evolve an engineering organization. - An algorithm for making changes in a deliberate fashion.
- Dockup - "On demand staging environments for engineering teams" that spin up every time you submit a pull request.
- Coder - An "open source remote development environment serving Visual Studio Code." Host it yourself or use theirs.
- Microservices, Containers and Kubernetes in 10 minutes - A quick introduction to some key concepts.
- yeetgif - A CLI to allow composing ever more annoying gifs for use as Slack emojis.
- How transparent should you be as a leader? - Transparency needs careful thought. But whatever you do, don't lie about being transparent. We'll know.
- The Feedback Fallacy - HBR suggests that feedback as commonly practiced at work isn't a great way to help people excel.
Double Shot #2298
- Why You Should Apply To Engineering Jobs You Aren't Qualified For - "Less experienced" doesn't mean "under-qualified."
- Harness - Continuous delivery as a service.
- Google Stackdriver - Monitoring and alerting framework that works across multiple clouds & services.
- Running a Gopher Server in 2018 - Internetting like it's 1999.
- Write for Us! - Somehow I didn't even know that No Starch Press was still around, let alone that they were looking for authors.
- Sourcehut's spartan approach to web design - Good reasons for Brutalist design vibes.
- Quke - A "gem that helps you to build a suite of Cucumber acceptance tests" by automating a lot of the fiddly setup stuff.
- Introducing Kraken, an Open Source Peer-to-Peer Docker Registry - A tool to manage Docker images at Uber scale.
- Announcing the Open Sourcing of Windows Calculator - Microsoft's sneaky plans to get free crowdsourced improvements.
- Deploying ML Models for Ruby applications - A worked example.
- Navigating the Leap from Big Tech to Startups — Advice from a Former Google and Flipkart Exec - Aimed at potential founders who are more used to operating at scale.
- Ctrl-Alt-Delete: The Planned Obsolescence of Old Coders - There ain't a lot of us still working in our 50s and 60s and beyond.
Double Shot #2297
- On Helping Junior Developers: Communication Styles and Why Juniors Should Pick Their Own Mentors - Not every senior developer is an effective communicator.
- Team Guide to Software Operability - Coming LeanPub book, aimed at helping teams effectively operate the software they build.
- RunCat - Track your CPU usage by putting a cat in your menu bar. It works.
- Python Data Science Handbook - An O'Reilly book in the form of free Jupyter notebooks.
- Serverless collaboration - Collaborative text editing via WebRTC and CRDTs.
- De-google-ify Internet - Tools and strategies for avoiding Google (and other giant companies).
- htrace.sh - Shell script to help with a variety of HTTP(S) troubleshooting tasks.
- Best of Machine Learning - Pointers to a variety of resources.
- Why do remote meetings suck so much? - An argument that remote technology exacerbates pre-existing issues with imbalanced meetings.
- SpriteStack - A "3D pixelart editor based on sprite stacking technique."
- Handling Hierarchical Data Structures in SQL Server - Or any other database with CTE support.
- Transposit - Fresh glue for composing applications out of disparate APIs.
Double Shot #2296
- Camille Fournier on Scaling, Structure, and Growing as an Engineering Manager - Part of GitPrime's "Perspectives in Engineering" series.
- How I'm still not using GUIs in 2019: A guide to the terminal - I respect people who manage everything from the shell prompt. I'm just not one of them.
- Full-stack developers are in fact stuck at mid-level. Spare yourself from suffering – don’t go down that path - The more we dump into the role, the more skeptical I become of "full-stack." Still pretty necessary in small teams though.
- Yes We Can! Distributed ACID Transactions with High Performance - Bear in mind that this comes from a distributed database vendor, but it's still very interesting.
- You Don’t Need All That Complex/Expensive/Distracting Infrastructure - Another installment of "you are not Google."
- Create your own React-Rails v4 project configured for amazing performance with code splitting, lazy loading, route bundling, and hot loaded stylesheets - What, no pony? Nice walkthrough though.
- PCjs Machines - PC-compatible images and old software that runs in your browser. Get back to the good old days of DONKEY.BAS.
- Why everyone should read support emails - Because they're a great source of insight into how the company is doing.
- My DevOps Reading List - A very solid list, with reviews.
- Threat Modeling: 12 Available Methods - Good overview of a key activity that gets surprisingly little attention in young companies.
- Ruby For Good - A conference/get-together "dedicated to making the world gooder."
- ES5 to ESNext — here’s every feature added to JavaScript since 2015 - Just in case you haven't been paying attention.
Double Shot #2295
- Don’t lead by example - The trap tech leads fall into by trying to do everything.
- 7 Examples of What Being an Ally at Work Really Looks Like - "Ally" has just exploded in my feeds over the past year. Here are some of the things that it can mean.
- Now — Global Serverless Deployments - A serverless hosting platform that aims to make the deployment experience "just push to a monorepo."
- Cloudflare’s RPKI Toolkit - I hope to never need this level of core infrastructure tool but it's still fun to read about.
- Sail 3.0.0 - "This Rails engine brings a setting model into your app to be used as feature flags, gauges, knobs and other live controls you may need."
- This Startup Does Not Exist - Random generator that is pretty indistinguishable from stuff that gets angel funding.
- Top ten most popular docker images each contain at least 30 vulnerabilities - Not a surprise to anyone in the security space, but a hugely-ignored problem in the industry.
- It’s probably never going to work in German - Localization and Internationalization: still hard.
- 6 not so obvious things about Elasticsearch - A few things that might save you time if you're starting down the ES path.
- Mailocal - Local SMTP server with web UI for testing your code's emails.
- Trending Projects - The latest new feature for the Ruby Toolbox.
- gitq - Easy git log searching via plain text like "gitq by Alice with fixes padding for login button."
Double Shot #2294
- Senior Engineering and Building a Better World - It is not, in fact, all about the code.
- How to Make Other Developers Hate to Work with You - Here, have some antipatterns. And after you get done patting yourself on the back, read it again and reflect on whether you might actually have room for improvement.
- Building Git - Ebook with a deep, deep dive into git internals.
- My Twitch Live Coding Setup - The notion of live coding just perplexes me, but if you want to try it this post from Suz Hinton looks likely to save you a lot of pain.
- Experiments, growth engineering, and exposing company secrets through your API: Part 1 - A/B testing is probably good. Leaking things through private routes is probably less so.
- Rails 6.0.0 beta2 released - Still on track for a release soon.
- Tips for a disciplined git workflow - Some good tips on upping your git game, though I personally have no patience for being dogmatic about 72-character lines (though I understand that is an important limit with some toolchains and projects).
- Zero Server - "Build your application without worrying about package management or routing. Write your code in a mix of Node.js, React, HTML, MDX, and static files and put them all in a folder."
- Killing Kubernetes - Yup, it's about time for some Kubernetes backlash. "The real goal is shipping product to your customers."
- What you need to know before you join a start-up - Those options are probably not going to make you rich. Or even pay for a decent car. There are other upsides, but that's not one of them.
- dry.io - "Democratizing software with AI that codes," this claims a 100x speedup. Currently taking signups.
- dockcross - A big pile of cross-compiling toolchains in handy Docker images.
Double Shot #2293
- What I learned from Google and Lyft to scale our engineering culture at Canva - Some thoughts on a structured process for scaling up past your first few dozen engineers.
- play.js - "The Node.js and React Native IDE for iPhone and iPad"
- Four Startup Engineering Killers - Oh man do I recognize some of these. Especially the tendency of engineers to focus on shiny & perfect rather than what the business needs.
- awesome-lite-websites - Get some of your news & socializing without the bloat.
- Rails Trace - "This shows every one of the 2041 Ruby method calls made by a Rails 5.2.2 server running in production mode while it responded to a HTTP request." There are many days when I'm amazed this stuff works at all.
- Getting (re)Started - Start of a series of blog posts on building a live git repo viewer. Pretty cool.
- Progressive Delivery at Sumo Logic - More on rolling out things to a subset of customers, as opposed to a big release.
- Misconception about OSS support - If your production depends on random open source code, you're doing it wrong.
- Really cheap Kubernetes cluster on AWS with kubeadm - Bash plus Terraform to give you some cheap experimentation possibilities.
- GrapesJS - "GrapesJS is an open-source, multi-purpose, Web Builder Framework which combines different tools and features with the goal to help you (or users of your application) to build HTML templates without any knowledge of coding."
- The hard part in becoming a command line wizard - Not surprisingly, learning things is the hard part.
- fx - A command-line JSON processing tool. Bash completion is also available.
Double Shot #2292
- Debugging Sidekiq Poison Pills - When your job queues bloat to 1000x normal, there's usually something wrong.
- Zeitwerk integration in Rails 6 (Beta 2) - The new autoloader is going live, and require_dependency should be a thing of the past.
- 3 Impactful Ways to Improve Your Onboarding Process — That Don't Take That Much Time - I've worked too many jobs where onboarding was "fill out your W2, now fix this JIRA ticket." Let's don't do that.
- 30 Seconds of Knowledge - Chrome extension to give you a learning code snippet on every new tab.
- Workism Is Making Americans Miserable and Wealthy, Successful, and Miserable - I don't think VC-backed internet companies are the only reason people are miserable, but they certainly helped.
- Messages on Rails Part 1 - Introduction to Kafka and RabbitMQ - Why you might want messaging infrastructure.
- Alternatives to JSX - You can write React code without JSX if you want to.
- Serverless Functions In Depth - Digging into AWS Amptify.
- Community builds of Visual Studio Code - Unofficial builds for Chromebooks, Raspberry Pi, and other less-mainstream systems.
- rack-queries - "A page in your rack-based application that allows quick execution of pre-built queries." A no-frills way to add some admin chunks.
- Frontend Bootcamp / Days in the Web - Who would have ever thought we'd see an open source web technologies tutorial from Microsoft?
- What is Dark? - "Dark is a holistic programming language, structured editor, and infrastructure, for building backend web services." Claims it will make things 100x easier, but not released yet.
Double Shot #2291
- Best practices writing a Dockerfile - From Bitnami, where they've done this more than a few times.
- Monitoring ECS with Datadog - Datadog continues to do an excellent job of providing guidance on what to monitor.
- Serializability vs “Strict” Serializability: The Dirty Secret of Database Isolation Levels - A look at isolation levels in distributed databases (from a vendor of one).
- Pulumi - "Cloud Native Infrastructure as Code" using your preferred language and cloud.
- Exploiting Regular Expressions - How to use exponential backtracking to bring the computer to its knees.
- VULTR - High-perf cloud servers that include root access and even the ability to launch from your own ISO.
- Is Shared Database in Microservices actually anti-pattern? - I think there is room for hybrid patterns here.
- Portal Spaces - VR conferencing tool. It had to happen.
- RailsPDF - Create PDFs from Rails views, ultimately using headless Chromium for rendering.
- Gremlin - Chaos engineering as a service, with a free plan to get you started.
- Fixing cron jobs in Mojave - How to fix things that the latest round of "you don't own your computer" broke.
- OperatorHub.io - A "new home for the Kubernetes community to share Operators."
Double Shot #2290
- Using CSS Grid the right way - Some tips on getting value without a grid system.
- Towards an understanding of technical debt - Teasing apart the variety of meanings we wrap up in that phrase.
- Talk, then code - "Talk about what you want to code, then code what you talked about. Please don’t do it the other way around."
- Lessons from 6 software rewrite stories - There are choices besides limping along and starting over.
- Conveyor - "Git client + hosted version control service under the cover of an advanced task management system."
- AWS Firecracker: 10 things every tech pro should know - A quick intro to this new VM product from AWS.
- Awesome Falsehood - "A curated list of awesome falsehoods programmers believe in."
- COI - Chat Over IMAP - Interesting idea, though I'm skeptical of their "change the world" assertion.
Double Shot #2289
Yep, I'm job-hunting. A few details about what I can bring to the table. Contact info there too. Hit me up if you'd like to see a resume.
- On being an Engineering Manager - It's OK to try it and then move back to a technical position instead of a people one.
- Continuous Integration – What Is It And How Can You Achieve It? - A quick overview that might be useful with people who've never seen the concept.
- What’s Wrong With Microservice Dev? - A sales pitch from the makers of Tilt.
- A Minimalist Guide to FoundationDB - Getting started with this distributed database.
- Rosetta Code - " The idea is to present solutions to the same task in as many different languages as possible."
- Block ads in apps on Android (including video ads) - More important than ever.
- Build and Deploy Serverless Apps with Next.js 8 and Zeit Now - A quick start for serverless Next.js + GraphQL hosting.
- simdjson - The "first fully-validating JSON parser to run at gigabytes per second on commodity processors."
Double Shot #2288
- You probably don’t need a single-page application - But you'll probably build one anyhow.
- Versionaire - Rubygem that provides "immutable, thread-safe, semantic versioning."
- Introducing Percy’s free plan - Percy is now offering 5000 snapshots for visual comparison testing per month for free.
- BlazingSQL — The GPU SQL Engine now runs over 20X Faster than Apache Spark! - Specialized, but interesting.
- Build Your Own Text Editor - Learn by doing, in straight C.
- Writing CSS Algorithms - A structured process for producting predictable CSS.
- Debugging Rails Mails with Mailhog -Using this email debugging tool to improve your Rails code.
- New Release: OnionShare 2 - Tool to anonymously send and receive files via the Tor network.
Double Shot #2287
- Tech Office Sketches - Random notes on physical and virtual coding infrastructure from Tim Bray. Plenty of observations here that resonate with me.
- The log/event processing pipeline you can't have - Logs are a big deal that still get ignored until it's too late in many places.
- Mockoon - Electron-based API mocking tool.
- The Fragile Manifesto - "Agile" is increasingly an abused term, thanks to cargo-culting on the one hand and the agile-industrial complex on the other.
- Why developers consider Agile development to be nonsense - A better title might be "ways in which Google development is not agile."
- Cloud vs. On-Prem - You can save money hosting your own server for deep learning. Bear in mind this article comes from a company that sells servers.
- GitNews - Aggregator of trending repositories across GitHub, HackerNews, and Reddit.
- Awesome Design Tools - Man there is a lot of stuff here that I don't know about.
Double Shot #2286
- Awesome Startup Credits - Services your young company can get for free (though you may need to be in an accelerator program to qualify).
- Chaos Monkey Guide for Engineers - Extensive notes on using Netflix's tool to break your infrastructure.
- fry-send_tweet - "An extensible Twitter client that lives inside the Pry and Fry REPLs."
- Tips for running free dynos on Heroku in 2019 - "While it’s possible to run a 24/7 production app on a free Heroku dyno, it comes with some caveats."
- inlets - Open-source project to expose local endpoints to the internet, even through an annoying corporate firewall.
- Why I Write CSS in JavaScript - There are good reasons, at least if you're using one of the big js front-end frameworks.
- Bookworm - Open-source ebook reader for ElementaryOS.
- Announcing workers.dev - Cloudflare continues its push into serverless.
Double Shot #2285
- Data Versioning - Digging into some of the complexities of versioning machine learning models, and how that impacts continuous delivery.
- Volt - "Fast native desktop client for all major web services" like Twitter, Slack, and Discord (among others). Those of an age will be reminded of Adium.
- No, the problem isn’t “bad coders” - We're well past the poiunt where we can expect developers in a changing program to catch all bugs.
- Observatron - "A prototype exploratory testing observation tool for Chrome browser." Automatically save screenshots and MHTML as you browse, to make it easier to recreate what you did.
- WireGuard for macOS - UI client for this modern, secure VPN tunneling software.
- Farewell to fsync(): 10× faster database tests with Docker - Your test database doesn't have to store data forever so why take the overhead to do so?
- What’s new in PostgreSQL 11 - Notably, renewed leadership in SQL Window Functions.
- Data science is different now - Digging into the skills you actually need, by Vicki Boykis (who has been doing this stuff for a long time).
subscribe via RSS