Ben Ilegbodu
Ben Ilegbodu

Tech Talks

Speaking at NDC Oslo 2016

Below is a list of all of my talks. Most of them I’ve either given or will give at an upcoming speaking engagement. However, there are some that I am still hoping to give at some future conference and/or meetup!

I am open to speak about anything I write about here in my blog or that I have previously spoken about. I also have plenty of experience not currently expressed in a blog post or previous talk. If you’re interested in having me speak to or hold a workshop with your group, thank you! That means a lot that you find me worthy enough to share with your group. Please feel free to contact me via Twitter, email or AMA.

You can also check out my Speaking Engagements past and present, as well as my past Speaking Videos.


JavaScript

CSS

Career/Leadership

Server-side


The async future is present

Event handlers got you feeling “onKeyDown”? Are you stuck in “callback hell”? Promises leaving you a bit “unfulfilled”? Well, “await” no further. The async future is here. Let’s deep dive into the new ES2017 async functions: what they are, why we should use them, where they are most useful, and how they will dramatically change our approach to asynchronous JavaScript programming. You’ll never want to pass a callback or handle a promise again.

Backbone to React: an epic journey

React has exploded in popularity. Its declarative syntax and DOM abstraction for components make it an obvious choice for client-side development. But switching from your current framework over to a React-based stack leaves a lot of open questions:

How do you convince Management that React is the right strategy? Should you transition our app(s) all at once? How do you train up the team? Does your app need to be “isomorphic”? What are some coding best practices to follow?

For the past year, Eventbrite has been migrating our frontend stack from one centered around Backbone/Marionette over to React. Learn from both our wins and challenges in switching so that you too can make a successful transition.

Demystifying Conference Speaking

“I don’t know what I’d talk about.”
“I’m not good enough to compete with the ‘pros’.”
“Well, I don’t even know how the process works.”
“No one will be interested in what I want to talk about anyway.”

These are just some of the reasons that keep potential speakers from sharing their knowledge by giving a talk. Conference speaking is great for networking, personal growth, as well as conquering fears. But when you’re an aspiring speaker, the process to become one is unclear. In this session, let’s debunk myths about conference speaking by learning what it takes to go from wanting to speak at conferences to actually delivering your first conference talk.

Demystifying ES6

(Retired)

[Archived] Features from ECMAScript 6, our latest version of JavaScript, have been in browsers since early 2012, and even more functionality is now available in a vast majority of engines in our modern browsers and servers. We’ve all seen ES6 syntax used in talks and presentations to make the code more compact, but can it really be used right now for cross-browser compatible production code? And what’s all the fuss about it anyway?

Experience with JavaScript will help you get the most out of this session, but you don’t have to be a JS ninja to leave confident to begin using ES6 right now. We’ll cover a little history behind ECMAScript and uncover a broad range of new features, like arrow functions, modules, and rest parameters, that will have you itching to start developing your favorite app in ES6.

ES.next Fundamentals Workshop

JavaScript is evolving quickly. The mega ES6 specification was released in 2015 and is quickly being implemented by modern JS interpreters. New versions of ECMAScript will now be released on a yearly basis with new features going through a 4-stage proposal process. We can leverage features in ES6, ES2016, and those slated for future versions right now to write even clearer and more concise JavaScript code.

Experience with JavaScript will help you get the most out of this hands-on workshop, but you don’t have to have a JavaScript black belt to leave feeling confident in “ES.next.” Learn how to write cleaner code using arrow functions, destructuring, rest parameters, and other ES.next features you’re likely to use and benefit from on a daily basis. Oh, and don’t worry if you didn’t understand any of those terms — you soon will after this workshop.

Flexing your Flexbox muscles

Building linear layouts in CSS has been hard. Tables are bad, inline-block has quirks, and floats are insufficient. Thankfully the CSS flexible box layout module, aka Flexbox, enables us to elegantly solve our layout problems. While the specification has been around for over four years, increased browser support has finally pushed Flexbox mainstream. Even Bootstrap and Foundation have included it in the latest versions of their layout systems. Let’s deep dive into Flexbox: what it is, why you should use it, how it’s configured, and where it’s most useful.

Isomorphic React sans Node??

