Writing Clean Abstractions

Smit Thakkar

Clean Code

See in schedule

Abstractions make things appear simple. This is one of the main concepts behind OOP. So what is it?! This talk will provide some guidelines on how to build abstractions that are extendable and scalable.

I will start by bringing audience on same page, I will explain what are abstractions in programming with some examples, I will also compare what are strong and weak abstractions and also give some examples. Later on I will talk a bit about leaky abstractions and provide some examples.

After brining audience to the same page I would switch focus to actual topic by talking about how bad abstractions are formed and then have a quick interactive session where I will show audience some interfaces and ask them to tell which abstraction is better and also bitch about the wrong things in the bad ones. After having good understanding of what makes abstractions bad, I would explain you various design pattern by doing post mortem of the python redis client. Lastly if you have any questions I would be happy to answer them.

Type: Talk (30 mins); Python level: Beginner; Domain level: Beginner

Smit Thakkar


Smit currently works at Dubizzle (#1 ranked classifieds company in the UAE). At Dubizzle he contributes to the efforts of building scalable infrastructure and developer productivity. Smit has been programming since he was in 9th grade and he loves to play around with different technologies and tools. His interest also includes speaking at conferences and meetups and traveling. He likes trying out different things for e.g these days he is trying to learn Argentine Tango.