Matthew Lindfield Seager

Development

Family

K 12 Education

Leadership

Reading List

User Experience

: Capistrano Branches Capistrano (as of version 3.19.1) still defaults to deploying the master branch, even though GitHub, …

: FWIW, I have a 1 year old iPhone 15 Pro Max and its battery capacity is at 98% after 261 cycles. I …

: Saw the scary screen recording message for Microsoft Teams on macOS Sequoia but Google Meet worked …

: Let apps link to the web? In episode 605 of Core Intuition, @manton made a claim that past me would have completely agreed …

: Per-domain Browser for Legacy Web Apps At work we use a legacy web app from the late 90s that doesn’t play nicely with Safari’s …

: Including Zeroes when Counting in SQL TLDR: To count related records (and get a zero when there are none) use a LEFT JOIN. To count …

: I’m using Alfred and cliclick to perform rudimentary UI automation to overcome a broken …

: Moving a Micro.blog Following Micro.blog’s pricing changes, rather than retiring an old blog hosted with a basic …

: Text Replacement Pro Tips If you’re in the Apple ecosystem1, Text Replacements are a powerful tool on Mac and …

: Microsoft have really upped their game in their efforts to repulse long-time Mac users. Apparently …

: Took me quite a while to figure out how to access the records in a collection object returned by the …

: Aussie Banks - A before and after story Changing banks in Australia is a hassle, but here’s a before and after story that might help …

: Enjoyed another Aussie crime novel by Chris Hammer: The Tilt 📚🎧 Well written as always and liked the …

: Thoroughly enjoyed reading The Last Devil to Die by Richard Osman 📚

: Finished Silver by Chris Hammer 🎙️📚 I’m enjoying listening to audio books while working on the house …

: Finished reading: Scrublands by Chris Hammer 📚🎧

: Changing the starting ID in a Rails app While procrastinating working on a new Rails app, I didn’t want object IDs to start at 1 but …

: Couldn’t figure out why ruby debug was crashing on one machine but another …

: The Voice Australia will vote tomorrow on a modest proposal to give Aboriginal and Torres Strait Islander …

: I’m enjoying the conversation, talks, food and location of RubyConf Thailand. Rubyists may even …

: It’s not much to look at but I’m very glad for this little national treasure park just 5km from …

: There’s a bit of a contrast between the undeveloped parts of our suburb and the new estates popping …

: Combining a workout with a commute Day 28 of #mbsept

: This little guy just wants an embrace. Day 27 of #mbsept

: I love it when people build useful, thoughtful and bookmarkable tools like this highly configurable …

: Treated myself to my beverage of choice in honour of today’s prompt. Day 26 of #mbsept

: Today’s prompt is flare, suggested by me. I suggested it because it has multiple meanings and I …

: Belt drive for the alternator (I think 😉) in our 2009 Hyundai Tucson. This is the first time I’ve …

: A Day/Date in the Life of Micro.blog: Just finished at my local Parkrun. Pretty happy with a sub-24 …

: This new road near me seems to be nearing completion, although there’s still a lot of work to be …

