Skip to content
Thomas Coopman edited this page Nov 19, 2019 · 2 revisions

Add any resources that you want to share about one of the session at SoCraTes Belgium 2019 below. Please add some searchable keywords. This page was initially filled with content from the Slack channel. I've tried to group them somewhat if I felt things were related. I've skipped things that seemed like banter, very specific to single people, or hard to port over (mostly, pdf's directly uploaded in Slack). Add, group and restructure as needed!

Marketplace (pics by Anita)

Friday morning Friday afternoon Saturday morning Saturday afternoon

Kata bootstrap project

https://github.com/swkBerlin/kata-bootstraps

Python

My Python Development Environment, 2020 Edition: https://jacobian.org/2019/nov/11/python-environment-2020/

Install Python & PyCharm using Chocolatey on Windows:

choco install python
choco install pycharm-community

http://aegisoft.be/material.html

TripleD poker code

https://gitlab.rotate-it.be/tripled/poker

Bank kata outside in

Result: https://github.com/MatteoPierro/bank-kata/tree/socratesbe-19

Lift pass pricing refactoring kata

https://github.com/martinsson/Refactoring-Kata-Lift-Pass-Pricing

Transport tycoon kata

https://github.com/Softwarepark/exercises/blob/master/transport-tycoon.md

Livestreaming

Tim's Twitch stream: https://twitch.tv/livecodingwithsch3lp

Wardley Mapping

Kata result: http://onlinewardleymaps.com/#56zPfSv8gBVJvpEeXo

Meetup event with Simon Wardley (Prague, 26th Nov 2019): https://www.meetup.com/Prague-Mapping-Meetup/events/266041233/

Book: https://medium.com/wardleymaps/on-being-lost-2ef5f05eb1ec

Book (not sure about context)

It's not luck: https://www.goodreads.com/book/show/157385.It_s_Not_Luck

Event sourcing

Clement, on Slack:

Different flavors of Event Sourcing I see for the Aggregate (with some examples):

kata: https://github.com/tjenwellens-socratesbe19/eventsourcing-kata

DDD

15 years of DDD book: https://dddeurope.com/15years/

Code smell kata

https://github.com/AgileTechPraxis/CodeSmells

Machine learning

http://www.r2d3.us/visual-intro-to-machine-learning-part-1/

Video "But what is a neural network?": https://youtu.be/aircAruvnKk

Playground: https://playground.tensorflow.org/#activation=tanh&batchSize=10&dataset=circle&regDataset=reg-plane&learningRate=0.03&regularizationRate=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

Connascence kata

https://github.com/rinkkasatiainen/connascence-tictactoe

New Starter on a Dev Team

Java refactoring

https://cs.chromium.org/chromium/src/chrome/android/java/src/org/chromium/chrome/browser/preferences/website/SiteSettingsPreferences.java

Behavioral code analysis

codescene.io

https://github.com/jovaneyck/behavioral-code-analysis-toolkit

Team decisions

Core protocols, Decider and Resolution: https://liveingreatness.com/core-protocols/

Tjen on Slack

  1. 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

Functional web app in node.js

Repo, includes Aki's slides: https://github.com/rinkkasatiainen/functional-web-app-nodejs

Technical coaching

Parser Combinators

https://github.com/turanct/parser-combinators-from-scratch

http://dev.stephendiehl.com/fun/002_parsers.html#parsing

https://haskellbook.com/

Lightning talks

Tim's blog post about motivation, appreciation and performance: http://sch3lp.github.io/2019/03/20/virtuous-and-vicious-cycles-of-motivation/

Dave Sirlin on yomi levels: http://www.sirlin.net/ptw-book/7-spies-of-the-mind

https://en.m.wikipedia.org/wiki/Particle_filter

Matthew's lightning talk: https://www.goodreads.com/book/show/4703581-the-city-the-city, https://www.cafeoto.co.uk/

Tjen's notes of six aspects of empathy:

Bruno's GoL in functional Python: https://gist.github.com/BLannoo/fdc15021f80b0e5cf7991bd4663de9a8

https://www.effectivealtruism.org/

Bouke's cellular automata playground: https://github.com/boukeversteegh/cells

Kata's

https://kata-log.rocks/

http://www.agiletechpraxis.com/#publications and if the coupon is still valid: https://leanpub.com/agiletechnicalpracticesdistilled/c/socratesbe19

https://leanpub.com/codingdojohandbook

Making illegal state transitions impossible

Burglar alarm: https://sketch.sh/s/YjASHNGqTENPL9wQqtDYDA/

Mars Rover: https://sketch.sh/s/OT1hWJt0X2Po9NROlGpkic/

Thomas on Slack:

[T]he reason that OCaml allowed the extra polymorphic variants in the implementation is because the implementation is not tightly coupled to the interface. The implementation could also implement a different interface and then the extra polymorphic variant could be used there.

To have it verified in the implementation as well, you have to annotate the function like I've done in the example link

Polymorphic variants in F#

Not (yet?) possible see: https://github.com/fsharp/fslang-suggestions/issues/40

Monads / monoids

Video "The Functional Programmer's Toolkit - Scott Wlaschin": https://www.youtube.com/watch?v=Nrp_LZ-XGsY