Bruno Veronesi Nov 14th at 11:10 PMhttps://github.com/swkBerlin/kata-bootstraps![[./resources/socratesbe19-best-of-slack.resources/unknown_filename.png]]GitHubswkBerlin/kata-bootstrapsEmpty projects for different languages with a failing test - swkBerlin/kata-bootstraps Kris Nov 15th at 12:27 PMhttps://gitlab.rotate-it.be/tripled/poker the poker code![[./resources/socratesbe19-best-of-slack.resources/unknown_filename.8.png]]GitLabTriple D / pokerA learning project where we apply CA, DDD, CQRS, Eventsourcing, trunk based development by mob programming that deploys to kubernetes (off course) and other buzzwords and turn it into a… Matteo Pierro Nov 15th at 1:23 PMthe repo to the code we crafted during the session Bank Kata outside-in London style https://github.com/MatteoPierro/bank-kata/tree/socratesbe-19![[./resources/socratesbe19-best-of-slack.resources/unknown_filename.png]]GitHubMatteoPierro/bank-katathis is my version of the Bank Kata. Contribute to MatteoPierro/bank-kata development by creating an account on GitHub. jo.vaneyck Nov 15th at 1:36 PMhttps://github.com/martinsson/Refactoring-Kata-Lift-Pass-Pricing![[./resources/socratesbe19-best-of-slack.resources/unknown_filename.png]]GitHubmartinsson/Refactoring-Kata-Lift-Pass-PricingA refactoring kata where you’ll practice disentangling business logic from frameworks and SQL - martinsson/Refactoring-Kata-Lift-Pass-Pricing Jeroen Tiebout Nov 15th at 1:38 PMTransport Tycoon kata: https://github.com/Softwarepark/exercises/blob/master/transport-tycoon.md![[./resources/socratesbe19-best-of-slack.resources/unknown_filename.png]]GitHubSoftwarepark/exercisesSoftwarePark exercises and dojos. Contribute to Softwarepark/exercises development by creating an account on GitHub. clement.bouillier Nov 15th at 5:41 PMDifferent flavors of Event Sourcing I see for the Aggregate (with some examples):- Use static publisher : http://udidahan.com/2008/08/25/domain-events-take-2/ (a bit ugly ^^)- Inject publisher in constructor- Store new events in class and expose getUncommittedEvents method which return new events : https://github.com/gregoryyoung/m-r- Inject publisher in method, with commands : https://github.com/DevLyon/mixter- Not inject publisher, but method (commands handler) return events : https://blog.jayway.com/2013/06/20/dont-publish-domain-events-return-them/- Call function with commands and past events, and return new events : http://verraes.net/2014/05/functional-foundation-for-cqrs-event-sourcing/![[./resources/socratesbe19-best-of-slack.resources/unknown_filename.png]]GitHubgregoryyoung/m-rSimple CQRS example. Contribute to gregoryyoung/m-r development by creating an account on GitHub.![[./resources/socratesbe19-best-of-slack.resources/unknown_filename.png]]GitHubDevLyon/mixterCQRS and Event Sourcing Koans. Contribute to DevLyon/mixter development by creating an account on GitHub.![[./resources/socratesbe19-best-of-slack.resources/unknown_filename.6.png]]blog.Don’t publish Domain Events, return them! - blog.During a discussion around some of the code examples in Vaugn Vernon’s book Implementing Domain Driven Design we got stuck at what first appeared to be a tiny detail: where the domain events are published. Is it part of the domain or not? But more importantly, what is the programming model for publishing events? I …Jun 20th, 2013![[./resources/socratesbe19-best-of-slack.resources/unknown_filename.7.png]]Mathias Verraes’ BlogA Functional Foundation for CQRS/ESA CQRS architecture can be seen as a set of referentially transparent functions that model decisions and interpretation.May 14th, 2014 Matthew Butt Nov 15th at 9:43 PMhttps://github.com/AgileTechPraxis/CodeSmells![[./resources/socratesbe19-best-of-slack.resources/unknown_filename.png]]GitHubAgileTechPraxis/CodeSmellsContribute to AgileTechPraxis/CodeSmells development by creating an account on GitHub. Bernard Vander Beken Nov 15th at 11:01 PMWardley Maps book is available online from https://medium.com/wardleymaps/on-being-lost-2ef5f05eb1ec (edited) ![[./resources/socratesbe19-best-of-slack.resources/unknown_filename.5.png]]MediumOn being lostChapter 1Reading time28 min read Mathias Verraes Yesterday at 10:45 AMhttp://www.r2d3.us/visual-intro-to-machine-learning-part-1/![[./resources/socratesbe19-best-of-slack.resources/unknown_filename.4.png]]r2d3.usA visual introduction to machine learningWhat is machine learning? See how it works with our animated data visualization. Bruno Lannoo Yesterday at 11:38 AMFor people who joined the machine learning session, you can find the resources there:https://youtu.be/aircAruvnKkhttps://playground.tensorflow.org/#activation=tanh&batchSize=10&dataset=circle®Dataset=reg-plane&learningRate=0.03®ularizationRate=0&noise=0&networkShape=4,2&seed=0.60106&showTestData=false&discretize=false&percTrainData=50&x=true&y=true&xTimesY=false&xSquared=false&ySquared=false&cosX=false&sinX=false&cosY=false&sinY=false&collectStats=false&problem=classification&initZero=false&hideText=false YouTube | 3Blue1BrownBut what is a Neural Network? | Deep learning, chapter 1![[./resources/socratesbe19-best-of-slack.resources/unknown_filename.3.png]]playground.tensorflow.orgTensorflow — Neural Network PlaygroundTinker with a real neural network right here in your browser.(164 kB)http://playground.tensorflow.org/preview.png Anita W Yesterday at 12:43 PMIdeas and checklist generated in the New Starter on a Dev Team session - thanks everyone who participated- looking forward to putting them into practice!![[./resources/socratesbe19-best-of-slack.resources/img_20191116_123330.jpg]]![[./resources/socratesbe19-best-of-slack.resources/img_20191116_123236.jpg]] jo.vaneyck Yesterday at 2:24 PMDIY behavioral code analysis/poor man’s codescene.io : https://github.com/jovaneyck/behavioral-code-analysis-toolkit Pedro Santos Yesterday at 3:30 PMSolution name should be social network or more in the domain.Solution apparently does not meet requirementsNo build or execution instructionsClass PostFirst class collection violation on method ProcessPublication on class Postcould have used first class collection.Method TimeAgo returns a string - Primitive obsessionLong class code smell_users should be a first class collection_post list should be a first class collectionPost constructor does not initialize class properlySRP violation on Publish method accessing consoleDIP violation console should be a dependencyMethod Publish does not reveal intentMethod ProcessPublication violates encapsulation should be private. Method name unclear.Method PublishByTypeOfPublication Connascence of position on parameter publicationProcessed Connascence of meaning on parameter publicationProcessed Primitive obsession on parameter publicationProcessed OCP violation will break with new type of message or if the message changes SRP violation this method knows about parsing messages its not only orchestrating actions Method does not express intentMethod ShowWall Message chain posts._user.GetUserName() Performance issue filtering on dates and then on users Feature envy on UserMethod GetUserFromNetwork Suffers SRP because _users is not a first class collection that could have contained this behaviourMethod AddUserToNetworkIfNotExist SRP violation _users not FCCMethod TimeAgo SPR violation does not belong here, should be in another class Long method code smellClass PostShouldI dont understand why we are spliting a Post in wordsTest BePostedASecondsAgo its not a good practice to rely on system time in testsClass UserShouldTest name HaveZeroFriendsWhenUserHasNoFriends could beHaveZeroFriendsWhenCreated this would be a better description of behaviour._user is not a great name _bob would probably be a better name Bernard Vander Beken Yesterday at 4:00 PMIn the Team decisions, I mentioned the core protocols, see Decider and Resolution https://liveingreatness.com/core-protocols/ Mathias Verraes Yesterday at 4:25 PMhttps://github.com/Softwarepark/exercises/blob/master/transport-tycoon.md![[./resources/socratesbe19-best-of-slack.resources/unknown_filename.png]]GitHubSoftwarepark/exercisesSoftwarePark exercises and dojos. Contribute to Softwarepark/exercises development by creating an account on GitHub. Pedro Santos Yesterday at 6:15 PMTechnical coaching session order of sessions![[./resources/socratesbe19-best-of-slack.resources/coaching-materials.png]] Pedro Santos Yesterday at 6:18 PMIf anyone is interested just created a cupon for my book for SocratesBE participants $5 https://leanpub.com/agiletechnicalpracticesdistilled/c/socratesbe19 Tjen Wellens 7:03 PMTeam agreement decision making1) do we need to decide this in group? Or can I just do it by myself? (insecurity)2) How will we decide?(tell, sell, consult, agree, advise, inquire, delegate))(command, consult, vote, consensus)(agree, concern, objection, disagree)3) Discuss principles to decide with instead of the options.(guiding principles: we value X over Y)(competing heuristics)4) Decide Angel Yesterday at 9:13 PM![[./resources/socratesbe19-best-of-slack.resources/imagen-de-ios-1.jpg]]![[./resources/socratesbe19-best-of-slack.resources/imagen-de-ios-2.jpg]]![[./resources/socratesbe19-best-of-slack.resources/imagen-de-ios.2.jpg]] Tim Schraepen Yesterday at 9:35 PMhttp://sch3lp.github.io/2019/03/20/virtuous-and-vicious-cycles-of-motivation/ Vincent Verhoeven 9:36 PMDave Sirlin on yomi levels: http://www.sirlin.net/ptw-book/7-spies-of-the-mind![[./resources/socratesbe19-best-of-slack.resources/unknown_filename.1.ico]]Sirlin.Net — Game Design7) Spies of the Mind — Sirlin.Net — Game DesignWhat enables the wise sovereign and the good general to strike and conquer, and achieve things beyond the reach of ordinary men, is foreknowledge. This foreknowledge cannot be elicited from spirits; it cannot be obtained inductively from experience, nor by any deductive calculation . . . the disposi Bouke Versteegh Yesterday at 10:43 PMhttps://github.com/boukeversteegh/cells![[./resources/socratesbe19-best-of-slack.resources/unknown_filename.png]]GitHubboukeversteegh/cellsInteractive Cellular Automaton. Contribute to boukeversteegh/cells development by creating an account on GitHub. Bjorn De Craemer Yesterday at 8:36 PMDoes someone have a list of good kata’s and also what he/she wants to use the kata for? (e.g. what principle/ skill do you want the people doing the kata to learn / Demonstrate)?weltraumpirat 14 hours agoSomeone does: https://kata-log.rocks/Matthew Butt 13 hours agoAlso, if you haven’t, check out @pedromsantos et al.’s book. It has tons of coding exercises along with the context of the skills they can help us practise http://www.agiletechpraxis.com/#publicationsThomas Thiry 13 hours agoI find @Emily Bache’s book https://leanpub.com/codingdojohandbookto be quite helpful to choose a kata for a specific context, the second half of the book is a kata catalogue with some tips about each.![[./resources/socratesbe19-best-of-slack.resources/unknown_filename.9.png]]LeanpubThe Coding Dojo HandbookLooking for inspiration for good design and creating automated tests? Want to promote better practices? This handbook is a collection of concrete ideas for how you can get started with a Coding Dojo, where you and your team can focus on improving practical coding skills.