11-12 August 2018
Join us for GrillRB 2018, a gathering of Ruby enthusiasts from around the world.
GrillRB is Polish outdoor single-track community-driven conference fully dedicated to Ruby on Rails framework and Ruby language. The conference will be held in Wrocław in August 11-12. During the two day event we are going to discuss the topics which are the most crucial for Ruby community, such as: best practices, development process and the future of Ruby. Come and exchange the knowledge and experience, talk over projects with other Rubyists in relaxing & enjoyable environment.Become a supporter Become a volunteer
An exploration of the challenges that Ruby faces today, combined with ideas regarding how we can change things for the better.
We'll talk about the language, its ecosystem and its community.
While on this bold adventure we'll plot a course towards Ruby 4.0 - a mystical and magical Ruby release that would ensure Ruby's dominance to infinity and beyond!
Oh, and did I mention we'll have a ton fun while doing so?
We'll most certainly do!
Property-based testing changes the way we look at our test suites. Instead of specifying test cases one after another, this advanced testing technique enables us to automatically generate a stream of inputs. Despite its potential, property-based testing still remains under the radar within the Ruby community. Let’s try to uncover its strengths together.
The talk will discuss how property-based testing compares to traditional testing methods and demonstrate its principles with simple examples. In order to bust the myth of the inapplicability of property-based testing in a real-world setting we’ll bring up some use cases from industry. Finally, we’ll wander into the world of concurrency and the automation of race condition detection.
Recently I've built an open source library for implementing JWT sessions in Ruby https://github.com/tuwukee/jwt_sessions
I'd like to talk about the gem and JWT in general, describe different auth flows, highlight XSS/CSRF security cons, compare it with classic approaches.
When you are new to RabbitMQ, AMQP or even asynchronous messaging, the plethora of configuration options can be overwhelming.
This presentation aims to give you an overview of all the involved parts and the terminology. Afterwards you should know all the important keywords, configuration options and about tradeoffs between speed and delivery guarantees.
During the years of development, we learnt that fat-controllers and then fat-models are pretty bad for our applications and we have to do something about it. We started doing so-called ‘Service Objects’, but no one ever created community accepted guidelines for creating them so as always, we have huge number of opinions about them.
We've got dry-transaction, trailblazer-operation, waterfall, business actions from granite, interactors and many more.
During the talk I’ll describe most popular solutions and will try to find best one.
A spectre is haunting the world of programming – the spectre of Machine Learning.
All of a sudden, the stuff of science fiction is real. Cars drive themselves. Algorithms recognise faces better than you and I can. Language translators went from “source of amusement” to “better than humans”, seemingly overnight. How the heck is that even possible?
Even with all the hype around Machine Learning, many developers are still wary of it, because it feels so foreign. The field is teeming with math jargon, research-y conventions and, frankly, bad code. Rather than tutorials, people point you at academic lectures and obscure research papers. For many of us, this stuff is as intimidating as it’s fascinating.
In this speech, I will show you the foundations of Deep Learning, the field that gives rise to those amazing Artificial Intelligences. I will lead you from zero to a working neural network that recognizes hand-written characters. Along the way, I will mostly use code and animations (and yeah, a few mathematical formulae) to explain Machine Learning concepts. Get ready to enter a whole new field!
You know all that rules for the good code. TDD, SOLID, DDD, The Clean Architecture, etc. A side-effect-free function is better. Decoupling is better. But, along with pros they come with cons. No wonder there are over-engineering, KISS, YAGNI words.
The author was trying to build an application in a team applying known best practices for over one and half years, and… eventually failed. On his own example, he will tell you about practical sides of approaches, pros and cons, common pitfalls and made conclusions.
Battle-tested strategies to help you find balance between building things right and building the right thing.
Does Ruby always mean Rails?
Code in product context - what brings value?
Maintainability vs moving forward
Short-term experiments vs long-term vision
Addressing tech debt
Find vulnerability on development stage should be implemented to find vulnerability on earlier stage (development stage) on Software Development Life Cycle (SDLC). Most of vulnerability found on final stage of SDLC through penetration testing. Security issues were accidentally created on design and development stage, meanwhile developer couldn’t identify the vulnerability because they should wait until application passing through penetration testing, which mean on final stage. If vulnerability figured out by developer earlier, they can realize and fixed the vulnerability without waiting till penetration testing.
Static Application Security Tools (SAST) can be used to find vulnerability on development stage. SAST is a set of technologies designed to analyze application source code, byte code and binaries for coding and design conditions that are indicative of security vulnerabilities”(gartner.com).
This topic will cover how to find vulnerability using free/open source SAST. It will cover SAST which has capability to scan ruby on rails. SAST usage will demonstrate with several scenario, CLI usage and Jenkins integration. Jenkins is open source CI/CD tools commonly used for supporting Devops.
The talk proposes an alternative view on the possible future of Ruby, outside of Rails/non-Rails dichotomy.
We'll investigate the latest development of the language, and how it shapes in unity and struggle with Rails and its alternatives. "Small independent tools and rich language" approach is praised, and some interesting pragmatic consequences of it are investigated.
Machine learning is used more and more often. Ruby is one of commonly used languages and it needs to deal with machine learning.
Based on some use cases, I show most convenient approaches where Ruby machine learning libraries can be used and when it's not the best idea and why. As we approached the A.I. revolution, I show some ideas what can happen in Ruby environment to better deal with machine learning.
Current application state; what, in fact, is it? We, as software engineers, usually don’t think much about it (unless we face a consistency issues in a distributed system, in which case we might think about it a LOT).
Looking closer, one might realise, in essence what is known as current state is just a product of mutations over time. Mutations which, as they happen, commonly cause the software system to forget about what was, up to that point, known as current state. Once this becomes clear, one starts to wonder, is there a beneficial way to utilise this fact?
Starting from a perspective of "classic" n-tier system architecture, I will explore benefits and potential downsides starting with formally splitting r/w requests into commands and queries , recording state mutations as events, ending with a solid system capable of time travel and some other, potentially unexpected superpowers including, but not limited to, precognition, "roflscale", and self reconstitution.
This year, GrillRB will be located on Wzgórze Andersa in Wrocław. The hill is 2.5 kilometers from the city center. In the near distance there are hotels, restaurants, shops and AquaPark.
Wrocław is the largest town in western Poland. The city's major tourist attractions are: Panorama Racławicka, Ostrów Tumski , Wroclaw's fountain, Wroclaw's Dwarfs and Old Town-Historic Center.Show on maps
Are you going to come to a conference from another city?Find accommodation
If you have any questions or suggestions, don't hesitate to contact us
Do you want to help us in organization?Become a volunteer