how we look at software
Post on 16-Aug-2015
20 Views
Preview:
TRANSCRIPT
How did we build Koding?
@devrimyasar
Tuesday, August 6, 13
Endless debates
• 1980 Assembly vs C
• 1990 C++ vs C
• 2000 Java vs C++
• 2005 Ruby vs Java
• 2012 Everything vs Everything.
• there is a reason these don’t end
Tuesday, August 6, 13
Programming Languages
• are not neighboring enemy states.
• because each and every one of them came about to solve a specific problem that arised in a particular domain.
• let’s look at the real map.
Tuesday, August 6, 13
Techland
Tuesday, August 6, 13
Techland
Tuesday, August 6, 13
TechlandAssembly
Tuesday, August 6, 13
TechlandAssembly
C
Tuesday, August 6, 13
TechlandAssembly
C C++
Tuesday, August 6, 13
TechlandAssembly
C C++
Java
Tuesday, August 6, 13
TechlandAssembly
C C++
Java
RoR
Tuesday, August 6, 13
TechlandAssembly
C C++
Java
RoR
JS
Tuesday, August 6, 13
TechlandAssembly
C C++
Java
RoR
JS
JS
Tuesday, August 6, 13
TechlandAssembly
C C++
Java
RoR
JS
JS
Where do you live?
Tuesday, August 6, 13
TechlandAssembly
C C++
Java
RoR
JS
JS
Where do you live?Do you respect others?
Tuesday, August 6, 13
next endless debate
• semicolons! (just kidding! :))
• classes vs functional
• just like the previous point, they are both valid arguments
Tuesday, August 6, 13
actually,
• 424 BC
• Plato’s “Theory Of Forms”
• 1990 we adopted it as OOP
Tuesday, August 6, 13
if Plato was a developer...
class Animal
this.canMakeNoise = yes
class Human
this.nrOfLegs = 2
class Person
constructor:(name)->
this.name = name
Tuesday, August 6, 13
‘class’ is not magic...
Tuesday, August 6, 13
Darwin figured it out
• Around 1800s
• Human is a Mammal, Mammal is an AnimalAnimal is ...
• Let’s use them like Darwin would...
Tuesday, August 6, 13
if Darwin was a developer...
class Animal
this.canMakeNoise = yes
class Human extends Animal
this.nrOfLegs = 2
class Person extends Human
constructor:(name)->
this.name = name
Tuesday, August 6, 13
or else
• a cute mule is never born.
Tuesday, August 6, 13
we love javascript
• but we use coffeescript to write javascriptTuesday, August 6, 13
we architect the frontend
latest status: http://d.pr/i/o7oFTuesday, August 6, 13
and we architect the backend
Koding.com
IRC Server
SSH Terminal
Storage Server
Kite Kite
Kite
Kite
Kite
Kite
Kite
KiteKite
with Bongo.Tuesday, August 6, 13
expect to see
• Bongo and KDFramework open sourced soon.
• Kites taking over the world
• doThisWith(cpu:500,ram:5TB,function(){ veryHeavyComputingThatWouldOtherwiseTakeForever(function(){ console.log(“done in msecs”);
});
Tuesday, August 6, 13
Thank you.Any questions?
or reach me at devrim@koding.com
Tuesday, August 6, 13
top related