Events

Feed icon 28x28
Rmw logo original

Ruby Midwest 2013 Schedule

April 5 - 6, 2013

( 19 available presentations )
2368 rmw2013 ready to code automate your development environment thumb 0002 thumb
Rating: Everyone
Viewed 2,799 times
Recorded at: April 5, 2013
Date Posted: April 26, 2013

Remember when you first get started on an existing project, and you have to get your development environment setup?
"You need Postgres and Ruby", so you get that installed.
"Oh wait, we can't run 1.9.3, you need 1.9.2", so you change Ruby.
"bundle is failing? Oh yeah, that gems needs some native packages, better google it".
"Why isn't that feature working? Oh yeah, I just remembered you need to install wkhtmltopdf for that to work"; it's still not working, "oh, you didn't install that with the package manager did you, that one never works, you have to download a binary and install it manually."
In an environment with more than one project it's even worse, since you could be moving between different projects each with their own unique requirements. Vagrant allows you to configure what you need installed on your development machine and isolate it into a headless VM to use for development. In our consulting shop, a new developer can usually be up and running in about 15 minutes with a complete development environment and ready to start coding. And if you really manage to mess something up badly, you can just destroy the whole thing and rebuild it with a couple commands.

2369 rmw2013 soa safari in the amazon thumb 0002 thumb
Rating: Everyone
Viewed 2,155 times
Recorded at: April 5, 2013
Date Posted: April 24, 2013

Amazon’s toolbox of services can be pretty intimidating at first, and there are many possible solutions for scalability and redundancy. We’ve combined those tools with the power of Ruby to build a decoupled highly-testable platform that is a developers dream. We’re going to share what we learned on this journey.

2370 rmw2013 oop and philosophy thumb 0000 thumb
Rating: Everyone
Viewed 4,112 times
Recorded at: April 5, 2013
Date Posted: April 26, 2013

Actions are driven by ideas, and ideas are driven by philosophy. For a deep understanding of our actions, we have to go the whole way back to the philosophy that motivates them. So what's the philosophical basis for Object Oriented Programming? In this talk, [the speaker] will discuss Plato's theory of forms, its relationship to Object Oriented Programming, and its current relevance (or irrelevance) to modern philosophy.

2371 rmw2013 failure for fun and profit thumb 0000 thumb
Rating: Everyone
Viewed 1,757 times
Recorded at: April 5, 2013
Date Posted: April 26, 2013

Do you actually know how deliberately acquire, sharpen, and retain a technical skill? In this talk, I'll discuss common strategies to enable you to be more focused, creative, and productive while learning, by using play, exploration, and ultimately failure. You'll leave knowing several "Experiential Learning" patterns and techniques that can help you turn failure into success. When was the last time you failed in a spectacular fashion? Was it really so bad? If you want to succeed, you first need to take a little time to fail.

2372 rmw2013 make testing fun with test reporters thumb 0004 thumb
Rating: Everyone
Viewed 1,599 times
Recorded at: April 5, 2013
Date Posted: April 26, 2013

Slow tests got you down? As Ruby developers, we watch a lot of tests run in a given day. So why not make it more fun? In this talk, I'll take a light-hearted approach to introducing you to an array of test reporters including MiniTest's Pride, Fuubar, and my very own Nyan Cat Formatter. In addition, I will show how easy it is to make your very own test reporter for both Rspec or Minitest so you can have a more enjoyable testing experience.

2373 rmw2013 frustration driven development thumb 0001 thumb
Rating: Everyone
Viewed 1,567 times
Recorded at: April 5, 2013
Date Posted: April 26, 2013

Everyone draws inspiration and motivation from different sources. For most, it’s often frustration. We make life decisions, define new features, or refactor code when we get too annoyed by current circumstances. This is where [the speaker] admits they has a low tolerance for frustration. Having been frustrated a great deal during his career, [the speaker] will discuss several anti-patterns that they have seen in code and how to use the Dark Side of the Force (frustration, anger, and rage) to escape from them.

2374 rmw2013 must have 10 years people experience thumb 0000 thumb
Rating: Everyone
Viewed 1,869 times
Recorded at: April 5, 2013
Date Posted: April 29, 2013

Solving a technical problem is relatively easy: there tends to be precedence, easily accessible data, black and white results, and a long list of knowledgeable developers to lean on. People problems are stickier; there are far more variables, no tests you can write, no debugger to use. In this talk, I’ll focus on our biggest issues as developers and community members. We’ll examine what’s broken, what works, and some useful people katas.

2375 rmw2013 rails application security in practice thumb 0004 thumb
Rating: Everyone
Viewed 2,076 times
Recorded at: April 5, 2013
Date Posted: April 26, 2013

Out of the box, Rails does its best to help you secure your app. Unfortunately, without consistent application of secure development principles, practices and tools, it's just a matter of time before vulnerabilities creep in. The best time to start locking down your app now, not after your first close call (or worse). We'll walk through exactly what you need to reduce the risk of a security breach to your business, beyond the Rails defaults.

2376 rmw2013 ruby groups act locally think globally thumb 0002 thumb
Rating: Everyone
Viewed 1,462 times
Recorded at: April 5, 2013
Date Posted: April 26, 2013

There are thousands of local Ruby groups worldwide. Sadly, many suffer along, become stagnant, some even die off. How can you make your local Ruby Group better and in so doing, improve the global Ruby Community? This talk focuses on the human side of getting a group together and making it successful so the members, as a group can contribute to the larger community. It is a universally useful guide to improving all parts of the ruby community, starting on a local level.

