Do you plan to get started in Mac development, especially with SwiftUI?

I'm by no mean Mac expert, but I've made quite a few Mac apps and I've bookmarked some useful resources and tools along the way.

Since many have asked me for recommendation, here is the list 🧵👇
🖥 First of all, how is macOS different from other platforms like iOS, tvOS and watchOS?

Each device has different capabilities and is meant for different purposes.

The Mac is:
- Flexible
- Focused
- Expensive
- Capable
🖥 Human Interface Guidelines

The above 4 points are the distinct theme of Mac, and is from the Human Interface Guidelines, or HIG for short.

Be sure to check it to learn more about macOS design decisions. developer.apple.com/design/human-i…
🖥 Creating a macOS app with SwiftUI, by Apple

This is a must read if you want to get started with creating your first macOS app in SwiftUI. Learn how easy it is to make Window, Menu and Preferences panel. developer.apple.com/tutorials/swif…
🖥 SwiftUI on the Mac: Build the fundamentals

There's dedicated session for SwiftUI on Mac at WWDC 2021. Let's explore four principles all great Mac apps have in common, and learn how to apply those principles in practice using SwiftUI.

developer.apple.com/videos/play/ww…
🖥 AppKit is done

Great article by @a_grebenyuk how SwiftUI makes it easier to make apps compared to plain AppKit. To learn more you can also check out his open source apps Pulse github.com/kean/Pulse

kean.blog/post/appkit-is…
🖥 F*** NSImage Syntax

Before you reinvent images that match with the system, check out existing NSImage that are used by system apps and are already familiar to users.

Used in NSImage.imageNamed hetima.github.io/fucking_nsimag…
🖥 Mac Developer blogs

Some of my favorite Mac development blogs

- troz.net/tags/mac/ by @trozware
- onmyway133.com/tags/macos/ by @onmyway133
- rambo.codes by @_inside
🖥 Back to the Mac conference

You can find here many inspiring talks from your favorite Mac apps makers. Learn how to make apps with SwiftUI, search, understanding app bundle. @backtomac youtube.com/c/BacktotheMac…
🖥 Human Interface Guidelines Extra

An attempt to document the best conventions and patterns in the community.

github.com/sindresorhus/h…
🖥 macOS Icons

Very cool project by @elrumo that showcase over 8000 beautiful designed Mac app icons, you can find great inspiration from here.

There's also macosicongallery.com

macosicons.com
🖥 What 's new in macOS 11 Big Sur

Not least, macOS is continuously involved every year, and some major version like 11.0 brings completely new look to the Mac.

Be sure to check the improvements so you bring new experience to users. developer.apple.com/design/human-i…
🖥 Big Sur Icons

I came across this interesting project by @nunosans, which is clever way to update favorite Mac app icons to the latest visual style of macOS Big Sur

bigsuricons.com
🖥 Distributing software on macOS

There's more to Mac than iOS, from Notarizing, Harden Runtime, Sandboxed to distribution with AppStore and outside Appstore.

developer.apple.com/macos/distribu…
What else do I miss? Would love more suggestions to learn more about Mac development

If you like this thread, please consider

❤️ Like
🔁 Retweet for others to see.
👋 Follow me @onmyway133 for more sharing about app development.

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Khoa 🔥

Khoa 🔥 Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @onmyway133

2 Nov
Hi iOS and macOS developers, where are you currently hanging out?

Here are the active communities on @SlackHQ I've joined and founded useful 🧵👇
🌍 iOS Developers

The most active community for iOS and Swift developers I've found, with over 30,000 members. You can find many familiar faces here eg. @donnywals @aaron_pearce

ios-developers.io
🌍 Airport Community

Originally created by @jsngr and @SiddDevs as place to discover new TestFlight apps, now there's active community here discussing and showing new beta.

airport.community/slack
Read 10 tweets
1 Nov
Have you started leveraging the power of ML in your apps?

While browsing through GitHub for inspirations, I've bookmarked these awesome 20+ open-source machine learning projects

Bring magic to your apps 🧵
⚡️ TensorFlow

The latest version of TensorFlow supports Keras, which is a high-level neural networks API, written in Python and capable of running on top of TensorFlow, CNTK, or Theano.

There are also interfaces for Javascript and Swift.

tensorflow.org
⚡️ scikit-learn

Scikit-learn has simple and efficient tools for data mining and data analysis, built on NumPy, SciPy, and Matplotlib.

It’s a popular choice to use alongside TensorFlow because of its simplicity and handy functions. scikit-learn.org
Read 22 tweets
29 Oct
What are some top programming books you can really recommend?

In the earliest days of my dev career, I was lucky to be shown these programming books and they have helped me a long way.

Sharing here with hope you can skyrocket your dev career 🧵
📚 Code Complete: A Practical Handbook of Software Construction

Written by Steve McConnell in 1993, this book is considered one of the best practical guides to programming. Learn about optimal coding styles, integration, testing, and craftmanship.

amazon.com/Code-Complete-…
📚 The Pragmatic Programmer: From Journeyman to Master

Have you read about the broken windows theory? Or the story of the stone soup? Or the boiling frog?

Throughout the stories in the book, you will learn many development methodologies and caveats

amazon.com/Pragmatic-Prog…
Read 11 tweets
2 Aug
Recently I've started reviewing system design and algorithms. While this is not for interview purposes, I find that this knowledge helps in both daily job and indie projects.

Below are a few resources that I've learned and I highly recommend. Thread 👇
1) System Design

System design is about defining architecture and modules interface to satisfy requirements. Whether you're working in a team or solo, clarifying requirements on what you want to do and what is exactly the problem, is most important.
2) System Design concepts

You don't need a CS degree to get started, but by reviewing system design, you know these concepts, which you need everywhere you go

📦 Database: SQL vs NoSQL
🗃 Cache
🥊 Scaling
🗳 CND, Load Balancing, Proxying
🎻 Connection: TCP, Polling, Socket
Read 10 tweets
2 Jul
SwiftUI ViewBuilder is resultBuilder, and from Swift 5.3 you can declare if let, if case, multiple if statements, switch, ... pretty much like a normal block function.

ViewBuilder is recommended to leverage SwiftUI type system to ensure performance. Here are a few examples 👇
Local variables.

Pretty much like a normal function, you can declare local variables and return View at last.
Mix if and switch statements

This is handy when you want to show modal or overlay of different Views
Read 6 tweets
6 May
What are some essential online tools that help you in your day-to-day development tasks?

Here are the tools I can't live without

Thread 👇
⌨️ Quick Type by @quicktypeio

Convert JSON into gorgeous, typesafe code in any language. I use this a lot to quickly generate Swift models from server JSON response. It generates very elegant enum handling and optiona

quicktype.io
👨‍🍳 CyberChef by GCHQ

The app is open-source and contains lots and lots of tools to convert texts, images, and formats languages

Great to have al things in 1 place

gchq.github.io/CyberChef/
Read 9 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!

:(