objects can still teach us                            one or two things.                             Phil Calçado - SoundC...
http://bit.ly/work-at-soundcloudSunday, January 29, 12
(I will not talk about monads,                         scalaz, bifunctors or burritos)Sunday, January 29, 12
withSunday, January 29, 12
we thought we would...Sunday, January 29, 12
more like...Sunday, January 29, 12
and then...Sunday, January 29, 12
Sunday, January 29, 12
withSunday, January 29, 12
we think we can...Sunday, January 29, 12
but what I see in the wild...Sunday, January 29, 12
but what I see in the wild...Sunday, January 29, 12
coupling                          no single responsibility                         “cyclomatic complexity”Sunday, January ...
coupling                          no single responsibility                         “cyclomatic complexity”                ...
that code was replaced by something like thisSunday, January 29, 12
coupling                          no single responsibility                         “cyclomatic complexity”Sunday, January ...
all old problems.Sunday, January 29, 12
all old problems.                                             ?Sunday, January 29, 12
coupling                          no single responsibility                         “cyclomatic complexity”                ...
Sunday, January 29, 12
building blocks you need:                         higher-order functions                              combinators         ...
(I kinda lied)Sunday, January 29, 12
all old problems.                                             ?Sunday, January 29, 12
much older than we thought...Sunday, January 29, 12
tl;dr       => it’s not because you are not in object-       land that you can drop minimally good       practices       =...
Functional Programming with Bananas,       Lenses, Envelopes and Barbed Wire:       http://bit.ly/FP-with-Bananas-Lenses- ...
Upcoming SlideShare
Loading in …5
×

Berlin-Brandenburg Scala User Group: objects can still teach us one or two things.

1,749 views

Published on

it’s not because you are not in object-land that you can drop minimally good practices

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,749
On SlideShare
0
From Embeds
0
Number of Embeds
41
Actions
Shares
0
Downloads
5
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Berlin-Brandenburg Scala User Group: objects can still teach us one or two things.

  1. 1. objects can still teach us one or two things. Phil Calçado - SoundCloud @pcalcado http://philcalcado.comSunday, January 29, 12
  2. 2. http://bit.ly/work-at-soundcloudSunday, January 29, 12
  3. 3. (I will not talk about monads, scalaz, bifunctors or burritos)Sunday, January 29, 12
  4. 4. withSunday, January 29, 12
  5. 5. we thought we would...Sunday, January 29, 12
  6. 6. more like...Sunday, January 29, 12
  7. 7. and then...Sunday, January 29, 12
  8. 8. Sunday, January 29, 12
  9. 9. withSunday, January 29, 12
  10. 10. we think we can...Sunday, January 29, 12
  11. 11. but what I see in the wild...Sunday, January 29, 12
  12. 12. but what I see in the wild...Sunday, January 29, 12
  13. 13. coupling no single responsibility “cyclomatic complexity”Sunday, January 29, 12
  14. 14. coupling no single responsibility “cyclomatic complexity” it’s just (bad) procedural code, reallySunday, January 29, 12
  15. 15. that code was replaced by something like thisSunday, January 29, 12
  16. 16. coupling no single responsibility “cyclomatic complexity”Sunday, January 29, 12
  17. 17. all old problems.Sunday, January 29, 12
  18. 18. all old problems. ?Sunday, January 29, 12
  19. 19. coupling no single responsibility “cyclomatic complexity” composition!Sunday, January 29, 12
  20. 20. Sunday, January 29, 12
  21. 21. building blocks you need: higher-order functions combinators partial application function compositionSunday, January 29, 12
  22. 22. (I kinda lied)Sunday, January 29, 12
  23. 23. all old problems. ?Sunday, January 29, 12
  24. 24. much older than we thought...Sunday, January 29, 12
  25. 25. tl;dr => it’s not because you are not in object- land that you can drop minimally good practices => just using the basic blocks of functional programming gives you a lot => after a while using these you see patterns emerging. and you understand why monads and friends exist. promise :)Sunday, January 29, 12
  26. 26. Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire: http://bit.ly/FP-with-Bananas-Lenses- Envelopes-and-Barbed-Wire Basic Category Theory for Computer Scientists: http://amzn.to/xxeVUC Theorems for free!: http://bit.ly/Theorems-for-free The Essence of Functional Programming: http://bit.ly/the-essence-of-FPSunday, January 29, 12

×