Home

🐘 Mastodon Archive

happy Tuesday from Dutch

a photograph of a silver and black goldendoodle laying on the lawn looking happy, with a burgundy bandana and a toy rope.

i’m always on the lookout for cool prints from digital artists, i love framing + hanging them in my office. anyone have recommendations?

whenever someone rewrites history claiming Apple should’ve simply adopted USB-C instead of inventing Lightning… remind them that the USB-C spec wasn’t finalized until two years after Lightning debuted (2014 vs 2012).

big ā€œfirst day of schoolā€ vibes today at work šŸ‘ØšŸ¼ā€šŸ’»

as someone who works on multiple different Macs (a Mac Studio, and two MBPs), having a single thunderbolt to plug in to any of the machines to get all my peripherals* connected is great, but i do wish there was a TB4 KVM so i could at least have the Studio plugged in all the time and then switch to one of the laptops. right now i resort to screen sharing from the laptops if i need something that's on the Studio.

*peripherals: pro display xdr, keyboard, mouse, ethernet, camera, etc.

today i finally get to talk about something big that’s been going on behind the scenes for a while: the startup i was working on (Commonstock) was acquired by Yahoo!

as part of the acquisition i get to continue working on the features and vision we’ve been building, but at a much larger scale šŸ“ˆšŸš€ axios.com/2023/08/23/commonsto

one of the crosses i bear:

• start a project on my laptop because the break from routine helps me get into flow
• get into flow on laptop
• can’t switch to my desktop (more comfortable chair, faster compile times, bigger screen) for fear of disrupting flow

does anyone else read through their resume occasionally to get through a spate of imposter syndrome or just me? sometimes it helps to see what kinder me said about myself in the past.

took a little break from mastodon et al over the last month or so.

it's nice to reset and remember i’m not required to scroll through the text that appears on the screen to survive. have been reading [books], traveling, and thinking about apps/updates in the extra time. dipping my toes back in šŸ‘‹

ā€œApollo for Redditā€ [until its killed by Reddit’s upcoming capricious API pricing]

@christianselig killer shoutout dude!

the dashboard is back!!

remember when all the rumors sources claimed the Mac Studio was dead? šŸ˜‚ broken clocks, they’re right occasionally.

good morning and happy to all who celebrate!

run, don’t walk to see ā€œAcross the Spider-verseā€ 7/7

having an absolutely wonderful time in Honolulu with my better half. much needed break to reset and refocus. šŸ¤™šŸ¼šŸŒ“

selfie of my wife and i sitting on a bench in Waikiki, Honolulu, Hawaii

for real though, who's working on the next iteration of Path?

after what seemed like an incredibly long and gloomy winter (even by Utah standards), it seems like we've turned a corner and it's finally nice enough to sit outside and work from the patio

feeling a little sluggish this morning after a busy weekend, but still feels pretty great to sit down in my office and kick the week off. Glitch Mob is bumping, the caffeine is hitting, and xcode is compiling šŸŽµšŸ§‘ā€šŸ’»

having some landscaping work done this week and right now they're running the rototiller, so it's a great day to blast the Meteora 20 LP in the office.

top-down photograph of a vinyl record box for Linkin Park’s Meteora (20 year anniversary edition box set) placed on top of a record player.

if you know me you know i'm a pretty optimistic person, but as the weather transitions from winter into spring, my optimism levels go through the roof ā˜€ļøšŸŖ“

a close-up photograph of a home office focused on a portion of the desk and artwork on the wall. includes an Apple display, MacBook Pro, potted plant, iPod Classic, and other various desk accessories. the wall includes several pieces of artwork and a snowboard.

this is just like… my opinion man… but Figma is not good software.

the dude your opinion GIF

i usually alternate between two competing desires:

1. wanting to retire and move to a remote mountain cabin
2. wanting to retire and move to a remote tropical island

unfortunately i can't do either šŸ˜‚

i’ve been thinking lately about the term ā€œcontent creatorā€:

