Category Archives: Blog

Moving from iPhone to Android

This review is about my experience of moving to Android after having used the iPhone for almost 5 years. Initially I wasn’t sure if it would ever work out as I was particularly nervous about missing the Apple ecosystem since I used a Mac and still had an Apple watch at that time.

But now that I have used Google Pixel for almost 2 years, I think I can answer the most important question: Do you miss the Apple ecosystem after moving from iPhone to Android? Before I answer that question let me share some of the things which I absolutely love about Android:

Pixel Camera

Pixel camera is one of the best cameras I have ever used. My wife who is very picky about photos and who has been an iPhone user for almost 12+ years now likes the photos taken from my Google Pixel phone. The portraits taken by Google Pixel are just out of the world.

Google Photos

Complementary to Google Pixel, Google Photos is an equally awesome app. Simple tools like finding the right photos faster, collage creation, portrait blur, magic eraser, select top shot and many other computational photography features have been very elegantly knit into Google Photos and Google Pixel.

Hold for me

This is again one of my favorite features. How many times we call customer service and have to wait several minutes before someone can answer us. And while we are on hold, we have to deal with the distracting music. But now we can use the Hold for me feature where Google will do all the listening and informing you as soon as someone is available on the other end to help you. I have used this feature many times and it just works flawlessly.

Turning web pages to podcasts

I find it much easier to listen to audiobooks and podcasts than reading long blogs. Earlier I used to just skim through long posts and never managed to read it completely. But now I use the Google assistant to convert any web page into a podcast and the experience is as good as listening to a great audiobook.

Phone app

It is so convenient when Google is able to detect the person/company calling me or the one I am calling to. Their name is auto updated in my call history and thus I no longer have to store or filter their contact numbers. Also, Google’s feature to screen calls has got rid of most of my spam calls.

Material You

Android’s Material You generates a breathtakingly fresh theme with every wallpaper. It can transform the overall UI very easily thereby making it more vibrant, personal, alive and easily customized. So everyday when I use a random wallpaper, I get the feel as if I have just updated the software to a major version in order to get an overhauled UI design.

Information

The home screen can show all the calendar/traffic notifications at glance and even the current song being played in a public place. Also some of the apps can appear on your screen in the form of bubbles when you switch context and move to some other app. All these features allow you to multitask and be efficient. Speaking of notifications, my favorite alert is the earthquake detection alert which is sent whenever an earthquake is detected by an Android phone.

Google Workspace

I have been just awestruck with Gmail, Google Calendar, Google Docs and Google Meet integration. In short, Google workspace is an awesome product and all its apps both on Android and Desktop work like a breeze.

Clock display

I like the always-on clock on the locked phone screen of Pixel whenever it detects you near the phone. It has helped me so many times to find the phone in a dark room where my kids are often sleeping. On a related note, the Pixel clock display while it is getting charged on the Pixel Stand is my favorite night and alarm clock.

But what about the Apple ecosystem?

Apple Watch

My primary use cases of a smartwatch are:

  1. Health and fitness tracking.
  2. Notifications.
  3. Good battery life.

The smartwatch which I used initially to pair with my Android phone had decent fitness tracking and notifications. But it really let me down in battery life and UI performance. So to be honest I initially missed a good smartwatch integration in Android. However, I recently started using Fitbit and I must say that it has exceeded my expectations so far. It has got pretty good health tracking features and an incredible battery life. At the same time the UI is well designed, easy to use, fast and very responsive.

iMessage

As an iMessage replacement, I now use Google Messages in Android to send texts/SMS. I have found it to be very fast and reliable even while texting with iPhone users. They also have a browser based app which will never let you miss the iMessage integration between Mac and iPhone. Overall I found it to be a far superior product having many cool features like smart reply.

AirPods

You would be surprised to know that AirPods work flawlessly on my Google Pixel so not sure who gets the credit here. Other than in-ear detection, I cannot make the difference if I am using AirPods on an Android phone or an iPhone. Besides that there are many good alternatives Google Pixel Buds for Android to get the same AirPods like experience.

AirDrop

I do miss AirDrop sometimes but I mainly used it earlier to transfer photos from my iPhone to either my Mac or to my wife’s iPhone. Now I instead use Google Photos which allows me to instantly sync and access my photos from any other device.

Anything else I miss?

I would say the thing which I miss the most is the banner notifications on the locked screen. Currently Android only shows an icon on the top status bar for a new notification and I am not aware of any way to display banner notifications on the locked screen. So if you want to read a new notification then you have to scroll the status bar down. Not a deal breaker but kinda annoying.

Conclusion

So what is my final answer to the original question: Do I miss the iPhone or the Apple ecosystem? For me the answer is a No. And the reason is that all the AI and ML based features of Android / Google / Pixel apps outweigh the benefits of being in an Apple ecosystem.

Learning online for free

There has never been a better time in history to learn things online. Through this post I will show you how you can access almost any great learning resource without spending a dime. This includes reading books, magazines, newspapers, comics, learning a new language, listening to audiobooks and watching video courses completely free of cost.

So it turns out that most public libraries in the United States allow their users to borrow digital content absolutely free of cost. Disclaimer: The resources mentioned in this blog have been explored using a public library located in Silicon Valley aka Bay Area (California) so apologies in advance if the exact same options are not available in your public library.

Kids

Best to time to learn is when you are a child so let us start with kids. Believe it or not but you can access ABCmouse completely free of cost via your public library account and help your child learn everything he or she needs using newer and more intuitive techniques.

Books

Almost all available eBooks can be borrowed from the library using apps like Overdrive, SimplyE, HyRead (for Chinese eBooks) and Odilo (for Spanish eBooks). Depending upon your platform (Kindle, Mac, Windows, iOS or Android), one of the above options should allow you to access the book you want to read. Apart from these options my favorite one is O’reilly for public libraries where you can access all the great O’reilly books and their other video content.

Audiobooks

Using your public library account, you can access almost any available audiobooks through apps like Overdrive, SimplyE or Libby. I use the OverDrive app to listen to audiobooks and it allows me to check out 10 digital items and place a hold on 12 items for a maximum period of 21 days. After 21 days, you can place a new hold on your previous book in case you weren’t able to finish it. In my experience the deadline of 21 days acts like a motivation and forces you to finish a book before your checkout expires.

Magazines

Just like eBooks, you can access many magazines online and free of cost from the library via Overdrive, Libby, HyRead and Flipster app on many different platforms.

Video courses

You can access LinkedIn Learning and Universal Class via your public library account to access the massive collection of their video courses. You can also access a good amount of video tutorials using O’reilly for public libraries.

Learning a new language

You can learn a foreign language and become multilingual by using Rosetta Stone via your public library account.

Newspapers

You can also access and read several newspapers like Mercury News (Bay Area) and New York Times free of cost.

Comics

You can access several comics using ComicsPlus via your public library account.

Free movies

You can even watch some movies including movies for kids on Kanopy.

YouTube and Google

Last but not the least, the world’s biggest library is YouTube and there is video for almost everything. Also, using Google you can search and find a solution for almost anything.

Final thoughts

To conclude there is no shortage of resources in the present age but what is scarce is your attention and motivation to learn. If technology enables you to access things easily, it also makes it easy for you to get distracted by it. So stay focused and have self discipline while using technology to learn and grow.

Advice to younger self

People often write posts about giving advice to their 20 something self but I actually think that is kinda late in life. The foundation for learning fast and ability to solve hard problems needs to be nurtured at a very young age.

For e.g, my younger one (2.5 yo) wants to unbutton and remove his clothes on his own. He would not take no for an answer and would refuse any help whatsoever. He is ready to tear his clothes and defeat all physics principles but he wants to do it on his own.

Similarly my elder one (4.5 yo) struggled and argued with me for many months if not years about how to buckle/unbuckle himself in his child car seat. He is still not there yet but he has now learned some important tricks and it is only a matter of time.

I think every kid is the same where they have this zeal to do “something” on their own. They are not afraid to fail in “that” thing and they are not worried about what others are thinking. This is called the learner and beginners mindset. However every child is different so If you want your kids to love learning then support their curiosity and interests from the beginning.

