I Don’t Know Swift or SwiftUI…
In the ever-evolving landscape of technology, the notion of being “semi-illetterate” in programming has taken on a new meaning. With the rise of AI assistants and low-code/no-code platforms, it’s now possible for individuals with limited coding knowledge to build fully functional applications. This shift has democratized app development, allowing more people to bring their ideas to life without needing to be expert programmers.
Embracing Semi-Illetteracy
Being semi-illetterate in programming doesn’t mean you lack intelligence or creativity; it simply means you may not have formal training in coding-in this case, no knowledge in Swift or SwiftUI.
“With the right tools and resources, you can still create powerful applications. AI assistants can help you generate code snippets, troubleshoot issues, and even suggest improvements to your app’s functionality.”
Now this is an answer by an AI assistant, but it is a good one. A better one, in our case, is that we used common agentic tools to build a fully functional macOS and iOS apps without having any knowledge in Swift or SwiftUI development. The whole office converging into Macs and Apple devices was a great opportunity to learn and experiment with new technologies. We were able to leverage AI assistants to guide us through the development process, from designing the user interface to implementing features and debugging. All in two (3) weeks.
MadPad & The Power of AI Assistants
The result of our smallish efforts is MadPad, a macOS and iOS app that allows users to create and manage their notes in a simple and intuitive way. The app was built using a combination of AI-generated code and very minor manual coding, demonstrating the potential of AI assistants in app development. We were able to focus on the prompting and engineering depth of functional aspects of the app, such as its design and user experience, while the AI handled much of the coding and debugging work.
MadPad’s user interface, designed with the help of AI assistants.
MadPad is a combination of some ideas along the Apple Journal diary app. We felt it missed something and we needed some extras to it, because we liked how it was presented but didn’t want to use it by lack of some features, such as Markdown support. So I built it myself, I mean we built it with the help of AI assistants, and it turned out to be a great learning experience. I was able to see firsthand how AI can assist in the development process, making it more accessible for those who may not have a background in programming.
Now this wasn’t my first ai assisted project, but it was the first time I built a fully functional app with the help of AI assistants on a new platform-platform which I revisited 10 years after my first introduction to Apple devices. As always using AI assistants, I develop along PRDs (Product Requirement Documents), focus on modular design, and tweak components and UI features as I go, and the AI assistants help me with all of that, from generating code to suggesting design improvements. It was a great opportunity to learn and experiment with new technologies, and it showed me that being semi-illetterate in programming doesn’t have to be a barrier to creating functional and useful applications. With the right tools and resources, anyone can bring their ideas to life, regardless of their coding background.
Some are going to say “Hey, but you copied the Apple Journal app, you just added some features to it, you didn’t build it from scratch!”. And that’s true, I didn’t build it from scratch, in UI and UX means, but I built it from scratch in code, and I built it with the help of AI assistants, which is a new way of building apps. It’s not about reinventing the wheel, it’s about using the tools available to you to create something that fully meets your needs.
And by meeting my needs, I mean any feature that I wanted to add to the app, I added it, and I didn’t have to worry about the technical details of how to implement it. The AI assistants took care of that for me, allowing me to focus on the UI/UX and the overall user experience-functionally and design-wise. No Swift or SwiftUI coding knowledge was required, just the ability to prompt and guide the AI assistants in the right direction… but of course, some software engineering knowledge is better than none.
MadPad’s note management features, implemented with the help of AI assistants.
Faultive and Effective LLMs
While AI assistants have made it easier for semi-illetterate, but still software engineers, to build apps, it’s important to acknowledge that they are not perfect. AI-generated code can sometimes be faulty or inefficient, and it may require manual intervention to fix issues, or some tweaks, but that’s part of the learning process-and LLMs will evolve! It’s important to approach AI-assisted development with a critical eye and be prepared to troubleshoot and refine the code as needed. But yet, they are better and better at generating code, and they are getting better at understanding the context and requirements of the app, which is a great thing for semi-illetterate developers and engineers.
Does this mean future developers will be more focused on the design and user experience aspects of app development, while relying on AI assistants to handle the coding and technical details? It’s possible, but it’s also important to remember that having a solid understanding of programming concepts and software engineering principles is still extremely valuable, even in an AI-assisted development environment. The ability to guide the AI assistants effectively and make informed decisions about the design and functionality of the app is crucial for creating a successful application. So while AI assistants can help with the coding aspect, it’s still important for developers to have a strong foundation in programming and software engineering to ensure that they can create high-quality applications that meet their users’ or own needs.
Now, speaking of client’s or own needs, I built this app for myself, and I built it in a way that it fully meets my needs, and I can say that it does. It has all the features I wanted, and it works well on both macOS and iOS. It’s a great example of how AI assistants can help semi-illetterate developers create functional and useful applications that meet their specific needs. At that is central to my understanding that the future of app development is going to be more personalized and self-centric, where individuals can create applications that are tailored to their own needs and preferences, rather than relying on generic solutions that may not fully meet their requirements or desires-thus making them acquire more apps to fulfill the gaps. This shift towards personalized app development is an exciting prospect, as it allows for greater creativity and innovation in the types of applications being created. With AI assistants, individuals can bring their unique ideas to life and create applications that are truly their own, without needing to be expert programmers. This democratization of app development has the potential to lead to a more diverse and vibrant app ecosystem, where a wider range of voices and perspectives are represented in the applications being developed.
American LLMs vs Chinese LLMs
I used several LLMs to build the app, and I found that American LLMs were more effective in generating code and understanding the requirements of the app, while Chinese LLMs were more lacking confidence in their code generation capabilities, even with reasoning. This may be due to differences in training data and language models, but it’s an interesting observation that highlights the importance of choosing the right LLM for your development needs.
While some Chinese LLMs may still struggle with code generation, they can still be useful for other aspects of app development, such as scaffolding, design suggestions, and user experience improvements. It’s important to leverage the strengths of each AI assistant and use them in a complementary way to achieve the best results. Yet, the gap between American and Chinese LLMs in terms of code generation is narrowing, and we can expect to see improvements in both over time. We can kind of smell American LLMs distillation in Chinese LLMs, and that’s a interesting but insufficient thing for the development community as a whole. They ain’t there yet.
American LLMs such as Anthropic’s Claude Sonnet 4.6 was mostly used for code generation, and Github’s GPT-5.3-codex was used for debugging and code refinement. On the other hand, Chinese LLMs such as the different Qwen 3 Coders were used for scaffolding and design suggestions, but they were less effective in generating code and understanding the requirements of the app. One of them in particular, Qwen3 Coder Plus, was very bad at generating code, constantly calling invalid tools and making the bill go up in tokens without generating any useful code. It could have been an inference issue, but it was a frustrating experience that highlighted the limitations of some Chinese LLMs in code generation, expecially those from obscure providers. We were using OpenRouter.ai’s API to access these LLMs, and it was interesting to see the differences in performance between the American and Chinese models. It’s clear that there is still work to be done in improving the capabilities of Chinese LLMs for code generation, but we can expect to see advancements in this area in the near future.
Conclusion
We have our home made journaling app, MadPad, built with the help of AI assistants and without any prior Swift or SwiftUI knowledge. This experience has shown us that being semi-illetterate in programming doesn’t have to be a barrier to creating functional and useful applications. With the right tools and resources, anyone can bring their ideas to life, regardless of their coding background. AI assistants have opened up new possibilities for app development, making it more accessible and inclusive for a wider range of people. As AI technology continues to evolve, we can expect to see even more innovative applications being built by individuals who may not have traditional programming skills, or programming language knowledge, but who have the creativity and vision to use AI as a powerful tool in their development journey. So, if you have an idea for an app but feel intimidated by the coding aspect, don’t let that stop you. Embrace the semi-illetteracy and leverage AI assistants to turn your vision into reality. Especially if you have some software engineering knowledge, you can guide the AI assistants in the right direction and create something truly amazing. The future of app development is here, and it’s more inclusive than ever before.