perceiving beauty

Post on 09-May-2015

4.420 Views

Category:

Business

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

My quick talk in 'Write Beautiful Code' HackerEarth Event in Dexetra, Bangalore. Not much text and borrowed a lot of stuff from Hannson and Cormen!

TRANSCRIPT

PERCEIVING BEAUTYSriram V Iyer

BORROWING FROM HANNSON

Beauty Leads to Happiness

Happiness Leads to productivity

….. So,

Beauty leads to Productivity

You can recognize truth by its beauty and simplicity. When you get it right, it is obvious that it is right.

- Richard Feynman

Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away

-Antoine de Saint-Exupery

vs

LESS IS MORE (BEAUTIFUL)

l = [ 3, 7, 8, 6, 5, 11 ]

q = []

for i in range( len(l) ):

q.insert( l[i] * 2 )

LESS IS MORE (BEAUTIFUL)

def dbl(x):

return x * 2

l = [ 3, 7, 8, 6, 5, 11 ]

q = []

for i in range( len(l) ):

q.insert( dbl (l[i]) )

LESS IS MORE (BEAUTIFUL)

def dbl(x):

return x * 2

l = [ 3, 7, 8, 6, 5, 11 ]

q = map( dbl, l )

LESS IS MORE (BEAUTIFUL)

l = [ 3, 7, 8, 6, 5, 11 ]

q = [ x * 2 for x in l ]

# Double only odd numbers? …

LESS IS MORE (BEAUTIFUL)

q = [ x * 2 for x in l if not (x % 2) ]

VS

q = map( lambda x : x * 2, filter(lambda y : y % 2 != 0, l ) )

ATTITUDE IS NO SUBSTITUTE FOR COMPETENCE

O(n) = log n

VS

O(n) = n log n

KNOWING IS EVERYTHING

Insertion Sort (n^2) vs Merge Sort (n log(n))

Computer A 10,000 MIPS vs Computer B 10 MIPS

Number of items to be Sorted

Insertion Sort or Computer A

Merge Sort on Computer B

10 Million 5.5 Hours 17 mins

100 Million 23 Days 4 hours

THANK YOU!

top related