But this post is not about others or my kids but about me. So what would I do differently or tell myself if I can magically become a child someday. Oh my dear lord, what not would I do?

  1. Start learning some musical instruments at a very young age.
  2. Play a lot of physical games, start exercising early, play multiple sports and master at least one.
  3. Eat a lot of fruits and vegetables specially start eating salads at a very young age.
  4. While studying in school don’t memorize for the sake of getting good grades or chasing degrees. Instead try to understand the core concepts and learn using the first principles.
  5. Read books and write something daily but while doing so don’t get distracted by the technology. Also try to be multilingual.
  6. After you have understood a concept, implement the concept by doing a project on it or building something on it to improve your understanding from a young age.
  7. Aspire to be an entrepreneur as exponential growth happens when you build something on your own and work for yourself.
  8. It’s okay to gain experience working for someone for a few years but the best time to start a company is when you are young and straight out of college.
  9. Give priority to time, speed, innovation and execution. In other words don’t get complacent and delay or slow things down.
  10. Kind heart > Genius mind: Go above and beyond to help and give to others.
  11. Integrity > Intelligence: Never ever cheat in life or do anything wrong. No matter how smart you think you are, you can never escape from the consequences of being evil.
  12. Just compete with yourself to become a better person each day. In other words, don’t compare yourself to others or get jealous.
  13. Fulfill your dreams before you get married and have kids. And if you decide to have kids then have kids sooner rather than later.
  14. Grow trees. Save water. Protect mother nature. And inspire others to do the same.
  15. Karma is everything. You get what you give others.

10x returns

In 2021, Elon became the world’s richest person and was awarded Time person of the year. It all didn’t happen in a day or a year. He has been hustling for more than 20+ years now. I worked at Tesla for almost 5 years and can tell you from my own experience that he is one of the most hard working people I have ever seen in my life. So to me the success of Elon or valuation of his companies is no surprise. I actually think he and his companies are just getting started.

In my opinion, money and success are mostly the fruits of our labor. Although you also need little luck and timing which we will discuss soon.

One important thing which I have learned is that there are no shortcuts in life. If it comes easy then it will go easy. So if you want to get 10x returns in life (be it money, success, career or relationship) then you need to learn to invest in the right thing and for the right time.

Following are some of the things which I have learned from my 10x failures and 10x winners that I wanted to share:

Learn 10x. Give 10x.

If you believe in life long learning then nothing can stop you. The trick is to learn about hard things and things which others are not paying attention to. Remember that Elon started a rocket company by reading books on rockets and WhatsApp co-founder Jan Koum taught himself computer networking by purchasing manuals from a used book store. But with learning you need a little bit of luck too. And luck comes from just one thing which is to give to others. In other words, you need to go above and beyond to help others.

Value your time 10x more.

In my opinion, time is the real money. So I don’t like to spend my time arguing with customer service on why a package was delivered late to me. Neither do I like to stand in long lines to return an item. Thus to stay away from these materialistic distractions, I try to have a minimalist lifestyle aka consume only what is needed and try not to get attached to things which have no long term value. In other words, my focus instead is to spend my time and energy only on things that have the potential to return life changing returns.

On that note following is one of the best tweet which I have read on valuing your time:

Improve your health by 10x.

If you are not healthy then nothing else matters, neither your time nor your money or success. The longer you can play, the more opportunities and returns you can get. But you can play longer only if you are healthy. The goal of staying healthy is actually to stay young. I once read a tweet (which I cannot find now) but that summarized this point very well: When you are young you want to be rich and when you are rich you want to be young.

Invest in Founders/CEOs executing at 10x.

Running super successful companies that can return 10x is all about execution, execution and execution. In fact the title of the CEO stands for Chief Execution Officer. So invest in those that can operate at 10x and those who are immune to chaos and short term failures involved in ruthless execution.

Invest in those solving 10x harder problems.

The biggest advantage of solving or investing in those who are solving super hard problems is that there is very less competition. The other advantage is that you still get the 10x market opportunity to grow. And if you can grow by 10x then your returns would also be 10x.

Increase your emotional & self-discipline by 10x.

When you try to solve hard problems or invest in those who are solving hard problems, it won’t be an easy ride. Learn to develop a thick skin by increasing your emotional and self-discipline. Don’t get into arguments with people regarding what they think or what they say. You don’t have to agree or disagree with anyone. Don’t read the news, ignore the rumors and turn-off the comments and notifications. Instead spend all your energy in doing the work and getting things done. Also, don’t get disheartened by the success or luck of others. In other words, level up your self-discipline to stay focused, cheerful and hopeful.

