Colony, modularity the easy way


Published on

João Magalhães presentation on colony framework @ BarcampPT 2010

Published in: Technology, Education
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Colony, modularity the easy way

  1. 1. Colony Framework Modularity,  the  easy  way João  Magalhães @joamag 2010
  2. 2. Modularity Love  at  first  sight
  3. 3. Colony Framework The  beginning . Single problem found in 2008 data  migration . OSGi was too complex and heavy . Started replicating OSGi functionality, avoiding complexity and promoting pragmatism .  no  dynamic  language .  not  fun  to  develop .  not  like  rails
  4. 4. Colony Framework the  r ebolution this  is the  logo
  5. 5. Colony Framework Goals . Modularity and re-­usage . Easy to use and easy to develop just  like  rails . Fun to develop this is  true .  Open  standards . Truly open platform in every sense .  Opem  sourcecode .  Com munity  driven   . Sustained development, research oriented not  guided  by   customer  demands
  6. 6. The research numbers ch  months  of  pure  resear 6 and  prototyping 1 years  of  research   1/2 and  development 300k Lines  of  code  and   70  person  years (someone  should  have 400 d retired  by  now) Colony  plugins  develope
  7. 7. Colony Framework Structure . It’s a specification and not an implementation . 2 reference implementations . Python, Javascript . 2 different flavours . Standard and Web . Runtime Plugin model (OSGi and MEF inspired) . Distributed model (OSGi inspired) . Easy Viral deployment
  8. 8. Colony Framework How  it  works? the  core ent .  Dependen cy  managem ent .  Life  cy cle  managem ol .  Inversion  of  contr Console  Plugin .  Command  line  processing .  Minimal  set  of  commands for  controlling  the  core .  Allows  command  extemsions Translation  C onsole  Plugin .  Provid es  a  console  t ranslation  ser .  Allows  trans vice lation  extensio ns
  9. 9. Colony Framework How  it  works? the  core Console  Plugin Translation  Console  Plugin Translation  engine  plugins
  10. 10. Small tech demo
  11. 11. Colony Framework the  big  picture Services  Set .  HTTP Distribution  Set .  Serialization .  SMTP .  Discovery .  XMPP .  Balancing .Etc Business  Logic Data  Set .  Data  pool  managing .  ORM .  Load  balancing .  Storage .  Compression
  12. 12. Colony Framework Distribution .Grid of colony instances . Federation of colony grids . Automatic instance discovery (UPnP, bonjour) . Transient plugins . Viral distribution Op timized  reso urce  usage
  13. 13. Colony Framework Distribution + + C++ + C++ + + Optimized  resource  usage
  14. 14. Colony Framework Distribution  possibilities just  plug  the  cable . Easy scaleout . Simple development model . Crowd sourcing ready . No technology commitment explore  the  power   of  millions Colony  is  defined  by just  like   standard  specifications a  normal  plugin not  technologies
  15. 15. Why Colony?
  16. 16. Why Colony? Development  process less  collisions, . Parallel development less  conflicts  in merges . Natural division of work . Easy introduction to new work a  plugin  is  a  small  codeb boundaries  are  defined ase by  plugin  specification 300k  of  code  VS  2k  o f  code
  17. 17. Why Colony? Open  source a  plugin  can  use . Open source code under GPL v3 whatever  licence . Open standards . Community driven we  love  ’em: .  OpenID .  Oauth Community  is the  boss
  18. 18. Why Colony? Extras it’s  painless . Easy development model . Zero downtime for  real! . Modularity on the web something  new . Open to extension, ready for the future . many more... think  colony!
  19. 19. Why Colony? Why  not? Build your personalized applications from existing components... ...from open source plugins ...from proprietary plugins ...deploying to a personal cloud ...using any technology and being platform independent
  20. 20. Colony Applications Scientific  computing E-­Government Business  software Energy  Management Health  Care Web  consumer  products
  21. 21. Start using Colony What  can  I  do  with  Colony? . A simple rails-­like MVC application, that expands functionality over time .An extension to the SMTP plugin to Simple provide automatic mail handling . A distributed system to process scientific computing Complex . An enterprise application driven by modules (pay by module) many  more
  22. 22. Call to Action Join  us more  geeks like  us . People to drive colony community . Partners to develop new plugins for colony . Deployment of colony in scientific environments . Hobbyist usage of colony they  can  benefit  from colony  distributed remember  it’s  fun
  23. 23. Get Colony @colonyframework @hivesolutions