Double Shot #2324
- I Gave Up on Blocking JavaScript Everywhere - As a NoScript user I'm quite sympathetic to this problem.
- The DesignBetter.Co library: now available for free download - A pile of free ebooks to level up your design process.
- Rails 6 requires Ruby 2.5 or newer - Yet another reason to get the foundation updated.
- Ethical.net - "We’re a not-for-profit project building a free and open platform for discovering ethical alternatives to stuff — whether that means buying from a social enterprise, charity shopping, or learning how to fix your old phone instead of buying a new one."
- Kiba Pro - Commercially-supported extensions to the excellent Kiba ruby ETL framework.
- Protections Against Fingerprinting and Cryptocurrency Mining Available in Firefox Nightly and Beta - Yet another reason to keep running Firefox.
- Ripcord - Lightweight desktop client for Slack and Discord.
- Announcing Building Git - Why write a book about rebuilding git in Ruby?
- EdgeDB 1.0 Alpha 1 - "EdgeDB combines the simplicity of a NoSQL database with relational model’s powerful querying, strictness, consistency, and performance."
- Web Components will replace your frontend framework - Maybe, though I don't know that I'd bet against React's and Vue's inertia at this point.
- Master of web puppets: abusing web browsers for persistent and stealthy computation - "This paper shows how modern browsers with support for Service Workers can be stealthily connected into a botnet, with a connection that persists until the user closes the browser completely"
- Break functional and orchestration responsibilities for better testability - Sensible testing for microservices, and how good architecture can help.
Double Shot #2323
- Software Development – What Are The ‘Basics’? - An attempt at listing the skills that go beyond code and syntax.
- Name That Color - A few minutes of harmless web fun.
- What We Learned from the Recent Mandrill Outage - An excellent incident writeup with some lessons for big databases.
- flor workflow engine - A workflow engine in ruby with its own language.
- Modifying Authentication Behavior in Devise - Adding an approval workflow, step-by-step.
- Opera introduces Reborn 3, the first desktop browser with Web 3, faster VPN and ad blocker - Also a crypto wallet. But it's still Chrome under the hood.
- Working together when we’re not together - Oh look, Google discovered remote work.
- 58 bytes of css to look great nearly everywhere - Just enough CSS to be prettier than browser defaults.
- Tinkertoys, Microservices, and Feature Management - "Full test coverage is not a thing anymore." Slides from a conference talk by @wiredferret.
- Asciidoctor 2.0.0 - Major version release for this ruby-based publishing toolchain.
- Rockset - "Real-time SQL on raw JSON, XML, Parquet, CSV, XLSX or PDF" with both free & paid plans.
- How great managers give and receive feedback - A collection of advice including some of my favorite management writers.
Double Shot #2322
- Correctness — the paradigm for sustainable software development - And an argument that some languages make this easier than others.
- El Grapho - "El Grapho is a high performance WebGL graph data visualization engine."
- AWS App Mesh is now generally available - Buy rather than build your service mesh, at least if you're all-in with AWS.
- How to use CloudFormation to deploy Frontend Apps to S3 and Serverless Application Repository - A sneaky little AWS hack.
- Messages on Rails Part 2: Kafka - An introduction to key concepts plus some sample code using Karafka.
- Programming: doing it more vs doing it better - Writing more software doesn't necessarily make you a better developer.
- Crash early and crash often for more reliable software - Sometimes it does make sense to use crashing as an indication that you were wrong about the invariants.
- On Git workflows - With email becoming an increasing disaster area, in most cases git-by-email is not the right way to go.
- It is your moral obligation to use Firefox - Or at least, it's a good thing to do.
- Agile and the Software Industry’s Ideology Problem - "[T]he software industry presents an intriguing case study on the nature of ideological monism and the challenge of reconciling the nominal objectives of an ideology with their realization in practice." Um. Sure.
- 12 Tips For Managing a Remote Team (And Loving It) - Some of the basics to help guide you to success.
- -
Double Shot #2321
- The Zero Bug Policy - Just put all the bugs at the top of the stack, ruthlessly.
- Creating Flow and Value in Product Development - John Cutler walks through some agile/lean best practices and why they're important.
- Water.css - Straightforward single-file CSS for simple sites. There's a demo site.
- You Might Not Need Integration Tests - Especially if you have a working canary deployment strategy.
- PostgreSQL performance on Raspberry Pi - Yes, it can be done. Even parallelized.
- dbdot - Convert PostgreSQL schemas to DOT files (which then make pretty pictures). My experience has been that by the time you want this tool the schema is too complex to print, but YMMV.
- How to Design Perfect (Software) Products - "Simplicity Oriented Design," an attempt to avoid the dumpster fires that come out of many large design processes.
- Lynis - Lightweight tool for security scanning.
- A Detailed Overview of AWS API Gateway - Learn about the actual magic inside.
- jQuery 3.4.0 Released - This should be the last release before things tool up for 4.0.
- Working as a UX-lead - A peak inside this job, from someone who has it.
- Rails::Pretty::Logger - Drop-in Logger replacement with a web UI that includes drilldown debugging.
Double Shot #2320
- You probably don't need that hip web framework - But you'll probably use it anyway.
- Responsible JavaScript: Part I - A plea to at least stem some of the flood of JS that's overwhelming our browsers. Good luck.
- 17 Traits of Awesome Tech Leads - Some advice worth reading if you've been dropped into the tech lead role yourself recently.
- Hello, CanCanCan 3.0 - A major release of this authorization framework with some major changes.
- Undercover - Ruby gem for code coverage - "Like RuboCop but for code coverage." Nice idea, coverage checking as you work.
- Active Storage meets GraphQL: Direct Uploads - Wiring together two new pieces of functionality for the win.
- Chef’s Different Recipe - Stephen O'Grady analyzes the recent licensing changes at Chef.
- Support of Ruby 2.3 has ended - If you're running anything older than 2.4.6 at this point you're playing with fire.
- Running VSCode in Docker - Move your IDE to the data, instead of bringing data to your laptop IDE.
- DockStation - A fresh GUI for managing multiple Docker containers.
- Product & Engineering as One - Some practical advice on achieving alignment between these two parts of your company.
Double Shot #2319
- Strive for Software Autonomy, not just Process Automation - Thinking about what the goals for devops should be.
- gitstatus - A faster implementation of git status information for your prompt.
- Why your Docker multi-stage build is surprisingly slow - How to cache intermediate stages to speed things up.
- Indexes in PostgreSQL — 1 - A pretty deep dive into PostgreSQL internals.
- Introducing the New Chef: 100% Open, Always - The new model is all open source software, with a licensed enterprise distribution.
- What comes after “open source” - Steve Klabnik doesn't have an answer, but he speculates that it's time to move on from just thinking about license distinctions.
- Editor.js - Free editor for web content that composes HTML from independent blocks.
- Web-Based Monte Carlo Simulation for Agile Estimation - Looking at another way to present the uncertainty of delivery times.
- Agile Lite: Agile without all the burnout - "Agile without all the burnout." I don't buy the implied premise, but if you take away that attacks on some straw-man version of agile, there are some interesting ideas here.
- email + git = <3 - A tutorial on using the email functionality of git.
- Refactoring Backend Engineering Hiring at Slack - Hiring, a subject that never grows old, probably because it is so badly broken all across software development. Personally I wouldn't brag about averaging 83 days to hire, but I'm the impatient sort.
Double Shot #2318
- TypeScript and Babel, a match made in heaven - Looks like we're safely past the phase of these two tools not playing nicely with each other.
- slim - "slim will build a micro-vm from a Dockerfile. Slim works by building and extracting a rootfs from a Dockerfile, and then merging that filesystem with a small minimal kernel that runs in RAM."
- Pock - Display your MacOS dock on the TouchBar. I may try it. Then again I may just put masking tape over the freaking thing.
- Introducing Warp: Fixing Mobile Internet Performance and Security - Cloudflare is getting into the VPN business.
- Capybara::HeadlessChrome - "A nice and tidy Capybara driver for headless Chrome. Even supports file downloads!"
- OKRs Aren't Going to Fix Your Communication Issues - I'd go further: if you're just playing "OKR Theater" you're going to make things worse.
- A Roadmap for Eliminating Patents in Open Source - Technical discussion of whether the doctrine of "patent exhaustion" might simplify the legal landscape.
- The Founder’s Guide to Discipline: Lessons from Front’s Mathilde Collin - "The bottom line is more simple: are you disciplined enough to make it happen or not?" Lots of good actionable tips here as well.
- Lessons learned from jerks in the Internet - How one site discovered and dealt with a denial of service attack.
- The Unreasonable Effectiveness of SQL - "In fact, SQL is the most successful 4th generation language."
- Setting boundaries at your job as a programmer - "If you don’t enforce that boundary between work and non-work, you are sending the message that your time doesn’t belong to you."
Double Shot #2317
- PostgreSQL DBaaS Calculator - How far will your dollar go with cloud database hosting?
- developers[] - "An array of developers," a site collecting survey responses and looking for development wisdom. You're welcome to take the survey too!
- Feature flags with TDD - Twitter thread with some good advice.
- Maily - Rails engine to let you work with emails in the browser during development.
- Technical Debt? Probably not. - "Whoever is pushing us for more now isn’t going to turn all fairy godmother tomorrow and slack off."
- ungoogled-chromium - "Google Chromium, sans integration with Google."
- Ruby 2.4.6 Released - This is the final non-security 2.4.x release.
- TypeTalk - "This is a proof-of-concept of a SmallTalk like live coding system running in the browser, based on TypeScript."
- Gimli - VS Code extension featuring visual tools for frontend developers, now on Kickstarter.
- Timeless Design Principles - There don't seem to be programming languages that force you to adhere to good design principles - but it's been possible to use those same principles for decades across multiple languages.
- Malicious remote code execution backdoor discovered in the popular bootstrap-sass Ruby gem - Kind of a big deal. If you're using this gem you need to take steps to protect yourself.
Double Shot #2316
- ActiveInteractor - A fresh implementation of the interactor pattern that also draws inspiration from Active Model.
- JavaScript Coercions Grid - A maze of twisty little edge cases.
- PeerJS - JS wrapper for WebRTC to let you easily build peer-to-peer functionality.
- Color Blindness Considerations for Designers and Content Managers - Yes, you should think about these things.
- Timestamps and Time Zones in PostgreSQL - Did you know there are two types of timestamps in PostgreSQL? Yeah, neither did I.
- Why You Should Never Save Passwords on Chrome or Firefox - Because if someone gets physical access, deciphering the stored passwords is trivial.
- Evaluating 8 Months of Building a Rails Vue SPA - Bottom line: after initial configuration, it worked well.
- Ruby API - Full-text searchable Ruby documentation.
- Ruby's Creed - I see I'm not the only one who's less-than-happy with some of the recent syntax additions.
- State of DevOps Survey - This is the one used to create the Accelerate State of DevOps Report, and you can take it now.
- How to transition into a Developer Relations career - If you like both code and people, this might be the career for you.
Double Shot #2315
- red - Terminal analysis tools for JSON logs.
- GitPitch - "Modern slide decks for Developers." This gives you slide decks in Markdown, with a variety of paid extra features available.
- Understanding Agile Values & Principles. An Examination of the Agile Manifesto - Free 60-page eBook via InfoQ.
- Engineering Management Distilled: A guide to one-on-ones - Some advice with the end goal of "the primary goal of the one-on-one is to build and maintain an efficient information channel between you and the people on your team."
- Super Graph - "Instant GraphQL API for Rails. Zero code." But a fair chunk of configuration, of course.
- Fear - Option, Either, and Try monads implemented in Ruby.
- Announcing TypeScript 3.4 - Yup, static-typed JS is still evolving.
- Coaching Tools – The Narrative - Narratives are hugely-useful and hugely-underused tools in my experience of development.
Double Shot #2314
- A complete guide to threads in Node.js - Just in case your life wasn't complicated enough already.
- Dumpster Diving through Dotfiles: Better Git Logging - A few useful aliases
- Junior Developer Koans - Or maybe the Senior Developer is just a jerk.
- LOOPY - Graphical tool for exploring system relationships.
- Call for testing: OpenSSH 8.0 - Coming soon to clients and servers near you.
- Why I miss Rails - This is why I mostly haven't left Rails.
- The status of Ruby memory trimming & how you can help with testing - There's some exciting work going on in this area.
- RailsDiff - Diff of boilerplate from version to version of Rails, an invaluable aid when upgrading.
Double Shot #2313
- Lambda optimization tip – enable HTTP keep-alive - Specifically when working with DynamoDB.
- John Maeda: “In reality, design is not that important” - Some rethnking from the head of inclusion and computational design at Automattic.
- Agile as a Corollary to Twyman’s Law - "In software, the greatest source of waste is building the wrong thing, period, not building the right thing slowly, not building the wrong thing slowly, just flat-out building non-value-adding crap."
- Ops School Curriculum - A crowdsourced outline and reference of knowledge for operations engineers.
- Was MongoDB Ever the Right Choice? - Making tech decisions by following the cool kids isn't always the smartest thing you can possibly do.
- Rails 5.1.7 has been released and Rails 5.2.3 has been released - Go forth and patch.
- Why bother with What Three Words? - "W3W is a closed product. It is a for-profit company masquerading as an open standard. And that annoys me."
- Merging OpenTracing and OpenCensus: Goals and Non-Goals - Two standards that hope to become one.
Double Shot #2312
- Passwordless ZSH history -A tidbit for the paranoid.
- Good news: Remote work is more accepted. Bad news: You might not want it. - Looking at the results of a Robert Half report. I doubt the numbers here match those in software.
- Refactoring To Higher-Order Functions - A functional programming exercise in Ruby.
- Kroki - A unified API to convert many plain text diagram-definition formats into images.
- Best Practices for Managing Remote Teams: A Psychological Perspective - Some notes on making remote work better by intentionally designing the work environment.
- Pong - Self-hosted uptime monitoring application.
- Monolith vs Microservices - Some things to consider about making the tradeoff.
- Storing UTC is not a silver bullet - Nothing ever is, alas.
Double Shot #2311
- We Built a Collaborative Documentation Site. Deploy Your Own With the Push of a Button. - Wiki with a Google Docs backend, courtesy of the NY Times.
- ActiveRecordExtended - If you don't care about being database-agnostic, this gem adds a lot of PostgreSQL-specific functionality.
- HTML Emails 101 For Web Developers - A good overview of a bunch of the major pitfalls.
- Engineering Management Philosophies and Why They Matter Even if You are Not a Manager - Some patterns and antipatterns dissected.
- Sonic - A faster and simpler alternative to ElasticSearch for some use cases.
- Accessibility + Testability FTW - Using WAI-ARIA attributes can help with both of these goals simultaneously.
- Firefox Lockbox - Synched passwords across web, iOS, and Android versions of Firefox.
- The culture war at the heart of open source - A historically-grounded look at some of the current licensing foofooraw.
Double Shot #2310
- Rules of thumb for org design. - Some little bits and pieces to think about as you build up a software organization.
- Ruby 2.7 — Numbered Parameters - Because there's no escaping from perl in the long run.
- Crossfont -"Low learning curve, easy-to-use font editor for Mac" that you can purchase for $12.
- Endlessh: an SSH Tarpit - Have fun screwing with script kiddies.
- Architecting UIs for Change - A dive into some frontend architecture designed to make life better for developers.
- New features in Rails 6: Multiple databases, parallel tests, Action Mailbox and more - An overview of the largest changes coming at us. This will be an exciting release, I think.
- React Router v5 - Mostly a stability and compatibility release.
- The Power of Ruby Structs - Digging into POROs.
Double Shot #2309
- The JavaScript Developer's Reading List - Many many resources to help you on frontend development.
- Himl - ERB syntax with HAML whitespace semantics in a new template markup language.
- A Deep Dive into Routing and Controller Dispatch in Rails - There was a time when I understood all this stuff. That was a lot of versions ago.
- hyperfine - Cross-platform shell command benchmarking tool.
- DropCSS - "A simple, thorough and fast unused-CSS cleaner."
- Maybe You Don't Need Kubernetes - From a team that ended up using Nomad instead.
- Using Que instead of Sidekiq - Investigating background job systems.
- How to Write Good User Stories - Some prescriptive guidance.
Double Shot #2308
- Born for it - Digging into history helps illuminate how the tilt of software developers towards antisocial males came about in the first place.
- HTML5 Periodical Table - The chemistry major in me says "no it's not" but still a reasonable graphic presentation that categorizes the tags that you may or may not know.
- nginx (Docker image) - A tiny built-from-source version.
- Growth in Fear - Amazing post from Emily Freeman, taking the time to be vulnerable about her personal history (not just in tech, but from day one). Stick with it to the end if you're worrying about whether you're good enough.
- Rules for Autocomplete - Designing a good autocomplete function is harder than you might think.
- jrnl - Command-line journaling application. I'm a big fan of keeping a "lab notebook" of dev work, whether paper, GUI, or plain text file (I use Bear Notes myself).
- Technology Radar Vol. 2 - A nice example from Porsche, together with some of the thinking that went into it.
- Rails 5.1.7.rc1 has been released! and Rails 5.2.3.rc1 has been released! - Note that this will likely be the final bugfix release for 5.1 so if you're planning to stay on that version it'd be a good idea to have a look.
Double Shot #2307
- yUML - Online UML tool with some interactive features. Could be promising.
- 7 Commandments for Event-Driven Architecture - Guaranteed, you'll make mistakes when architecting a distributed system. These notes will help you avoid a few of them.
- Using the iPad Pro as my development machine - It can be done. Then again, you can teach a bear to dance.
- Monsters in the Middleboxes: Introducing Two New Tools for Detecting HTTPS Interception - Cloudflare investigates, and finds a depressing amount of "secure" traffic that's already being MITM'd.
- How to create an engaging workplace culture - Notes on ways that leadership can (and can't) affect culture.
- Jekyll 4.0.0.pre.alpha1 Released Permalink - Changes are afoot for this popular static site builder.
- My Alpine Desktop - Setting Up a Software Development Environment on Alpine Linux - A look at why Alpine is useful and how to get it up and running.
- Services are Not a Silver Bullet - Indeed they are not, and they're far from being the only architecture alternative to a monolith.
Double Shot #2306
- Software Roles and Titles - A somewhat opinionated look at the job titles, responsibilities, and career progressions you'll find in a "typical" software development organization.
- The Cloud and Open Source Powder Keg - Stephen O'Grady looks at the steps that got us to Amazon shipping a fork of Elasticsearch.
- Say Hello To Google’s New Chromebook Simulator - Google still doesn't seem to have gotten this part of the system right.
- Ruby 2.7 new feature: Method reference operator - More syntax that I hope I never need, but you can't stop progress.
- postgresqltuner.pl - A script to analyze your PostgreSQL database with an eye towards optimizing it.
- Vertically Scaling PostgreSQL - And some advice on what to tune as you move up to larger hardware.
- A Complete React Redux Tutorial for 2019 - A pretty deep dive into how the pieces fit together.
- personal-website - A template with Jekyll and GitHub Pages integrations as well as some API stuff from GitHub.
Double Shot #2305
- active-record-query-trace - "Rails plugin that logs/displays a backtrace of all SQL queries executed by Active Record."
- Open Distro for Elasticsearch - "An Apache 2.0-licensed distribution of Elasticsearch enhanced with enterprise security, alerting, SQL, and more" from Amazon. Here's the launch announcement. And here's the response from Elastic.
- Microservices after Two Years - A report based on experience in the trenches. It's not as easy as some people apparently think.
- DIF - An "engineering-driven organization focused on developing the foundational elements necessary to establish an open ecosystem for decentralized identity." Hey, if we do it enough times, it has to work eventually, right?
- Datashare: Help test and improve our latest journalism tool - Tool designed to analyze a large corpus of data, delivered as a Docker image.
- Rails 4.2.11.1, 5.0.7.2, 5.1.6.2, 5.2.2.1, and 6.0.0.beta3 have been released! - Security fixes R Us.
- Rails on AWS Lambda with SAM - The lamby gem provides easy conversion from API Gateway calls to Rack calls that you can just drop into Rails.
- Strap - Script for bootstrapping a minimal MacOS development system.
- Do This Now: 8 Ways to Focus your Product Team on Impact, Not Features - Some tactics to move away from the feature factory mindset.
- Break Git Down: How To Create a Branch From Master and Make Your First Commit! - An illustrated tutorial for new developers.
- 10 Lessons Learned Conducting Code Reviews - Some notes from a team lead just starting down the review path.
subscribe via RSS