Posted on Leave a comment

A little bit of LaTeX

I’ve been busy watching videos. A lot of them, as part of my learning process for quantum computing. To concretize my learning, I’ve been taking notes. As quantum computing is hardcore math, it’s impossible to not have some sort of equations in notes. I’ve never needed to learn or use LaTeX before: all simple algebraic equations can be written in plain text using some jugaad, say using superscripts for exponentials. But how do you represent column vectors and matrices? That’s where LaTeX comes super-handy. As I’m using it more, the more fun it gets.

Auto-LaTeX Equations is an excellent add-on for Google Docs that makes it super-easy to write LaTeX code and convert it into good-quality images of math stuff and equations.

An example LaTeX render from my notes is this matrix that represents the phase shift quantum gate:

Posted on Leave a comment

Building a Career in AI

COMWETT 2019 poster at WCTM featuring Anurag Bhandari
COMWETT 2019 poster at WCTM featuring Anurag Bhandari

A couple days back I spoke at World College of Technology and Management in Gurgaon. My topic Building a career in Artificial Intelligence was directly aimed at students at the cusp of starting a career. Without going into deep technical details, my session was designed as an eye-opener for students (and teachers alike) who have wondered today’s hot question–what does it take to become an ‘AI engineer’?

The keynote presentation (by Nishith Pathak) talked about the importance of AI, the various possibilities it opens up and some industry use cases. My session having been scheduled right after the keynote benefitted from the expectations the keynote speaker had set about AI. While the keynote highlighted the functional and business aspects of today’s arguably #1 buzzword, my presentation dived a little deeper into uncovering the skills and knowledge required to try and enter this amazing field of study. I say field of study since most of the useful work on AI is still purely scientific and even academic. But since corporations are increasingly adopting the set of ideologies that define AI in an attempt to create intelligent solutions for their clients, job opportunities have started to open up for people who know the science and math behind AI. As any sufficiently technical person would know, machine learning is at the heart of developing AI solutions. And, so, my presentation put focus on ML and the skills required to learn it.

A special thanks to the organizers at WCTM college (especially Dr. Pooja Sapra) for inviting me over and giving me the opportunity to connect with at least a hundred students about something I’m passionate about. And thanks to Nishith Pathak for recommending me at this event.

I leave you with a preview of my presentation, hosted at Google Slides. I hope absolute beginners will find it useful. People already working in machine and deep learning, please do let me know your thoughts on how it may be improved.

Posted on 1 Comment

Running + Cycling = Fun + Routine

Today I completed 23 days of consecutive morning workouts. 23 days… my gosh! It was once believed that the magic number of days after which doing something daily became a routine was 21. I am 2 over. However, recent studies have shown that 21 is a little too less. The actual magic number is 66.

At any rate, I think 23 days is sufficient to make one feel great about a regular morning ‘routine’. I wake up between 4-5 am each morning, do work related to whatever side project or experiment I’m working on, and at 7 am I hit the road.

I’ve been running regularly since 4 months now. But until the end of March, it was not more than 3-4 days a week, sometimes even less. I wanted to be more regular in order to fight and reduce my stupid belly fat. Then one day–almost suddenly–I decided to alternate my morning workouts between running and cycling. It was an experiment to see if a day of hard exercise (running) followed by a day of relatively less stressful exercise (cycling) would help me get into a habit. And of course, I wanted to use that cycle of mine lying around unused since long. Guess what, it worked!

I’d been doing 3 kilometer runs before my new routine. Mixing in 10+ kms of cycling helped me very soon amp it up to 5 kms. Now, I consistently do 5 km running and 13+ km cycling sessions. That’s around 35-40 mins of daily workouts. Amazing, isn’t it? Yesterday, I broke my time record for 5 km run and today I broke my total distance record for cycling. Screenshots below.

I use Nike+ Run Club app for tracking my runs and UnderArmor’s MapMyRide app for cycling. And since I have plenty of ‘free’ time while working out, I listen to a podcast or an audiobook. After having finished The Stories of Mahabharata podcast, currently I am listening to the audiobook The Power of Habit. I am 35% through it, but how much I miss the Mahabharata podcast! Sudipta Bhawmik’s storytelling skills are really something. I’ll soon be doing a blog post on briefing all characters of the famous epic tale as have been covered in the ongoing podcast till now.

Posted on Leave a comment

Picture of a blackhole

Being a physics enthusiast, I was perhaps as dumbfounded as you were when I saw the first-ever image of a blackhole in today’s newspaper. I’ve always been fascinated by blackholes: their mind-bending complexity and the various sci-fi theories weaved around them over the years. So it’s obvious that capturing the ‘un-see-able’ felt weird. Like really weird. And what a name of the system of telescopes that captured this image–Event Horizon! I think the following video does a pretty good job in explaining how to interpret the image. It’s intriguing to note that the video was released before the image was actually made public.

Featured image credit: Wired

Posted on Leave a comment

My first cron job

That’s right. Believe it or not. I created my first cron job TODAY! This is what it looks like:

0 4 * * * cd /var/www/mysite/ && node gmailscripts/watch.js

It’s a very simple job that calls a Node.js script to renew a watch I have on one of my Gmail accounts. at exactly 4:00am daily. Now, what is a watch or why I am watching my mailbox are beyond the scope of this little blog post. Basically, I have a nifty little Node.js API that I use as a webhook to get notification updates from Gmail whenever a new mail arrives. It then checks if the new mail has a specific subject and from address, which when true instructs the API to call a custom parser to scan the contents of the new mail and return me important bits of information that I then save in a database. Geeky? Perhaps it is. I plan to do a separate blog post on how you can do the same (not setting up cron, but watching Gmail mailboxes for new mail programmatically).

Back to cron again: it’s not that I didn’t know the concept of automated jobs before (in Linux or otherwise), I guess I never really needed to create a scheduled job before. Creating the job was not as much fun as reading the correct way to do it. I followed this Digital Ocean community tutorial, which is now 6 years old but stays relevant today.

On this topic, in my professional life I’ve literally seen people learning about this ‘cool’ tool and then misusing it for all sorts of software development things that can be (and should be) done using some form of publish-subscribe or message queue design pattern.