Posts

Showing posts from October, 2013

Git simplified and master it in 10 minutes!

OK, what is this Git thing! Just because the developers use it, doesn't mean its rocket science. Some are using it to work on family photo albums so it should be useful for all. Imagine if you were composing a document and wanted a far off friend's help on it, you would write the initial draft, then email the attachment to your friend, he would download, save a copy, edit it and then email it to you. Now suppose instead of this emailing overhead, if we could just have this document stored on your computer and your final edits pushed and stored on a web repository which your friend can download from and work on it locally and push the changes to the web repo until its perfect. Different versions of this document from the initial one to the final one is stored and available and could be called Versions, since the docs are available with everyone working on it and not central its  distributed and you and your friend have a set of rules to control the flow, combing it, dis

OAuth Simplified

Image
In my earlier post we saw what is SAML. Basically it works on the HTTP i.e. for webpages and etc.  But what if you wanted have SSO on an app, for example on a Mobile App? There are work arounds to implement SAML but the straight forward way of doing it would be to use OAuth, a recent boy in neighbourhood which unlike SAML which is older than 6 years, is designed considering the future, of native apps and mobile apps.  As usual the definition is  OAuth is an open standard for authorisation. OAuth provides a method for clients to access server resources on behalf of a resource owner (such as a different client or an end-user). It also provides a process for end-users to authorise third-party access to their server resources without sharing their credentials (typically, a username and password pair), using user-agent redirections. Please observe the definition, it says Authorisation and not Authentication! What it means is that if you have an app on your phone and would like i

SAML (Security Assertion Markup Language) -- Simplified

Image
As discussed earlier SAML provides the web SSO as in the earlier blog on SSO. By Definition SAML is- Security Assertion Markup Language is an XML-based open standard data format for exchanging authentication and authorization data between parties, in particular, between an identity provider and a service provider. Breaking it down. IdP is the Identity Provider -- someone who has a database containing usernames and passwords. For eg. Google apps. SP is service provider -- a service we would like to use. For eg. apps like soundcloud and etc which allow us to log into their service using the credentials stored in IdP. So basically, if you want to add a comment to this blog post, you would have to authenticate with Google apps over the Browser and one Google identifies you as the right user, will allow you to access this resource and leave a comment. This is quite simply SAML at work. The below video is amazing and a must watch to just understand it further. For somet

SSO--Single Sign On simplified

Image
Before we go there, lets understand what is meant by Authentication and Authorisation. Lets take an example, if you are watching a video on youtube, its available to public and hence needs not Authentication, but to read your mail on gmail you would need to authenticate, i.e. say who you are and the gmail server checks by comparing your username and password with what has stored, this process is called Authentication. Now suppose you want be able to make changes to a resource, the system checks your Authority to see if are allowed to do that this is authorisation, like the uploader of a video can delete or edit the video where was as we are authorised to only view the video.  by definition Single sign-on (SSO) is mechanism whereby a single action of user authentication and authorisation can permit a user to access all computers and systems where he has access permission, without the need to enter multiple passwords. Single sign-on reduces human error, a major component of system

Error: SMTPIN_ADDED_BROKEN@mx.google.com

Some times we see the below in the email header information. SMTPIN_ADDED_BROKEN@mx.google.com The cause of the "...SMTPIN_ADDED_BROKEN@mx.google.com" is because of the 'https://' in the original Message-ID, which is not allowed. There could be some dodo systems which might be doing this and they would need to be tweaked to now allow message-id (see my earlier posts on what it means) and to have https!

Leverage the power of Cloud with Python

Image
My well honoured Presentation at the Cloud Connect International Event in Renaissance Hotel, Mumabi in 2013 Leverage the power of the Cloud using Python from Venu Murthy It was am amazing moment when my proposal was shortlisted and I was invited to speak in the much famed Cloud Connect event in Mumbai, June 2013. Below are some pics, the audience were amazing and as one of my friends said, "wow, you are listed with the C level people already, here !"

Google Mail or Gmail threading or conversations demystified

Image
Many of us like the mail threading or in Gamil they are also called as conversations and for those who do not like it, Google does gives us the option to disable threading. To do so, go to the General tab of your Gmail Settings, and select the radio button next to 'Conversation view off'.  However for those of you who are interested in Gmail threading. Below is a threaded mail Gmail threading is based on these factors.  Subject must be same or similar (it can have a prefix of Re:, Fw:) Sender must be a part of the thread OR in- reply-to must be used. (see this link for the basics)  Time from when the original was sent and its reply. A typical header message looks as below:- Message-ID: <13dsaf693.25715.YahooMailNeo@web126206.mail.ne1.yahoo.com> Date: Mon, 23 Sep 2013 04:44:53 -0700 (PDT) From: Divakar Nadig <xyz@yahoo.com> Reply-To: Divakar Nadig <xyz@yahoo.com> Subject: please see this dear son..... To: * V e n u * <xyz@gmail.

Whats an email anyway? What are it's components?

Image
A some what weird question but when explored its very interesting and lets see how deep the rabbit hole goes! Electronic mail is commonly called as e-mail or eMail, i ts been around from 1973.  it’s a method of exchanging digital messages across the internet or other computer networks. After the Snowden era may be we will see a trend of peer to peer communication without a centralised server, the way it was in the beginning of time!  An Internet email message contains 3 components:- Message envelope Message header – contains control information, flow and etc. Message body In a client-server model, client is from where the message originate and  Email servers accept, forward, deliver and store messages.  Originally emails could carry text-only (7-bit ASCII) communications medium, which was then extended to carry multi-media content attachments, a process standardised in RFC 2045 through 2049. Collectively, these RFCs have come to be called Multipurpose

The best IDE for Python -- PyCharm goes opensourced - i.e. Free!!!

It gives me great joy that PyCharm has been opensourced, I've been using it for the past 2 years and am kind of addicted to it, though I do agree that I haven't exploited it enough. You can download it from this link .  Whats so great about it! Awesome Navigation Command + Click on a module to go to where the class is defined. Option + F7 gives a view of where all its used. Command + Option + B ==> to see where all its implemented. What I love the most is the way it generates functions for you. Type name of a method which has not yet been defined. and then Option + Enter and select Create Function Option + Command + V will instantiate an object Enjoy Python!