Coraline has been programming professionally in Ruby since 2007. She is the author of 25 Ruby gems and has contributed to major projects including Rspec and Rails. She is a frequent speaker at conferences around the world, including RailsConf. Coraline was a 2016 recipient of the Ruby Hero award.
Coraline created OS4W.org, a resource for connecting all women, including women of colour and transgender women, to open source projects. She is also the creator of the Contributor Covenant, a code of conduct used in over 14,000 open source projects. She is on the board of directors for Ruby
What the Duck?
I started my career as a Clarion developer, and then moved into the asset management space where I was exposed to various technologies. During this time I was introduced to Ruby and I never looked back! For the last year I've been employing these Ruby, Rails and other web-development skills working in the market research industry.
In this talk I explore ways in which to make optimal use of duck typing and type conversion in everyday Ruby programs. I will explore what duck-typing really means, and when it is appropriate to use this as opposed to respond_to?, type checking or type conversion in Ruby programs. I will investigate the difference between implicit and explicit type conversion, and will also take a look at the difference between these conversion protocols and capitalized conversion functions.
Using Apache Kafka from Ruby
Daniel Schierbeck has been programming in Ruby since 2005 after completing level 99 in PHP and figuring out there was no prize to win after all.
He studied Computer Science at the University of Copenhagen, where he primarily spent his time trying to avoid writing C++. He got into Concurrent Sequential Processes before it became cool, and wrote a Ruby implementation called Minx for his bachelor thesis. As with all academic code, it is used by no one at all.
He works as a Principal Engineer at Zendesk, a San Francisco based Customer Support Software SaaS company.
Apache Kafka is “publish-subscribe messaging rethought as a distributed commit log” – a way for applications to produce messages that can be read by many different consumers. Kafka is rapidly gaining wide adoption, partly because of its impressive scalability but also because of what it enables: looser coupling between message producers and consumers & efficient storage of messages, allowing consumers to “go back in time”.
Until recently, there hasn’t been a battle-tested Ruby client for Kafka, though. We decided to build one, enabling advanced Kafka applications in pure Ruby.
AI in Perspective
Rishal is currently fulfilling the role of a Team/Technical Lead at Entelect. He is a senior software engineer designing and building solutions for various national and international blue chip clients. He has a passion for web architecture, mobile development, and design thinking methodologies. Rishal founded Prolific Idea in 2015 where innovation is cultivated through research and technology. www.prolificidea.com
An insight into the current state of artificial intelligence and machine learning. We will be delving into modern approaches to AI, current uses, and an overview on how to get started from a conceptual and practical perspective.
Hacking with Ruby
I work as a Ruby Developer at MWR InfoSecurity, based out of the Rivonia office, but working closely with offices around the world. Harbouring a keen interest in the cyber security space, I am interested in looking to understand how computers work at their core and I thoroughly enjoy performance optimising code.
There are many excellent tools out there for “hacking” and penetration testing, some of which are written in Ruby. Looking at two of these tools, Metasploit and Meterpreter, I will explore the area of buffer overflow exploits, to allow the attacker to gain access to the target system through a reverse_tcp payload. The target system in this case should be a Rails server.
Level up in Ruby while keeping all your hearts
I have been a professional software developer for almost 7 years, and playing with development for double that! I am currently focussed on developing a BI tool in my professional life and playing in functional programming when time permits.
How to progress and self learn in software development while still keeping your sanity and health.
From grammar to byte-code in 20 minutes
Aslam has been building software for long enough to make peace with the fact that design is ridiculously difficult and a whole lot of fun. After 20 odd years, he still finds a way to work at the extremes - close to the metal with lines of code and close to the brain with strategy. Mostly, though, he is just a another software developer from Africa - by birth and by choice. He occasionally blogs at http://aslamkhan.net.
This is an insane attempt to share the steps and toolchain to build your own external DSL using ruby. The question has to be "Why?" We know how to build internal DSL's in ruby. However, external DSL's give freedom to design a grammar that is free of idiomatic ruby. That opens up a universe of possibilities. Our history of learning compiler theory is mostly painful, but the tools that exist make this viable. This is a tough talk. Like many tough things, it's laced with equal parts of stupidity.
Monorails: deal with it
Kir Shatrov is a Developer Infrastructure Engineer at Shopify where he works on the core Rails platform and infrastructure. When not into working, Kir enjoys learning new technologies, speaking at conferences and biking.
Today Shopify is the oldest Rails application, which codebase starts in 2005 and remembers Rails 0.9. The code contains 200 models and 400 controllers. Every day hundreds of developers are working on this app in the single repository.
How do you scale Rails not in the number of requests, but from the perspective of developer experience? How to automate code reviews and prevent developers from shooting themselves in the foot? We've built a lot of internal tooling around developer environment which I'd like to share in my talk.
Rails Security: above and beyond the defaults
Matias Korhonen has been writing Rails apps professionally at Kisko Labs, a small software consultancy in Finland, for almost a decade. In his spare time he works on too many side projects (including [Piranhas.co](https://www.piranhas.co/), a book price comparison site, and [TLS.care](https://tls.care/), an SSL certificate monitoring service). He also somehow manages to find time to homebrew beer.
Rails provides pretty decent security options straight out of the box, but can we go further and, if so, how? In this talk I'll outline what security options are available, why we'd want them, and how to go about implementing them.
I'll touch on Content Security Policies, HTTP Public Key Pinning, and other HTTP/browser security options. I'll also do a quick overview of proper SSL or TLS configuration.
What threats we're trying to protect against and who do we imagine that our adversaries are? How do we keep our users safe against a variety of attack vectors?
What I learned from applying for 107 jobs
Service Engineer at GitLab
Learn from my mistakes, advice I received from friends, and great outcome at the end.
ActionGame with Rails 5
Daniel Smith is a Ruby and Node.js developer at Platform45. He loves doing things new or out-of-the-ordinary. His favourite pastimes are graphics programming and monkey-patching the NilClass. He has spoken about Game Development and other topics at Jozi.rb and Pretoria.rb. His programming experience started when he wrote tic-tac-toe for DOS in Turbo Pascal. Since then he has had a keen interest in game development and graphics programming.
ActionCable was recently added to Rails 5's ever-increasing list of built-in awesomeness. This opens doors for developers to do even more incredible things in the Web of today. One of these things is the ability to create a real-time online multiplayer game inside a regular old Rails app.
Date night with Ruby
Rob started programming in high school where he swore he would never do it again. Five years later he decided to give it another go this time with Ruby, He has never looked back. He is currently at Prodigy Finance, working with an amazing team doing great things. If programmers were superheroes, Rob would be Batman. He may not have any real "superpowers", but he does have several gems on his belt and a few years experience cleaning up Gotham; one bug at a time.
We all have that one language that we just love coding in. When presented with a small project it's the tool we would prefer using, that fun language. For me that language is Ruby.
I asked myself a question: Why does working on Ruby projects at work feel so different from working on projects when I am doing something at home, events, hackathons or the like?
I asked this question to many developers, their answers have lead me to rediscover my relationship with Ruby. Let me show you how I found the joy of programming in Ruby.
Building a learning culture.
For 17 or so years I have been building software - developing, managing, leading and mentoring others. My current focus is around successfully keeping code fluid and able to change through building a deeper understanding of agile development practices, principles and values while coaching developers and teams to do the same. For the last several years this has been while working on Ruby / Rails applications.
Experience is valuable. How do you harness the experience and skill you have in your organisation for everyone’s benefit? How do you extract the learnings gained from experiencing the pain and joy from living in the trenches?
This talk will focus on building a joint understanding of software values and principles in order to build a shared view of why we build the things we build the way we build them. It will delve into some of the activities that we are doing in an organisation of 18 (and growing) ruby developers - what worked, what didn’t and what we hope to try next.
The Imposter Within
Clarice Bouwer makes software for people. Living outside her comfort zone keeps her challenged and continuously learning. She enjoys solving problems and bridging communication between business and technology.
Imposter Syndrome impacts my day-to-day decisions and confidence, affects growth by limiting opportunities and makes me feel unworthy. I'd like to share my experience & perspective of feeling like a fraud with other software professionals.
Feedback for the developer who codes solo
I like Ruby
Ruby Analytic tools can give value feedback when working alone or even as a team.
Quick overview of why feedback is important and how the following tools could be of help: rubocop, brakeman, reek, flay, rubycritic, bundler-audit, simplecov, guard, pronto, overcommit.
What's new in Ruby 2.4
Every Christmas we get a present in the form of a new Ruby release. Let's unwrap the new toys together in this talk.
The 360˚ Developer
I'm ruby code still in production, debugged every now and then, and mostly spending time internalizing my refactors.
My journey discovering a pathway to mastery through “balance”. 3 Tales that focus on three skill areas that can make us better problem solvers, better employees and overall better developers.
Ruby and Finance Don't Mix. Right?
Quintis has been in and around the tech sector in various forms for more than 15 years. Obsessed with anything tech he's always tinkering on some personal project or another and loves talking about tech with others who are similarly afflicted. Professionally, he works with various teams and technologies to build cool stuff for customers. He is also not nearly as clever as he thinks he is.
From the the ground up!
Theo - Hi, I’m Theo. I’ve been programming professionally for 7 years. I’m extremely passionate about programming and all things related to software development. I love helping others become better programmers & problem solvers. I have an important message to share.
Mandla - A C# Developer working for Driven Alliance. Loves teaching complex concepts to kids to test his own understanding.
Want us to keep you updated? Sign up below and get all the latest Rubyfuza announcements in your inbox.
Marc Heiligers @rubyfuza Welcome
Coraline Ada Ehmke @CoralineAda Metaphors Are Similes. Similes Are Like Metaphors
Eliza de Jager @code_kitten What the Duck?
Kir Shatrov @kirshatrov Monorails: deal with it
Daniel Smith @jellym4nn ActionGame with Rails 5
Aslam Khan @aslamkhn From grammar to byte-code in 20 minutes
Grant Petersen-Speelman @grantspeelman Feedback for the developer who codes solo
De Wet Blomerus @dewetblomerus What I learned from applying for 107 jobs
Dane Balia The 360˚ Developer
Rishal Hurbans @RishalHurbans AI in Perspective
Cocktails and Networking
Marc Heiligers @rubyfuza Welcome
Theo Bohnen and Mandla Magagula From the the ground up!
Quintis Venter @cuevee Ruby and Finance Don't Mix. Right?
Matias Korhonen @matiaskorhonen Rails Security: above and beyond the defaults
Brad Kingon @brad_kingon Hacking with Ruby
André-Marthin Helberg @A_Helberg Level up in Ruby while keeping all your hearts
Daniel Schierbeck @dasch Using Apache Kafka from Ruby
Ruberto Paulo @legend_rob Date night with Ruby
Kevin McKelvin @kmckelvin What's new in Ruby 2.4
Clarice Bouwer @cbillowes The Imposter Within
Patrick Vine @patrick_vine Building a learning culture.
Closing up the event
We’re a global company of passionate technologists. Our mission is to better humanity through software and help drive the creation of a socially and economically just world.
Founded 22 years ago, we have over 3,600 employees in 36 offices across six continents.
Our clients think big. They are people and organizations with ambitious missions. They are disrupting retail, healthcare, travel, education, media, government, telecommunications and the humanitarian sector. They want to unleash the power of software for their cause or business. We help them envision, design and deliver.
We think building great software is a social activity, best done by teams of brilliant people. It's not a mechanical process where individuals are interchangeable cogs in a master plan. Our clients want to create and deliver products that blow their customers' minds. We get the right people working together to make it happen.
Along with many of our clients, we are agents of progressive change in the world. Aware of our own privilege, we strive to see the world from the perspective of the oppressed, the powerless, and the invisible.Ruby-level and Thursday Night sponsor thoughtworks.com
JUMO is a transaction and predictive technology platform for people, mobile networks and banks. We help people and small businesses in emerging markets access great savings and borrowing choices, we help mobile networks grow their mobile money ecosystems and we help banks become better at understanding their customers and offering them better choices.
JUMO has grown from a team of 7 to 225, rolling out our products across Kenya, Tanzania, Zambia, Uganda, Rwanda and Ghana with our partners, Airtel, Tigo and MTN. We use data to understand what financial opportunities people need and then we put the power of that choice in the palm of their hands.
JUMO’s proprietary platform lets more people in more places access the benefits of digital financial services. We love mobile money and we are working hard to reach people who have not had these choices before.Sapphire-level Swag bags and Coffee sponsor jumo.world
Zappi is bringing the promise of one-click automation to market research. Zappi’s online Market Research App Store allows people to purchase a range of research apps to answer specific business questions and receive detailed, automated answers in a matter of hours instead of weeks. Zappi automates everything from data collection via a panel management service, to analysis via our cutting-edge data modelling engine, to reporting via a sophisticated web front-end.Sapphire-level sponsor zappistore.com
On OfferZen instead of applying for jobs, companies send you interview requests with upfront salary details. You decide which companies to interview with by comparing salary, the work you’ll be doing, learning opportunities, work environment, and perks that companies offer.
We made OfferZen to be exactly what we would want:
Prodigy Finance is a platform that enables financing for international postgraduate students at the world’s best universities, whilst delivering competitive financial and social returns to alumni, institutional and private investors.
This borderless and innovative model enables education loan financing to students from across the globe, whilst using predicted post-degree affordability rather than present-day salary. Since 2007, Prodigy Finance has processed over US$200 million through the platform to fund students from 118 nationalities, with repayment rates in excess of 99%.
We are funded by some of the best, pre-eminent institutions and entrepreneurs in the world. We’ve raised over $100 million from Credit Suisse, Balderton Capital and Deutsche Bank, and also private investors who themselves have grown $1bn+ companies such as Ed Wray, the Co-founder of Betfair and David Stevens, the Co-founder of Admiral Insurance.
To date, Prodigy Finance has funded degrees at more than 80 of the of FT Top 100 ranked business schools, including INSEAD, Wharton, Chicago Booth, Columbia Business School, London Business School, NUS, Saïd Business School (Oxford University) and Stanford.Topaz-level sponsor prodigyfinance.com
We help companies collect, process and visualize their business data to gain competitive advantage.
Vulcan Labs is a leading boutique provider of software development and consulting services with a specific focus on the Business Intelligence domain. We develop a range of highly customisable products that enable businesses to better collect, collate, analyse and report on critical business data.Topaz-level Thursday lunch sponsor vulcanlabs.com
In 2006, Amazon Web Services (AWS) began offering IT infrastructure services to businesses in the form of web services -- now commonly known as cloud computing. One of the key benefits of cloud computing is the opportunity to replace up-front capital infrastructure expenses with low variable costs that scale with your business. With the Cloud, businesses no longer need to plan for and procure servers and other IT infrastructure weeks or months in advance. Instead, they can instantly spin up hundreds or thousands of servers in minutes and deliver results faster. Today, Amazon Web Services provides a highly reliable, scalable, low-cost infrastructure platform in the cloud that powers hundreds of thousands of businesses in 190 countries around the world.
We are still expanding our respective teams, so please feel free to explore our open roles available in Cape Town If you have a background in Computer Science and are passionate about cloud computing, send your CV to firstname.lastname@example.orgTopaz-level sponsor www.adccpt.com
Resource Guru is a cloud-based team calendar and leave management tool. It’s the fast, simple way to schedule people, equipment and other resources online.
A shared schedule gives you full visibility of resources, projects, meetings and downtime, and the user-friendly drag and drop interface makes creating, moving, and deleting bookings a breeze. Powerful reports deliver new insights on key metrics like utilization, overtime and absence.
Start a free 30 day trial today and see why customers from over 90 countries around the world including Intel, Vodafone, Disney, Deloitte, and VMware, trust Resource Guru to handle one of their most precious assets - their people’s time.Opal-level sponsor resourceguru.io
Situated in the exclusive and wind-free suburb of Bantry Bay, the President Hotel is a peaceful haven just a step away from the buzz of Cape Town’s CBD. With sweeping views stretching over the endless horizon of the deep blue Atlantic Ocean and nestled below the majestic Lion’s Head, Bantry Bay enjoys an average of 290 wind-free days a year. The average daily sunshine is between 7.5 and 9.5 hours, making the President Hotel’s infinity pool an attractive prospect all year round.View Map Find accommodation