Agenda

Hello, declarative world

Ruby’s billed as a “multi-paradigm” language, but, let’s face it, we
use it to write imperative object-oriented programs. I'm interested in
different ways of programming computers, because I reckon imperative
programs are far too low-level and overspecified, which is why as a
species we're generally terrible at writing them. In this talk I want
to encourage you to think outside of your normal programming habits;
I’ll present a more abstract and declarative style called relational
programming, and show you how to implement a minimal relational
language in Ruby. (Dog whistle: this is μkanren.)

Domain Driven Design, In the Wild

Every day, we write software that solves business problems. How we
actually do that is largely up to us. We tend to build models that
encapsulate complexity and provide abstractions that help us reason
about the problems we solve.

We stress our models with incremental development. Changing business
requirements challenge the durability of our models. The magnitude of
change is an indicator for the effectiveness of our models' ability to
represent the problem domain.

At Which? we used Domain Driven
Design to deliver
our most recent project. In this talk, I will share those insights. I
aim to cut through the jargon and give concrete, real-world examples of
how we applied the principles of DDD to build a product that
anticipates change.

Pub

The talks will end at 8pm and we'll head to a local pub. As it's a new venue we don't know which one yet. Watch this space if you can't make the talks but want to join us afterwards.

Agenda

LEARNING HOW TO LEARN RUBY (and rails, and sinatra, and …)

At Makers Academy we coach students through the process of learning
Ruby, Sinatra, Rails, JavaScript, JQuery and Angular over the course of
12 weeks. Students range in age from 18 to 60, although the majority
are in their late 20s or early 30s, already have university degrees
(often a humanities subject) and have spent 5+ years in the workplace
doing sales, marketing, design, management or some other relatively
non-technical role. The majority of students have also had almost no
programming experience prior to their preparation for the interview and
selection process that they must go through to get on the course. In
this talk I will explore what makes a 12 week intensive bootcamp tick,
and the particular challenges the students face with learning Ruby and
JavaScript.

Flaky tests & Capybara best practices

One of the main purposes of testing is to enable us to trust the
performance of our code in an automated way. Unfortunately, several
problems often arise with automated tests. One common and particularly
annoying problem that we began experiencing in our codebase was
flakiness.

In this talk, I will discuss common problems that may cause this issue,
and some solutions we discovered based on our own experience at
SimplyBusiness.

Pub

The talks will end at 8pm and we'll head to The Fellow shortly after. We've reserved the entire first floor, so if you can't make the talks but want to hang out with some rubyists afterwards, head on over and climb the stairs to say "hi".

Venue

Registration

To secure a place at the meeting you mustregister via our Eventbrite page or via the embedded ticket widget below. The venue has a capacity of 100 people and we'll have to be strict about registrations. Eventbrite lets you fully manage your ticket, so if you realise you can't go please return the ticket and let someone else attend in your place.

Agenda

Redis is the answer, what's the question?

There are very few things that are part of my go-to toolbox, but Redis
is one of those things. I don't think there's a better, more flexible
piece of infrastructure you can have at your disposal.

I'll cover the very basics of using Redis and general patterns that you
can use within your own systems. I'll also share some concrete examples
of what we've used it for at Cronofy.

Ruby Magic

As a child, Andrew McDonough loved
magic. One of the best Christmas presents he ever received was a magic
set. As an adult, Andrew prefers to perform magic using Ruby. In this
talk, he will attempt an array of traditional magic tricks, using only
IRB.

Test Bisection with RSpec

I'll talk about a useful technique for debugging order-dependent test
failures, and introduce an upcoming feature in RSpec that automates it.

Pub

All those talks will take us to about 8pm, after which we leave Skills Matter's offices and head over to The Slaughtered Lamb to continue the meeting. While we ask you to register for the talks, there's no need to do so for this pub part; feel free to turn up even if you don't make it for the talks.

Registration

To secure a place at the meeting you mustregister with our hosts Skills Matter. It helps to make sure we have the room laid out with enough chairs, and in extreme cases that we get priority on the larger rooms over other groups using the space on the same night. Also, it's polite (don't forget MINASWAN), so please do register with Skills Matter. Prior to attending you should familiarise yourself with our README.

You can also follow this meeting on lanyrd, but this is not a meaningful way to tell Skills Matter you wish to attend. It's just for the lols, innit?

Agenda

Rewriting Code and Culture

This is the story of a company that survived a much needed
transformation of its product and codebase, but most importantly, of
its culture. There's no real prescription for being agile. It's about
the journey a team takes to discover how to best work together and
deliver great products.

In this presentation, I'll share a candid view of a team trying to
overcome a slow product development process. How we refactored our way
out of badly coupled code, moved to continuous deployment, and greatly
improved our approach to product and software development.

Rails New Way

Kamil Lelonek is going to talk about building modern, maintainable and robust Rails applications. He asks:

Why a conventional Rails architecture fails?

What price do we pay for Rails’ simplicity?

