Guide for vault integration with your iOS app

Vault
Vault
Photo by kjpargeter on Stockfresh.

When working on mobile apps, we interact with APIs all the time. In order to connect to these APIs, we use API keys. These API keys are very important, as they map/identify us as a unique user of the system we are trying to integrate with. We always need to make sure these API keys are not accessed by unintended users. Rate limiting, quota control, and security are some of the reasons why API providers have API keys.

One of the good security practices is not to save secrets and API keys as part of your source code. But if we don’t put them in the source code, how will our code know about them and consume them? Well, the answer to the problem is using a security tool called a “vault.” There are various vault options to store secrets. We will talk about the Hashi Corp Vault System. …


Why a Developer needs to have an Online Presence

Online Presence for a Developer!

Image for post
Image for post

Your Reputation Precedes You!

Thanks to the Internet, the world has become a global village. The ways we communicate today with each other is more than we can count. It takes a couple of clicks to communicate with people around the world. We can leverage this power to share our ideas with others and learn from others at the same time. When it comes to developers, they can share and learn from devs around the world which leads to an informed, intelligent dev community. A lot of times developers tend to overlook the importance of online presence. …


Centralized vs Distributed Version Control: Which One Should We Choose?

Guide to choose the version control system that works for you!

What is version control?
What is version control?

I can’t state enough how important the version control system is for software development. It is very important how we track changes in our system. We need to pick a version control that suits our needs. Let's dive in!

What is Version Control System

A version control system is basically a software tool that helps you track and manage changes to source code with time. Version control systems track every kind of change made by the developer. If something goes wrong, a developer can always go back in time, compare it with an earlier version of code, and fix it. …


How to create a successful mobile application?

Ultimate Guide for making a successful mobile app

Image for post
Image for post

Mobile apps are everywhere today, there is an app for everything you can think of. And there are more getting created every single day!! In this situation how do we make sure our app is successful? Join me in this article as we explore the 9 things to make your next app successful….

The number of smartphones to be used around the world by end of 2020 is predicted to be 3.5 Billion. Users spend 90 percent of that time on apps.

There are over 2.7 million apps in the Google Play store and 2.2 million in the App Store. …


How to use Build Design Pattern in Swift?

Using Builder Pattern in Swift

How to use builder design pattern in swift?
How to use builder design pattern in swift?
Implement Builder Design Pattern in Swift

As a developer, we should always follow a design principle that acts as a guide to structuring our code so that it is modular, easy to read, easy to understand, and scalable. In this article, I will be discussing behavioral design pattern, how to use them, and their implementation in Swift. Read on!

Categories of Desing Pattern

Design Pattern falls mainly under the following categories

1. Creational

2. Structural

3. Behavioral

In this article, we will cover the Builder Designer Pattern which is a type of Creational Design Pattern

Builder Design Pattern

Why?

We create objects for our classes to leverage the functionality a class provides. Sometimes object creation is simple and can be done by the simple initializer. Other objects might have complicated requirements, for eg, it may require a lot of arguments to initialize the object, which in my opinion is too cumbersome and non-productive. Also, we might need to mix and match these params for initialization. In these cases, we should go for piecewise initialization/construction. For accomplishing that we need an implementation that provides us a step-by-step mechanism so that we have an easier API way of accessing things with granular control of object creation version. …


The complete guide to Swift Sets

Blue orange sliced in half.
Blue orange sliced in half.
Photo by davisuko on Unsplash.

Sets are basically a collection of items that aren’t ordered but are unique. Let's go over different operations/functions that Swift has when it comes to Sets.

Creating a Set

Initialize an empty set

Sets in Swift are of a generic nature, so they can hold any type if it conforms to the Hashable Protocol. For the sake of simplicity, we will use String and Int.

var fruits = Set<String>()

Initialize a set with elements

We can also initialize a set with some default elements.

var fruits:Set<String> = ["apple","mango","guava"]

Initialize a set with a capacity

We can set a space pre-allocated for a minimum number/capacity.

var fruits = Set<String>(minimumCapacity: 2)

Inspecting a Set

Check for empty

Since Set conforms to the Collection Protocol, we can use a check for isEmpty. …


Detect jailbroken iOS devices in your app

Man using his phone.
Man using his phone.
Photo by freestocks on Unsplash.

Thanks to the mobile era, we have mobile apps for everything these days. Every business from a barbershop to huge retailers has apps so that they can be closer to their customers. On one hand, we really leverage this convenience. On the other hand, there are risks of exposing a lot of confidential information while using these apps. This becomes vital when dealing with payments and other sensitive information.

As developers of these apps, it is our responsibility to put checks to make sure privacy and security are not compromised. Here is a comprehensive list of security best practices. …


Guide To Stay Positive in COVID

How to stay positive during Covid-19?

How to stay positive during COVID?
How to stay positive during COVID?

It is very hard to stay positive when everything around you is going south. In the case of a pandemic, it is even worse. But, now more than ever it is important to stay positive for your mental health. We need to connect and constantly check with ourselves, our feeling our mental health to stay positive in the current times of fear, uncertainty, loneliness, negative news, grief, social distancing, potential risk of loss of employment, etc.

Here I am sharing some of the tips that have worked for me in getting through this situation. …


Preventing Screen Capturing and Recording in iOS App

Making iOS App Secure from Screenshot and Recording

How to prevent screen capturing and recording in iOS App?
How to prevent screen capturing and recording in iOS App?

Thanks to the mobile era we have mobile apps for everything these days. Every business from a barbers shop to huge retailers has apps so that they can be closer to their customers. On one hand, we really leverage this convenience but on the other hand, there are risks of exposing a lot of confidential information while using these apps. And it becomes very vital when dealing with payments and other sensitive information. As a developer of these apps, it is our responsibility to put checks to make sure privacy and security are not compromised. …


Making iOS app running on simulator easy

Transfer iOS app from one machine to another without running code

How to transfer your App from one Xcode Simulator to another
How to transfer your App from one Xcode Simulator to another
Transferring app from one machine to another

Here is how the story began! I was asked by product team to run the app under development on their machines. Not all the members own the physical iOS device which obviously aren’t cheap :D. As a developer I think everyone will agree with me that product teams in the company are always eager to get their hands on the project status in a tangible manner. And when it comes to a mobile app, eagerness is even more as everyone has a smart device in their pocket.

This was an interesting requirement so I set out to explore solutions. …

About

Shashank Thakur

Find my Swift articles on https://www.shashankthakur.dev/

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store