Swift Bite – Mutating Functions

Value types such as structures and enumerations can have methods in Swift. These methods may want to modify the properties defined in the types. Consider an example – Here we have defined a struct called Stack which has a property, items. If we want to write a method to push the item in the Stack,…More

I am Authenticated and Authorized…

Security is an important aspect on the Internet. To access the services on the Internet, you must prove you are who you say you are. That’s the Authentication. It is a proof that your identity is genuine. You must also be authorized to access the services. Authentication, on itself, does not give you valid access…More

Installing Android apk using adb

What is adb? Android Debug Bridge (adb) is a command-line tool that lets you communicate with a Android device. It facilitates a variety of device actions, such as installing and debugging apps. There are several other facilities that adb provides. For more information about adb, visit here. How adb works? When you start an adb…More

Back to Basics – OAuth 2.0

Today, I am delighted to start my new series, Back to Basics. This series aims to provide basic knowledge about the technologies that developers come across in their day-to-day lives. Let’s begin today’s topic, shall we? Ever since the Cambridge Analytica scandal is uncloaked, data privacy and security has been the talk of the town. Eventually, privacy…More

Supporting Picture in Picture (PIP) in iOS application

Introduction iOS 9 had brought some multitasking enhancements mainly for iPads. One of which is Picture in Picture (PIP) mode for video playback. In short, PIP allows user to leave the application and continue to watch a video in a floating resizable window. Also, the user can continue to use its iPad normally, without interrupting a…More

POP (Protocol-Oriented Programming) – an introduction

Preface A computer is a complex machine made up of several hardware components. Then there is a software layer which efficiently makes use of these components to perform the desired task. These complex machines, many of the times, talk to each other to share the information or to delegate some tasks. All these tasks, at some point…More

iOS design patterns — Part 2 (VIPER)

In the first part, here, we toured on MVC, MVP and MVVM, three of the most famous design patterns used in iOS application development. This final part will explore the VIPER design pattern. Lately, VIPER is treated as the extended version of MVVM which provides more modularity as compared to its contenders. It basically comprises…More

iOS design patterns — Part 1 (MVC, MVP, MVVM)

Design patterns have always helped in building a manageable, testable, reusable and optimized software. Generally, it helps in modularizing the software such that each component is separate and handles a single responsibility. Additionally, they drastically improve the readability of the code which plays a big role in communicating the software code. Also, the software development…More