Leo Dion (host): Thank you for joining me for another episode.
My name is Leo Dion.
Today I am joined by Joe Fabisevich.
Joe, thank you so much for coming back on,
Joe Fabisevich (guest): Yeah, my pleasure.
Really happy to be here.
Leo Dion (host): For folks who don't remember, what were
you, what episode were you on?
You talked about the stuff you had worked on a former company, I
probably, and dealing with that.
We have, I'm really excited about your new app you're
gonna be talking about today.
I'll let you go ahead and take it away and introduce yourself.
Joe Fabisevich (guest): Yeah.
I think the last time that I was here we actually talked about like building
apps, like at scale with, I worked at
Leo Dion (host): That's what I thought.
Okay.
I knew it was something big and important, so Yeah.
Awesome.
Joe Fabisevich (guest): Yeah.
Now I've been a iOS developer for almost 15 years.
The last place that I did work was at Twitter back when that existed.
Obviously now it's my ex.
But when I was there, I worked on the societal health team,
which was focused on minimizing misinformation, disinformation,
abuse, harassment, really focusing on like improving the discourse
on Twitter and civic integrity.
So like election related things was what I spent a lot of 2020 working on.
Unsurprisingly.
Before that I have a long history of working at startups.
I've worked at Timehop and Bitly and Teachable and a whole bunch of companies
that were glued into the social fabric of apps in the web in the 20 tons.
And now I do something complete different.
I build personal playful productivity apps as an indie developer at my
app, at my company, red Panda Club.
And the latest app that I worked on is, as you can see in the hat Plinky.
Leo Dion (host): Nice.
I like it.
Yeah, so today where you came up to me was it a couple weeks ago and was
like, I wanna talk about this app.
This app is awesome.
And yeah, it's, I love it.
It's fantastic.
Explain Plinky and where the idea came from.
Joe Fabisevich (guest): Yeah, I don't want to oversell it
and say it's awesome, but if you say it, it's different.
So I'm okay with that.
I will say that Plinky is a bit of a love story in two parts.
The first is that I just, I love links.
I've tried out every single app that helps you read later.
Like I've used Pocket and Instapaper for years.
I tried out every archiving app like Pinboard or Raindrop or really
back in the Day Delicious, which all of these apps are based on.
And even tried saving links and notes or reminders or keeping
a bunch of browser tabs open.
There is no organizational system that works for, has
ever like fully worked for me.
Only a few of these have even stood the test of time to stay on my phone.
But you know, I really like them and they're all great in their
own way for very specific use cases, whether you're an archivist
or a person who loves to read.
And yeah, I mean I love pretty much everything about links.
That was the first.
Part.
The second part was that I love my fiance, my soon to be
wife in two weeks, Colleen.
And when we first started dating she discovered how much I love Lynx.
We had a open relationship, me, her, and Lynx.
And.
I'm very grateful that she found that to be like an endearing trait.
When we first started dating, I would ask her, is it okay if I
send you some links during the day?
I knew she would be busy at work, and she said it was fine, but she was wrong.
While she loved that I was thinking of her and sharing interesting articles
or recipes to cook together cute animal photos she pretty quickly
found it like distracting to have her phone buzzing during the day.
I have my own workflows around making sure that do not disturb
is on and things like that, but.
Instead she suggested that we save the links for later so we could look
together look at them together at night.
And that's when I started working on a small project.
I started, I'm an app developer.
I wanted a home for my links and that app would become Plinky.
It first was just like for the two of us, and then I started to show
the app to people and they loved it.
They were all saving links.
They were having the same problems that I was having of.
Never finding an app that fit their workflow.
And they kept telling me that they wanted an app that made
it so simple to save links.
With Plinky, it's just one tap, like you open the share extension
or you're using your browser like Chrome or Firefox or Safari.
You could be on your Mac.
You could be using integrations like Zapier, basically any way
to make it easy to save a link.
I wanted to build, and that fit the use case that I had, which
was, I just want my links like a permanent archive, but I also want.
Tools to help me reference them later.
We can get into that a little more, but like a few months
later, I left my job at Twitter.
I, was having health issues, but also for the longest time, I've
always wanted to build my own apps.
I wanted to be an indie app developer, and I started Red Panda Club, which
is the, indie app company that I have.
And.
I decided that I wanted to build Plinky.
I started working on it and to this day, Colleen and I use it every day.
It became an essential tool in our lives, but also a ritual.
Like Colleen saves cute videos of red pandas for me, and I save activities
that we could do next weekend and every night the two of us come together.
We share the links that we save for each other.
We call it plink time.
We lay in bed and share the links that we've shown each other.
Leo Dion (host): Does, how do you share your links through Plinky?
Because I had assumed that you just have an organization for
your own for your own links.
Can you make those public?
Joe Fabisevich (guest): Not yet.
So that is when I say we share our links, we literally
lay in bed and share the
Leo Dion (host): Yeah.
Okay.
That's what I thought.
Joe Fabisevich (guest): That is actually one of the top feature requests is
the ability to have shared folders.
And it was something I really wanted to build into 1.0.
But Colleen is a product marketer and was just kinda
like 1.0, get 1.0 out there.
And over time I was like you know what?
Maybe the app doesn't have to do everything on launch day.
And much to my surprise people, they keep asking for stuff like
that and I will absolutely build it, but it's nice that they are
still really using and enjoying the app even without that feature.
Leo Dion (host): Right, right.
So what were some of the design and develop, well, let's start with design
decisions about how you wanted to look.
What were some early on decisions that you made that you like knew
was the right direction for the app?
Joe Fabisevich (guest): Yes.
Like I said, I'm trying to build playful, fun apps and I personally
am really drawn to color color, and.
Gradients and good clean topography.
I really, there's something to be said about Apple's design.
It's really like simple, straightforward, and delightful
in a lot of ways, but it's also every app feels the same.
And Swift UI especially gives you this like toolkit to
build really good stock apps.
It gives you a lot of room to expand and customize what you want to build.
But a lot of people stick to the basics.
But I really wanted the app to feel.
Like the way that we used to feel about apps back in the day when it wasn't just
Leo Dion (host): I was just gonna say, that's one of the first things
I noticed when I was using the app is I love how playful it is and I love
the color palette and everything.
Like it doesn't look like every other app in a good way.
Joe Fabisevich (guest): yeah, actually, I'm glad.
I wanted the app to feel unique and I spent, hours agonizing over every
color, every icon, every font choice.
Even if fonts are the hardest thing in design, but I really like, if you
notice, it uses SF rounded because the rounded essence of it is just
fits in nicely with the buttons that every button has a little push
down effect and haptics, and there's lots of little sounds in the app.
And that was just a conscious choice where I said, if I'm going
to use this app every single day, it better be nice and it better
be something that I enjoy using.
And I think that a lot of like people design apps to be
very functional these days.
I personally wanted to go the extra mile and say if I'm going to
make this for myself, but I'm also gonna make it for everyone else.
It's not for everyone.
Like I've had a few people who said I want it to be blander, which
is like a very reasonable choice.
I, but I fully understand that they're used to what they're used to.
It's just like art though.
People look at a painting, like the painting behind me and say,
that's not something that is I'm into, but you know, I'm a person
and this is something that I'm into.
And.
I'm actually also building Plinky to be customizable enough that you can
choose, the colors or you can choose the layouts, or you can choose a lot of
things that make Plinky a home for your app, which is also a design decision
because I have to make sure that the app is not only, functional in a way
that fits my needs, but is something that anyone can use, including my mom.
It has to be simple enough for my mom to use, but also powerful and nerdy enough
for like programmers to build their own interesting workflows the way that
I was trying to build workflows with all these tools that I'd had before.
Leo Dion (host): Yeah.
Did you work on all this by yourself?
Joe Fabisevich (guest): Yeah, I would say I would give it like, a 99%.
Of course I've asked people for help.
I've been like, Hey, what do you think this color?
Or what do you think of that?
I also had a really large beta group of people giving me feedback,
so that was incredibly helpful.
But the design and development almost exclusively by myself.
And there are a few people who I give credit, but yeah.
Leo Dion (host): What was the biggest development challenge
you ran into building this app?
Joe Fabisevich (guest): I think probably just generally
speaking, backend development.
I am not a server developer by trade but I set out to build this,
a lot of people ask me why I haven't used, why I didn't use iCloud.
And the main reason is to build like the integrations
layer that allows people to.
Save links to Plinky.
Building it on top of iCloud is just a no man's land.
I think that what I wanted to do was also be able to make sure that
I could provide adequate support and debugging people's iCloud databases
is just a bit of a nightmare.
So I decided to go the other route and build my own layer with vapor.
Leo Dion (host): Yeah.
How did you like that experience?
Joe Fabisevich (guest): I would say it was overall pretty positive.
I think that there were a few things that I would improve.
I do not love fluent.
The ORM it is, it's good, it's functional, but it has just
some warts that I ran into.
What I will say is that the.
Discord community.
The vapor community is fantastic.
They, are willing to debug very individual specific problems.
And so I never felt like I was alone.
And community was a big part of, building Plinky in general.
Leo Dion (host): What database did you actually use Underneath?
Joe Fabisevich (guest): It's Postgres on the backend and on the client.
Everything is saved in a library that I developed called Boutique.
Boutique is basically.
Offline persistence for your app in three lines of code.
And it sticks to a very it feels very at home on Apple platforms.
It's very like Swift UI everywhere that you would use at State.
In Swift ui, you instead use at stored or at store and that's it.
Like you just replace it and all of your data is cached offline.
As long as you use the API.
Leo Dion (host): What what was your motivation for building
boutique as opposed to using core data or swift data?
So speaking of boutique, what made you want to use your own library
as opposed to using something like Core Data or Swift data?
Joe Fabisevich (guest): Yeah.
At the time, swift data didn't exist, so that was one of the
reasons that I decided to build boutique in the first place.
I've never really loved using core data.
I've found it a little cumbersome and swift data is a much better
API, but at the end of the day, it's basically core data especially
if you have to do anything outside of what Swift data offers.
And I really just found it like, first of all, it was a good
challenge to say can I finally build this library that I've been
wanting to build for a long time?
Which is you can drop it in and get free offline persistence for your app and.
It was actually funny enough, the second commit to Plinky's.
Codebase was something to the extent of built an offline storage layer and then.
Over time, I spent probably like three or four months working on
a full time to open source it.
And then I found that people loved it.
They like, I think I worked on it for about a month and a half.
People were like, this is so cool.
And then I created this layer called the storage engine, which is basically
like adapters you can plug in.
So the first version was built on files.
The second version was built on SQ l light.
And then other people have actually built their own adapters to match
their own like database needs.
You can even build an adapter for core data if you really wanted to.
It's just a protocol you conform to.
And then your app has in basically three lines of code offline persistence.
But with an API that just resembles Swift ui, it doesn't mean you never
have to think about, I'm writing to a database, you just think I'm
writing this property and that's it.
Everything
Leo Dion (host): And no macros to deal with.
That is a benefit too.
Joe Fabisevich (guest): No, though that may change over
time because property wraps and macros don't play great together,
Leo Dion (host): you're right.
That is true.
Are you like anti ORs or what's your kind of, do you mind using
ORs or are you more I want to write closer to the metal, so to speak?
Joe Fabisevich (guest): No, I'll admit I'm like a pretty lazy
developer, at least in the context of what I really like what ORMs do,
because I want to be thinking in the language that I'm writing in.
SQL is great, but I will admit that every time I have to
write sql, I basically have to go look up what I have to do.
And so being able to write SWIFT as opposed to writing SQL is
a nice added benefit for me.
The things that I don't like are when.
You ask the OM to do something and then it has a, some contextual issue.
So I remember this came up when I was using fluent.
I was trying to update a property, sorry, update a row, but not update
it's updated at or vice versa.
Be able to update the
Leo Dion (host): Oh, interesting.
Joe Fabisevich (guest): Yeah, I basically had this column
that's like last recently most recently used when, and
Leo Dion (host): Okay.
Joe Fabisevich (guest): the problem was that I needed to have a separate data.
I need to have separate data for that, but it would update the updated
app, which would resort the order that the item was sorted for users.
And it's not like a conventional problem, but I would like to be
able to express it in an ORM.
Leo Dion (host): Right, right, right.
That makes total sense.
What kind of, so I'm assuming this is all for the latest oss, like iOS
17 and stuff was there, were there any issues with swifty y, especially
with the design you wanted to do?
Joe Fabisevich (guest): Design-wise, not really.
The only thing, the app is like 99% Swift ui.
It's great.
I love it.
There's only one little gotcha with UI Kit, which is text input.
There was no way I can get text fields to work on a sheet
that was pre presented as a presentation to taunt without
weird animation hitches everywhere.
And it turns out this is just a widespread issue.
Everyone, whoever tries to do this has the same problem as me.
I tried every single workaround possible, but the only answer
at the end of the day is to drop into UI tech's field.
Even that is not perfect, but it's good enough.
Leo Dion (host): Just looking over the notes what is, so one of my favorite
things is full stacks with development.
Did you, what did you learn as far as a good workflow for working on the
server and the client at the same time?
Through Xcode, I would assume.
Joe Fabisevich (guest): Yeah, I use Xcode for both.
I think the simplest tip that is not necessarily obvious is have one project.
So I have one project and the server code base is just a swift package.
That workflow of being able to hit command RI.
And then I have command shift D mapped to switch between the
SWIFT server app and plankey.
So it's just like constantly being command shift D, command R,
command shift D, command R, and that improves efficiency so much.
Just one mono repo, one folder.
I did have to, I.
I remember I had to make some slight changes for the build pack
because I use Heroku for the server
Leo Dion (host): Okay.
Joe Fabisevich (guest): in a non route directory.
But other than that, it's just been so smooth.
I.
Leo Dion (host): Were there any, was there any friction when it came
to, so besides the Heroku part, was there any other friction you ran
into building a full stack Swift app?
Joe Fabisevich (guest): I think the biggest problem and one
that is 95% solved, and I still have to fix it actually, is dts.
I plan to iterate the API over time, and so the model objects that come back
because I am persisting everything.
Imagine there's like a model for a link and in this version of
the link you have 10 properties.
I'm adding an 11th property for reminders, which is the next
feature that I'm gonna be building.
I need to be able to convert the model version with reminders,
support into a non reminder support for old clients, which means that
there has to be some sort of like transformation layer in between.
Leo Dion (host): Right.
Joe Fabisevich (guest): I knew that I've considered it, it's something
I still need to do, but it does add a little bit of CRT to where
before it was just like perfectly beautiful and just you send the same
model, client to server to client.
No versioning.
It's all great.
Now that it's out of beta, I have to think about that.
Leo Dion (host): Yeah.
Yeah.
So let's talk about the marketing side of it.
What did you learn going through this whole process when it came to
getting this app ready to market?
Joe Fabisevich (guest): Yeah.
My number one piece of advice would be to marry a product marketer.
That really helps a lot.
Leo Dion (host): Yeah.
Yeah, I would imagine that would help, wouldn't it?
Joe Fabisevich (guest): It would.
Yeah.
No, I.
A gigantic thank you to my fiance Colleen, who spent a lot of free time
working on a Go-to market strategy.
And no matter how much she says that it was a fun project that
she got to do in her spare time, I still just appreciate it immensely.
I think the first thing was I.
Doing user research, like doing user interviews was incredibly helpful
in figuring out how to position Plinky, because I look at the app
and I look at it to satiate my needs.
One of the most common use cases that people told me about was
they're scrolling social media like Twitter, or I guess not Twitter,
but they're scrolling threads or.
Mastodon or wherever they are, and they're coming across a whole bunch
of articles that they wanna read, but they don't wanna read them now.
But they just need a, basically like a transient place for
them, A temporary inbox.
And that's actually a great way to use Plankey because it's one click to do and
so if I hadn't actually talked to users, I would've imagined that what they were
looking for was a place to really read those articles sit down on their couch
with an app like Pocket or Instapaper.
But they were just like, no.
Like some people do want an offline reader mode, and that's one of the
things that I'm working on, but really just the idea of having an inbox for
their links was good enough for them.
So that made me feel a lot more confident about launching a 1.0.
Without, an offline reading experience that those user
research sessions helped a ton.
I also found that user onboarding, it doesn't just stop.
It's not just in the app.
It doesn't stop once the user opens the app for the first time.
I made sure to take advantage of email as a way to send four or five emails.
As you are going through and learning about Plinky, it tells
you about Plinky, it teaches you.
About what features it offers.
It helps you find the browser extensions that you will use to
actually save links on your computer.
So I used, I had them on the initial onboarding in the app, but the place
that you don't need them is in the app.
So they're still in the app, but they don't need to be
a part of the onboarding.
So finding this user experience onboarding is a part of the user
experience, and it doesn't only happen in the app, it's just a
huge lesson that I took away.
And what was really I think like the third biggest lesson for me
was test your subscriptions before you launch to the app store.
Or test your subscriptions before you launch publicly.
'cause I ran into a few little bugs.
There used to be a way to test with a promo code.
You would send a promo code to a user and say, can you go download
my app that's currently broken?
So I actually had to launch the app a few days early, test out
subscriptions, fix a bug or two then.
I soft launched at Deep Dish Swift where we were both at and that was actually a
bit of chaos because I soft launched and I started watching how users were going
through the onboarding and I realized that they're getting completely lost.
I had this very like refined you onboarding.
That was an interactive experience and it was just too much.
I paired it down to its minimum, like the essential basics.
And what the onboarding did after that was show you how to set up
the share extension and explain to you what you wanna be doing here.
And that was it.
By doing that, I was able to, basically, I coded that up in about
12 hours while watching talks.
Apologies to any of the speakers whose talks I wasn't paying attention to.
Wow.
And.
Leo Dion (host): a lot on your mind.
Joe Fabisevich (guest): Yeah, no, it was a lot.
And then when I launched, the number one compliment I got on launch day
was, wow, this onboarding is amazing.
And I was just like, thank God this could have gone so poorly.
Leo Dion (host): What did the promo code stuff not work?
Was it something related to Swift ui or just something you forgot about now?
Okay.
Joe Fabisevich (guest): I talked to someone at the on the app store team or
like at the On who works on store kit, and he was like, oh, that should work.
It's a bug.
Do you wanna file a radar?
And I was like, if I already launched it, do I, will the radar help?
And he said, Nope.
And I said, great, then no, I don't wanna file a radar.
Leo Dion (host): Yeah.
Right.
One of the things you mentioned was emails.
How are you, how do you have that set up?
How's that working?
Do you have a newsletter or how does that work?
Joe Fabisevich (guest): Yeah, so I have an email list in a
service called Email Octopus.
It's a bit of an indie focused email platform.
It's not as powerful as something like MailChimp in terms of features, but
it gets the job done has campaigns and templates and lists and all that stuff.
So I was keeping
Leo Dion (host): Is that free?
Joe Fabisevich (guest): No, I think it's might be free for a small
tier, but it's pretty much like.
10 bucks a month for a thousand, or I think it goes up an increments
of $6 or something like that.
It's inexpensive and I would say it's recommended.
I had a list of people who are on the wait list and that was about
400 or 500 people that I could reach after Plinky launch to say good news.
The app is out there.
I've been collecting that since basically November, 2022 when
I launched the public beta.
And that was really helpful to have.
And the workflow is generally like.
User signs up, subscribe them to email Octopus, then get them through
the onboarding set of emails.
And I am actually going to be launching like a little website
slash newsletter called Links you'll Love sometime next month.
And it's basically just like my own personal collection of links that I come
across and four links and four kind of funny posts from across the internet.
Nothing too a lot of newsletters like how to become the best product
marketer or how to like, how to be the entrepreneur you've always wanted to be.
And this is just like in an age where everything is getting summarized by ai.
I would just like to help people find nice things to read in
a very humanlike way and just curated links in your inbox.
So that will also go through email Octopus as well.
Leo Dion (host): Okay.
Yeah, I am, I'm looking for an email service, so I'm just
curious what you ended up using.
Joe Fabisevich (guest): I would also recommend button down email.
That's a friend runs it, but it's a service that everyone is caught
onto into saying like they love it.
Just would highly recommend it.
Leo Dion (host): Okay.
Yeah, that's good to know.
Let's talk about Dubb Dub first, I guess.
'cause that's more inve, I would say.
Getting married during dub or
Joe Fabisevich (guest): No, I'm getting married a few days before Dubb Dub.
Thank God.
Leo Dion (host): Okay.
I was gonna say, so I wanna ask specifically, when it comes to
Plankey, if there's anything that you're looking for in, from dub that
you're hoping to help with the app.
I guess,
Joe Fabisevich (guest): Yeah,
Leo Dion (host): I know you mentioned ai, so I don't know
if that might be part of it too.
Joe Fabisevich (guest): Yeah, I think the AI story is so fuzzy with Apple.
I think I've been watching a lot of the open source work that they've done and
projects that they put out for on device machine learning, and it looks great.
I'm very curious to see how they're gonna productize it.
If it's gonna be an API that's available to developers,
what will it be able to do?
And I plan to build just like every iOS developer wants to
features that are iOS 18 specific.
So it's really up in the air how it'll relate to Plinky.
I know that this is a little controversial in the iOS
community, but I've been helped a lot by AI in building Plinky.
I think it's a.
Like a dream for an indie developer.
For example, like I, I don't know TypeScript very well, but
to build browser extensions, I really needed to build something
in TypeScript or JavaScript.
And I scoped out about two to three work weeks of work to
build out the browser extensions.
And instead what I did was I just.
Paired with chat GPTI gave it like very specific guidelines, instructions,
and told it what I wanted and then iterated on it over and over
again By, within about two hours, I had a fully working prototype.
Within about two days, I had three browser extensions that supported
all the features that I needed for saving links, and that's pretty wild
and I very much expect something like that to be built into Xcode.
I, I.
Have heard from people that, apple is working on stuff like this,
and so I know that I find myself missing it when I'm working in Swift,
and so I'm very hopeful for that.
Leo Dion (host): Anything specific with AI you'd wanna do with
Plinky as far as like summaries?
I know we talked about summaries, but or any particular widget or thing
you would wanna plug into Plinky.
Joe Fabisevich (guest): Yeah, I think summarization and auto tagging is
probably two of the biggest things.
So people have already asked can I have links that get saved automatically
Get put into the right folder.
So if you have a link from the New York Times or CNN or
BBC, put it in a news folder.
I would like to see if there's like on device stuff that I can do with
that, and I suspect I will be able to.
There's already a lot of good classification.
It's just about if a user doesn't have much data, I'm trying to do this all
in a privacy preserving way, how do I figure out the best way to do this?
And I think that there are some ways that I can, and also I've seen a few
reading apps try and go all in on ai.
And I, for example, found a 10-year-old article that I had saved in, I won't
mention the name of the app, but one app that added summaries recently.
And it was an app.
It was an article about.
Privacy violations and civil liberties and how, like it was about Edward
Snowden basically from, a decade ago.
And so I hit the summarize button and it said, it took a 10 page
article and summarized as the author cares a lot about civil liberties.
And I was like, this is not great.
Leo Dion (host): Very helpful.
Yeah.
Joe Fabisevich (guest): I could have told you that.
Want to be able to provide users the ability to really specify what
kind of summaries do you want, and do it in a manner that focuses
on the user, not focuses on the fact that I added AI to the app.
Leo Dion (host): So what are future plans for Plinky that
you already have scoped out?
Joe Fabisevich (guest): Yeah.
There's actually quite a lot, and I'm really happy to say that a lot
of the roadmap that I had in mind is.
In line with what people have been asking, you can actually
vote on the roadmap in the app.
And that's been a helpful guide to knowing.
Leo Dion (host): do you use for that?
If you mind me asking?
I.
Joe Fabisevich (guest): Oh it's called Wish kit.io, I think.
Leo Dion (host): Oh, it's Martin's.
Okay.
Joe Fabisevich (guest): Yeah, exactly.
I added support for something in open source and then realized it
was a paid product and he was kind enough to gimme six free months.
I'm using that at the moment.
But yeah, I.
The first thing that people wanted was.
The ability to import their links from other services.
I was surprised because there's two kinds of users.
There's someone who is just getting started and says, I really like Plinky.
I want to add some links to it.
But I don't have any prior history.
I was surprised with how many people are saying I wanna move from, I
won't name competitors just because I don't want to be mean, but they're
like, I wanna move from this.
This app is a little stale.
This app your app provides the same functionality.
I wanna try it out and.
I am working on that today.
Like after we hop off this call, I will get back to working on importing
links, but the next few things that I'm really excited about right now,
when you save a link, Plinky's share extension is just I don't know.
I think it's really slick.
It's just really quick and once you save a link, it goes away.
It gets outta your face as opposed to a lot of other apps which force
you to categorize a link or try and put it in the right place.
There is the option for that.
There's like an edit button that you can hit, but I wanna give
the user more control over that.
So if they want to.
Set a reminder or pin the link or add it to a folder in one tap, as opposed
to going to this whole organizational flow where you edit the link,
then I want that to be available.
And it's because there are so many different kinds of people who have
so many different kinds of workflows.
That's what I'm building.
Plinky to fit is this layer of customization that makes
it your home for your links.
So that's been highly requested and it's, I actually had about
80% of it built before I ship 1.0.
It was a matter of prioritizing and saying I can launch that after.
Then the next feature actually is timed reminders.
So sometimes I save a link and I'm like, this is a thing I need to
talk about with Colleen at 8:00 PM So I just want a little reminder
that goes off and tells me this is, the link, your link that you saved.
Take a look at it right now.
Leo Dion (host): Yeah.
That's awesome.
Joe Fabisevich (guest): Unsurprisingly, the number one request from people in
this community is a Native Mac app.
So that's what I'm gonna be looking into this summer.
That way you can have your links everywhere.
The iPad app does run on the Mac right now in, the very, like
M1, M two, M three kind of way.
But it's good enough, but it really doesn't meet my standards, especially
given how much time and energy and effort I've put into making Plinky feel.
Would say delightful.
Leo Dion (host): Are you thinking Swift UI native or are you thinking Catalyst.
Joe Fabisevich (guest): Swift ui.
That's one of the reasons that I built Plinky in Swift ui and so much
of it is avoiding UI Kit is so I can transpose it onto the Mac pretty easily.
Leo Dion (host): Okay.
Okay.
I do have a couple of technical questions for you, if you don't mind.
So outside of Plinky, what are you look looking forward to from dub?
Joe Fabisevich (guest): Oh, I honestly don't know.
I think I would say I've been so laser focused for the last six months.
I also just don't know where.
Apple is going, and I don't mean that in a critical way.
I think that every year they manage to create a theme that surprises
and delights, and I just don't know what that's gonna be this year,
because all the talk has been ai, ai.
Leo Dion (host): Right.
And then last year we already had the big thing out last year
that they already talked about.
So it's like with the glasses.
So it's okay, like I guess it could be ai.
We've heard rumors of a partnership or something with open ai, so I don't
know if that's going to be anything, but it seems a little bit strange that
they'd do anything weeks from today.
Joe Fabisevich (guest): I would like to put my prediction on the record.
I have three classes of prediction.
One is if they have an enterprise partner.
I think it's gonna be Microsoft because Microsoft owns the
license to all of GPT-4 and all of the models that they create.
Leo Dion (host): if Open AI has a enterprise partnership, or Apple
has an enterprise partnership.
Joe Fabisevich (guest): I think that they will not.
I don't expect them to go directly to OpenAI because
OpenAI goes down all the time.
Like I, maybe I'll be wrong.
Like I'm happy to be wrong about this, but I love chat, GPT, I'm not gonna lie.
But I,
Leo Dion (host): we did a whole episode with with oh gosh, I forgot.
But we talked about all the ways chat.
GPT is super helpful.
I'm surprised you didn't say anything about marketing, but I guess if you
have a wife, you don't need chat GPT to help you, or fiance, I should say.
Joe Fabisevich (guest): If you have a fiance, you don't
eat Sha GPT is my tagline.
Leo Dion (host): Yeah, exactly.
That should be the name of this episode.
But yeah, that was, that's always the thing I found super helpful with chat.
GPT as imperfect as it is helping me with marketing text.
Yeah, I, so the partnership thing is strange to me because I would've
thought that if any, if anybody is gonna do anything, any of the big
company, FANG companies, whatever, it's gonna do anything with.
OpenAI.
I thought I was gonna Microsoft.
'cause Microsoft practically owns them in a lot of ways.
But you're just saying Apple is gonna just work with
Microsoft directly through that.
Joe Fabisevich (guest): I think it's either micro, Microsoft or Google.
I think OpenAI is my third choice for who I would depend on.
Going forward for the online model, not the offline, on your device model?
Leo Dion (host): right.
Yeah.
One of the things you mentioned in here, swift six we had some really great
talks about Swift six at Deep Dish.
And it is my current, it's like literally what I'm working on
before talking to you is trying to get bushel ready for Swift six.
Have you already enabled those flags to see to see how much work
you have ahead of you or what?
Joe Fabisevich (guest): I think you can tell by my smile that answer is
Leo Dion (host): yeah.
Okay.
Joe Fabisevich (guest): I did early on, and then I found
myself getting strict concurrency warnings that didn't make sense.
Some of them made sense, some of them didn't, and what I decided was I'll
leave it till the summer when things are more settled because so much was gonna
change between Swift 5.7, 5.8, 5.9.
That I could be like Matt Maci and chase every change and
be involved in the process.
But practically speaking, I think I'm gonna wait.
I'm gonna spend a good chunk of the summer just looking into what I really
need to do, especially for boutique.
I, that is very concurrency actor based and I wanna make sure that
it doesn't lead to race conditions.
So I've enabled it in there.
I only had nine warnings, which I find very suspicious.
I am like, I'm gonna wait and see when nine turns into 90, what I need to do.
Leo Dion (host): Okay.
Okay.
Yeah, that makes a lot of sense.
Yeah.
And you mentioned on your notes here about Vapor.
That's gonna be interesting.
Joe Fabisevich (guest): Yeah.
I think it's gonna
Leo Dion (host): I think there's a lot of work behind the scenes to get
it ready, so hopefully it doesn't affect those of us who just use it
for implementation, but we'll see.
Joe Fabisevich (guest): The nice thing about Swift six is you can
also stay in Swift five mode.
So if you aren't ready, then you're not ready.
Leo Dion (host): Yep.
Anything else you wanna talk about before we close out?
Joe Fabisevich (guest): I don't think we're gonna solve Israel
Palestine, so I'm okay, but I.
Leo Dion (host): Yeah, I don't think so.
Joe, thank you so much for coming out on the show.
It was good to see you in person last week and yeah, it was
just great to see you again.
Joe Fabisevich (guest): Yeah.
Thank you so much for having me on.
It was nice to chat, especially about the technical stuff
now that I work for myself.
It's, I don't get to talk as much about it.
Leo Dion (host): Yeah, you just have to talk about product
marketing with your fiance.
Sorry.
Joe Fabisevich (guest): Honestly, it could be worse.
Leo Dion (host): Could be worse.
Could be worse.
Plinky's a fascinating it's a wonderful application.
I'll put a link to it in the show notes.
Definitely give it a try, everyone and try it out.
It's fantastic and I love the color design and everything yeah.
And good luck to your big day coming up in a few weeks.
Joe Fabisevich (guest): thank you so much.
Yeah.
Leo Dion (host): Yeah.
Where can people find you online?
Joe Fabisevich (guest): I'm mostly on threads these days.
It's merge, sort like the algorithm, M-E-R-G-S-O-R-T.
I also write a lot.
If you go to merge sort.me, there's a whole bunch of links to my blog
or my other blog or my other blog.
Too many blogs and also one thing that I've just, I.
Loved is the support emails I've gotten.
Everyone has been super nice and the fact that I'm a human being who's
responded and with depth has led to a whole bunch of good conversations.
So if you do use Planky and you do have ideas, or you do want to tell
me thoroughly anything, I'm here.
I'm a really human being.
I'm not ai.
So I would love to hear from you.
Leo Dion (host): Awesome.
Thank you, Joe.
Joe Fabisevich (guest): Thank you.
Leo Dion (host): I am still trying to figure out what my plan is for
dub since I will be there physically.
So I will keep folks in the loop if you follow me on social media.
I have to figure that out.
But yeah, we'll do something for dub here on the show.
And so look out in emails or social media for what my
plan is for the recording.
Hopefully you'll figure out a way.
Have Peter back on to talk about the State of the Union and stuff.
So be on the lookout for that.
You can follow me on Twitter at Leo g Dion Mastodon at Leo Dion
at c Im be sure to subscribe to our newsletter@brightdigit.com
and I think that's it.
Thank you so much and I look forward to seeing everybody at Dub.
Bye.
Joe Fabisevich (guest): See you.