Vincent Ritter

Hey, I’m Vincent. I’m a dad 👨‍👧, husband 👫 and an independent programmer 👨‍💻 that also freelances.

Browse my blog timeline below and use the menu to find out more.

Timeline Subscribe...

I’m still waiting for Apple to give the 2020.5 TestFlight build, for Gluon, a green light… It’s been just over 2 days now 🤔

Gluon's future

Nearly two years ago I started developing Gluon. It was thrilling and I had no idea what I was getting myself into.

It began as a "code challenge" and a learning opportunity for React Native, RN for short, which is a cross-platform framework allowing me to create for both iOS and Android. Yes, I took time to re-write it several times as I gained knowledge. This has served me very well personally and also my clients, who usually request apps that work across different platforms.

When I first started with RN it was still pretty bad. It worked well on iOS but terrible on Android. Over the years this has really improved and I'm happy how stable it got in general, especially for Android.

RN can also now be used to build native apps for the Mac and Windows. On top, the added benefit of learning RN you also get to know how to write for the ReactJS framework for websites. In fact, I started with a ReactJS for a client project - followed immediately with an RN project.

Microsoft uses the framework heavily and is investing a lot of time in it. Some of their web apps are built on it (OneDrive is a good example), and I think they'll continue that trend.

So, where does this lead me with Gluon?

That's a great question. A question I have been asking myself for a long time.

Gluon is built on the one codebase, that is shared across both Android and iOS. At the moment I share 98% of the code between the two platforms. However, Gluon is getting mature on iOS and is OK on Android.

Deep down I want to have a great experience no matter the device, whilst at the same time learn new things and bring new capabilities for the app that will please the community.

With dedicated focus on each platform I can concentrate my efforts to target each platform separately. This would give me the needed attention on each platform without having to try and "wedge" in the differences of either.

Android

This past week I took time to separate out the mixed RN project and make its own Gluon Android version. This is only the first step of many. However this gives me focus on Android only, separating it from iOS.

iOS handles certain scenarios differently, especially when it comes to syncing the timeline and a few other things... so on Android you'll commonly get a lot of lag! So, for this reason I decided that I need to focus separately on it without increasing the codebase for both platforms. You know, each line of code adds to the size of the app!

The Android version will remain on RN for the foreseeable future and I look forward learning new ways to make it better and more performant.

I'm still a believer in getting your apps cross-platform, if you have the ability to, and I'm not going to step back from that point of view!

This is a long term investment in the platform, for the better! Not just for Gluon but also for the Micro.blog community that use Android.

I can't wait to get those first Android specific updates out and build from there.

iOS and iPadOS

With Android in its own codebase, I can focus on the next version, 2020.5, which will remove most redundant "Android" specific code to reduce that file size a little.

Not only that, I also want to focus on refining a few things in the UI and add a sprinkle of additions to make it as stable as possible.

What I'm trying to do is reduce the overhead of the app and make it as simple as possible for me to maintain (it largely is already).

After the .5 update is finished and launched, Gluon will head into a different direction for the better!

I mulled over a few options as some of the core basics of Gluon are pretty old now and they are hurting the app... so... let's get excited for a re-write.

Apple'verse

I'm not going to lie, a year and a bit ago I wanted to dump Android and just focus on iOS because I believed RN is not the future... until it got better... and I got wiser!

This led me down the path, last year, to look into SwiftUI as I'm used to this declarative syntax coming from RN and ReactJS.

Unfortunately it was super buggy and I couldn't do much in the Xcode 11 beta (at the time, last year!)... so I basically gave up and re-focused my efforts with RN and really refine Gluon to what it is today. It's not perfect though...

Not only that, when I first got into Swift writing my Sleepy Eyes app I really loved the language. It was just introduced so I switched from Objective-C to Swift in a heart beat. 3 years of Swift changes really burned me in ways. I fell behind in a way and the language has evolved since then.

Swift became very verbose in my eyes, from the simple beginnings. Things seemed difficult especially with having to bridge between Objective-C and Swift... as it was still early days.

However, I spent the past few days with SwiftUI with the new Xcode 12 Beta. I'm blown away how amazing it is! It really came a long way and to be really honest... I'm excited where Apple now takes this. Not only that, you can now very easily create cross-apple-platform projects that target pretty much everything. And the best thing is that you can re-use most components across different OS's and share your logic with a smaller learning curve than before.

RN holds a lot of overhead and many unknowns. Every beta cycle I worry that stuff will break. RN is a dependancy. And everything else between is also a dependancy. Listening to the latest Core Int episode, this really drove it home for me. In fact, one version of RN caused an upload bug for images for no reason. I contacted Manton to ask if he can see anything wrong on his end... but no, it was RN for no reason!