React is JavaScript library for building user interfaces that has taken the web development industry by storm. Its declarative syntax and DOM abstraction for components not only make client-side development simple, but also enables server-side rendering of those same components, which enables improved SEO and initial browser load time. But how do you render JavaScript React components server-side if your backend doesn’t run on Node? Learn how Eventbrite successfully integrated React with their Python/Django backend so that you can do the same in yours.

isReactDev === isMobileDev

Official talk description about transitioning from React to React Native coming soon!

The Junior Dev Dilemma

Software engineers that can hit the ground running when they join an organization are in high demand, but the supply of these professional hires is low, especially of seniors. Historically, junior devs came out of college CS programs, but now developer bootcamps are a new source of quality talent flooding the market.

But how do you interview these junior developers when they don’t have any prior professional experience? And once hired, how do you mentor them in order to set them up for success? What are some ideas for helping them grow in their career. Is it even all worth it?

Through missteps and wins, Eventbrite has interviewed, hired and grown the careers of many bootcamp grads. Come and learn some processes we used to successfully bring on junior devs. Or as a junior dev yourself, the types of organizations you should look out for.

Native Flexbox

React Native is a framework for building truly native mobile apps, allowing web developers to leverage their existing JavaScript and React skills to compose rich iOS and Android user interfaces. React Native also uses CSS for styling, particularly Flexbox for layout. Everything is a flex container!

Although CSS Flexbox has been around for over 5 years, Flexbox familiarity is still low because legacy IE browsers have prevented its widespread use. In this session geared towards those already familiar with React Native, let’s deep dive into Flexbox so we can finally get a solid understanding of all its features. Leave confident to begin building flexible layouts in your apps across all screen sizes.

React just exploded in popularity. But it’s only a UI library, not a full-fledged framework like Angular, Ember or [insert latest JS framework]. We need to create our own “framework” by picking from the plethora of libraries in the React solar system. But which ones should we choose? Or better yet, which ones do we actually need? Do we need a Flux implementation? What about handling ES6+, bundling and routing? How does it all come together?!1?!

Let’s walk through the tools and helper libraries that surround React. You’ll get the most out of the session with familiarity with React and its concepts, but you don’t need to be an expert. By the end of the session, you’ll have a solid understanding of the ecosystem, know which libraries you should prioritize learning first, and confidently build your own React-based stack.

React + ES.next = ♥

(Retired)

JavaScript is evolving quickly. The ES6 specification was released back in 2015 and has been implemented by modern browsers. New versions of ECMAScript will now be released on a yearly basis. We can leverage ES6 and functionality slated for future versions right now to write even clearer and more concise React code.

Experience with React will help you get the most out of this session, but you don’t have to have a JavaScript black belt to leave feeling confident in using ES.next with React. Learn how to write cleaner code using the new spread operator, classes, modules, destructuring, and other tasty syntactic sugar features being introduced into ECMAScript. Oh, and don’t worry if you don’t understand all of those terms — you soon will after this session!

React Exposed! 😮

React’s seemingly “magical” features make developing sophisticated web UIs easy by doing so much heavy lifting for us. Unfortunately, without knowing how certain parts of the “magic” work, we run into confusing React warnings/errors.

Why can’t we have “if blocks” in our JSX code? Why do we need to wrap multiple sibling components in a container component? Why do we need to include a “key” attribute on components that are in an array?

In this session geared towards those familiar with React, let’s answer these questions by digging deeper into JSX syntax, virtual DOM diffing and other “magical” features. Not only will we be able to prevent errors with a clearer understanding of the “magic,” but we can potentially boost rendering performance as well.

React Fiber for the rest of us

Fiber was introduced in version 16 of React. It is a ground-up rewrite of the React scheduler, typically mis-referred to as the “Virtual DOM.” The Fiber-based scheduler supports “cooperative scheduling” and allows for other output renderers besides the browser DOM. In this session geared towards those familiar with React, let’s learn about what React Fiber is and why it exists through the lens of how it will impact your React development and the performance of your apps at runtime.

React Fundamentals Workshop

React is a JavaScript UI library that makes creating reusable components easy and efficient. In this workshop, we’ll cover the critical concepts of React via a series of targeted exercises. We’ll learn how to:

  • Write readable, reusable and composable components
  • Use JSX syntax
  • Work with the Virtual DOM
  • Handle user interactions and synthetic events
  • Leverage ES6 to maintain application state
  • Make API calls
  • Apply component styling
  • Hook into the component lifecycle
  • And more…

