Deep Learning Experiments on Google’s GPU Machines for Free

Update: If you are interested in getting a running start to machine learning and deep learning, I have created a course that I’m offering to my dedicated readers for just $9.99. Practical Deep Learning with Keras and Python .

So you’ve been working on Machine Learning and Deep Learning and have realized that it’s a slow process that requires a lot of compute power. Power that is not very affordable. Fear not! We have a way of using a playground for running our experiments on Google’s GPU machines for free. In this little how-to, I will share a link with you that you can copy to your Google Drive and use it to run your own experiments.

BTW, if you would like to receive updates when I post similar content, please signup below:

Signup for promotions, course coupons and new content notifications through a short form here.


First, sign in to an account that has access to Google Drive (this would typically be any Google/Gmail account). Then, click on this link over here that has my playground document and follow the instructions below to get your own private copy.Read More »


Beginning Programming with Python

So, I’ve been teaching CS101 – Introduction to Computing this semester (Fall 2017). We picked Python as the language. I’ve compiled the videos and all the lecture notebooks. These are being made available in the hopes that they can be useful for someone. Here’s how to get started with these. Read More »

Google Has Messed Up Social Once Again

I know I might be in the minority right now but that’s how I feel. It seems Google has learned little from Wave and Buzz. Here’s what I think has gone wrong this time.

First, Google engineers have probably never heard of the phrase, “less is more”. They tried doing everything with Wave — everyone knows how that turned out. They’re doing the same thing with Google+ (or Google Plus). It’s twitter, friendfeed, skype, facebook and slashdot all rolled into one. The problem is, I don’t know which one I’m using when I navigate to the G+ interface.

I know I can divide people into circles and keep them separate but I don’t know if I can keep track of it all. I have separate ‘circles’ for friends and ‘professional connections’. Most often, though, I want to share a thought with both of them so I just post that to the  ‘public’ circle. My friends, goofy as they are, start commenting on the post and it quickly turns into a dorm room crap fest. That’s not the ‘professional’ image I want to project — that was the whole point of circles. The solution, post the same thing twice, once to public and again to friends. But then, why don’t I just go over to twitter and post there?

That, I think is the core of the problem. Why would anyone want to use Google+ — after the initial awe of the cool interface for dropping your friends in a circle subsides? For sharing news — I already have a neat little twitter account for that. It’s streamlined and it does what it’s supposed to do. When I’m there, I know what I’m there for. I don’t get distracted by comments from my goofy friends. Well, how about keep tabs on my friends? I don’t use facebook myself but last time I checked a lot of people were already using that social network. Just as people haven’t jumped the Yahoo! mail ship despite the immense impotence of Yahoo!, I don’t see why they’d move everything over from Facebook over to Google+. Not everyone likes to play with new and shiny geek toys.

And that brings me to the second point: Google engineers just can’t shake the geek within them. They think everything will be adopted if it’s similar enough to Gmail. They tried doing this with Wave. They did the same thing with Buzz, integrating it too tightly with Gmail and that was a fiasco. Now, they’re doing this with Google+. It’s all about how cool the technology is. They’re going to release the API soon.  That’s all great but what about the social aspects? I don’t see any incentives for moving away from my existing social networks — except maybe Buzz. So, I don’t think Google+ is a facebook killer or a twitter killer. It might be a  Buzz killer but that too is a maybe.

Regression with Gradient Descent in Low-level Matlab

Update: If you are interested in getting a running start to machine learning and deep learning, I have created a course that I’m offering to my dedicated readers for just $9.99. Access it here on Udemy. If you are only here for Matlab, continue reading =]

I just finished writing my first machine learning algorithm in Matlab. The algorithm is based on gradient descent search for estimating parameters of linear regression (but can be easily extended to quadratic or even higher-dimensional polynomials). It’s fairly easy if you know the theory behind the model. So, first a very brief theory portion. This isn’t a tutorial on statistics. Go read a book if you don’t know about regression.

Read More »

Writing a Skeleton Linux Security Module

I recently had to write a Linux Security Module (LSM) for one of my research projects and I was surprised to find that there are few tutorials out there and most of them don’t work because of the discrepencies in kernel versions. They’re talking about 2.000.x kernel versions! The only good tutorial I came across was the one on Linux Journal but it assumed some background knowledge (which I didn’t have). So, I had to struggle for a day to figure out how to go about writing the LSM. Hence, this tutorial.

Now, this isn’t strictly a newbie tutorial. It isn’t even a tutorial per se. It’s more like a guideline that will tell you where to look to find what you need. The reason is that if I write something specific, it’ll go out-of-date in a giffy. So, I’ll tell you the process of how I figured out the steps and you can (probably) reproduce them even if the specifics have changed. This might not be the best way to do it but it certainly gets you going. I had to take quite a few detours to get to these steps; so they might save you some time. Ok, let’s go.
Read More »

Why I’m leaving facebook

I’ve had enough. Some of my friends initiated the boycott a few months back but I wasn’t convinced. I was mistaken. Facebook has, time and again, refused to take action against hate speech and hate groups that operate within the platform. I came up with many excuses to keep using the platform and fabricated many arguments in its favour. Fortunately, I gave it time and now realize that facebook is to blame. Read More »

Confusion amongst Zaid Hamid Fans

Zaid Hamid is cornered. He has nothing to say and nothing to clear his name with. As one of my friends put it, “there is no need to expose Zaid Hamid”. He is clearly deviated but some people still don’t get it. So, I thought I should help these people figure out what the question under discussion really is around here. It’s not about Zaid’s ideas about khilafat. It’s not about how good his speeches are. It’s not whether he works for the CIA or against it. It has nothing to do with any of it. The question that we are concerned with here is only of Yousuf Kazzab. If Zaid Hamid defends a kazzab, then:

  1. We can’t let it go. We can’t forget about it because it’s part of our Imaan to care about such things. We cannot tolerate someone who denies the finality of the prophethood of Hazrat Muhammad (Sallallah-o-alaih-e-wasallam). Period.
  2. It doesn’t matter what other things he does. It’s not relevant any more.

So, if you’re a “Zaid Hamid Fan” here’s a simple flow chart that can help you decide what your opinion is regarding Zaid Hamid. Clear your mind and come clean with what you think about him. Then decide what the real situation here is. (Click the image to see full size.)

Confusion among Zaid Hamid Fans