SHANEGILL.IO

One Year In
Today marks the 1 year anniversary 🎉 of quitting my job to join Riley and work on AltStore. I have learned a lot, but still have even more I'm taking in. Here's to getting even better this year :)
AltStore 1.6 Launches with a New Debugging Tool
We finally released AltStore 1.6 this week, marking the end of a series of beta releases focused primarily on changing how AltStore responds to errors. It's certainly not glamourous, but something we think will pay off dividends going forward given the amount of unknown variables that come with trying to install apps by circumventing Apple's software. As of now, our current solution requires users to install a companion application, AltServer, on their computer that then needs to communicate with their iPhone or iPad to download AltStore. AltServer also needs to communicate with their device to install new apps, enable functionalities, and 'refresh' their apps every 7 days. Not to mention it's on Mac and PC, so that's three total applications we have interacting with each other. This is made even more interesting when we have no real oversight over where people are getting their .ipa files aside from the apps made by a few developers we work more closely with. This is all just to say that there are limitations to sideloading and people are going to run into unexpected issues. I do hop around to offer support, but questions are scattered around on Twitter, Reddit, Github, Discord... it only does so much good. People are still asking me how to turn on Developer Mode. That's why I am happy we have focused on building a way for people to better help themselves by adding a new debugging tool. 

We built an Error Log for AltStore with the idea that we wanted to get much better information from our errors and also give users better solutions to solve their problems:

First focusing on getting better information, the goal was to properly parse and display relevant information when errors do occur during any step of the sideloading process. Previously information was being lost either by intentionally hiding error details or because of how information was being transferred between AltServer and AltStore. We've improved error communication between apps and now all information is kept and displayed to users in increasing levels of detail depending on their need. This will also help users communicate to us what is going wrong.
1. Error still appear normally as pop-ups, with a minimal explanation of the problem. This can then be tapped to view more in the Error Log
2. The Error Log lists errors along with a quick possible solution for users to try before seeking more help.
3. Users can then view full error information, including underlying errors, making sure nothing is lost.
The second part was to give users better answers to their problems. That's why the intent of this implementation is to be a dynamic solution that allows us to share information quickly by directing users to more specific information on our website. Instead of just posting to socials and hoping everyone gets the memo on the next new "Windows Error (-1100)," we can now use our own dedicated resources to give users better answers. This should also give our community a resource that can be used for collecting shared wisdom and easily sharing that with all our users. 
1. Users can copy the error code to search themselves or they can search in our FAQ.
2. Error Codes are now documented and categorized in our FAQ to provide more help.
This new approach to errors will help us in the long run as we expand and more apps are distributed through AltStore. There is hope that some of the limitations of sideloading are removed and everything gets easier, but this will help in the meantime.
Being Open-Source
Twitter's turbulence has now turned into an opportunity for FOSS to shine with Mastodon taking the spotlight as the most interesting thing happening with the actual technology of social media. Mastodon feels refreshing with different instances of the experience that are independently run by those using the product. Because of that, Mastodon has brought an open-source wave to Patreon so big that they got their own category on Graphtreon, a site that lists 40% Adult content categories in the top navigation (there is still no category for 'Technology' and AltStore is currently #22 under 'Games'). New Mastodon servers continue to pop-up and are following in line with Mastodon itself, creating Patreon projects to support server costs and management. With AltStore also being an open-source project funded on Patreon, we are excited and watching closely how things with Mastodon are progressing. AltStore recently joined the Fosstodon server, which not only ranks third in the 'Mastodon' category but is also a server dedicated to other open-source projects. I hope to soon see some of those projects on AltStore. 
Additionally from this, we are taking a look at how we can improve as an open-source platform. AltStore's categorization and use as an open-source project has mainly been about transparency and working in the open. We currently require that users enter their Apple ID information in order to use AltStore, and so being open-source is a good way for us to show that user data is never collected and used for any other purposes. Although we operate outside of Apple's iOS walls, everything is on the up and up. We have therefore also taken a very measured approach with releases, doing lots of personal testing and verification before ever telling people to download anything themselves. We feel a responsibility to protect users from harming themselves, and so any code that gets committed is something we are confident in. 

We also come from the small indie iOS app mentality of creating complete, polished, and curated experiences. However, by being open-source, we are also part of community that wants to contribute code and build features fast. To use a Mastodon analogy, we are somewhere between Ivory and Ice Cubes, building a thoughtfully designed app that happens to be open-source. That all being said, we want to improve on the open-source part and open up development for those who wants to contribute. We want to start making better use of the tools that hosting a project on GitHub affords us, something the AltStore community has been asking for us to do. Currently the 'Issues' tab for the AltStore repository is littered with an abundance of general support questions, and we don't have guidelines for submitting pull-requests. So to start, I have been going through the long list of GitHub Issues and marking posts so that everything is categorized between support and actual bug fixes/feature requests moving forward. The next phase now will be to move the AltStore repository from Riley's personal repo into a GitHub Organization that has already been started by some of the community members. From there, a process for reviewing and accepting pull-requests is next, so I hope to have more to update on that next time.
Bonus Footage
I made the graphic for the AltStore 1.6 Release this week! I'm getting better at being a Keynote artist, though I have been told I should use better tools. For now though, Keynote is the canvas so long as I can grab assets from an old Sketch file and modify them. We also saw a question as to where the T-Rex wallpaper is from, and luckily I have a good answer for that. That is in fact my personal phone wallpaper, and I found it from a new favorite artist of mine - @simonbailly.