RN also has serious bottlenecks on iOS. It can only run on one thread... so things can get slow. In fact, I'm having bugs I can't fix because of exactly this. This is not what I want for Gluon and certainly not something I want to burden my users with in future. Apple devices are super capable and I want to make use of that, fully!

This has fuelled my inner coder, and Apple geek, to now embrace the Apple'verse at every level! And that means Gluon will be fully rewritten for the Apple platforms using native Swift and SwiftUI code.

This will not be easy and it will take me some time, but Gluon will come to every iPhone, iPad, Apple Watch and Mac that runs a modern Apple OS.

My plan is to make this a phased cycled with iOS and iPadOS first, and get it to a good level of where it is now.

This is a long term investment to the awesome community and they deserve this! And it's an investment for myself to really learn Swift again and totally embrace SwiftUI!

I really want Gluon to have a premium feel and become a standard of social apps (for Micro.blog) that fits in with Apple design philosophy with my own opinionated take on it.

Gluon's main user base is iOS/iPadOS based... so this is my dedication to them... to you!

The immediate future

2020.5 will be built with what I currently have. This is also true for the Android version. Although I see Android diverging a little, for the better, from iOS.

Whilst I build out the above conversion, for the Apple'verse, I will continue to maintain the RN version of the app and continue to release bug fixes when needed. However, for Apple users, the design and features will remain as is until the conversion is complete.

There are many things I'd love to add, and I also promised a few things... and I will do it... however it will only be for the new native Apple versions going forward.

The distant future

I want to maintain Gluon as a cross-platform app. As I said, Android will already receive the attention and love it deserves! However, I also want to make it available for Windows users.

My initial plan was to create a web version of Gluon - so no matter the device you can access the Gluon experience you know and love.

With Microsoft embracing React Native heavily, including contributing to it, I see it as the perfect match for me to take what I know and apply it there. Again, this is a learning experience for myself and I look forward to get started with this at some stage.

I see a lot of indie developers embracing just one platform, and I'd love to put my skills and knowledge to use - to really take this where I can. The more accessible Gluon is, the better for it and the community.

On closing

So, I hope you're excited as I am.

Gluon takes dedication, love and tremendous amount of hours of my own time. I'd love for Gluon to one day make some money in return. Many have asked me to set something up. And I will.

Saying that, I really appreciate ALL the support from every single one of you. Gluon would not be where it is today if it wasn't for you. And I really, from the depths of my heart, mean that!

I always wanted to contribute to the Micro.blog universe and I hope my dedication to Gluon shows that.

I'm excited for the future! ✌️❤️

My daughter, 6, is playing on the Xbox. It’s incredible how much she learned the controls, only starting a month or so ago. It’s also unbelievable how incredibly quickly she just gets bored and looses interest...

Creating a new project in Xcode 12, and enabling git, creates a “main” branch instead of master 👍

Friday night… going through the SwiftUI tutorial 😍

Version 2020.4.1 for Gluon on iOS has been released. In addition to the 2020.4 update, this is a small bug fix to fix image uploading and a few other things. Release notes are here. Thanks so much for your feedback!

I really dig the loading bar animation in macOS 11 Big Sur 😍 I totally want to copy that and put it into my apps!

☕️ time!

Just past 02:00 AM. Gluon bug fix is in review so fingers crossed for when I wake up 🤞

Happy to announce that Gluon version 2020.4 has now shipped for both iOS and Android 🥳 (The Android build is rolling out and should be there within the next 24 hours).

Release notes are here.

Super happy with it!

For iOS there will be a 2020.4.1 bug fix release very soon!

Uploading apps to App Store Connect using the Xcode 12 Beta seems so much faster… or is it just me?

Submitted 2020.4.1 for Gluon, which fixes image uploading and a few other things that I found on the way.

I’m also submitting 2020.5 to TestFlight users, with the above fixes.

So, I shipped version 2020.4 for Gluon on iOS. It looks like there has been a bug with image uploading since build 6 of the TestFlight (Mid May). I have now fixed this. Will get it through to Apple before I go to bed 🖖

Thanks for all the reports today ❤️

Wow… Look at this, 3 minutes:

I’ve been watching the SwiftUI introduction… I glanced over it last year and did like it. This year again I’m really liking it. 🤔

Submitted version 2020.4 of Gluon to the App Store. I’m pretty happy with where it is. Android works also, however I’m having problems with the production version at the moment! Will get it sorted soon.

I have some big things planned after 2020.5 🤪 (yes, 2020.5!)

Another pain point in Gluon when images don’t load for some reason:

Gluon will now also check the status of Micro.blog:

I had a few people request this for Gluon:

Bed time now… Approaching 03:00 AM. WHOOP 😭