I am late to the fourth AiOS Dispatch, your go-to for AI, language models, IDEs, and iOS dev because I was freezing in the windy air in Sweden and Denmark and finally saw the northern lights in Finland 💚!

I had my time away from Xcode and the AI world to recharge and grind harder again.

It was interesting talking to iOS developers from European countries, where they have barely heard about Cursor and use ChatGPT to copy/paste code or Copilot for completion. Some hesitated to learn about another IDE, while some called Xcode and its predictive competition home because of security requirements.

My close friends enjoy coding manually, and I do not want to hamper our friendship by pushing them to try AI coding tools.

In the end, what matters is that you are productive and happy being productive, with or without AI-assisted coding.

Another One from the Whale: DeepSeek V3 0324

DeepSeek is back with an updated version of V3, V3 0324. I have been testing this model for the past half hour on Hugging Face and Alex Sidebar, and it is the best chat model I have tried recently.

It follows the instructions well, got rid of the issues and errors I was facing in Xcode and is pretty fast depending on the provider you are using. I tested it on plane Wi-Fi and still got more than decent tokens/seconds!

Also, when asked about scroll views, it did tell me to use drawingGroup() for complex graphics which I found cool.

This will be my primary model for the week so expect the next dispatch to have more insights on making the most out of the whale! 🐳

Exploring AI-Assisted Coding Workshop

I took the workshop (remotely due to passport issues) for the ARCtic Conference, and again, it was interesting hearing the feedback from the attendees. Many still prefer ChatGPT because it is their go-to tool for everything, and they do not want to spend $20/month elsewhere. And reluctant to learn something new but felt the FOMO and, hence, attended the workshop.

Here are some tips I shared with the attendees that may be helpful to you. This is the list of my go-to large language models for Swift coding:

Best Overall Model: Claude 3.5 Sonnet
Even though Anthropic launched the Claude 3.7 Sonnet model, I still cannot get the best out of it. 3.5 is still the model I mostly use for iOS/macOS development in SwiftUI.

Second-Best Overall: Grok 3 + Reasoning
Leaving aside the debate regarding the owner of xAI, I love using Grok 3 for Swift development and planning. I try to maximize its context window, and I am eagerly waiting for its API so I can use it more in different AI tools.

Best Larger Context Model: Gemini 2.0 Pro/Flash (1M–2M Tokens)
When lurking through bigger codebases like MLX Swift, I love using Google’s models, Gemini 2.0 Pro Experimental 02-05, a context monster. You can feel the latency when it is processing those 500K tokens, but the output is usually worth the wait.

Best Planning Models: o3-mini-high or DeepSeek R1
For planning and structured tasks before diving into vibe coding, I prefer OpenAI’s o3-mini-high because of its subtle approach to the topics. The overthinking model DeepSeek R1 is another great pick but I rarely use it now after the launch of o3-mini.

Best Local Model: It Depends
The best local model depends on your Mac's ability to run that model. Your MacBook might struggle with Qwen 2.5 Coder 14B or run the quantized version of DeepSeek R1 on your Studio.

My favorite one right now is Mistral 3.1 24B, which can run on a Mac with 32GB RAM when quantized (4-bit via GGUF or MLX formats). A 24GB setup might work with aggressive quantization, but it is better to have 32GB–48GB RAM, especially for its 128K context.

To make sure you know, I am running this model via API on OpenRouter because my 16GB M1 Pro MacBook is not good enough, and I spent too much on travel to justify a new MacBook. One day!

If you have good hardware, Gemma 3 27B is a decent model for local coding on modest hardware (24GB–48GB RAM MacBooks). Use this when you want to prioritize speed.

Llama 3.3 70B is best with a beefier machine for broader, instruction-heavy coding tasks and deeper reasoning.

For lightweight tasks and tasks that are memory-constrained, Mistral 7B was my first love and still remains in my heart.


One piece of advice I shared was to treat the model as a cracked fresh graduate who joined your team.

They are so full of enthusiasm, but even they have a limit before they get overwhelmed. So, keep the context-focused, short, and to the point.

Provide enough context for a head start but not too much to overload the poor model!

Vibe Coding

The term "vibe coding" was coined by the sensei of AI, Andrej Karpathy, while messing around with code for fun.

What started as his experiment has since exploded, adopted by non-coders and developers alike who solely depend on prompts and let AI do the heavy lifting.

The idea of “vibe coding” is that you are vibing by just using prompts, usually dictating with your voice and using the large language models to code for you. If you face any issues or errors, you ask the models to look at and fix them. You steer the output of the models as you want and update the prompts appropriately.

To put it more rudely, you have no idea what you are doing and completely depend on the AI.

You may have an idea of what is happening and code everything yourself, but you prefer to save many keystrokes and only use the key that applies all the changes made by AI.

These two words were invented by someone who is great at programming in general. I feel that the term is now being abused as an excuse to avoid the process of learning, but you eventually pay the price with AI slop.

Or you do not by doing responsible vibe coding. It takes a bit more effort and is synonymous with normal coding, but that term is definitely fancy.


It is also fun to see sensei vibe coding an iOS app!

You can go through the thread to find the shared ChatGPT conversations, but I read them, so you do not have to. Here are my observations:

  • Extremely simple and clear prompts. This is the first iOS app, so ChatGPT's hand holds him. He reiterates that it should be only iOS and no other platforms.
  • Follows the instructions, and goes to dictate the requirements of the app. Step by step:
    • The basic skeleton of the app first,
    • Then, functionalities via different buttons,
    • It ends up with basic SwiftUI view refresh errors (which, in my opinion, Claude could have done better)
    • Gives it back to fix and get the functionality working,
    • Then iterates on the UI, and
    • Finally adds persistence while asking for explanations.
  • And gets into the tangled mess of renewing the Apple Membership account where even AI cannot help. 😄

Ultimately, he got the app he wanted without stressing over the intricacies of the Swift language or hitting any Swift 6 issues, hah.

Moving Forward

Vibe coding is here to stay but it is on us to keep it responsible, not sloppy and end up miserable. The next dispatch will be from somewhere in Japan: Tokyo, Osaka, or Fukuoka! 🇯🇵

Let me know your thoughts on this dispatch! If you like it, please hit the thumbs up button because this one took a long time to iterate on, and I do appreciate some validation.

A question: are you vibe coding these days or clearing up the AI slop?

AI Assisted Coding

Master AI-assisted iOS Development

Learn how to use Alex Sidebar, Cursor, Windsurf, VS Code, and other AI tools for your Swift and SwiftUI workflow.

Tagged in: