Learning Python

The steps to learn Python as I see it, are below:

1. Learn the basics:

2. Build on top the basics:

3. Strengthen, what you know:



Learning Python

Learning Objective C

Here are the steps that a beginner need to take in order to get a good grasp over Objective C.

The below worked for me. Should  work for anyone.

1. Learn the language, Objective C.

  • Complete the book ‘Programming in Objective C’ by ‘Stephan.G.Kochan’. Available here.
  • Watch the video series ‘Objective-C Essential Training’ by ‘Simon Allardice’ in ‘Lynda.com

2. Learn to create iOS applications using Objective C.


Learning Objective C

Ideas worth sharing

Here are few ideas and concepts in tech world which are so fascinating.
They are in different categories, such as:
Clean Energy, Augmented Reality(AR), Virtual Reality(VR), 3D printing, Robotics, Artificial Intelligence(AI), Smart Gadgets, Autonomous vehicles, Drones, Smart Living, Smart Machines etc.

74. Gatebox – Virtual Home Robot

73. effie – never iron again

72. This surgical robot is making an incredibly difficult operation easier

71. Renault Float hovercar

70. Aire – World’s First Smart Drone for Your Home

69. The Lilium Jet – The world’s first all-electric VTOL jet

68.Inside a KUKA Robot

67. With this smart wheel, riding your bike will be a breeze.

66. CNET News – Meet the robots making Amazon even faster

65. Inside Alibaba’s smart warehouse staffed by robots

64. See & Spray – Blue River Technology’s precision weed control machine

63. X-ray Eyes in the Sky: Drones and WiFi for 3D Through-Wall Imaging

62.This ‘City Tree’ could save thousands of lives

61.Robot cracks open safe live on Def Con’s stage

60.Humanoid Robot – Gemonoid HI-1 Android Prototype

59. Make your own AmazonEcho with RaspberryPi

58.Facebook Spaces

57.AR is transforming operating rooms.

56.A Wi-Fi Free Instant Translator for Travelers

55. New DJI Spark with gesture control system

54.Microsoft Cognitive Services: Introducing the Seeing AI project

53. Robots sorting system helps Chinese company finish at least 200,000 packages a day in the warehouse

52. Robot Kitchen – Behold The Future

51. Introducing autonomous robotic platform for security proposals

50. KickStarter-Pebby The World’s Most Advanced Robotic Pet Sitter! by Team Pebby

49. Giant mobile robot arm can build a brick house in 2 days

48. Augmented Future – Open Bionics × Deus Ex × Razer

47. Go anywhere and say anything with virtually no delay.

46. Soft Robotics turned octopus-inspired robots into industrial grippers

45. It can do everything from helping the blind to making barcodes obsolete.

44. They’re cheaper than human guards and smarter than autonomous cars.

43. Going upstairs in wheelchair is not a problem any more.

42.This amazing Taiwanese man built himself an artificial hand from scratch

41.Power of an exosuit

40. A wire cutting robot that can cut through marble like a chainsaw through snow.

39. The first on-site house has been printed in Russia, each square meter costs $275.

38. You could also be a superhero while in this suit.

37. Flippy assists chefs to make food consistently at prices everyone can afford.

36. The spinning and jumping “Handle” robot will take over everything.

35. The BEST drones of 2016!

34. Not a wheelchair alternative, but a brand new mobility platform that completely reimagines the way individuals with walking disabilities are able to move in the world.

33. The complete reimagining of the Broom and Dustpan, makes cleaning easier, faster and more efficient.

32. Eat with confidence again. The spoon is designed to help people with hand tremor or limited hand& arm mobility retain dignity.

31. A revolutionary standing wheelchair, helps wheelchair users stand tall.

30. The most reliable source of renewable energy& the world’s first smart river turbine.

29. The only portable flying camera integrated into your mobile phone cover.

28. SolarCity & Tesla-The SolarCity microgrid on island of Ta’u includes a solar array with an output of 1.4 MW.

27. A scanner? No, your own mobile assistant.


25. Glasses instead of a helmet, light clothing, full balance without a stand. BMW Motorrad presents the motorcycling in the distant future.

24. Release and Hover. An exclusive photographer in the air!

23. The Mavic Pro has over 27 minutes of flight time, 5 cameras, and the intelligence to avoid obstacles and hover precisely.

22. This could save some relationships.

21. This all weather drone can carry up to 11lbs/5 kgs. Just tell it what to do!

20. Meet Nimble – the one finger wonder tool. Now easily open packages and parcels with 1 finger!

19. See the world in a new way with a full HD underwater drone that’s easy to use, modular, portable, and exceptionally affordable.