2377 rmw2013 keynote thumb 0001 thumb
Rating: Everyone
Viewed 2,153 times
Recorded at: April 5, 2013
Date Posted: April 26, 2013

2378 rmw2013 computer program theyself thumb 0000 thumb
Rating: Everyone
Viewed 1,800 times
Recorded at: April 6, 2013
Date Posted: April 26, 2013

Robots. Unthinking. Unfeeling. Cold. Incapable of surprising us. Or are they? In this demonstration I'll be walking through how I use ruby to teach computers to surprise me with answers to problems I don't know how to solve. It draws heavily on testing to model behavior, stats, and rubies power to create domain specific languages; so hang on to your hats!

2379 rmw2013 dci semiotics applied to software thumb 0002 thumb
Rating: Everyone
Viewed 1,354 times
Recorded at: April 6, 2013
Date Posted: April 27, 2013

Formally, semiotics is the study of signs: how do they relate?, how do they structure meaning?, what rules do they follow? All these questions are important to understand how humans communicate and how we interpret the world around us, so it's no wonder that semiotics are related to the process of building software. We, as developers, create software that communicates not only to the end user, but also to other systems and even to other developers. A clear separation of each part of the ""final message"" is important to keep the code maintainable and more important, to control the meaning of our app. DCI is an elegant way to keep that separation clear, we can manage the "rules" (context), the "symbols" (data) and the "meaning" (information) of the message. During this talk I'll explore some concepts of semiotics which are important for DCI and how DCI uses those concepts to communicate. Part of the talk includes an overview of an app I'm building using grape, which allowed me to build from scratch an architecture based on DCI an experiment ideas and concepts I'd like to share with you.

2380 rmw2013 more time for open source work with the help of the pomodoro technique thumb 0000 thumb
Rating: Everyone
Viewed 1,961 times
Recorded at: April 6, 2013
Date Posted: April 27, 2013

You know the constraints: Day job, time for your family, urge to hack, visiting the local user group, and start a new project about the latest rocket science technology you need to learn. There is never enough time for all this stuff at once. This talk will present the time management method, called Pomodoro. Learn how to work time-boxed, get rid of distractions, focus on a single task for 25 minutes, and relax for couple of minutes to free your mind. We all love Open Source work and Pomodoro will help you to hack on your beloved babies in a time-boxed way to get more done in less time.

2410 rmw2013 lightning talks thumb 0002 thumb
Rating: Everyone
Viewed 1,255 times
Recorded at: April 6, 2013
Date Posted: April 27, 2013

2381 rmw2013 nobody will train you but you thumb 0001 thumb
Rating: Everyone
Viewed 3,453 times
Recorded at: April 6, 2013
Date Posted: April 27, 2013

Why do we all know a developer who has been pounding out unmaintainable code for a decade or more? Why do people ""believe in TDD but I don't have time to write tests during crunch?"" How is it that we have an entire industry based around rescuing teams from acutely awful Rails apps? It's because on the job experience is a poor teacher, plateauing as soon as the developer is able to ship code that meets requirements. Schools teach Computer Science which is only tangentially related to being a developer and most kata's are approached incorrectly, giving no value at best, and reinforcing poor practices at worst. On top of all this, our pairs (for the lucky ones who pair program) probably have not shown us anything new in months. This presentation will give specific, concrete steps on how to slowly and steadily improve our game through practice and hard work. I'll identify what skill Rails developers should be focusing on and walk the audience through how to target and eliminate these weaknesses so that nothing but white hot joy streams out of our fingers and into our apps. There's no magic here, no secrets, and no hacks; just you and me working our butts off until we suck a little less.

2382 rmw2013 functional principles for oo development thumb 0002 thumb
Rating: Everyone
Viewed 10,689 times
Recorded at: April 6, 2013
Date Posted: April 27, 2013

So you consider yourself an Object Oriented developer? Ruby isn't limited to an OO style! See what functional programming can do for us, without learning any new language. These six principles of functional style apply in OO code. Some of these principles you already use; some express patterns old and new; all give us different ways of thinking about problems. Developers without expertise in functional programming will find new techniques for thinking and coding in Ruby.

2383 rmw2013 lightweight business intelligence thumb 0004 thumb
Rating: Everyone
Viewed 2,002 times
Recorded at: April 6, 2013
Date Posted: April 27, 2013

Long the provence of specialists in the hermetic world of enterprise software development, business intelligence (BI) is increasingly important to smaller, more agile companies and startups who need access to near-real-time information to make critical business decisions. With its support for aggregation and reduction of massive amounts of data and its flexible schemas, MongoDB is a great choice for creating lightweight, denormalized data stores optimized for BI, with the added bonus of peaceful co-existence with transactional data stores. In this talk I will explore how Trunk Club captures and analyzes customer information, monitors user behaviour, feeds machine-learning algorithms for decision support, and delivers value to business stakeholders through simple querying and reporting interfaces.

2384 rmw2013 the most important optimization happiness thumb 0003 thumb
Rating: Everyone
Viewed 2,340 times
Recorded at: April 6, 2013
Date Posted: April 27, 2013

Metaprogramming. It's awesome, right? Powerful? Maybe a little scary? Let's kick things up a notch. If writing code that writes code is powerful, what's hacking the life of the programmer writing the code? That's got to be an 11 on the meta-meter. At least. We'll talk about some of the bad assumptions we've made, lies we've bought into, and why we have the most awesome job ever.

2385 rmw2013 keynote thumb 0003 thumb
Rating: Everyone
Viewed 2,344 times
Recorded at: April 6, 2013
Date Posted: April 27, 2013