I am super excited to announce my brand new course “Core Data in iOS”. In this course, you will dive into Core Data and learn how to persist information for your iPhone app.
All the sample code is implemented using SwiftUI and MVVM Design Pattern.
Check out the contents of the course:
Do you want to learn how to develop a backend for your Flutter app? Are you interested in a serverless backend?
In this course, you will learn how to use the Firebase platform with your Flutter apps. You will implement several real world Flutter projects with Firebase as a backend. You will also learn to integrate the following features with your Flutter apps.
After completing this course you will be ready to build your first Flutter app integrated with Firebase.
Flutter views represent the interface presented to the user. They provide interaction and allow the users to feel the essence of the application. Unfortunately, Flutter views are also often ignored, resulting in tightly coupled and non-reusable components.
In this article, I will discuss techniques that can help you construct more reusable and loosely coupled views.
Let’s consider a scenario where we have to display a list of customers in our application. When the customer is tapped, we will send the user to the detail screen. In order to create this app, we will start by implementing a
CustomerListScreen widget that…
I graduated in 2005 with a bachelors of Computer Science degree. At the time of graduation I thought I wasted my 4 years in college. But now after 15 years I can say with 100% confidence that I was right.
In this post I will discuss that it is not mandatory to attend college if you are seeking a computer science degree and the education you receive does not justify the cost.
Attending college in USA is expensive. This is reflected in more than 1.5 trillion dollar student loan debt. Average tuition cost is around $22,000 a year and this…
When designing SwiftUI applications it is extremely important to make sure that the views are decoupled and reusable. Tightly coupled views are harder to maintain, reuse and can result in future complications.
In this post, I will demonstrate how to implement decoupled views that can be reused in SwiftUI applications.
We will implement a simple scenario of master-detail view. The master view will display a list of customers and when a customer is selected, it will take the user to the detail screen and display the selected customer. One possible implementation is shown below:
Inside the List view, we…
As an iOS developer, even the thought of implementing apps in a cross-platform framework gives me the chills. I remember attending countless meetings in which I argued that going native was the best choice. Unfortunately, most of the time, companies went with Xamarin, Sencha, or even some unknown framework from IBM.
In order to truly understand the problem, you have to look at it from both sides. In this article, I will discuss how a cross-platform framework like Flutter can be an excellent choice for most companies.
Flutter is written from the ground up. Unlike React Native and Xamarin, Flutter…
When working with React.js or Flutter apps, developers can configure their routes in a central place. This creates a single point of change where existing routes can be updated and new routes can be added.
Unfortunately, SwiftUI doesn’t provide a global route-management system. In a SwiftUI app, routes are scattered in each view, which makes them harder to reuse and a maintenance nightmare.
In this article, I’ll demonstrate how a simple global route-management system can be implemented for SwiftUI applications. Hopefully, we’ll see a more comprehensive system introduced by the Swift team in future releases.
Before diving into the implementation…
SwiftUI was released at WWDC 2019 as a declarative framework for building apps for all Apple platforms. It quickly became the talk of the WWDC and was embraced by the iOS community. Apple has painted a picture of SwiftUI being the future of iOS development. In this post, I will cover why you should focus on learning SwiftUI in 2021.
From my personal experience, learning SwiftUI was a relatively easy process. Even though the framework is completely different from its predecessor, UIKit I was able to relate my knowledge of ReactJS and Flutter to feel comfortable with SwiftUI. …
In my last post, I talked about how isolating the code allows you to focus on the main problem and ignore the complexity associated with the rest of the application. In this post, I will talk about how a large problem can easily be solved by dividing it into much smaller (micro) problems.
Let’s say you are building an application which allows the user to authenticate using username and password. You are responsible for the complete piece, which includes the database, server as well as the user interface. If you look at the problem as a single unit, you may…
I have been teaching software development for the last 4 years and have trained over 200 developers. After graduating 200+ developers, I started to see a lot of patterns in their learning and behaviours. One of the most important thing I notice among new developers is they fail to isolate the issue from the big picture. This result is frustration and lost productivity, which could have been avoided.
In this post, I will talk about how to isolate the issue and how isolating and focusing on a one single problem can allow you solve the problem much quicker and in…