Why Rails tries to solve complex problems in one monolithic class?

Should we follow the Rails way or drop Rails at all?

With presented building blocks he'll try to help solve common problems in current Rails applications.

Book Giveaway

The nice people at Infinitium Global have arranged to make 20 copies of David A. Black's "The Well Grounded Rubyist 2nd Edition" available to LRUG members and we'll be handing them out at this meeting. We used our mailing list to allocate each book to a lucky LRUG member on a first-come, first-served basis. Infinitium are hoping to make this a regular event, so if you'd like to be in with a chance of getting your hands on a book in the future you should sign up to our mailing list.

Pub

Our talks usually end at about 8pm after which many members can be found at The Slaughtered Lamb chatting about what they just learned and other goings-on in the ruby world. The pub is large and has a good menu of food and drinks (alcoholic and non) so all are welcome, even if you were unable to attend the talks.

Registration

To secure a place at the meeting you mustregister with our hosts Skills Matter. It helps to make sure we have the room laid out with enough chairs, and in extreme cases that we get priority on the larger rooms over other groups using the space on the same night. Also, it's polite (don't forget MINASWAN), so please do register with Skills Matter. Prior to attending you should familiarise yourself with our README.

You can also follow this meeting on lanyrd, but this is not a meaningful way to tell Skills Matter you wish to attend. It's just for the lols, innit?

Agenda

Un-artificial Intelligence: How People Learn

Most developers are familiar with the basics of AI: how do you make a
computer, an algorithm, a system learn something? What most don't
realize though is that the same principles are applied to people. This
talk looks at the theory behind how people learn, and maps it to real
life examples of how specifically developers learn.

The shiny new mongo gem

Emily Stolfo is visiting from Berlin to tell us all about writing the new ruby driver for MongoDB:

The Ruby team at MongoDB spent the last year building a new driver
– the mongo gem –
that was released a few weeks ago. Emily is going to talk about how
they built the driver, its design, and why its availability is
so exciting for the Rails and Ruby community.

MongoDB 3.0 was also released a few weeks ago and she'll talk a bit
about what makes this version so monumental and why you should try
it out.

Pub

The formal talks-and-speakers-based part of the meeting ends around 8pm, after which we make the short trip to The Slaughtered Lamb to continue the event. Most of the attendees and speakers are usually here so it's a great chance to find out what's going on in the LRUG community, or to catch up with or make some new friends. Attendance of the talks is not a prerequisite for coming to the pub, so please do come along!

Registration

To secure a place at the meeting you mustregister with our hosts Skills Matter. It helps to make sure we have the room laid out with enough chairs, and in extreme cases that we get priority on the larger rooms over other groups using the space on the same night. Also, it's polite (don't forget MINASWAN), so please do register with Skills Matter. Prior to attending you should familiarise yourself with our README.

You can also follow this meeting on lanyrd, but this is not a meaningful way to tell Skills Matter you wish to attend. It's just for the lols, innit?

pkgr - Packaging Ruby applications with no sweat

In the life of every* project there is
this moment where standard deployment methods just don’t cut
it. You have many servers, many applications, many developers.
It can become a mess very, very quickly.

Have you ever dreamed of hosting your own apt repository? When
was the last time you were annoyed about slow deployment times
because the asset pipeline needs to run every single server
your app runs on? Oh and lets not mention installing ruby
version managers on servers, ok? (I will though).

In this talk I will show how packaging (and deploying) Ruby
applications doesn’t have to be hard or time consuming and can
work with a project of any size.

Pizza

The nice people at Braintree Payments have arranged to buy some pizza for us to eat during the talks. The Pizza will be there from about 6pm so turn up early if you're hungry! There'll be a selection to suit most tastes: meat-eaters, vegetarian, and vegan. We're not sure if the pizza company does a gluten-free option, but we'll get one if they do.

Pub

The talks end at 8pm and I'm sure all that talking and pizza will have given us a bit of a thirst. The evening continues at The Slaughtered Lamb which is a 5 minute walk from the Skills Matter office. It's a great opportunity to talk to the speakers in question, or just catch up with some other London rubyists. If you're unable to attend the talks please feel free to attend the pub only.

Registration

To secure a place at the meeting you mustregister with our hosts Skills Matter. It helps to make sure we have the room laid out with enough chairs, and in extreme cases that we get priority on the larger rooms over other groups using the space on the same night. Also, it's polite (don't forget MINASWAN), so please do register with Skills Matter. Prior to attending you should familiarise yourself with our README.

You can also follow this meeting on lanyrd, but this is not a meaningful way to tell Skills Matter you wish to attend. It's just for the lols, innit?

Bath Ruby Conf tickets giveaway

Thanks to the nice folks at Team Prime and Bath Ruby we are able to provide 4 people with free tickets and a £70 allowance (enough to cover return train travel from London). The tickets are available to LRUG members that wouldn't otherwise be able to attend. The deadline to put your name forward for a ticket is midnight on Sunday 8th, February 2014. If more than 4 people request the tickets a draw will be held privately to select the winners. The recipients of the tickets will not be publicly announced, but we'll thank Team Prime and the Bath Ruby Conf organisers at the start of the meeting.