in my opinion, the problem with a lot of the ā€œcontentā€ that’s put out there, it’s that it’s made with the sole purpose of sucking up time and attention. art is best when the goal is the art, not the consumption metrics of the art. with the rise of ā€œAI generated contentā€, this is more important than ever.

make things because you enjoy making them.

really appreciate all the love on Albums over the last couple months since i shipped v1! it’s been really fun seeing it resonate with so many people 🤘 (crossed 200 net copies sold yesterday!)

once again for those in the western hemisphere: i’m launching my new app @albums on Product Hunt today and would really appreciate an upvote there to help people discover the app. thank you! producthunt.com/posts/albums-2

For those that are awake, Albums is launching today on Product Hunt! It’d really mean a lot to me if you could help others discover the app by upvoting it or sharing a comment! Thank you! producthunt.com/posts/albums-m

really happy with how this accent wall turned out in my office. just a few more pieces before i can write a home office update post for the blog!

photograph of a home office wall with a dark greenish blue paint color. a bookshelf with multiple technical and self-help books in the foreground, with a record player, speakers, and legos on the top. a replica eames lounge chair is also partly visible.

man i hate april fools day šŸ˜‚

there are really only two classes of ā€œjokesā€:
1. the jokes i wish were true and aren’t, ending in disappointment.
2. the jokes that never should’ve been made to begin with.

of all the many hats i wear as an indie dev, the one that's hardest for me is copywriter. it's difficult to strike a balance of conversational/relatable while not going over the top with marketing-speak or relying on clichƩs. (working on a new product page for @albums)

at the end of the day i only want people to buy the app if it works for them/their habits, but i also don't think saying "shrug, i made this app, try it if you want?ā€ is very confidence-inspiring šŸ˜‚

happy mlb opening day to all who celebrate! we got a fresh dumping of snow (~3inches), so my opening day brats will take a bit more commitment to make.

now that @albums v1.2 is out, maybe my brain will let me focus on other projects, like the big app redesign at my day job. always harder for me to focus when i have something about ready to get over the finish line. indieapps.space/@albums/110104

the hardest part about working on side projects is wanting to work on them all the time. i enjoy my day job, but i _love_ my side projects. maybe one day.

it’s sad watching people leave their roles at twitter (many of them after fairly long tenures there). i am a very optimistic person – some might say too optimistic – but the last few years it seems like it’s been one thing after the next and sometimes it gets me down.

i sincerely hope we as human beings can work together towards a more fair and equitable world for all.

if you need a timeline cleanse, i wrote a quick post about raising our puppy Dutch as we approach his first birthday 🄳 (with pictures of course) josephmclaughl.in/posts/dutch-

the year is 2023 and writing proper keyboard avoidance code on iOS is still difficult. edge cases on edge cases (especially if you want to properly account for hardware keyboards, split screen or stage manager on iPad, and the floating keyboard)

i wish there was a way to plug in a USB-C device to my MacBook Pro and turn off powering/charging the connected device. anyone know of a macOS utility that does that?

i’m convinced that if you’re doing software development right, most people won’t notice ~90% of the work you did, and that’s ok.

if you're curious about the backstory behind my app @albums, i finally wrote down an overdue announcement post on my personal site. i dive into why music is so important to me, my guiding principles for developing the app, and more.

if anyone takes the time to read it, i'd love to know what you think! josephmclaughl.in/posts/albums

before i even started working on @albums i wanted a quick and powerful search for my music library that was always within reach. it’s been super fun making my wish come true this week! indieapps.space/@albums/110027

so the backstory to this photo of Dutch is that i took his squeaky ball that he was playing with to encourage him to settle down for the night.

instead he started scheming ways he could retrieve the ball from the back of my nightstand šŸ˜‚

monochromatic photograph of a goldendoodle sitting on a bed, looking off to one side of the camera with a determined expression. in the foreground part of a MacBook Pro is visible with some blurry code in Xcode.

unrelated... what are people putting in indie app press kits nowadays? anyone have a best practices doc or particularly proud of one they've put together?

