Building an Efficient ETL Process with Laravel

Extract-Transform-Load (ETL) processes have been around for a long time in programming, and they’re not too challenging to understand: you take data from one or many sources (legacy DB, SAP, third-party data lake, spreadsheets, etc.), transform it to fit your own application’s workflows, and then load it into your own data sources. You can use ETL processes for syncing data across sources, migrating legacy data, aggregating multiple data sources, and more.

As you might expect, ETL processes involve a lot of data, and it’s up to you to ensure that you’re building a nice, lean ETL process. No one wants an ETL process that takes hours to run if it’s possible to run it in minutes. In this live-demo talk, we’ll use Laravel to implement an ETL process where we start with a functioning yet inefficient scenario and step-by-step turn it into a lean, mean ETL process. No prior Laravel knowledge is necessary, just an open mind. We’ll review writing efficient database queries, architecting your code to avoid common inefficient pitfalls, and more.

Talks: How to GraphQL

In this talk with Aaron Krauss, we?ll explore what GraphQL is, what problems it solves, what problems it creates, and how you can go about implementing it in your favorite language. We?ll also have a live GraphQL demo built in Ruby – which will be a great opportunity to experience Ruby if you haven?t used it yet!

Talks: Metaprogramming in Ruby

In this talk, we’ll review how you can start metaprogramming in Ruby. Ruby is a powerful language but it?s more than just syntax that makes it awesome. Ruby gives you the ability to write some really powerful code that other languages can?t do, things like modifying existing classes, accessing and modifying private instance variables, defining methods, gaining access to defined classes just by a string variable, and so much more, all at runtime!

Talks: Accessibility for the Web

In this talk, we’ll be talking about designing accessibility for the web – from a developer’s perspective! Despite what we envision, not every user is 100% flawless as far as mental and physical capabilities go – and there’s no excuse for ignoring that. Building an accessible product almost always leads to a much more well-architected product – so it’s a win-win.

In this talk, we’ll discuss the tools and strategies you can use to aid users with visual, auditory, cognitive, and motor impairments. We’ll discuss contrast, colors, content, keyboard flows, screen readers, section 508 – as well as some development concepts such as skip menus, the accessibility tree, hover and focus indicators, ARIA properties, and more.

There’s a lot that developers and designers can do to aid users with impairments – so let’s do it!

Talks: How Blocks Work in Ruby

Watch OKC Ruby, as Aaron Krauss speaks about Blocks.

Ruby has these things called ?blocks,? and they?re one of the key things that make it different from most other programming languages. Often times they take the place of a callback, a lambda function, or even a loop – but they have their own ruby-specific uniquenesses too. In truth, they?re a pretty neat feature that make the language much more intuitive to use – especially for developers new to the language. What exactly is a block, how do you use it, and why would you use it? We?ll answer all these questions in this talk, as well as briefly review Ruby?s other ?callable? structures, Lambdas and Procs.

Talk: Prolog – a Prologue

Watch Tulsa Web Devs, as Aaron Krauss speaks about Prolog.


Prolog is really powerful; it’s a neat old language that’s drastically different from just about any other language out there. It’s not functional (though it is declarative) – but if you’ve never seen it before, it will really challenge how you think about programming languages. For example, there are Sudoku solvers written using just 15 lines of Prolog!

This is a very beginner-friendly talk about Prolog – no prior experience necessary. Together, we’ll learn about facts, rules, and queries in Prolog – the fundamental constructs that make up a Prolog script, and how you can use them to solve some real-world problems.