: Fall, water, fall. (Can you tell I really struggled for inspiration today!? 😉 This was my backup …

: A minor disruption Day 20 of #mbsept

: Starting with the edge. Day 19 of #mbsept

: Woollen moquette fabric on my Waratah commuter train. Day 18 of #mbsept

: Intense Sunday afternoon run. Pace was slow but my heart rate was right up there! Day 17 of #mbsept

: Oof! Sun is beating down! 33°C (91°F) is pretty unpleasant weather for spectating the netball grand …

: Red: A red book I have not yet read Day 15 of #mbsept

: Statue of King Gilgamesh. Donated to The University of Sydney by the Assyrian community on the …

: Glowing heater and screen, watching the Keynote live at 3am on a cool spring morning. Day 13 of …

: Panic! Or not… I don’t actually drink coffee 🤷‍♂️ Day 12 of #mbsept

: Retrospect. In retrospect I should have taken a photo of a historical display in the library at work …

: [Water] cycle… thin bands of cloud (or is that smog?) over Middle Harbour, Sydney. Day 10 of #mbsept

: [Sign] language… Day 9 of #mbsept

: Yonder… some Aussie bush, just across the road (for now, suburban development is coming) Day 8 of …

: Panorama of another beautiful spring day in Sydney Day 7 of #mbsept

: Well, this is a healthy (well) [stair]well (mainly because I couldn’t safely take a photo of the …

: Forest (sort of) at night Day 5 of #mbsept

: Orange (although it’s often still referred to as The Purple Door for historical reasons) Day 4 of …

: Finished listening to Echo Lake by Joan Sauers 📚🎧

: Precious… a fitting prompt for (Aussie?) Father’s Day today. Kids weren’t interested in being …

: Buildup… A very literal response to today’s prompt but I quite like the striking blue of the sky Day …

: Abstract… not concrete… Day 1 #mbsept

: [Mostly] finished reading The Big Con by Mariana Mazzucato and Rosie Collington 📚 Not exactly a page …

: The excitement (and nervousness) are building for my first ever conference talk! …

: More holiday reading down the coast: Deadly Cross by James Patterson 📚

: Finished reading: 23rd Midnight by Maxine Paetro and James Patterson 📚 Underwhelming story and …

: Very excited (and nervous) to be accepted as a speaker at RubyConf Thailand in October 🥳 If all goes …

: Thoroughly enjoyed reading Joanna Jenkins’ debut novel, How to Kill a Client 📚 I had the killer …

: Found A Game of Thrones by George R. R. Martin on the bookshelves of our holiday rental. Good story …

: More holiday reading: The Girl in the Castle by Emily Raymond and James Patterson 📚 By the by, I’d …

: Finished reading In The Blink of An Eye by Jo Callaghan 📚 The plot seemed a little too coincidental …

: Finished re-reading The Sentinel by Andrew Child and Lee Child 📚 Enjoyable but not memorable in any …

: Just finished some light holiday reading in Sweden, No Plan B by Lee Child and Andrew Child 📚

: Just read Recursion by Blake Crouch after seeing it mentioned by Manton 📚 Clever premise and …

: Finished reading: The Bullet That Missed by Richard Osman 📚

: Finished reading: The Man Who Died Twice by Richard Osman 📚

: Finished reading: The Thursday Murder Club by Richard Osman 📚

: Finished reading: Rhythm of War Part Two by Brandon Sanderson 📚

: Finished reading: Rhythm of War Part One by Brandon Sanderson 📚

: Caught the moon and a star smiling and winking at me last night 😉

: Adding a banner to staging site using JavaScript I wanted to put a banner on the test/staging copy of our library management system to make it easier …

: Finished reading: Dawnshard by Brandon Sanderson 📚

: Finished reading: Oathbringer Part Two by Brandon Sanderson 📚

: Today I learned that Cloudflare has a free alternative to ngrok, Cloudflare Tunnel Can use it …

: Just finished Oathbringer Part One by Brandon Sanderson 📚 Might have to wait a few weeks until …

: Finished reading Edgedancer by Brandon Sanderson 📚

: Icon Set from a single image in 15 seconds I built some AppleScript applets to launch Gmail to a specific account and Brave to a specific …

: So happy to solve a longstanding performance bug! 🎉 I finally solved a hugely annoying performance bug in one of my Rails apps! To give you an idea of …

: This will be my last M.b post cross-posted to Twitter. You can find everything I write at …

: Finished reading Words of Radiance by Brandon Sanderson 📚 Over 1,000 dense pages but I thoroughly …

: Files App on iOS/iPadOS is not limited by Screen Time restrictions or Downtime After doing some research today it seems there is no way to block the Files app using Apple’s …

: Finished reading: The Way of Kings Part Two by Brandon Sanderson 📚

: Finished reading: The Way of Kings Part One by Brandon Sanderson 📚

: In the nick of time before semester 2 starts tomorrow, I just finished The Lost Metal by Brandon …

: Finished reading: The Bands of Mourning by Brandon Sanderson 📚

: Finished reading: Shadows of Self by Brandon Sanderson 📚

: Finished reading: The Alloy of Law by Brandon Sanderson 📚

: Finished reading: Mistborn, The Well of Ascension and The Hero of Ages by Brandon Sanderson 📚

: PSA for macOS Terminal users: Terminal Prefs → Profiles → Shell: Ask before closing Close if the …

: Thinking about ways to disambiguate the same username on different federated instances based on a …

: Installing Teams for an upcoming meeting and noticed the installer is called “Teamsosx”. …

: Trying to stay positive online so rather than bash Hover I’ll compliment Cloudflare. …

: Our house is all ceramic tiles and concrete, terrible for acoustics! So here’s my improvised …

: Technology can be good but I’d be okay if I never had to do another video call… VR meetings really …

: Watch out for GitGuardian. They scan public GitHub repos unbidden & send unsolicited emails …

: If you think you’re leading and no one is following you, then you’re only taking a walk — Afghan …

: A bit bummed to hear Salesforce is killing Heroku’s free tiers. Pretty sure there’s …

: A month or two in and I’m super happy to have found Nova as a capable (and native!!!) replacement …

: Enjoyed watching WWDC this year! One nice thing about being in Cambodia is that it went from …

: Almost a perfect bell curve of results in Wordle… add in my 2 misses, that I almost certainly would …

: Found a useful tip on how to combine a bunch of files from nested sub-folders into the parent …

: User Friendly Error Messages for Multiple Fields in Rails The built in error system in Rails, specifically displaying errors in an HTML form when data …

: I’m not sure how I feel about “lossy” Markdown support via autocorrect in a WYSIWYG word processor… …

: Static Assets in Rails 7 Note for future me (written partially for myself, partially in answer to this SO question). The home …

: I know naming is hard but seriously, “standard” vs “default” was the best …

: Interesting design pattern in Google Workspace Admin Console: Related settings have arrows. Hovering …

: “Cryptocurrencies leave me… feeling like the boy watching the naked emperor… So many significant… …

: CI on Github Actions with Rails 7, Postgres, esbuild, Tailwind CSS and StandardRB After a bit of research and a lot of trial and error I finally got Github Actions working for CI on …

: The Gift of Context Today I had an implementation question for one of our campus principals and she gifted me with the …

: I enjoyed reading this blog post about how Signal is actively (and a little bit cheekily) guarding …

: Spent way too long last night debugging something that worked in dev but not in test… it was …

: Encrypted Credentials in Rails Rails can encrypt keys for you. It encrypts and decrypts them using other keys. Once your keys have …

: Why Action Mailbox can't be used with Gmail I’ve seen a few questions today about how to get Rails’ Action Mailbox working with …

: PayPal won’t let me login using my long, secure, unique password unless I verify using a mobile …

: Tip for deploying a brand new Rails app Hot tip, if you deploy a brand new Rails app to production and it doesn’t work, it might not …

: Good rule of thumb on what software to use (from www.heroku.com/podcasts/…): Universal …

: Loving the tighter integration between MarsEdit 4.4 and Micro.blog, especially being able to edit …

: I just heard on a podcast that YouTube is the second biggest search engine in the world by traffic …

: I just listened to another great MicroConf talk, this time by Jason Cohen. I’m really enjoying the …

: A Tale of Two Airlines In February, we booked flights to Cambodia for July, on two different airlines with a few days stay …

: Fantastic talk by Joanna Wiebe on how to improve site copy! Key takeaways for me were: 1) Listen to …

: I really enjoyed this interview with twitter.com/HelenRyle… on Startups for the Rest Of Us: …

: Nearly skipped overcast.fm/+DJ5hZFTe… when I saw it was about service-based architectures but …

: All human work is imperfect, because human nature is; and this intrinsic imperfection of human …

: Thank you Scoot! Kudos to Scoot (https://www.flyscoot.com) for their handling of flight disruptions. Early on in the …

: Heading up to the house for a break after back-to-back Zoom meetings, my path was blocked by an …

: All hard problems are slow feedback loops in disguise — Andy Neely …

: Enterprise Identity Management on Rails - RailsConf 2020 Reflections on the RailsConf 2020 talk of Brynn Gitt & Oliver Sanford Brynn and Oliver shared …

: Thorough and well-explained post on a particular class of race condition (time of check to time of …

: Calculating Dates in JavaScript I was struggling recently to calculate dates using JavaScript. I wanted a minimum date to be two …

: Can ActiveStorage Serve Images for the Modern Web? - RailsConf Reflections on Mark Hutter’s RailsConf 2020 talk Mark shows that ActiveStorage has some nice …

: Measure twice, cut once - RailsConf 2020 Reflections on Alec Clarke’s RailsConf 2020 talk Using lessons from woodworking, Alec gave …

: Thank you to the Ruby Central team for organising the COVID-19 version of RailsConf… …

: I’ve used Zoom, Cisco WebEx, MS Teams, Slack and GoToMeeting for video calls or meetings of …

: I hoped to reinvent myself through this lockdown period… like maybe the change of routine and …

: Today I learned you can show hidden files and folders in the macOS finder with the keyboard shortcut …

: Today I learned you can use git to compare files, even if they aren’t in a repo! git diff …

: An issue with Spring caching lead me on a journey of discovery TLDR; I spent quite a while trying to figure out why ENV variables weren’t being loaded by …

: Just read that Bob will take over from Bob as CEO at Disney. Interestingly, there are as many Alans …

: I’m reluctantly trying to sign up for Facebook so we can post micro.blog updates to friends …

: Finished listening to MatchUp this morning. Collection of 11 short stories written by pairs of well …

: Yesterday I learned you can update a single gem without updating dependencies using bundle update …

: Thoughtbot: Name the Abstraction, Not the Data - thoughtbot.com/blog/name… This makes a lot …

: 📖 Force of Nature - Jane Harper (https://www.goodreads.com/book/show/34275222-force-of-nature) Set …

: 📖 Alex Cross’s Trial - James Patterson and Richard Dilallo …

: 📖 Bad Luck and Trouble - Lee Child (https://www.goodreads.com/book/show/108942.Bad_Luck_and_Trouble) …

: 📖 Scarecrow and the Army or Thieves by Matthew Reilly - www.booktopia.com.au/scarecrow… Over …

: Is Your Ticketing System a Tool or a Weapon? In the hands of a carpenter, sportsperson or chef, hammers, bats and knives are all useful tools. In …

: A Tale of Two MacBooks My 2016 MacBook Pro had keyboard problems within about 6 months. My 2019 MacBook Air (less than 5 …

: I had a couple of hours to kill in Parramatta so I dropped into UWS’ new building near the station. …

: The Internet generally and YouTube specifically can be pretty amazing! This evening I was told I …

: Two items for the “you could but probably shouldn’t” category and Postgres: Async Messaging: …

: Scripts to Rule Them All Today I configured a new Rails app with Scripts to Rule Them All. It’s a “normalized …

: I’ve been helping with a POS implementation on Vend (https://www.vendhq.com/). It’s just a …

: While searching for my POODR ebook, I stumbled across some notes I wrote last time I read it… …

: This (U.S.) thanksgiving weekend I’m thankful that several podcast hosts are having a break, letting …

: I’ve been enjoying reading Noah Gibbs’ thoughts on deliberate coding practise: codefol.io Following …

: German from Thoughtbot with a great post demonstrating a pattern for a generic (SMS) client with …

: Ruby Science by Thoughtbot: gumroad.com/l/ruby-sc… Another awesome resource from Thoughtbot, …

: Extracting classes decreases the amount of complexity in each class, but increases the overall …

: Bookmarking this clever approach to re-using an ActiveRecord scope (i.e. at the class level) within …

: I had some fun reading about pangrams and lipograms after reading this Twitter thread about …

: I’m a little disappointed with WatchOS 6… I’m experiencing two significant bugs, one with the …

: Yesterday I subscribed to a few repositories on CodeTriage. It sends an email each day with an open …

: Manton Reece is knocking it out of the park with Micro.blog! The new auto-categorisation feature is …

: I might have to trim down my podcast subscriptions… my feed is starting to overflow now the …

: I’m currently reading The Well Grounded Rubyist 📖 www.manning.com/books/the… I think I …

: It wasn’t really the point of the latest Code[ish] but I was once again struck by the sheer volume …

: Apple Arcade We’ve been enjoying Apple Arcade! It’s so nice to let the kids try new games without having to warn …

: The NYT has a long but fascinating read about the Boeing 737 Max crashes and the (lack of) pilot …

: I’ve enjoyed reading reviews of the iPhones 11, particularly for photos. I aim to upgrade …

: Catalina, Ruby and Zsh I recently upgraded to macOS Catalina (10.15 public beta). There are several “under the …

: I used Sign In With Apple for the first time today in the beta version of Micro.blog As a customer …

: I’ve been enjoying listening to www.founderquestpodcast.com lately… 3 devs who launched a …

: I recently finished listening to The President is Missing by Bill Clinton and James Patterson (while …

: Web developers: if your password field doesn’t let my browser auto-generate a unique password …

: I wish I’d known about .rubocop_todo.yml last time I experimented with adding RuboCop to an existing …

: I used draw.io again today for a flowchart. It’s no OmniGraffle but it’s pretty amazing how good a …

: Heading to bed early before the big Apple keynote tomorrow morning!

: When writing change logs, commit messages, code comments, method names, project plans or just about …

: It has taken me 5 days to knock down our old back fence and put in 7 new fence posts. Tomorrow I …

: Embrace the conceptual compression of Rails… Don’t think you need to understand everything …

: All Micro.blog hosted blogs now come with free sandpit blog so you can try out theme and design …

: I just added my vote for a Micro dot blog icon to be added to FontAwesome: …

: The circle of life continues: www.abc.net.au/news/scie…

: Scary iOS Exploit Project Zero released details of a sustained (multi-year) and regularly updated iOS exploit suite. I …

: Calculating taxable portions Xero doesn’t support line items that have a mix of GST and non-GST items. To add a mixed …

: Fantastic interview with Sandi Metz. There were two things she said that I wanted to write down but …

: This hardening guide for Rails apps is big but clearly written and has lots of links if you need …

: www.bbc.com/news/tech… Swedish school district in privacy hot water after tracking student …

: “There is no quick fix, but there is a fix” Something to remember with relationships, work and …

: So apparently Stripe has 45 developers… …whose entire job is inwards focused, trying …

: How not to write error messages: >[Error] Script lines: 1-9 -------------------------- An …

: Today I learned that bundle open is a way to easily look inside Ruby gems! …

: Enjoying the winter sunshine at the park

: Today I learned a bit about “Mutant Testing”… slight variations (mutations) in tests or test …

: Signal is an excellent cross platform messaging app, a great alternative to WhatsApp for those …

: I often keep browser tabs open on my phone with the vague thought that I’ll read/watch/share …

: A mess is not a technical debt. A mess is just a mess. Technical debt decisions are made based on …

: Notes to future self: Watch out for integer division! 9 / 10 # => 0 🤔 Order of operations …

: VPN advice for schools (& probably most other businesses): when getting your firewall …

: Raspberry Pi 4 is an impressive bit of kit! Quad core CPU, Gigabit ethernet, dual 4k displays & …

: Scammed 😔 I think I’m pretty savvy when it comes to online scams and phishing but it turns out I’m …

: My laptop fan started screaming… checked Activity Monitor and Safari CPU usage was at 122% I …

: Pragma Precedence Preoccupation The latest Ruby Weekly newsletter linked to a helpful blog post about magic comments (or pragmas) in …

: Kiba is really nice for doing ETL work in Ruby! It strikes a great balance between providing all the …

: Netflix in the Classroom... kind of Netflix in the Classroom… kind of According to its terms of use, Netflix can’t be used …

: I used the kiba gem for an ETL process today. My initial impressions are very positive! It lets you …

: An anesthesiologist gives a great little (< 20 min) talk on how failure research applies to web …

: In my recent security travels, I found an article by the author of bcrypt-ruby on How To Safely …

: Rails Authentication - Clearance, BCrypt and Salting While I was thinking about security I decided to double check that I’m practicing what I …

: The Importance of Long Passwords I discovered today that the 20 character randomly generated password I thought I’d been using …

: Interesting thought experiment in youtu.be/1VsSXRPEB… He makes a reasonable argument that, in …

: Tonight I finished Ruby Under a Microscope by Pat Shaughnessy 📚 Some sections were pretty tough but …

: I’m upgrading from a 2010 MacBook Pro to a 2019 MacBook Air… and yet so far the thing I’ve …

: thoughtbot.com/blog/git-… is a very clever alternative to aliasing bundle exec

: Wifi safety comes up again and again in schools… it’s interesting to read about the origin of …

: I recently finished Bad Debts by Peter Temple 📚🎧 It was a bit gritty for my taste but the writing …

: Event Sourcing Made Simple was pretty persuasive about the benefits of decoupling the model from the …

: I love the idea of No Backlog. If an idea has merit but misses a cycle, someone can track it …

: Modules as Classes in Ruby Today I learned that Ruby modules are actually implemented as classes under the hood. When you …

: There’s always several things worth reading in the Ruby Weekly newsletter So far this week I’ve …

: 🎉 Free ebook with hard cover purchase 😐 Fine print says 45 days “free access” 😞 They …

: 📚 🎧 Finished listening to 9 Perfect Strangers - www.goodreads.com/book/show… First time I’ve …

: This evening my son and I switched to Codenvy.com for his school project (he is building a quiz …

: Today I finished going through the StimulusJS handbook and examples; …

: The good, the bad & the surprising of repl.it/languages/rails (after 2nd session with my 9 year …

: “A setting in Safari is blocking Teams. In your browser, go to Preferences > Privacy and …

: Two nice screenshot features in macOS 10.15/iOS 13: screenshot on Mac can show up on another device …

: 🤯 Modelling data (not behaviour) has been a huge part of my development work recently. John Schoeman …

: Just watched another good RailsConf 2019 talk: Scalabale Observability for Rails Applications by …

: I went looking for a simple cloud based development environment for a project my son is working on …

: Micro.blog continues to steadily improve! I really appreciate how quickly Manton turned around some …

: Graphiti and Leverage Episode 40 of Remote Ruby was so thought-provoking I added it back to my podcast queue. After …

: The more I learn about programming, the more I discover how “inefficient” it can be… While …

: I’m reading Ruby Under a Microscope (http://patshaughnessy.net/ruby-under-a-microscope) 📖 2.5 …

: Parsing vs Evaluating Order Following up from my Ruby pop quiz the other day, I asked about the surprising behaviour on Stack …

: Some nice little refinements in the Apple ecosystem… macOS Catalina prompts you to join your …

: Ruby Pop Quiz if false foo = 'bar' end foo What will the result be? a. foo b. ‘bar’ c. …

: Testing Security Controls I’m working my way through RailsConf 2019 and I keep finding gems (excuse the pun). No Such Thing as …

: Will Leinweber has a lot of experience with Postgres. His RailsConf talk on what to do When it all …

: Really thoughtful guidance on Service Objects in Ruby: katafrakt.me/2018/07/0… Keeping them …

: I love that, with CarPlay, my cheap car and its nasty head unit are actually a pleasure to …

: Great presentation from RailsConf 2019 on paying down technical debt in Rails apps: …

: Note to future self: assert_empty first asserts that the object under test responds to empty?, then …

: Rails, Foreign Keys and Troubleshooting Rails’ foreign_key confuses me sometimes! I spent way too long yesterday trying to …

: Great interview on the Bike Shed with Eileen M. Uchitelle overcast.fm/+Duausy44… I loved the …

: Easing in to RuboCop seems prudent, to keep making forward progress rather than just polishing …

: I don’t trust Facebook with my address book, my social interactions, my photos or even my inane …

: First fire of the season! Lovely evening with cousins and grandparents 🙂 🔥

: Computers are fascinating! TIL 'a'='a ' is true in standards compliant SQL. Turns out, if the …

: Better teardown in Minitest (than using an ensure section - www.matt17r.com/2019/06/1…) can …

: UPDATE #teardown is probably a better way of achieving the desired outcome MiniTest allows ensure …

: OpenStructs are SLOW, at least according to an article from a few years ago - …

: Postgres tip: ALTER DEFAULT PRIVILEGES only applies the specified privileges to objects created by …

: Automating Minitest in Rails 6 I’m building a new app in Rails 6 (6.0.0.rc1) and while I use RSpec at work I’ve been …

: I dislike the “vote for your desired feature” approach to product development. It seems …

: Enjoyed seeing Aladdin at the drive-in tonight! Weather held off, we had a lovely picnic dinner with …

: I deployed a new Rails app to Heroku tonight. It’s so ridiculously easy, especially now I’ve done it …

:

Today I learned SQL Server’s default encoding automatically equates similar characters to each …

: Priority Notifications is a new Teams feature. It allows a user to mark a chat message in Teams as …

: Yesterday I posted about the one benefit of GraphQL I actually want… …

: GraphQL vs(?) REST I’ve been coming across a lot of GraphQL listenings/readings lately. Below is a small sampling and …

: Fully Facebook Free (Finally) I just deleted my WhatsApp account despite it being the best (only) way to get information from some …

: Keen to watch the RubyConf 2019 talks! …

: I’ll be interested to see how “Sign In With Apple” develops. One of the key …

: PSA: Having a Single Source of Truth is not about consolidating every bit of data in one enormous …

: Great WWDC keynote today! Jam packed and well worth watching (especially compared to the “Services” …

: Migrating from String to Citext in Postgres and Rails I included a uniqueness constraint in my app to prevent what appears to be the same entry from …

: yarn upgrade: 47 lines of warnings (some only fit because I made my terminal 368 characters wide!) …

: Validating Data in Rails: Database Constraints, Model Validations or Client-side Checks? I stumbled across an old StackOverflow question today about when to use model validations as opposed …

: Tracking Rails Migrations After removing some Rails migrations today I couldn’t rollback my database and I realised I …

: I’ve been enjoying listening to the Heroku podcast lately. Dataclips seems like a very cool …

: Adding an 'in_ticks' method to Numeric in Ruby Certain fields in Active Directory are stored in “ticks” (1 tick == 100 nanoseconds). To …

: I still enjoy following along with what’s going on in the Apple development ecosystem, even though …

: Using Capybara with Minitest Note to future self: Capybara matchers: www.rubydoc.info/github/jn… Mintiest assertions: …

: www.ghostcassette.com/function-… Interesting read on Function Composition in Ruby 2.6… …

: I encountered Rails 6’s actionable error messages for the first time in the wild today… I saw …

: Webpacker wasn’t compiling or showing any errors/warnings in a new Rails 6 app after adding in …

: Glenn Vanderburg with a very compelling talk on why “engineering” is the appropriate …

: Enjoyed reading about Micro.blog in the New Yorker: www.newyorker.com/tech/anna… I …

: blog.skylight.io/the-lifec… I went in expecting it to be about Rails and that I’d know most …

: Logster is a nice nice little gem from the fine folks at Discourse that lets you view your Rails …

: I was curious how class​ Test < ActiveRecord::Migration[6.0] actually works under the covers. …

: Digging in to Ruby Method Definitions Today I learned that parentheses are optional in Ruby, even when defining methods, not just when …

: Mind Blown 🤯 ⌘E on a Mac copies the selected text to a special clipboard used by Find windows. …

: Relistening to a recent-ish episode that I had lots of thoughts on (as someone recently and still …

: Today I watched a really helpful talk on burnout (https://youtu.be/71suekjBV9Y). VERY slow start but …

: Delivering Value You don’t have to be better than everyone else. Every doctor in America, save one, is not the best …

: Sounds like RubyKaigi 2019 had some interesting talks and announcements! Bundler isn’t something I …

: Enjoying a belated beachside birthday bash by Botany Bay before bed… then a big run and a …

: Exceptionally Ordinary I have surrounded myself, virtually, with successful creators, developers and entrepreneurs. The …

: Looks like the (unedited?) videos for Railsconf 2019 are up for the 1st and 2nd of May… …

: Good article on delegating (technically forwarding) in Standard Ruby, in Rails or with a third party …

: Today I learned Transport NSW has been trialling on-demand public transport!!! Looks like a local …

: I’ve never developed for Android, I‘ve never tried “Reactive” programming and I’ve only used Java in …

: Lesson on Learning Just found some old notes I took about learning, although I’m not sure of the context. All of it …

: Good post (as usual) about Microsoft, Zoom and Slack by Ben Thompson: …

: Campaign Monitor API I was working with the Campaign Monitor API (https://www.campaignmonitor.com/api/) today. It works …

: 📚 I ended up enjoying the Fire Sermon so much I read the next two in quick succession! Dark at …

: I enjoyed the latest episode of Without Fail, gave some good insight into how Facebook became what …

: I’m really enjoying listening to Build Your SaaS. The latest episode on pricing and why “charge …

: Nice overlap between latest https://www.ted.com/series/worklife_with_adam_grant and …

: spreadprivacy.com/google-fi… Finding #4 surprised me the most, that Google serves up …

: 📚 My holiday reading this week had an accidental dystopian theme: The Handmaid’s Tail by Margaret …

: Hot tip: Use cling wrap for long term cable storage ✅ cheap ✅ available everywhere ✅ comes off …

: Enjoyed listening to Brittany Martin interview Sam Saffron on the latest Ruby on Rails Podcast: …

: Today I learned you can run rails notes to get a report of all comments in Rails that start with …

: Search is hard and people expect Google quality search on every website they visit. We’ve been …

: Good Episode of Work Life on Bouncing Back (or forward) From Rejection: …

: Haha! Had some fun watching this video of 3 Japanese Internationals take on 100 kids in football 😆 …

: Coincidentally, today I happened to read two very different (age and content) but complementary …

: I just listened to a great podcast episode on Managing Burnout at work. Some really good tips on …

: Australia Post to start inspecting all mail for violent images Under the Criminal Code Amendment (Sharing of Abhorrent Violent Material) Bill 2019 it’s now a …

: 🤔 YAML is too vulnerable to attacks to consider for new projects. – Thoughtbot Application …

: Kayaking on the Parramatta River with a friend this morning was an awesome way to start the …

: I really enjoyed listening to Spy Master by Brad Thor yesterday and today! Well written, well …

: Notes to future me about installing pre-release Ruby/Rails versions: rbenv install --list rbenv …

: Standing room only at Rorosyd this evening! Great talk by Donna Zhou on how to give a good talk! 🙂

: Today I needed to GET a list, pluck the IDs and then do a DELETE request per ID. I did the first …

: I love learning new Git tips and tricks, especially when they explain the why as well as the what!

: Changing the Rules of the Gamification From walking on the spot before bed to reach 10,000 steps in Pedometer++ or going for late night …

: I enjoyed watching my son doing some code.org challenges today. And I only offered him unsolicited …

: Pretty disappointed that even with a strong surplus the 2019 Australian budget leaves foreign aid at …

: I love this Rails PR (and the original code it removes). Some crazy optimisations/shenanigans were …

: 📚 I’ve spent a decent chunk of today reading (listening to) Heads You Win by Jeffrey Archer. I’m …

: The Amazing State of Technology in 2019 Book a private car 24x7 with no notice. Track it in real time. Shows up within a minute of scheduled …

: My wife and I have been trying to not let busyness be an idol. I like the premise behind “No points …

: I’m looking forward to the inaugural RunWest 12km fun run tomorrow. My goal is 54 minutes or less. …

: Passion is a consequence of effort, not just a cause — Adam Grant on the WorkLife podcast (overcast …

: In Advanced ActiveRecord Querying I learned you can nest joins. I knew about joins(:suburb) but …

: In Praise of Apple, Iteration and Ecosystems I know it’s trendy to pick on Apple but I’m really impressed by how smooth the Apple ecosystem is …

: Mind. Blown. Double-click a curly, square or round brace in the Mac terminal and it automatically …

: Most problems don’t require more data. – Seth Godin - Data Into Information I’m sure big data …

: ActiveRecord - solving for value is NULL or is not in list Today I encountered an issue where 2 + 2 was only equalling 3 when fetching data using ActiveRecord …

: In Praise of RailsCasts When I was looking for information on Rails Metal/ActionController::Metal the other day I was struck …

: Using Git to Edit Prose Git is great at comparing lines of code that have changed but not so good at individual words within …

: After an interesting article on memory usage and bloating in Ruby I came across another article by …

: Today I Learned that to include a Ruby symbol in a YAML file it needs to be prefixed with …

: Windows usage Venn Diagram

: Sometimes I’m happy to be a late adopter of Ruby and Rails, other times I feel like I missed …

: Today I started learning about ActiveJob. Thanks to a deprecation warning I’m also learning …

: Various (but widespread) adoption problems with Teams, SharePoint and OneDrive are a good reminder …

: Nate Berkopec’s email series on practical Sidekiq has been really good. The most recent one delved …

: Ruby 2.6.2 is out (and 2.5.4) with some security fixes. My upgrade steps (fish, homebrew and rbenv) …

: Matching Bundler Version with Heroku Bundler is a very helpful tool for managing third party dependencies in Ruby. Bundler takes a …

: Deploying a Rails app to Heroku Prompted by Ruby Rogues episode 403 (Overcast link) I finally deployed my very unfinished Parkrun …

: Yesterday I read (listened to) The Fox by Frederick Forsyth (read by David Rintoul) 📚 It was an easy …

: Model View Controller and Rails Apps Model View Controller (MVC) is a design pattern in which an application’s code is divided by …

: I feel confident with Git but I keep learning new things. Today: using git add --patch to choose …

: I was surprised to learn recently that web browsers also cache DNS lookups (in addition to the OS …

: Shortening the Feedback Loop - Automatic PDF Refresh on Source Change I’ve been exploring ways to generate nicely formatted PDFs from a Ruby on Rails app (without …

: First their video lessons, now their books… Thoughtbot are giving away all their knowledge …

: Every time I hear Tim Riley speak it all makes so much sense… But then when I think about …

: The more I hear about Facebook’s product, spying & corporate culture the gladder I am to have …

: I ran my monthly 10K Sydney Striders race this morning at North Head… beautiful spot and I …

: Online Payment Redirects - Proof of Concept As I mentioned yesterday, I recently needed to make an API call as part of the request-response …

: Online Payment Redirects - Initial Experiment Recently I came across the need, on our server, to fetch a secure token from another server run by a …

: I think Deep Learning (starting with Keras) might be my next holiday learning project…

: How I Moved from GitHub Pages to Micro.blog Yesterday I described why I moved from Github Pages to Micro.blog so today I wanted to cover how I …

: Why I Moved from GitHub Pages to Micro.blog My first attempt at blogging regularly was on my Squarespace site while I was trying to “go …

: Trying to Build a Blogging Habit A classic is something everybody wants to have read, but no one wants to read. – Mark Twain I …

: Listening to old episode of All Things Git (hosted by two Microsoft employees). Fascinating moment …

: Enjoyed this article on the bigger picture considerations around Implementing Impersonation. I …

: Today I learned that require: false in a Ruby Gemfile turns off auto-require for that gem. Bundler …

: Idle thought: Could the Chaos Monkey/Resilience Engineering approach be applied to people & …

: novice designers are best served by writing test-first code. Their lack of design skills may make …

: Reason # 1,562 that I love Ruby (and the frameworks it has fostered): ActiveSupport::Duration has …

: Enjoyed hearing the emphasis on simplicity and speed of deployment on the latest Ruby Rogues …

: New Rails App Checklist I run up a new Rails app often enough that I have a certain way I like to do things, but …

: Easily Paste Unstyled Text on the Mac Most people know the basic keyboard shortcuts ⌘X, ⌘C and ⌘V for cut, copy and paste but, if you like …

: Nearly finished the Upcase Intermediate Rails course. Last lesson is on search and in addition to …

: I’m going through the (now free 🎉) Upcase course by Thoughtbot. In lesson 3 I just learned about …

: Listening to episode 10 of the Ruby Testing Podcast and Zach mentioned Page Object Model, a way to …

: Notify via Bugsnag When an Exception Hasn’t Been Raised In a REST API I was writing, I wanted certain unlikely failures effecting customers to get logged to …

: 📚 I’m reading Seeing What Others Don’t by Gary Klein and came across this great quote: …

: While I’m on the book theme, we listened to “Here Be Monsters” by Alan Snow (read by Bill Wallis) in …

: These holidays I also re-read “Only Time Will Tell” by Jeffrey Archer (2013). It was a great read …

: Aforementioned (old but pretty good) book was “Inside Steve’s Brain (Expanded Edition)” by Leander …

: Venturing Out For a long time I have liked the idea of being self-employed. I’m sure there are many romantic …