if anyone in the press would like to check out the latest version of @albums which just shipped with support for iPad (unlike the upcoming classical music app), i'd love to get you set up with a promo code. feel free to reply here or email me: joseph at zero1software.com zero1software.com/albums/

submitted version 1.1 of @albums to Apple for review. by far the least fun and most stressful part of the developer experience, but necessary to get this huge update out.

also on the heels of the announcement that Apple’s new classical music app won’t support iPad… version 1.1 of Albums will support iPad šŸŽ‰

git stats: 30 commits, 40 changed files with 2,978 additions and 769 deletions. not bad for a month on a side project!

when someone purchases my app and then goes to the trouble to reach out and compliment it and/or suggest fixes and features it really puts a smile on my face! it's really fun to make an [opinionated] app and have it resonate with people.

this weekend’s agenda:
• put the finishing touches on the @albums 1.1 beta
• go snowboarding

kudos to anyone and everyone who shares work in progress in any public forum. every time i do it i’m scared for any number of reasons (will people like it? is it wrong? will i hate/change it two minutes after i post it?)

it’s scary being a perfectionist on the internet.

anyway, i've been working on a now playing screen for my app @albums so that the screen reflects the album artwork, but all the text and controls are still readable with high enough contrast. here are a couple examples (wip):

can i vent for a second? telling your friends ā€œoh wow, this looks professional!" is not the compliment you think it is if the thing you're complimenting is in any way tied to their profession.

uh yeah, the app does look professional, do you know why? i'm a professional app developer and have spent almost 15 years honing my craft and hundreds (sometimes thousands) of hours working on the app you're looking at. it damn well better look professional.

/vent

it’s really disheartening to read stories like this seemingly every other week. app review is the final boss that you need to defeat before releasing your app to the store, and often you have no control over whether you’ll win.

when apple introduced the ā€œspam appsā€ rule, it was supposed to filter out ā€œlow effortā€ submissions. but like all subjective measures, it’s arbitrary and without recourse. 100s of hours invested in an app only to be told ā€œnoā€ at the threshold. lucas.love/blog/pagi-app-store

there's no better feeling in iOS-land than when you really nail a custom interactive transition 🤩

got coffee this morning via the drive through and as we were pulling away one of the employees exclaimed ā€œis that dutch?!ā€ (our dog’s name)

we’ve made it ladies and gents, we’re regulars. probably helps that our dog is so cute 😊

photograph of a black and silver goldendoodle with his head cocked to the side and snow on his face

for the curious: the main win was pre-calculating the cell sizes (whenever a setting/resize event caused them to need to be recalculated). these devices are so fast now that we get lazy/complacent running a few minor calculations in `sizeForItemAt:`, but that’s called every time a cell is going to come on screen. save some cycles, precompute sizes if possible.

great scrolling performance should be table stakes for any app. all our high end devices can scroll 120fps, and yet some apps struggle to maintain 30ish.

anyway, spent part of today tuning the scrolling in @albums and hot damn it’s looking good. scrolls like butter.

got a new toy

photograph of a silver iPod nano (third generation) with the screen on, showing the classic split-screen iPod UI showing there’s no music

