Blog posts

MLCamera – Vision & Core ML with AVCaptureSession Inceptionv3 model

June 13, 2017

Goal of MLCamera demo is to demonstrates using of Vision and Core ML frameworks, to process AVCaptureVideoDataOutput and to perform image classification. Complete working demo can be dowloaded from github. Relevant WWDC session are Introduction to Core ML, Vision framework building on Core ML. Apple provides few models converted to its Core ML supported format here. Apple also provides tools to convert most popular machine learning model types to Core ML supported format. With that out of the way let’s get started. (more…)

#AI, #Blog posts, #Coding, #iOS Development, #Swift, #Technology

On our watch (approaching the finish line)

March 8, 2017

Have you ever imagined what it would be like living through the break out of the First World War? Have you ever fantasised about living amidst the industrial revolution, French Revolution? Or any other period that changed the structure of societies, cultures, politics, the course of history, development of civilisation. Have you thought about how you would act during such times, what would you do?

The Enlightenment of the Greeks was wiped out, by centuries of dark ages. For hundreds of years, there was virtually no intellectual and moral progress. Given great strides forwards made during our life time and our parents lifetimes. It is hard not to assume that arc of history indeed steadily bends towards justice and better living conditions for all. However, there is no law of physics, no guarantee societies will continue to march towards positive progress.

Investigative journalism is dead. Their business model which was predicated on the (more…)

#AI, #Blog posts, #News, #Politics, #Rants

Ideal week method (calendar & productivity)

September 12, 2016

Key corner stone of productivity is habits. Productivity aficionados are familiar with weekly reviews which are part of GTD. Ideal week method consists of scheduling everything for upcoming week in your calendar during weekly reviews. Everything from work, leisure, exercise, up to and including sleep. This removes cognitive load of deciding what to do at any given time. Helps build positive habits. Nudges you towards productive tasks you committed to, rather then procrastination.

What to put in a calendar ? Most obvious answer is events that need to occur at specific times and dates. Stuff like dentist appointments, work meetings, gym, classes etc. With most people this is where the utilisation of calendar ends. However calendar can be leveraged as much more versatile tool. A tool to build positive habits, to evaluate the way you are spending your most precious resource on weekly bases, to plan projects, to automate decisions and more. (more…)

#Blog posts, #Improvements, #Productivity

On Deep work: Rules for focused success in distracted world by Cal Newport

March 12, 2016
Author presents concept of deep work (state of flow). Long stretches of highly consecrated, focused work on cognitively demanding task. Ability to deploy all of ones mental capacity fully. It is deep work that accounts for considerable portion of value in knowledge economy. He then goes on to make excellent case for how contemporary workplace culture actively discourages deep work. Open plan offices, expectation of instant email replies, always on chat clients, social media, frequent meetings, constant noise and chatter. Our brains are conditioned to be distracted. Quick reply to email chain. Snarky tweet, post photo on Facebook, overhearing colleagues discussing a topic and joining in. We are addicted to consumption of small disruptive bites of information or to acting on small meaningless tasks and to the false sense of accomplishment that doing so provides. We end up with decision fatigue, cognitive overload, paying high price of context (more…)
#Blog posts, #Book club, #Improvements, #Productivity, #Science

Year of improvements

For few months now I have been focusing on getting better at variety of things. Overarching goal is to be more effective and productive in professional and personal life. Ultimate goal though is to develop and launch at least 1 product a year. One with relatively realistic chance of eventually generating at least half of my income. All the while still having full time job. It was obvious to me if I was going to pull that of I had to become more effective, disciplined and productive. I though I would start by reading a few books on productivity and business. I was shocked to realise that somehow I have managed to read 3.22 books a week. Mixture of audio(2/3) and written(1/3) books. Total of 29 books on variety of topics since January the 1st. Ashamed to admit that probably I haven’t read that many books in last 3 years combined. I ended (more…)
#Blog posts, #Improvements, #Productivity

SnowGlobe.framework iOS Xmas easter egg, shake iPhone to make it snow

November 11, 2015
Update: Now updated to Swift 3 thanks to Ben Kreeger. I don’t see anything wrong with falling for spirit of the holiday season and getting bit cheesy. Last year I wrote SnowGlobe.framework. Its easy to use, open source iOS framework written in Swift. Now updated for swift 2.0 and added Jingle bells sound effect. It allows you to add delightful / cheesy Christmas easter egg to your awesome app for holiday season. When user shakes the device, your app “turns into a snow globe”. Leveraging CAEmitterLayer to create snow fall, snow globe like animation while device is shaken. I am a sucker for that kinda of thing ☺️. You can get it at github here. Or using CocoaPods (“SnowGlobe”) Read about how to integrate it in original post here. Watch how it works in few of my apps below You can now see in action in Memory game. Sadly both of these apps are still (more…)
#Blog posts, #Coding, #iOS Development, #Swift

Push / Pop modal SFSafariViewController (Hacking swipe from edge gesture)

October 11, 2015
In iOS 9 Apple introduced SFSafariViewController. In a nutshell it pretty much runs full Safari in your app. This is great as user gets all Keychain passwords, Safari extensions access, cookies, session data, etc. All of that done securely as the SFSafariViewController spins up a separate process, so that the app does not have access to SFSafariViewController’s content (More info here). That’s all great, however there is problem. Result of pushing SFSafariViewController in UINavigationsController is loss of default bar behaviour, which looks pretty bad. So really, only option is to present it modally. This has is own drawbacks. Apple has made unfortunate choice of placing the done button to top right corner. This makes it very difficult to dismiss when using the phone one handed. Although, I don’t really think positioning it anywhere else would solve the problem. Now standard swipe from the edge of the screen gesture really is the (more…)
#Blog posts, #Coding, #iOS Development, #Swift