Work hard. Build products. Be present. Play long term and Have fun.

If there was just one thing that you could learn from this post then it would be this section so let’s discuss each thing in some detail

Work hard

Working hard doesn’t necessarily mean spending more hours. It instead means to not compromise the quality of your work. It means to give more than what was expected. It means to have integrity and always do the right thing. It means following up and staying on top of your deliverables.

Build products

Learn to build and sell products. Working for someone else can make you rich but selling your own products can make you super rich. Of course it comes with risk but without risk there are no rewards.

Be present

In this world of internet, social-media and never ending news, your attention is your most valuable asset. Don’t get distracted by social likes and hearts. Your quality of work and execution is what differentiates you and it all depends on your ability to stay focused aka being present.

Play long term

Learn to play the long term game as building and holding things is hard. Also, it usually takes 10+ years for successful products to go from idea to IPO and another 10 years to get the non-linear returns.

Have fun

In the end we are all going to die so what’s the point if you are not having fun and if you are not at peace. I actually value peace more than time so my formula to deal with life is:
Peace > Time > Money.

If doing something doesn’t give you peace and happiness then don’t do it no matter what impact it makes or how much money it will make you.

You do your best and get the best results when you are having fun.

Teaching programming to kids

Scratch is a very good option for kids if you want to teach them programming at a young age.

Here is an example of a very simple game made using Scratch where the aim of the hero in the game is to catch as many stars as possible.

Thus the hero tries to fly and spin at the same time. And while moving if it touches a star then it gets a point.

The above game was made using the video tutorials listed over here which I would definitely recommend if you want to get started with Scratch and before you jump into any exercise.

Also, you can follow the below steps if you want to practice making the above game:

  • Open the Scratch editor. Although you don’t need an account and you can continue without signing in, I would still recommend making an account. This would allow you to save your project or export the project file which you can load later.
  • Select Heros and make the following block. Once done press the green flag to test your code.
  • Select Buildings and make the following block. As before, you can test your code by clicking the green flag.

  • Finally select Objects and make the following block. You may also want to change the setting of the Objects to make it visible by default if it is already not.

Homework: If you manage to make this game then try to also add arrow key controls to it such that you can now use up, down, left or right arrow keys to change the direction of the hero to catch even more stars.

Happy learning and welcome to the beautiful world of programming.

Teaching kids at home

These are some of the good resources that can be used to either homeschool or teach important concepts to your kids:

ArgoPrep books

I recently came across ArgoPrep books in Costco and thought of gifting it to my elder one as his Christmas gift who will be going to Kindergarten in Fall 2022. After helping my son understand and solve some first 30-40 worksheets of their Kindergarten book, I can say without a doubt that this is one of the best books you will find if you are planning to teach your kids at home.

Khan Academy

My favorite one is Khan Academy and it covers more or less everything. It starts from Kindergarten, covers all the grades of both K-8 & High school and goes all the way till the final year of university. Pretty incredible isn’t it?

Currently Khan Academy is completely free and I hope it stays the same because there are many underprivileged countries and children with no access to proper education. So if you want to help them stay free and resourceful then please try to make any donation of your choice.

ABCmouse

Believe it or not but you can access ABCmouse completely free of cost via your public library account and help your child learn everything he needs using newer and more intuitive techniques.

Note: I plan to keep this page updated as and when I will find new resources so stay tuned.

SciShow Kids

SciShow Kids is a great YouTube channel to introduce science, nature and many other topics to your kids that will increase their curiosity . Videos are usually short (4-5 mins) which is just perfect for kids specially the ones who are just getting started and thus have a short attention span.

More YouTube Channels

Following are some of the other YouTube channels for kids which have been recommended to me by friends/colleagues but I am yet to review it:

Daily ToDo list 2022

Planning your day and kids are mutually exclusive specially if you have two kids under 5. Jokes aside, I honestly want to have some planning and structure in my daily schedule in 2022. And one way to achieve some direction is to have a daily ToDo list. I won’t mind even if I spend a few minutes a day on each item of my ToDo list and continue to make some progress on a daily basis.

