Come and join us for great talks and drinks :) This time there'll also be a quiz :)

Temas

About Semantic Versioning

Many software projects follow their own versioning scheme. Before you actually use the software, you go ahead and read up how their versioning scheme is working, which versions are compatible to which versions, which are meant for development purposes only, which are safe to use and most importantly which introduce breaking changes. When you upgrade existing software, you find yourself often in the position to ask "Can I safely upgrade this library to that version? Does this break anything?”. Finding an answer here can be very tedious for a big software project using many libraries.

As a software author you always ask yourselves the same question when you release: “What is the version number for the next release?”

Semantic versioning introduces a set of rules which help you as a software author to pick the right number. No need to think about this for hours anymore. For the users of your software it also gets a lot easier. They’re able to define rules for their package managers which updates are safe to perform and which are not. This allows them to update their libraries without problems.

Refactoring VAT in SpreeCommerce and Solidus

The largest e-commerce Rails engine in Existence, SpreeCommerce, was built in North America. North America has different rules for taxing Sales on-line than Germany (most of the rest of the world, actually).

For a client I had to refactor Spree's taxation system so that it can do some of the weirder things Germany / the EU need. This is a fascinating story with lots of funny code!

In October 2015, Spree Commerce Inc. ceased maintaining SpreeCommerce. As a result, a large part of the community moved to the fork Solidus - but my code hadn't. So I embarked on a side project to refactor taxes there as well, given I'd done it once before, and this time do a better job at it.

This talk is great for - first-time contributors (because I didn't have a lot of GitHub bathroom tiles when I started this) - anyone working with large legacy codebases (because it has some fun insights on what to do and what to avoid) - Ruby trivia addicts (because there's some really really undecipherable code in there)

I will give this talk at SolidusConf in May this year. The Rug::B edition would be somewhat reduced in scope, as I can't expect the audience to be as familiar with the codebase. It is a technical talk, by all means.

Taxes are, btw, boring. Doing them well in Ruby - not so much!

Elixir & Phoenix - fast, concurrent and explicit

Elixir and Phoenix are all the hype lately - what's great about them? Is there more to them than "just" fast, concurrent and reliable?

This talk will give a short intro into both Elixir and Phoenix, highlighting strengths, differences from Ruby/Rails and weaknesses.

Participantes: (82)

Martin Meyerhoff
Eventos: 2
Temas: 2

Uladzimiro
Eventos: 11
Temas: 1

Jan Schulte
Eventos: 18
Temas: 3

Oleksii Fedorov
Eventos: 20
Temas: 1

violettine
Eventos: 3
Temas: 0

Gloria Bhat
Eventos: 1
Temas: 0

Jen
Eventos: 1
Temas: 0

Gregory Igelmund
Eventos: 12
Temas: 0

Steven Stadler
Eventos: 2
Temas: 0

Tatsuya Suzuki
Eventos: 1
Temas: 0

yuji307go
Eventos: 2
Temas: 0

Bodo Tasche 🔭
Eventos: 40
Temas: 3

Paul S. Chun
Eventos: 6
Temas: 0

yonatan miller
Eventos: 21
Temas: 0

Organizer

Tobias Pfeiffer
Eventos: 104
Temas: 15

Armin Pašalić
Eventos: 70
Temas: 3

Josep
Eventos: 19
Temas: 0

Bastian Bartmann
Eventos: 17
Temas: 0

Holger Frohloff
Eventos: 19
Temas: 4

Niall Burkley
Eventos: 22
Temas: 2

Jonny Rimek
Eventos: 3
Temas: 0

Deepak Lamichhane
Eventos: 22
Temas: 0

Alexander Sulim
Eventos: 25
Temas: 2

Thilo Utke
Eventos: 23
Temas: 0

Cameron Prebble 🇳🇿
Eventos: 45
Temas: 0

letsleaveitempty
Eventos: 7
Temas: 0

Thuy Le
Eventos: 3
Temas: 0

eno
Eventos: 8
Temas: 1

Skmitty
Eventos: 4
Temas: 0

Jakob
Eventos: 5
Temas: 3

Lucas Krebs-Pinto
Eventos: 13
Temas: 0

Fanny Krebs-Pinto
Eventos: 9
Temas: 1

Calvin Kaye
Eventos: 1
Temas: 0

Michael Reinsch
Eventos: 30
Temas: 2

Tilmann Singer
Eventos: 26
Temas: 0

Christoph Grabo
Eventos: 83
Temas: 1

Roland Koch
Eventos: 41
Temas: 0

jottr
Eventos: 13
Temas: 0

Hernan Maguina
Eventos: 22
Temas: 0

alicia
Eventos: 2
Temas: 0

Laurent Arnoud
Eventos: 9
Temas: 0

Joe Webb
Eventos: 12
Temas: 0

Zhuo-Fei Hui
Eventos: 34
Temas: 1

12finger
Eventos: 22
Temas: 0

Tanja Cerri
Eventos: 11
Temas: 0

Mike Rogers
Eventos: 13
Temas: 1

Holger Pillmann
Eventos: 9
Temas: 0

Philipp Baschke
Eventos: 1
Temas: 0

Fernando Meyer
Eventos: 3
Temas: 0

Toño Serna
Eventos: 46
Temas: 0

Lili
Eventos: 4
Temas: 0

Frederic Branczyk
Eventos: 5
Temas: 0

Annamaria Boheim
Eventos: 2
Temas: 0

Gregor Schmidt
Eventos: 1
Temas: 0

Susanne Dewein
Eventos: 9
Temas: 0

Denis Defreyne
Eventos: 24
Temas: 13

Jorge
Eventos: 11
Temas: 0

Arman Toussi
Eventos: 1
Temas: 0

Markus Herzog
Eventos: 10
Temas: 0

Johannes
Eventos: 3
Temas: 0

Robert Schulze
Eventos: 26
Temas: 0

Raquel Moss
Eventos: 1
Temas: 0

Brett Heenan
Eventos: 3
Temas: 0

Daniel Reszka
Eventos: 12
Temas: 0

Emily S
Eventos: 5
Temas: 2

Duilio Ruggiero
Eventos: 27
Temas: 0

Roman M
Eventos: 7
Temas: 0

Roberto Zanon
Eventos: 3
Temas: 0

Vitaly Tatarintsev
Eventos: 4
Temas: 0

schokomarie
Eventos: 6
Temas: 0

Khrystyna Klochko
Eventos: 6
Temas: 0

mcmerriweather
Eventos: 5
Temas: 0

Paul Götze
Eventos: 63
Temas: 1

Christian Kroter
Eventos: 6
Temas: 0

Mario Olivio Flores
Eventos: 2
Temas: 0

Mike Zhang
Eventos: 2
Temas: 0

Leif Gensert
Eventos: 9
Temas: 1

Łukasz Włodarczyk
Eventos: 2
Temas: 0

Denny Mueller
Eventos: 23
Temas: 0

Philipp Tessenow
Eventos: 9
Temas: 1

Peter Grosskopf
Eventos: 14
Temas: 0

Mapa