It was Monday and my daughter was late for the school again. To make things worse, the bus came early by 2 minutes. After rushing and making sure she caught the bus on time, I sat down for my morning coffee and opened up Hacker News. The front page had an interesting entry: “All Kindles can now be jailbroken”. Curiously my old kindle was lying next to me. Was this a sign from the universe?| Blogs on Sam Khawasé
निर्वनो वध्यते व्याघ्रो निर्व्याघ्रं छिद्यते वनम्। तस्माद्व्याघ्रो वनं रक्षेद्वयं व्याघ्रं च पालयेत् ॥ The Tiger dies without the Forest, and the Forest is cut down without the Tiger. Hence the Tiger should protect the forest, and the Forest should defend the Tiger. – Mahabharata, Udyoga Parva Yesterday I attended...| Blogs on Sam Khawasé
A long time ago, on a very early morning trip to some Berlin Bürgeramt I was surprised to see that the S-Bahn, U-Bahn and buses were full of kids going to school on their own. This was my first brush with the famous hands-off German parenting1,2 and the adroitness of these kids impressed me. The kids would ride the public transport freely without parental supervision and apparantly this system worked perfectly.| Blogs on Sam Khawasé
Everyone and their dog knows that hiring in tech is broken. Internt forums like HN are full of passionate discussions about it’s brokenness. I think hiring is mainly a narrow waist problem. Narrow waists (or hourglass) is a concept that tells about complex multifaceted systems that are separated by a slim layer of data exchange. On the employer side there are many aspects of the role that they need to fill.| Blogs on Sam Khawasé
JavaScript is the undisputed king of the web and there is no competitor in sight1. You can love it or hate it, but you can’t deny it’s indispensability when it comes to modern web. This despite the fact that JS lacks features present in languages like Haskell, Python, Swift etc. E.g. It supports neither static typing nor strong typing ala Haskell, a gap partially filled by TypeScript. It doesn’t have the first class support for multithreading like Java or Swift has, which WebWorkers are...| Blogs on Sam Khawasé
With the introduction of iOS 14, SwiftUI has gained the center stage at Apple. But how does it feel to port an existing app to SwiftUI? Luckily I have just the right UIKit based app that I can port to SwiftUI. Here’s the captain’s log documenting the upgrade. Day 0: Scenes not Windows: My app uses AppDelegate’s Window based approach whereas iOS 13 introduced an one-app-multiple-scenes paradigm. The benefits are huge, and I can now run different scenes of the same app without worrying ab...| Blogs on Sam Khawasé
The COVID-19 crisis, while disrupting the global world unlike anything before, has opened up an unexpected window to remote work. Nearly all major1tech2 giants3 have4 allowed their workers to do home office. Many people are considering this as a sign of the advent of Work 2.0, where physical offices spaces will be irrelevant, and people can work from their cozy dens. There are however significant challenges in adoption of generalized remote work and things will be back as usual once the COVID...| Blogs on Sam Khawasé
Json i.e. JavaScript Open Notation is a lightweight, human readable and machine parsable data format. Combined with the RESTful API respresentation, it is by far the most popular data exchange format for mobile apps. Given it’s ease of use, extensibility and speed of parsing, it trumps over the age old XML format. JSON is built on two structures: A collection of name/value pairs (E.g. Objects) or an ordered list of values (E.| Blogs on Sam Khawasé
Anonymous functions or Lambdas are one of the most desirable features of a language. Languages like Erlang, C#, Golang, Python etc use lambdas to make life easy for developers. Unfortunately the language I worked with most of the time, Java, didn’t have any support for lambdas. When I came across the beauty of lambdas, it completely changed the way I used to write programs. Lambdas in objective-c are called blocks and they are first order functions.| Blogs on Sam Khawasé
I design products, fine-tune strategies, build teams, and create rock solid software.| Sam Khawasé