18. Eggs on a stick! What’s not to like?

17. The Everyday Backpack, Tote, and Sling! Day-to-day carry are redefined

16. Planting and maintaining your own vegetable garden just got extremely easy

15. Effortless transformation of interior spaces

14. DIY – Magnetic levitation

13. This Seems to Be Just an Ordinary Roadside Barrier, But You’ll Be Amazed When You See It in Action!

12. 5-Minute Crafts about 5 months ago 3 handmade gadgets for a mobile phone

11. Convert smartphone charger in to wireless charger

10. This amazing $35 computer is changing the world

09. A robotic arm is giving people with disabilities a sense of dignity while also lessening the load on caregivers by giving them a helping hand during meals.

08. Watch how this unbelievable technology protects your home and keeps you safe

07. NewWind is revolutionizing energy production

06. This bar turns your computer into a touchscreen.

05. 5 brilliant life hacks for batteries

04. DIY : Battery, Magnets and Copper

03. Harvesting fresh water from fog is now 500% more efficient.

02. Double gives you a physical presence at work or school when you can’t be there in person.

01. A demonstration of “Laundroid,” the world’s first automated laundry-folding robot

Ideas worth sharing

Concepts every senior iOS developer should know.

This is a summary of concepts, that every senior iOS developer should know (Not in the order of priority). Add “what to use, when” with every headers as you read.

Suggestions are welcome.

Different architecture patterns:

MVC, MVVM ,Clean Architecture ,Viper …

Different source control options:

Git, Subversion etc. Services like Github, GitLab ….

Different Dependency manager options:


Different Data store Options:

Coredata, realm, xml, file, SQlite, FMDB, SQLCipher …..

Different choices in programming methodology:

Functional Reactive Programming, Object Oriented Programming, Protocol Oriented Programming
Frameworks : Reactive Cococa, Reactive Swift, RxSwift, RxCocoa…

Different choices in solution implementation:

Native, Hybrid etc.
Frameworks : Angualar2, ReactNative, Xamarin, Cordova …..

Different options to assure code quality:

DI, Unit testing, Test Automation, TDD, BDD, Styleguide, clang-format (automated style guide)
Frameworks :  XCTest, iOS Snapshot Test Case, KIF (iOS Integration Testing Framework)…

Different process to assure quality:

Effective Code reviews
Tools : Crucible, Atlassian Stash, Differentials
Frameworks : ObjcLinte, SwiftLint ….

Different Options to send push notifications:

APNS, Firebase, Thirdparty Options like Urban Airship…

Different Options to track user behavior + analytics:

Google Analytics

Different Options to track report and analyze app crashes:

Crashlytics, Fabric ….

Different Options to distribute apps for prod and test:

Enterprise vs Consumer facing (Apple Appstore), Hockey …..

Different Options to deploy apps remotely:

MobileIron, Airwatch….

Different Options for CICD:

Travis, Jenkins …..

Different Options to track the project:

JIRA, Phabricator …..

Concepts every senior iOS developer should know.

Creating split zip archive in mac

In terminal, execute the command below:

zip -r -s 64 archive.zip FolderName/

Note that the default unit is in MB. As per your need, you can use k(KB),g(GB) or t(tb).

For unarchiving, you may need to use third party tools such as Keka or Unarchiver.


  1. http://www.addictivetips.com/mac-os/how-to-create-a-split-zipped-archive-from-mac-os-x-terminal/
  2. http://apple.stackexchange.com/questions/12371/how-can-i-compress-a-folder-into-multiple-zip-files
Creating split zip archive in mac

Installing SSL certificates (.cer) in iOS devices

For a developer, installing  different certificates in iOS devices is a common work flow step.
There are many ways to do it but, here is one that I consider to be the easiest.

High level steps:

  1. Creation of an ad-hoc wifi network
  2. Running a simple web server
  3. Browse the directory in iDevice
  4. Installing the certificates

Detailed steps:

1. Creation of an ad-hoc wifi network

The ad-hoc network creation in my mac machine did not help me.  If it does not work for you, go ahead and create a hotspot and connect your iMac and iDevice to that wifi.

2. Running a simple web server

  • Open terminal in your mac.
  • Go the directory where you have the certs to be installed
  • Run the below command.
python -m SimpleHTTPServer
  • Open your the browser in your mac and try the below address

You should Ideally see something similar to the screen below:


Make a note of the IP address of your mac.

3.Browse the directory in iDevice

Open safari in the iDevice and enter the below url and tap go.
If everything works well, you should see something similar to this:

Now, select the certs that you want to install and follow the prompts thrown by iOS.


Installing SSL certificates (.cer) in iOS devices