Posted on 1 Comment

Linear Algebra

Linear Algebra notation and examples

Such is the impact of linear algebra in the world of computer science that today it’s impossible (for all practical reasons) to stay away from the topic. Computer graphics, machine learning and, even, quantum computing all model their data using the same language–you guessed it–linear algebra.

When we were taught this seemingly obscure topic at high school, it was hard to imagine then that it would come back haunting with such force. What then felt like “why read what I’d probably never-ever use again in life?” now feels like “why the hell did I not revisit this a couple of years back?”. The article 5 Reasons to Learn Linear Algebra for Machine Learning makes a great (but cautionary) case for why you should too start learning the subject right away!

I have been a machine learning practitioner since more than a year now, but never did I learn LA deep enough to be able to interpret the results of certain deep technical research papers on ML. So, it’s good that I pretty much have to learn this subject now because of my current research work on quantum computing, something you just cannot get a hang of without knowing the various data notations which unsurprisingly are some form of LA notations.

Now, how do you actually learn the thing enough to get deeper into ML or QC or whatever you are working on that requires linear algebra? Good question. The short answer is — do NOT buy a book and spend months. The shorter answer is — check this YouTube course Essence of Linear Algera by 3Blue1Brown. Other cool learning resources exist on the subject, such as Khan Academy, but I highlighted the one by 3Blue1Brown just because that’s the one I’m learning from. And it’s LEGENDARILY awesome because of it’s purely visual explanations (which, btw, are animations created using–you guessed it again–linear algebra!).

Featured image courtesy Khan Academy

Posted on Leave a comment

Presenting My “Brand” New Site

It’s out. Live. My new website is finally ready for prime time.

A couple of months back, I set out to redefine my online identity. Looking at the websites of some of the coolest developers online, I felt low. Kinda left-out. For a software developer, their website is a key ingredient of their ‘brand.’ My brand was an oldish blog with a home page cluttered with unorganized posts. Don’t get me wrong. I am an organizing freak. My WordPress blog was in pretty good shape before. But it did not represent my brand. It just looked like a random collection of blog posts by a guy who does not care too much about keeping it up-to-date. So, I changed all that.

I am happy that I was finally able to find time in my busy schedule to complete all changes I had planned to make. These were:

  • A static home page that briefly talks about me, and acts as a doorway to the rest of the website.
  • Better organized blog posts. I’ve successfully reduced the number of categories to just 8 (from 55!).
  • An about me page that is the frankest and the most open description of myself.
  • Dedicated pages for things I am proud of — books I’ve written (I’m an author, yay) and tweets I’ve blabbered.
  • A new, simple, uncluttered theme.
  • A focus on what I am and love the most — computers & software.

So far I’ve received rave reviews for my new revamped website. Though I should probably disclose that I had only two reviewers: my sister and my wife.

Talk to you in the next one.

Posted on Leave a comment

AR – From POC to Product

Delivering my talk on Augmented Reality

Augmented Reality, the buzzword of corporate boardrooms and the talk of developers’ town. A topic talked about so much, yet understood so little.

I had the opportunity to speak on AR at a meetup yesterday. Tending to a mixed crowd of practitioners and (mostly) mid- to upper-management audience, my presentation was technically deep enough to allow practitioners to take the knowledge home and start and AR experiment of their own and decision makers to start prototyping based on the newly learned possibilities.

Judging by curiosity of the audience and people’s various (good) questions, I think it’s fair to assume that the session was well-received. I’m embedding the PPT deck below in hopes it will help the audience at large.

As for the demos, I showed one each for marker-based and marker-less AR. For marker-based, I used AR.js sample app linked here. For marker-less, I chose Vuforia View sample app (iOS, Android).

Posted on 1 Comment

Finding my place online

Back in the days when I had just started blogging, my dream was to learn whatever there is to learn about building websites and one day become a popular person on the internet. It could perhaps be done by disseminating my gained knowledge through hundreds or thousands of blog posts. It was a silly dream, but that was 14 years ago! That was a time when 256 kbps “broadband” was still a luxury in India. I was a teenager and like all other teenagers I wanted to do something “big”.

Freddie Mercury wearing a crown and robe.
I wanted to become the f**ing king of the Internet.

As I grew up, my access to technology increased, and so did my desire. My dream became my passion. Unlike dozens of peers around me, I was clear about the direction I was heading. I wanted to leave a mark in the world of web development.

When the average Indian was still smitten by Orkut, I was already using Facebook. When my fellow Indians discovered Facebook, I had moved onto Twitter. Life was fun and enjoyable.

Twitter made so many average joes famous. I wanted to be one of them.

But somewhere something changed. The need to build a strong online identity somehow got deprioritized. If I look back at the early days of my career: sure I was usually knee-deep busy with office work and what not (CAT/GMAT prep, Granular, etc.), but could there be better tools than Twitter and Facebook to help leave a mark? After all, Twitter was still new and I was sort of a regular. In retrospect, I should have worked seriously on my online identity then. Sure I tried in chunks—organizing and reorganizing my blog, randomly updating Twitter, etc.—but these were infrequent instances.

When I come across a well-written blog, Twitter post or forum thread—as part of my office work or personal learning—I feel both good and bad. I feel good out of appreciation for the work. I feel bad out of the overwhelmingly stinking thought that I do not have a single such outstanding post to my credit. It literally sucks to be me in those moments.

Anyway, still not everything is lost. I have a long career ahead of me, and with some careful planning now I’m confident that I can make up for what’s lost. In the next few days, I’ll be overhauling this blog quite a bit. I still keep learning lots of new (& cool) stuff. I intend to be more regular with my knowledge sharing here. That’s what I do and love, even if no one ends up reading my stuff ;). Well, sometimes they do but mostly they don’t.

YEAH! I am coming soon…

Stay tuned.