one of my favorite things to do when creating reusable components or helper functions in a codebase is to add a simple set of comments using triple forward slashes (///) so that they appear nicely formatted when ⌄-clicking on the symbol in Xcode.

self-documenting code is great... but good documentation can be better.

a screenshot of a popover view in Xcode showing documentation for a custom function called ā€œtranslucentAppearanceā€ which returns a UINavigationBarAppearance object. it shows as being declared in the file ā€œUINavigationBarAppearance+DS.swiftā€.

the summary reads: ā€œA fully translucent background with no hairline at the bottom.ā€

the discussion reads: ā€œUsed in the app for nav bars that have a secondary row in combination with `UIView.DS.navigationBarBackground`, which has the same look as our standard nav bars, but can be set to a custom height.ā€

one of the most satisfying things is replacing custom components with standard ones (where it makes sense).

today's success has been replacing a half dozen different "custom" navigation bars in our app with system ones that look identical or better and behave in a more consistent and predictable manner (with transition animations for "freeā€).

what are some technologies that when they work are so magical they're almost "too good to be true", but when they don't work there's seemingly no way to troubleshoot or fix them?

i'll start: bluetooth

today i fought the rectangles and came out the winner, but it was close.

feels so nice to be able to browse and send toots from my mac via Ivory (thanks @chrispederick and @esamecar for sounding the early alarm!)

one of the things i appreciate about shipping an indie app is the opportunity to hone skills outside my immediate wheelhouse. this morning i spent probably far too much time tweaking a template to share reviews, but i enjoy how it stretches my brain in different ways from building apps. here’s a before/after of my initial take (which i shared this morning) and the reworked version.

life is good, appreciate all the love today ā¤ļø

i’m excited to announce my new app @albums is available on the app store today for $2.99!

i’ve been tweaking and tuning the core premise for over three years and over the last few months i’ve put in the work to get it to v1.0. there are plenty of features missing, but this is a great starting point for the future development.

if you listen to complete albums via Apple Music/iTunes, i’d be honored if you’d check it out and let me know what you think! apple.co/3XmlZlf

any recommendations for good office plants? desktop, shelf, or floor are all good. my office gets almost entirely indirect sunlight.

this article is fascinating and i resonate with a lot of it. maybe it’s time to give it a try? thanks @gn for sharing ungated.media/article/lowercas

I’m really excited about the upcoming release of my first indie app in over 12 years (my last indie app was released in 2010 😱), which I submitted to the App Store yesterday.

If you’re interested in getting updates, I’ve created an account on indieapps.space and I’ll keep the promotion to a minimum over here – @albumsšŸŽµ

I couldn’t sleep last night and found myself scrolling through the local timeline of Hachyderm.io and knew I had found my people. All the wonderfully nerdy stuff y’all are up to is so fun to read about!

šŸ‘‹šŸ¼ Time for a re-introduction as I’m moving to Hachyderm.io

šŸ‘ØšŸ¼ā€šŸ’» I’m a software engineer that’s been primarily focused on iOS and macOS applications since 2008. I’m back at a startup after spending time at bigger companies like Apple and Time Warner. I’m also working on some indie apps at Zero1 Software.

ā›°ļø I love the outdoors and spend time mountain biking, snowboarding and hiking with my wife and dog around SLC, Utah. I’m a big sports fan and follow MLB, NFL, NBA, golf, and F1.

I built an iOS app to browse and play albums from your Apple Music library and I think it’s finally ready to see the light of day. I have lots of fun plans for it and would love to get feedback from people outside my immediate circle. What’s working for you? What isn’t? Thanks for taking a look! šŸŽ§

(If you can spare a boost, I’d really appreciate it! šŸš€)

testflight.apple.com/join/MUMu

Some days it hits me how lucky I am to get to work from here.

Photograph of a work from home desk setup. Pictured: part of a Pro Display XDR, AirPods Max, MacBook Pro, two iPad Pros, a Liquid Death Mango Chainsaw, and a Jones brand snowboard neatly arranged on a desk.

T̶w̶e̶e̶t̶i̶n̶g̶ Tooting from the public version of @ivory by @tapbots.

Direct link while App Store search propagates: apps.apple.com/us/app/ivory-fo

I’m sorry, but your web app will never be as good as a native app.

Exhibit a:

A screenshot showing a warning that the Figma web app has used 63.4% of the available memory.

I wish more people showed where they lived on the internet. Not stalker-level house/apartment pins, but city would be nice. I see all these cool pictures and I wonder where they’re from but I don’t want to be that annoying guy in the replies asking ā€œis this around Lake Tahoe?!ā€

I’m loving Louie Mantia’s new-ish blog. The writing is genuine and really resonates with a lot that I’ve been thinking about. I’m trying to be more authentic with my writing this year as we distance ourselves from ā€œthe corporate webā€. josephmclaughl.in/links/2023/0

I’m so glad Apple is bringing back a new higher end HomePod! apple.com/homepod-2nd-generati

I don’t need a new MacBook Pro. I don’t need a new MacBook Pro. I don’t need a new MacBook Pro.

But maybe…

I’ve been using the long weekend to get a (non-work) app closer to my 1.0 milestone. The first line of code in the project was written over the 2019 holiday break (then 2020 happened and all motivation for side projects vanished).

It’s feeling really good to get it so close to shipping! šŸš€

Whenever I find myself browsing eBay, I wonder why every seller is still using a camera from 2008.

Unrelated: I am the leading bidder for a gently used iPod Hi-Fi (and you all better not go and out-bid me!)

You should go buy fonts (and stuff) from @simplebits, they’re excellent and add tons of character to anything you’re working on! I use his Cartridge font on my website right now for the headings. mastodon.social/@simplebits/10

A screenshot of a webpage displaying the style of the ā€œCartridgeā€ font by Dan Cedarholm of Simplebits.

The best New Year’s resolutions are the ones that are just as applicable on August 27th as they are on January 2nd as they are on January 1st. If it’s a ā€œone shot and you blew itā€ type of thing, you may want to rethink it. The goal is improvement, not perfection.

I wrote a few words about my theme for 2023 – consistently show up – on my blog. What are you all working on this year?

josephmclaughl.in/posts/my-202

Me waking up early any day of the week: why is this even a thing? Yuck. Never again.

Me waking up early to go snowboarding: oh hell yeah, let’s go!

<insert inspirational remark about aligning incentives or something>

Incredible powder day up at Brighton! A super fun end to calendar year 2022, but definitely not the end of the snow season! šŸ‚šŸ¤™šŸ¼

I love little touches in apps that show that the dev/team is part of the target demo.

Went snowboarding tonight and my group was calling it, so I ended my session on Slopes (by @parrots). As we headed out I saw the lift line was empty, so I went on One Last Runā„¢. Since I’d already ended my session, I started a new one. As I was riding up I thought ā€œit’d be cool if you could merge sessions so all your stats are combinedā€, but oh well…

Guess what? Slopes auto-merged my last run šŸ¤ÆšŸ‘šŸ¼šŸ‚

This week is all about side projects, snowboarding, and maybe a blog post.

Starting by giving joemc.xyz a little love:

• Changed my data importer to pull toots instead of tweets
• Added back my snowboarding section for the season
• Embedded my investment portfolio (via Commonstock)

Thinking I might give the site a fresh coat of paint as well. This design has been fun for the last year, but I’m ready for a change.

It’s been a while since I spent the Christmas holiday away from the frigid temps of the Rocky Mountain West. It’s odd ordering an iced coffee on Christmas Eve, but I’m not mad about it!

I spent almost 15 years on the bird site. Made a lot of good friends, had great conversations, laughed at funny jokes, and watched news unfold in real-time. It’s a bummer it came to an end, but I’m looking forward to getting back to the open web.

The fediverse is only one part of this whole thing. We need people to write articles instead of long Twitter threads, embrace web apps that rely on open standards for distribution, and pay for services and content that you value.

Merry Christmas and happy holidays from our family to yours! šŸŽ„

I want a way to auto-filter any post I’ve seen (via boost or direct follow of the account) in the last {time period} (adjustable: 3d, 7d, 30d). Would love this to be a server-level feature, but a client specific implementation wouldn’t be the worst thing either.

Your boosts are great, keep them coming, but I see the same ones every day. šŸ˜…šŸš€

ā€œReservedā€ a Rivian R1T. Estimated for a late 2023 delivery, but I’m super excited!

Have had a wonderful time visiting this weekend. Rainy, but super fun!

Me: *trying to get a midnight snack*
Dutch: is there anything for me over here?

Seeing so many familiar faces here brings a smile to my face! Over the past few weeks/months I’ve wondered if we had lost something special forever, but I’m feeling optimistic that we’re still in a good place.

We took Dutch to my parents’ place for Thanksgiving and he loved playing in the snow every day. It’s the little things in life, you know?

Five and a half years later, I guess we’re all back here. Hey all! šŸ‘‹šŸ¼

Hmm… will this one last as long as App.net?