Josh Brown

Josh Brown

@joshantbrown.com

Product Engineer. Ruby / Hotwire. Aspiring polymath; designer, developer, writer, maker, creator, gamer and aviator. Occasionally stream on Twitch and YouTube.

586 followers346 following78 posts

This is amazing. Absolutely huge thanks to @marcoroth.dev 🙏

Marco Roth@marcoroth.dev

At Rails World 2025, I introduced ReActionView, an initiative to explore what's possible in the Rails view layer for 2025 and beyond. As part of this, I announced Herb::Engine, an ActionView-compatible ERB engine built on top of the HTML-aware Herb Parser. #RailsWorld2025

Looking forward to doing this next month! I should probably figure out how I’m travelling between them all though 😅

friendlyrb.com@friendlyrb.com

🏆 RUBY TRIATHLON 2025 Started in 2023 - attend 3 conferences in 3 weeks: • @railsworld • @friendlyrb • @euruko 9 of us did it in 2023, happened again in 2024. Ready for the ultimate Ruby adventure? 🏃‍♂️

Ticket has been acquired! Looking forward to this! Just need to secure tickets to Rails World, and EuRuKo to partake in the www.rubytriathlon.com 👀

friendlyrb.com@friendlyrb.com

Who's ready for Friendly.rb '25? - 🎟️ Tickets available - 🎤 You may submit your Call for Paper - 🏔️ Activity announced - 😱 The first batch of speakers announced - 💪 Sponsorship opportunities available - 🎲 Surprises in progress friendlyrb.com

Occasionally I find myself reflecting on the Principles behind the Agile Manifesto - and it always surprises me just how much they've formed a foundational basis for my own product/software development philosophies that continue to provide value. Here's a couple that I find particularly of note: 🧵

View full thread

"Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done." Adopting the tools of Shape Up and defining work at the right level of detail (not over/under shaped) has been the best way I've found to achieve this.

Occasionally I find myself reflecting on the Principles behind the Agile Manifesto - and it always surprises me just how much they've formed a foundational basis for my own product/software development philosophies that continue to provide value. Here's a couple that I find particularly of note: 🧵

"Working software is the primary measure of progress." If you're giving a status update, show the darn thing, working or not. Always a little challenging if you're doing a refactor, or something particularly data/backend focused, but do it anyway.

"Simplicity--the art of maximizing the amount of work not done--is essential." This one has honestly saved me and teams I've worked with more times than I could count. Don't build things you don't need. Don't build overly complicated things.

Status enums are a slippery slope At some point you’ll want to know when something reached a certain status, or you’ll have some combination of statuses that have some special meaning, and it spawns complexity Nullable dates work much better. If you must have a status, consider a status model

Status enums like this in Rails apps are almost always a mistake. This would be much better modelled as nullable dates — created_at, started_at, completed_at, delivered_at, paid_at, cancelled_at. You can then use scopes to select where null or where not null.

Been having fun with #AdventOfCode so far. Thought I'd share some of my solutions, so here's day 4: I've been trying to incorporate and learn about some lesser used Ruby methods, today's was repeated_permutation to generate all the different directions the search should move in.

Day 5 of #AdventOfCode, no fancy methods today, solution feels somewhat noddy but I like how the page ordering came together in the end with passing an array of dependent indexes to sort by.

Tailscale really is a joy to use. The airfield I help operate runs some software that uploads weather data to our website, but it’s old and only supports insecure FTP for uploads. No issue – just run an FTP server in Docker and bind it to a private ip through Tailscale.

I was amazed the other day at how easy it is to connect to the “firehose” of Bluesky and just see every interaction in real-time. With just one gem, and several lines of code. 🤯 github.com/mackuba/skyf...

github.comGitHub - mackuba/skyfall: A Ruby gem for streaming data from the Bluesky/AtProto firehoseA Ruby gem for streaming data from the Bluesky/AtProto firehose - mackuba/skyfall
Andy Bell@bell.bz

It costs $42k a month to hack around on the Twitter API It costs $0 a month to hack around on the bluesky API Bluesky is also open source so you can hack around with actual bluesky if you want too

Sometime in the early 2000s I came across Active Worlds, a kind of 3D version of the internet where you could chat, build and travel. It had a registry of 3D objects and used simple scripting to set define texture, text, picture, colour, interaction, animation. It was a gateway to all kinds of dev.

Wes Bos@wesbos.com

How did you get into web development? MySpace? Comp sci? Made the jump from print? Bootcamp?

View full thread

Active Worlds also had an SDK for C/C++ and Visual Basic that let anyone create an in-world bot. People used it to create entire RPG games, paintball, and various other experiences and tools. It created a space that made it easy to access lots of tech, and people doing interesting things with it.

Sometime in the early 2000s I came across Active Worlds, a kind of 3D version of the internet where you could chat, build and travel. It had a registry of 3D objects and used simple scripting to set define texture, text, picture, colour, interaction, animation. It was a gateway to all kinds of dev.

Wes Bos@wesbos.com

How did you get into web development? MySpace? Comp sci? Made the jump from print? Bootcamp?

I must have been no older than 13 at the time. People were creating all sorts of things, and open to sharing it all. For example, PHP was being used to sequence through images that could be rendered on in-world tv object creating a kind of virtual image-only TV station. People built entire tv sets.

It would be nice if when you joined a starter pack on here it had the option of requesting to join it. I imagine it’s a bit of a chore to keep on top of right now. Maybe could evolve into some community grouping feature of sorts. Especially when combined with feeds.

I really like the data portability aspect of At Protocol. Excited to see how it develops. One major thing I think is potentially missing right now is access control. How can I restrict which apps and/or users can see my data?

dan@danabra.mov

i wonder if diagrams like these might help draw the distinction between ActivityPub (and how Mastodon uses it) and AT Protocol (and how it’s used by Bluesky and atproto apps)? with AP, instance = application + hosting. data gets sent between instances. with AT, data flows *from* hosting *to* apps

Data portability still feels like an untapped opportunity. It was one of the great things GDPR tried to do. If I want to move between apps and bring my data and identity with me then I should be able to do so.

You are up to date.