Pub

All those talks are bound to generate some thoughts we'd like to discuss afterwards. So we cross Goswell Road and head down to The Slaughtered Lamb to have those discussions in a more informal setting. If you didn't make it for the talks then do feel free to turn up just for this bit.

Registration

To secure a place at the meeting you mustregister with our hosts Skills Matter. It helps to make sure we have the room laid out with enough chairs, and in extreme cases that we get priority on the larger rooms over other groups using the space on the same night. Also, it's polite (don't forget MINASWAN), so please do register with Skills Matter. Prior to attending you should familiarise yourself with our README.

You can also follow this meeting on lanyrd, but this is not a meaningful way to tell Skills Matter you wish to attend. It's just for the lols, innit?

Agenda

Who’s afraid of database views?

Many Rails codebases I look at work hard to put all logic into
the application source code, using the database only a dumb
store. But, there are circumstances where it makes sense to
leverage features of a database and in this talk I'll cover one
of those features in Views. I'll walk through examples of why you
might want logic in two places, how views compare to caching
for performance considerations, using views as a facade on
legacy tables and how to test views alongside your application.

PeerConnect all the things

WebRTC is an exciting technology currently in, or coming
soon to a browser near you. In this talk I will explain what
it is, how it works and how to setup some ruby services to
support a WebRTC-based application.

Telling stories through your commits

In this talk we'll look at some of the ways that you can
improve how you develop code and communicate with your team
through your commits.

Pub

After the speakers are done it's time for the rest of us to give our vocal chords a workout. We have to leave Skills Matter by 8pm so we head to The Slaughtered Lamb to do so. If you can't make the talks then do feel free to attend this part. There's no need to register for this bit though, so just turn up!

Registration

To secure a place at the meeting you mustregister with our hosts Skills Matter. It helps to make sure we have the room laid out with enough chairs, and in extreme cases that we get priority on the larger rooms over other groups using the space on the same night. Also, it's polite (don't forget MINASWAN), so please do register with Skills Matter. Prior to attending you should familiarise yourself with our README.

You can also follow this meeting on lanyrd, but this is not a meaningful way to tell Skills Matter you wish to attend. It's just for the lols, innit?

An RSpec 3 Talk

RSpec 3 is the recently released new major version of
RSpec. It contains a host of new features, and has
removed or altered many old ones. In this talk we’ll
cover the most significant changes that were made in
RSpec 3, the upgrade path between RSpec 2 and 3 and
some of the common pitfalls that you might fall into
when using this new major version of RSpec.

Pub

That all sounds super-interesting and we'll want to talk it all over together, but we have to be out of Skills Matter by 8pm. Don't worry though, that doesn't mean the evening is over! The Slaughtered Lamb is a short walk away and has plenty of space for us to have those discussions. No need to register for this bit, if you can't make the talks do feel free to turn up just for the socialising afterwards.

Registration

To secure a place at the meeting you mustregister with our hosts Skills Matter. It helps to make sure we have the room laid out with enough chairs, and in extreme cases that we get priority on the larger rooms over other groups using the space on the same night. Also, it's polite (don't forget MINASWAN), so please do register with Skills Matter. Prior to attending you should familiarise yourself with our README.

You can also follow this meeting on lanyrd, but this is not a meaningful way to tell Skills Matter you wish to attend. It's just for the lols, innit?

Agenda

Julia - Fast and Dynamic

Can a programming language be fast yet highly
dynamic? The creators of Julia, a new language with
a numeric focus intends to answer yes.

In this talk we will introduce the language, and
discuss some of its design and implementation
decisions that make it particularly amenable to
generating efficient machine code. We will also talk
about Julia's impressive language interop features,
and see examples of calling Ruby code from within Julia.

Peas - A Docker and Ruby based PaaS

I'll be looking at the basic technical concepts
of the Platform As A Service paradigm (eg; Heroku)
and what Docker and Ruby can contribute to it.
Some of the highlights will be; using Docker
inside Docker, how to test this complex stack
and concurrency using the Celluloid gem.

Pub

After the talks are finished we leave Skills Matter and move to The Slaughtered Lamb to continue the evening. We finish the talks at about 8pm, so if you only want to attend this informal part aim to be at the pub by about 8:10 and you should be just in time to fight with us for room at the bar.

Registration

To secure a place at the meeting you mustregister with our hosts Skills Matter. It helps to make sure we have the room laid out with enough chairs, and in extreme cases that we get priority on the larger rooms over other groups using the space on the same night. Also, it's polite (don't forget MINASWAN), so please do register with Skills Matter. Prior to attending you should familiarise yourself with our README.

You can also follow this meeting on lanyrd, but this is not a meaningful way to tell Skills Matter you wish to attend. It's just for the lols, innit?