Prior experience with React is not necessary, but experience with building JavaScript applications will be helpful to hit the ground running. You’ll leave the workshop with all the fundamentals you need to build your own apps with React.

React in style 😎

React is a JavaScript UI library that makes creating reusable components easy and efficient. However, there is no single approach for styling these components. “Css-in-js” libraries like glamorous and styled-components are the new hotness, but there are other viable approaches for beautifying our React apps as well. So let’s walk through these options for styling components. Familiarity with React will help you get the most out of this session. And by the end, you’ll have a solid understanding of the various approaches to make an informed styling decision in your React project.

React Properly

React is a JavaScript library for building user interfaces. Its declarative JSX syntax and virtual DOM abstraction provide wonderful development ergonomics and great performance. But even with all of the “magic” that React provides, it’s still easy to write suboptimal React code.

Eventbrite recently transitioned from a Backbone/Marionette stack over to a React-based one. We developed many React best practices from the very beginning to provide code consistency and prevent immediate technical debt from poorly written code. In this session geared towards developers already familiar with React, let’s walk through the guidelines and rules Eventbrite adopted so we can apply them to our own teams and projects.

Sugar & Spice and everything nice about ES6

(Retired)

[Archived] ECMAScript 6 is the new version of JavaScript making its way into the engines of our modern browsers and servers. Some of its features appear to be no more than a little syntax sugar — making development we already do in JavaScript a bit easier. Others add brand new functionality long missing in JavaScript, which allow us to spice up our code without having to include yet another library.

Experience with JavaScript will help you get the most out of this session, but you don’t have to be a JS ninja to leave confident to begin using ES6 right now. Let’s walk through all the sugar and spice of ES6 and what makes it just so nice for code readability. Along the way, you’ll learn about arrow functions, destructuring, rest parameters, and other features. We’ll also see strategies for how we can circumvent that pesky issue of cross-browser compatibility. Oh, and don’t worry if you didn’t understand any of those terms — you will after the session.

Sweet ES6

(Retired)

ECMAScript 6 is the new version of JavaScript and is already available in the engines of our modern browsers and servers. Many of its features are just a little syntactic sugar to help make our JavaScript code clearer and more concise. Experience with JavaScript will help you get the most out of this session, but you don’t have to have a JavaScript black belt to leave feeling confident in ES6.

Learn how to write cleaner code using arrow functions, destructuring, rest parameters, and other sweet ES6 features. Oh, and don’t worry if you didn’t understand any of those terms — you soon will after this session.

Why choose React?

As the Frontend Platform team at Eventbrite switched from Backbone/Marionette over to React, it had to convince other developers, managers, directors, and non-engineers that React was the right path. And the rationale for moving wasn’t just because React is insanely popular. There are many tangible benefits that make the effort of migrating worthwhile.

New to React and want to learn a little about how it works? Seeking ammunition to convince your team to make the change? Come learn about why we made the decision to transition to React, through an introduction of how to build user interactions with React.

Wait… the Web can do what?1?!

ES.next, React, CSS Grid, Service Workers and other new technologies are getting all the attention within the frontend community. They enable us to easily build sophisticated UIs across all devices. But there are even more, lesser-known Web APIs that help us further blur the lines between browser and native apps!

In this session geared towards frontend engineers of all skill levels, let’s learn about some Web APIs that you may have never heard of before! We’ll look at audio, video, interaction, and device diagnostic APIs — where they are supported and how you can apply them in your next project.

You don’t need JavaScript for that!

(Retired)

We have been using JavaScript toolkits like jQuery for nearly a decade to make manipulating the DOM easier as we create our highly-interactive web apps. New features in HTML5 & CSS3 should’ve made old development strategies obsolete, and yet we’re still using jQuery to do things better suited for HTML5 & CSS3. Why? Well, old habits die hard.

In this session, let’s look at ways we used to build interactivity in JavaScript and see how we can transform them into more optimal solutions using plain old HTML and CSS. We’ll discuss CSS3 transitions & animations, new HTML5 attributes, and other “tricks” to offload JavaScript functionality to the browser’s rendering engine for more performant web applications. Whether you’re a seasoned JavaScripter or just getting started, you’ll leave the session with fresh ideas to work with.