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

Inside Darwin Analytics

Jelmer Snoeck
February 21, 2013

Inside Darwin Analytics

A small look into the development side of Darwin Analytics.

Notes: https://gist.github.com/jelmersnoeck/5005575

Jelmer Snoeck

February 21, 2013
Tweet

More Decks by Jelmer Snoeck

Other Decks in Technology

Transcript

  1. MORE INSIGHTS, LESS METRICS.

    View Slide

  2. The tree has
    all the answers.

    View Slide

  3. data sources

    View Slide

  4. data sources
    magic

    View Slide

  5. data sources
    magic
    profit++

    View Slide

  6. Overview & insights
    Advice
    Future

    View Slide

  7. Overview & insights
    Advice
    Future

    View Slide

  8. Overview & insights
    Advice
    Future

    View Slide

  9. Answers to what?

    View Slide

  10. Which channel is most effective
    in reaching your marketing objectives?
    Effect

    View Slide

  11. Which channel is most cost-efficient
    in reaching your marketing objectives?
    Cost

    View Slide

  12. How am I evolving towards
    my marketing objectives?
    Evolution

    View Slide

  13. Answers for who?

    View Slide

  14. Mark Eaters

    View Slide

  15. View Slide

  16. Third party
    connections
    data sources

    View Slide

  17. Business logic layer
    magic

    View Slide

  18. Harvesters
    Business logic layer
    Processors

    View Slide

  19. Business logic layer
    Processors
    Harvesters

    View Slide

  20. Business logic layer
    Processors
    Harvesters

    View Slide

  21. Business logic layer
    Processors
    Harvesters

    View Slide

  22. Business logic layer
    Processors
    Harvesters

    View Slide

  23. Business logic layer
    Processors
    Harvesters

    View Slide

  24. Presentation layer
    profit

    View Slide

  25. Future: API layer

    View Slide

  26. “#TDD is the process of describing what code
    should do before writing it. Saying that you
    can’t do that is saying that you can’t think!”
    ~ @everzet

    View Slide

  27. Fail fast, succeed faster.
    130+ tests, 350+ assertions
    Still too low (no functional tests)

    View Slide

  28. “Ink is better than memory”
    phpDocumentor 2
    16k+ ncloc
    8k+ cloc

    View Slide

  29. Vagrant

    View Slide

  30. Vagrant
    dependencies

    View Slide

  31. Vagrant
    dependencies
    easy configuration

    View Slide

  32. Parallelization

    View Slide

  33. Parallelization
    Multiprocessing

    View Slide

  34. Parallelization
    Multiprocessing
    Streaming

    View Slide

  35. Parallelization
    Multiprocessing
    Streaming
    Message Queue

    View Slide

  36. Machine learning

    View Slide

  37. Build server

    View Slide

  38. Whoops, there’s my exit!
    @jelmersnoeck

    View Slide