Upgrade to Pro — share decks privately, control downloads, hide ads and more …

What Is The Best Programming Language For Your Web Product

What Is The Best Programming Language For Your Web Product

MobiDev Experts Day 2016

Yevhen "Eugene" Kuzminov

June 04, 2016
Tweet

More Decks by Yevhen "Eugene" Kuzminov

Other Decks in Programming

Transcript

  1. Ievgen Kuzminov http://stdout.in @iJackUA 7+ years in Web Development Ruby

    Team Lead in MobiDev Author of http://rwdtow.stdout.in
  2. Dilemma How do we choose programming language for a product

    ? ❏ There is no “bad” languages ❏ The “best” lang - is the lang you know! ❏ Ecosystem does matter
  3. WAT? ❏ Backend ~> Frontend ❏ Relational ~> Denormalized ❏

    Majestic Monolith ~> Microservices ❏ Static ~> Realtime ❏ a lot more ...
  4. A new choice ❏ Application criterias ❏ Ecosystem: packages, tools,

    community ❏ Evolution roadmap ❏ A bit of personal “taste”
  5. Master of “yellow” titles ❏ PHP is not so awful

    ❏ Ruby is not so awesome ❏ Node.JS is not so almighty
  6. Master of “yellow” titles ❏ PHP is not so awful

    ❏ Ruby is not so awesome ❏ Node.JS is not so almighty ❏ “This city needs a hero”
  7. ❏ Low entry barrier ❏ Bigger market ❏ Cheaper Developers:

    ❏ Pure PHP ~> Frameworks ❏ Harder to filter skilled devs NB!
  8. ❏ Quick start with Rails ❏ MVP oriented ❏ Harder

    to scale Developers: ❏ Solely Rails oriented ❏ Easier to filter skilled devs NB!
  9. ❏ Aimed to API/Realtime ❏ Node.JS is everywhere ❏ Harder

    to maintain backend Developers: ❏ Come from Frontend ❏ Closer to Full-Stack NB!
  10. Elixir, Go, Closure and others ❏ Compiled (fast) ❏ Much

    better performance ❏ Close to system level ❏ Functional approaches ❏ Multi-core concurrency
  11. ❏ Erlang + OTP ❏ Functional ❏ Ruby-like syntax ❏

    Friendly web framework ❏ Metaprogramming ❏ Scaling ❏ Fault tolerance NB! http://elixir-lang.org
  12. A new choice (once again!) ❏ Application criterias ❏ Ecosystem:

    packages, tools, community ❏ Evolution roadmap ❏ A lot of personal “taste”
  13. Brief conclusion ❏ PHP: “classic” web portal ❏ Ruby: web

    portal + background jobs ❏ Node.JS: isomorphic app, API + SPA ❏ Elixir: your next “world class” pet-project