All blogs / Mobile / iOS / Android
Masilotti.com
Deciding what to build, shipping it, or teaching you how to do it yourself.
- Posts
- 156 from 22 Jul 2013 to 11 Sep 2026
- Posting
- weekly (29 in the last year)
- Kind
- personal blog
- Feed
- https://masilotti.com/feed.xml
- Also at
- https://newsletter.masilotti.com/
2026 19
- Ruby Native apps are running on 100,000+ devices
- I’ve spent 10+ years helping Rails devs reach the App Store. Today, someone shipped without me.
- Ruby Native is here
- How to build a Rails app that's ready for the app stores
- How I built a native iOS app with Rails and one YAML file
- A different kind of tired
- What I'm saying when nobody's paying me
- On building a framework-agnostic Ruby gem (and making sure it doesn't break)
- Why I ditched monthly pricing
- The tool I wish I had 25 apps ago
- The kid at the co-working space
- Getting your Hotwire Native app into the App Store
- What I've learned from shipping 25+ mobile apps
- The Rails developers’ guide to mobile app frameworks
- AI makes it easier to build the wrong thing faster
- Introducing Permission Not Required
- I went off the deep end with AI
- Hotwire Native deep dive: In-app purchases on iOS
- I finally built the in-app purchase tool I wish I had years ago
2025 43
- 2025: The year consulting wasn't the only thing
- Hotwire Native deep dive: Native Polish
- Missed the Fizzy livestream? Here’s the recap.
- The week my products finally felt real
- Hotwire Native Black Friday sale
- Hotwire Native deep dive: Push notifications
- Hotwire Native around the web - November
- Ruby already solved my problem
- New bridge component: NFC scanner
- My failed live stream yesterday
- Using Swift to build… Android apps?
- Hotwire Native deep dive: Authentication
- Offline mode for Hotwire Native apps
- Mobile apps, the Rails way
- Bridge Components v0.10 is out
- 4 board games my 4 year old loves
- Hotwire Native iOS v1.3.0 BETA
- Add 16 native features to your Hotwire Native app in 5 minutes
- I'm officially a published author!
- Welcome to the new home of Hotwire Native Weekly
- This talk pushed devs to try Hotwire Native
- Hotwire Native at Rails World
- RailsConf workshop recording and Ruby Friends v1.2
- Ruby Friends is in the App Store!
- RailsConf inspired me to build something new
- Hotwire Native at RailsConf
- Hotwire Native v1.2.x and Hotwire Native LIVE #4
- iOS 26, Hotwire Native LIVE #3, and a new bridge component
- Book sale, Hotwire Native LIVE #2, and Hotwire Native around the web
- This Thursday: Hotwire Native Live #1
- Add a native tab bar in Hotwire Native – iOS
- Opaque navigation and tab bars in Hotwire Native – iOS
- Maintainable Software Podcast with Robby Russel
- Set native screen titles in Hotwire Native
- Present forms as modals in Hotwire Native
- Hide content with Tailwind CSS in Hotwire Native
- Hotwire Native v1.2 video
- Hotwire Native by example
- A library of bridge components for Hotwire Native apps
- New bridge components, a book milestone, and a question for you
- Two new chapters and recent podcast appearances
- What you'll learn in "Hotwire Native for Rails Developers"
- Hotwire Native book, in beta!
2024 12
- Hotwire Native 1.1 released
- 10 tips from 10 years of Hotwire Native
- Turbo Native is dead, long live Hotwire Native!
- Burnout today, parental leave tomorrow
- The power of Turbo Native path configuration
- Rails Authentication: Gems vs. Recipes vs. Generators
- Turbo Native and pull-to-refresh
- Turbo Native iOS and Android apps in 15 minutes
- Rails link_to and nested data attributes
- The secret tool to launch your Rails business in the app stores
- A roadmap for building Hotwire Native apps
- Safer Rails partials with strict locals
2023 24
- Idea to App Store in 7 days
- How to use Strada with Turbo Navigator
- Rails World 2023: Just enough Turbo Native to be dangerous
- Turbo Navigator: Gearing up for the merge into turbo-ios
- Strada officially launched!
- Hotwire Native: When to upgrade screens to native?
- Solopreneur on vacation
- App Store submission tips for Hotwire Native
- Turbo Native tabs
- Dynamic UIMenu in Turbo Native apps
- Call Swift APIs from Stimulus in Turbo Native
- JavaScript alerts in Turbo Native
- Interacting with Stimulus from Turbo Native apps
- A Rails-like endpoint switcher for iOS apps
- Enhancing Turbo Native apps: How to hide web-rendered content
- Swift for Ruby developers crash course
- How to debug Hotwire Native apps with Safari
- I'm leaving Twitter for a bit
- The RailsDevs developer bounty program
- Doing more only makes a to-do list grow longer
- Staying focused as a solopreneur
- Progressively enhanced Hotwire Native apps in the App Store
- How a cold DM in 2016 changed my life
- Being more intentional in 2023
2022 8
2021 11
- Hybrid iOS apps with Turbo
- Hybrid iOS apps with Turbo – Part 6: Tips and tricks
- Hybrid iOS apps with Turbo – Part 5: Native authentication
- Hybrid iOS apps with Turbo – Part 4: The JavaScript bridge
- Hybrid iOS apps with Turbo – Part 3: Forms and basic authentication
- Hybrid iOS apps with Turbo – Part 2: URL routing
- Hybrid iOS apps with Turbo – Part 1: The Turbo framework
- XCTest tips and tricks that can level up your Swift testing
- Improving XCTest test name readability
- Clean up your Swift test suite with XCTUnwrap
- How to set WKWebView's title under test
2020 15
- Dynamically verified Swift mocks
- Swift mocks without protocols
- Roll your own dependency injection in Swift
- Testing the UI without UI Testing in Swift
- Redirect www traffic to a naked domain in Rails
- Regexes with multiple slashes in Ruby
- My Product Hunt launch: what worked and what didn't
- Idea to paying customer in one month
- Tailwind CSS everywhere and a new Masilotti.com product
- How to test deep links with UI Testing
- How to manage multiple sheets in SwiftUI
- Zero to Tailwind CSS over the weekend
- How to play board games online with your friends
- Better unit testing with Swift
- Great two-player board games
2019 1
2018 2
2017 2
2016 7
2015 8
- Concepts in Code podcast: Testing
- Custom helpers in XCTest
- UI Testing cheat sheet and examples
- Three ways UI Testing just made test-driven development even better
- Capture completion blocks with Cedar BDD
- One macro to help Objective-C dependency injection
- Getting started with UI Testing in Xcode
- NSDate Manipulation in iOS