@jackmorris@mastodon.social
@jackmorris@mastodon.social avatar

jackmorris

@jackmorris@mastodon.social

Indie 🍎 iOS dev (with some 🦀 Rust on the side)

Currently building TrailPro, a companion app for trail runners: https://trailpro.app.

Previously at:
⛷️ Carv, a smart ski coach combining in-boot hardware with in-app coaching
🏃 Google, working on Google Fit & Wear OS

This profile is from a federated server and may be incomplete. Browse more on the original instance.

jackmorris, to random
@jackmorris@mastodon.social avatar

🚀 My new iOS app, TrailPro, is now available! 🏃

https://trailpro.app

TrailPro is a fitness app for trail runners, and is totally free. I'd love for you to check it out and tell me what you think 😊

This started as my next "big thing", but has now morphed into a hobby project following my new role at Apple. So whilst I'm unlikely to be able to work on it once I start, I'm always happy to receive feedback. It will however remain entirely free for the foreseeable.

jackmorris,
@jackmorris@mastodon.social avatar

@WTL not currently, good idea though!

jackmorris, to random
@jackmorris@mastodon.social avatar

Have been distracted by things recently, however have finally got around to implementing a few points from my TrailPro todo list 👟

  • Choose how to sort your runs (recency, duration, distance, and ascent for now)
  • Filter your runs down by those same metrics
  • Define custom equipment (effectively just tags), and filter by that too!

TrailPro is my upcoming trail running app (think running app + hiking metrics), you can check out the beta here 👉 https://testflight.apple.com/join/5rZc8xQS (all feedback welcome!)

jackmorris, to random
@jackmorris@mastodon.social avatar

🚀 Opening up a TestFlight for my new project - TrailPro! 🏃 https://trailpro.app

TrailPro is a companion app for trail runners, and you could think of it as a cross between a running and a hiking app. It's still early days, but I'd love to hear any feedback you may have.

You can check out the TestFlight ➡️ here https://testflight.apple.com/join/5rZc8xQS ⬅️

stroughtonsmith, to apple
@stroughtonsmith@mastodon.social avatar

Art Projector: Da Vinci Eye

This looks like the kind of app you might take to the park to paint with, like the Quest 3 people are doing 😄 Blending the physical world with augmented reality overlays

/via https://apps.apple.com/us/app/id6467633766

image/jpeg
image/jpeg
image/jpeg

jackmorris,
@jackmorris@mastodon.social avatar

@stroughtonsmith Nice to see that they're already enforcing their review guidelines

jackmorris, to random
@jackmorris@mastodon.social avatar

I've hit a few times now where I've wanted to share a value across main actor contexts (but through a different concurrency domain). E.g. with APIs that I call on the main actor, with a callback in which I jump back to the main actor.

With strict concurrency checking I'd have to constrain the value to Sendable (even if I only actually use it on the main actor), so I've started using a tiny box to allow shipping values between main actor contexts. I think this is fine?

https://jackmorris.xyz/posts/2023/11/29/shipping-values-between-actors/

simonbs, (edited ) to random
@simonbs@mastodon.social avatar

I hope that this will one day be valid Swift code.

class MyType {
let foo = Foo()
let bar = Bar(foo: foo)
}

bar can’t be initialized because its property initializer references the foo instance member but self is not available. Naively, I would expect the compiler to be smart enough to handle this though.

jackmorris,
@jackmorris@mastodon.social avatar

@simonbs likewise - the compiler can already do this for static properties (i.e. one static let that depends on another), and fails to compile if you have a cycle, so definitely feels feasible

daniel, to random
@daniel@social.telemetrydeck.com avatar
jackmorris,
@jackmorris@mastodon.social avatar

@daniel 😍 love these, so satisfying

jackmorris, to random
@jackmorris@mastodon.social avatar

Excited to announce my next adventure: I'm going all-in on indie iOS development, having quit my job a few weeks ago.

Some more details & thoughts here ➡️ https://jackmorris.xyz/posts/2023/10/16/going-solo/

This has been a move that's been on my mind ever since I released my first app back in 2011, and I'm thrilled that I can finally give it a shot. Slightly daunted by what's to come, but can't wait for the challenge and to work full-time on some ideas that’ve been rattling around my head.

jackmorris,
@jackmorris@mastodon.social avatar

@nighthawk Thank you! 🙏

MuseumShuffle, to random
@MuseumShuffle@mastodon.social avatar

As someone with an Image-heavy app I was a little nervous about switching to using ImageResource. Now that I have it's so nice not to have to deal with mistyping an Image filename.

jackmorris,
@jackmorris@mastodon.social avatar

@MuseumShuffle 100%! The first time I had an image asset autocomplete in the beta I was ecstatic. Have been using R.swift previously but can’t wait to remove it

jackmorris, to random
@jackmorris@mastodon.social avatar

@stroughtonsmith I’ve recently resurrected my Swift 1-era game 01, fixed a bunch of crashes and added support for notches & pills. Totally free game that teaches you how to read binary numbers. Planning on more changes for the future & always open to feedback 😊 https://apps.apple.com/gb/app/01-binary-puzzle-game/id915723834

  • All
  • Subscribed
  • Moderated
  • Favorites
  • anitta
  • kavyap
  • everett
  • thenastyranch
  • magazineikmin
  • ngwrru68w68
  • DreamBathrooms
  • modclub
  • Youngstown
  • slotface
  • PowerRangers
  • osvaldo12
  • InstantRegret
  • rosin
  • Leos
  • hgfsjryuu7
  • Durango
  • vwfavf
  • khanakhh
  • tester
  • GTA5RPClips
  • ethstaker
  • mdbf
  • cubers
  • tacticalgear
  • normalnudes
  • cisconetworking
  • provamag3
  • All magazines