Talk in English - US at Midwest PHP 2016
View Slides: http://johnkary.net/slides/loops/midwest-php-2016/
Short URL: https://joind.in/talk/bad7e
Comments are closed.
Very helpful, and eye opening to make me rethink all of my code and how I'm implementing loops.
I don't know if I agree with all of the principles espoused in this talk, but it was a great reminder of the power of array_map, array_filter, and array_reduce (and even array_fill_keys). It also encourages us to consider our code from a different perspective.
The speaker's volume was a problem, especially with the packed room. The peaceful, consistent cadence didn't help.
Nice use of video to show the refactoring.
Very much enjoyed this talk. Great use of code to illustrate the points. I liked how he focused on PHP, but made analogies/connections with other contexts. John's a great speaker, though a touch on the quiet side so maybe a mic would be helpful for a larger audience like this one had. I came away from this talk feeling [even more] enthusiastic about applying a functional paradigm to my code.
A lot of food for thought that has me thinking about looking at my code and seeing if/how I can refactor it using some of the techniques you discussed.
As another person wrote, I didn't agree with many of the principles espoused, but cool stuff to think about. Nice use of video for the refactoring. Speaker's volume was a big problem.
Great talk and was nice to see a new way to think about loops.
As far as delivery goes, this was one of the best talks I've seen at the conference. Excellent pacing, quality slides, and even a "live" refactoring demo that was spot on.
The content was also quite good. Some of the examples were a little weak, eg using array_reduce to calculate a sum that could be done using array_sum. That said, the overall philosophies that were covered and the design suggestions and general advice were excellent.
This is definitely a contender for my favorite talk of the conference!
Great talk! Did a great job approaching the issue from multiple angles, each with step-by-step logic so that the audience understood the how and why of the approach. Well-designed presentation and useful tactical knowledge for any PHP programmer.
Really interesting concepts, lots to think about. Mic would have been really nice
As a long time programmer, I was excited for this talk since getting my hands on the schedule for the conference. I have the same complaints that seem common among the audience, a low volume, weak reduce example (although sometimes it takes real genius to see purpose in the smallest ultiliies), lack of performance data and reason from an optimization standpoint.
HOWEVER! I was excited to see John challenge age-old control structures and unescessary complexity in favor for more "self explanatory" code, easier to maintain code, more sensible code and above all else a revolution of how we approach "typical" loop based operations.
I see his point and idea of extensive pipelining, however even this style may become difficult to focus on... His last chaining example for example...
I would've loved to see some cross-over from his material with what's coming in PHP7
Regardless of all criticisms, I award John for his insights and forward thinking. The expansion of this approach with objects, PHP7, optimizations and who knows what else will come will keep us on our toes and maybe even make us laugh at the guy who types "f" "o" "r" in a row...
A great introduction to map, filter, and reduce, and how they can be used to solve problems using a different approach than we normally use. Well done.
By far my favorite talk. Eye opening. Got me exited about re-thinking my loops.
Very well presented. I agree with other commentor, use of video for code refactoring was a nice touch. Gave me a lot to think about. One of the most immediately applicable presentation, probably for everyone. Sound level was fine to me and I was standing in the back.
This was probably tied for one of the best sessions of the conference. Very helpful in thinking through common coding scenarios and how to solve them without multi-level loops. I wish this could be published into a book and made required reading for developers everywhere. Thank you!