So here are some of the things which I want to do everyday in 2022:

  1. Spend at least 30-60 mins a day reading/writing/exploring something new with my kids.
  2. Spend at least 15 minutes working on my side project.
  3. Spend at least 10-15 minutes a day learning the topics of my 2022 learning goals.
  4. Spend 15 mins per day watching Cosmos documentaries (A Spacetime Odyssey and Possible Worlds)
  5. Write something everyday for 15 mins so that I can post at least one blog per week.
  6. Go to the gym everyday or walk 10000+ steps if I end up skipping the workout.
  7. Watch at least one video on nutrition (15 min) and one video on fitness from my shortlisted YouTube channels.
  8. Tweet something useful everyday.
  9. Read all the new emails of the day for both my personal and work email accounts.
  10. Read this ToDo list everyday.

Health goals 2022

I think in the end all health goals boil down to:

  1. Eat healthy.
  2. Stay Fit.
  3. Sleep well.

Eating healthy requires discipline and staying fit requires commitment. Discipline is all about resisting the temptation to pick that free cookie or the slice of cake whereas commitment is all about showing up to gym or going for a workout no matter how late you are running in your schedule.

I am no expert on sleep so I won’t go there but all I can say is that sleep is the best medicine. No matter how bad your day has gone, sleep can heal all the wounds. But what stands between your sleep and you is hard work, peace and screen time.

  1. Work insanely hard, get tired and you will sleep on time.
  2. Don’t do anything which will not let you sleep with peace.
  3. Don’t get attached to social likes, avoid screen time and you would be a rich person.

Thus to keep myself disciplined, committed and at peace, I wanted to make a list of my health goals which I can read before starting my day. So here are my health goals for 2022:

  1. Sleep 7 hours a day.
  2. Eat frequent small meals.
  3. Drink 100 oz of water a day.
  4. Reduce the intake of carbs.
  5. Avoid all the sugary desserts with some cheat days.
  6. Watch one fitness and training video everyday.
  7. Watch one nutrition video everyday.
  8. Go to the gym or workout 5 days a week.
  9. Walk 10000 steps per day.
  10. No social media and checking of news or stock prices during day time.

BTW I will be bookmarking my shortlisted resources on fitness and nutrition whose videos I plan to watch everyday. So feel free to visit this post if you want to view my recommended channels on fitness and nutrition.

Learning goals 2022

TL;DR: Topics I want to learn and explore in 2022:

  1. Advanced Python (Book: Fluent Python, 2nd Edition)
  2. Design Patterns (Book: Python Design Patterns)
  3. Full Stack Web Development (Book: Flask Web Development, 2nd Edition)
  4. Crypto/Web3 (Books: DeFi and the Future of Finance, Mastering Ethereum)
  5. Security (Book: Web Security for Developers)
  6. Go programming (Book: Learning Go)
  7. JavaScript (Book: Eloquent JavaScript)
  8. Google Cloud (Courses: LinkedIn Learning)
  9. Science & Space (Books: The Blind Watchmaker, Why Evolution is True, Cosmos: Read the book and rewatch the documentaries: A Spacetime Odyssey and Possible Worlds)
  10. Venture capital (Books: Venture Deals, 4th Edition)
  11. Stock Market (The Intelligent Investor, Rev. Ed, A Beginner’s Guide to the Stock Market)
  12. Vocabulary (Book: Word Power Made Easy)

Note that all the O’Reilly books listed above can be accessed through a public library account. So these resources actually don’t require a huge money investment but what they do need is discipline and commitment. I often make the mistake of picking too many things to learn than I can handle. But the other big mistake which I have made in the past is not making any learning plan and schedule.

So for this coming year (2022), I want to make a list of 12 things which I would like to continue to learn till the end of that year. For now, my current plan is to spend 5-10 mins per day on each of the above topics. Doing the math, it should take me around 60-120 minutes per day to explore these 12 shortlisted areas. If this approach doesn’t work for me then I may switch to tackling each topic on a monthly basis as opposed to dealing with all the 12 topics on a daily basis. What matters to me is that I continue to spend time on these 12 things in the coming 12 months in one way or the other. And I am calling it my 12-in-12 game plan.

Anyways the main reason I am posting this is to share and bookmark the list of things which I want to learn for the next year (2022) and hold myself accountable if I am not able to finish my learning goal by the end of the year. Also, my current plan is to do the same drill every year going forward.