The sixth annual Conference will be
February 8, 2014
Workshops will be held
February 6 and 7
$199 Early Bird Pricing!
ends January 21, 2014
$249.00 Standard after

See Workshops page for pricing

 
Proposals

Platinum

Gold

Silver

Bronze

Supporter

Sponsorship Info

Sponsor the sixth annual Los Angeles Ruby Conference! Sponsoring LA Ruby Conf gives you a fantastic opportunity to be in front of and meet with top Ruby talent in the Southern California area as well as the surrounding states.

Voting has been closed, watch schedule for more information.

423 votes where cast for 78 proposals.

Sign in or Register to Submit a Proposal to Speak at LA Ruby Conf or to vote on existing proposals.

We care about writing quality code, we have read the definition of SOLID principles several times and we know how important they are for writing good OO code, but are we really following those principles? Is there a pragmatic way of following them in our day to day jobs or are they just some principles a few computer scientists wrote? Fortunately there is, SOLID principles are not just good ideas , they are intended to help us write better code, enjoy our jobs more and be happy programmers. But, where should we start? We should start where we always do. By writing tests, yes, for real. As Kent Beck says "TDD doesn't drive good design. TDD gives you immediate feedback about what is likely to be bad design", so we need to go a step further. In this talk we will see how writing tests is not just *doing TDD* is about having good test coverage, it's also about driving our code towards good design, one that follows SOLID principles.
Submitted: December 03, 2013 @ 03:57:12 am UTC
Votes: 23
A dynamically typed language like Ruby gives us great freedom to do cool stuff, but that freedom comes at a cost. As developers writing code in a dynamic typed language we need to be conscious that that freedom comes with more responsibility. This means Ruby gives us enough rope for us to hang ourselves. When using dynamically typed languages we are less confident of the correctness of the code. This doesn't mean we should use statically typed languages, at least not just for that reason, as Alan Kay said: *"I'm not against types, but I don't know of any type systems that aren't a complete pain, so I still like dynamic typing."* We could consume a huge amount of time covering our code with tests to have a grade of certainty similar to the one we would have using a statically typed language, that's not only unpractical but it's not worth it. That's where **contract tests** come to the scene, they are fast, reusable and most important allow us to leverage dynamically typed languages awesomeness, such as duck-typing. I've always liked making Barbara Liskov happy and using contract tests allows me to do so. This talk is about writing beautiful contract tests, the ones that are readable, allows us to save time and be more confident about our codebase while using the language we all love.
Submitted: December 03, 2013 @ 03:59:09 am UTC
Votes: 20
As Ruby developers, a lot of the time we're building applications that rely on some sort of network connection. Due to Ruby's great abstractions we take most of the network related stuff for granted. We think we know how all of that works, but do we? Let's go over the fundamentals together, learn about how Ruby models TCP Sockets and how we can make a good use of it. Even if you're not doing network programming, being able to dive multiple levels to understand what's going on will give you a great advantage. The sort of concepts we'll go over this talk don't apply to Ruby only. All modern languages support the Berkeley Sockets API so this knowledge is portable and it will serve you for many years to come. The first part of the talk is about going through the fundamentals of programming with sockets. This includes creating sockets, client and server life-cycle, reading and writing data, doing socket timeouts in Ruby and SSL sockets. The last part of the talk is all about applying those concepts to a real world problem by writing a web server.
Submitted: December 03, 2013 @ 08:19:06 am UTC
Votes: 20
Despite programs like RailsBridge and RailsGirls, gender disparities remain a persistent problem in technology. In the last year the coding community has been rocked by several incidents of shockingly overt sexism. The topic is uncomfortable for everyone, and attempts to address it often create new unpleasant conflicts. We will discuss the experiences of women in our community, and address the understandable (but often unhelpful) reactions men have to the issues. We will offer practical strategies and tools to address these issues and create a healthier community. Co-presentation by Evan Dorn and Hannah Howard of Logical Reality Design, Inc.
Submitted: December 04, 2013 @ 02:06:59 am UTC
Votes: 18
"I didn’t have time to write a short letter, so I wrote a long one instead." -Mark Twain Writing small classes is hard. You know you should, but how do you actually do it? It's so much easier to write a large class. In this talk we'll build up a set of small classes starting from nothing using a set of directed refactorings applied as we build. All while keeping our classes small. We'll identify abstractions yearning to be free of their big object cages. In the process we'll also see how basic patterns such as composition, delegation and dependency injection emerge from using small objects. We'll even write some tests too.
Submitted: December 03, 2013 @ 19:52:04 pm UTC
Votes: 16
As Rubyists, we see the value in refactoring. When Fullscreen started experiencing serious growth and our team started to grow with it, the excitement and glamour of being a successful startup quickly wore off as a far-reaching engineering initiative began looking insurmountable. In this talk, I will discuss how applying software development best practices to how we ran our team turned it into one that runs at scale, shipping new things more frequently than ever before with less stress than ever.
Submitted: December 06, 2013 @ 01:50:22 am UTC
Votes: 16
The 10X Developers, Top Talent, Rockstars. A-Players. Tradition states that these are exceptional humans, possessing talents that others do not. The good news is they are not special, they were not born great programmers. The better news is that you're not special either. This talk is about learning to learn, putting ourselves in a place where being more awesome is inevitable. It will explore how the brain's structure changes as we internalize skills and how that can be used to build positive feedback loops. It talks about how I believe that focus itself is an acquired skill and how we can nurture that to build more grit. Finally, we explore how our perception of others effects their ability to grow. This talk is for anybody who is dissatisfied with their code but doesn't know how to get better. It's for anybody that's afraid to ask questions or of making mistakes because they could be seen as not good enough. This talk is for anybody who wants to build a team that can get better together.
Submitted: November 18, 2013 @ 19:23:36 pm UTC
Votes: 15
Let's do this thing. What is pair programming? Won't software projects take twice as long or cost twice as much with pair programming? Do I pair with the same person every day? Who owns the code? How do performance reviews work? Do we pair on *everything?* What do I do if my pair goes home sick? What do I do if I can't stand my pair? What if my pair smells bad? What if my pair smells GOOD?! I've given presentations at many conferences, Meetups, and companies on topics ranging from Agile team management to Android messaging frameworks. My presentations inevitably grind to a halt once I mention that I pair program: I'm peppered with questions! I'll answer any and all questions about pair programming and remote pair programming, from the profound to the silly. I have no doubt that we will fill the allotted time with sage advice, educational anecdotes, and your own stories about pair programming.
Submitted: November 05, 2013 @ 21:03:17 pm UTC
Votes: 12
Rails came to prominence because it makes web development easy. So easy, in fact, that we're afraid to ask if Rails might be the wrong choice for our web application. Because before Rails, web development was so much more painful and difficult. It turns out that Rails is an awful choice for at least one type of web application: fat-client JavaScript user interfaces. We've been slow to admit this because it's hard to deny the comfort and convenience of the Rails ecosystem. But viewed more broadly, the Ruby ecosystem's client-side tooling has been completely outflanked in the past two years by the tremendous community focus on Node.js and Grunt. In this talk, we'll discuss why building single page apps with Rails isn't as easy as we might assume. We'll uncover the dangers of tangling our front-end UI with our backend-services in a single repository. Finally, I'll demonstrate some of the amazing things that development tools are capable of when JavaScript is treated as a first-class language and when (just like in Rails) we strive to make developers' work easier.
Submitted: November 16, 2013 @ 22:28:45 pm UTC
Votes: 12
Understanding of CRuby source code has profound effects on every Ruby developer. In my talk, I will show you how to build Ruby from source. I will explain how to install and configure your new Ruby build on Mac and Linux. I will walk you through CRuby source code and introduce you to a few of the most important CRuby files. I will show you how to hack CRuby and modify some of the fundament Ruby classes in C. I will demonstrate how to write complete Ruby classes in C. Finally, I will show you that CRuby code can run 100 times faster than Ruby code. I hope that this talk will inspire you to learn more about CRuby and hack it on your own.
Submitted: December 02, 2013 @ 01:59:12 am UTC
Votes: 12
I've been building software for longer than I care to admit. (I started on an IBM System/360. Yes, I'm almost a gray head, if I had hair.) In that time I've made a lot of mistakes. Learn from my mistakes as I talk about ten letters I wish I could write to my younger developer self. * Do not become over enamored of your new shiny tool. Everything is not a nail. * You're not as good as you think you are. You don't know what you don't know yet. Learn harder, learn faster. * Naming things is hard, hard, hard. You can't do it alone. You're just not that good. * It always takes longer than you think it will. Always. And no you're not good at estimating. Here's how to get better... And more...
Submitted: December 03, 2013 @ 19:46:23 pm UTC
Votes: 12
What's the worst that could happen if your app has a dependency on a malicious gem? How easy would it be to write a gem that could compromise a box? Much of the Ruby community blindly trusts our gems. This talk will make you second guess that trust. It will also show you what malicious gems can do, how an attack could be executed, how to vet gems, and what the Ruby community can do to increase security around gems.
Submitted: October 30, 2013 @ 05:05:06 am UTC
Votes: 11
Ruby is used for a lot of things, but for some reason, only a few people are using it for music. If you ever looked around, you would see that there are only a handful of audio and signal processing libraries out there. In a language that is meant to make programming fun, the lack of code surrounding such a creative field is scary. Let's fix the current Ruby landscape by learning how to use the tools available in Ruby (and some tools outside of Ruby) to let those creative juices flow. We will be focusing on how to build sounds from the ground up (the discrete sample rate, the powerful amplitude, and the majestic waveform), so you don't need any prior audio wizardry. Just bring yourself and a Ruby console and we just might create some beautiful music in a beautiful language.
Submitted: November 19, 2013 @ 00:11:46 am UTC
Votes: 11
Security is often neglected; however, recently there were multiple Rails exploits that affected a lot of companies. In this talk, I will show you how to perform penetration testing of your Rails apps using tools such as Metasploit Framework and Armitage. In live demo, I will show you how a hacker can compromise a Rails app and own the box. I will go over some of the security best practices that are easy to follow and implement. I hope that this talk will raise awareness and increase security knowledge of Ruby community.
Submitted: December 02, 2013 @ 03:17:45 am UTC
Votes: 10
Scaling of large Ruby apps is difficult and frustrating. Tests take hours to run and provide little confidence. Adding new features to large applications takes longer than necessary. Working on large Rails applications is not exciting and lowers the team morale. In this talk I will demonstrate how to scale Rails application using Gems and Rails Engines. Divide and conquer approach results in fast test and well architected modular applications.
Submitted: December 02, 2013 @ 03:49:43 am UTC
Votes: 10
Most developers code to music...some are even musicians themselves. Is it possible to streamline workflow by adjusting how we listen to music and what music we listen to? Studies have shown that exposure to certain kinds of music can help to develop cognitive strength and improve performance of tasks. This talk will explore those studies and show what sort of things can be done to improve the listeners environment and help people to create better code.
Submitted: October 22, 2013 @ 21:26:42 pm UTC
Votes: 9
We do a lot of things right in our industry, but one thing we're really bad at is interviewing job candidates. An interview too often feels like a first date - awkward, strange, and not entirely predictive of what's to follow. There are countless books and websites to help you when you're a job seeker, but what about when you're the one doing the hiring? Will you just ask the same puzzle questions or sort algorithm problems? What are your metrics for evaluating or contextualizing the answers? In this talk, I'll discuss successful practices and techniques to help you find someone who will innovate your business, bring new energy to your team, get the work done, and be someone you'll want to work with.
Submitted: November 03, 2013 @ 23:55:04 pm UTC
Votes: 9
It's about time for the Ruby community to adopt a more mature and nuanced approach to testing. Gone are the days when "is it tested?" was a boolean question. It no longer makes sense for a single test suite to accomplish numerous objectives, because the design of our tests are so influenced by the benefit we hope to realize from them. What's less clear to most developers is the best approach to breaking a test suite up. This talk will introduce a testing architecture that's appropriate for the post-monolithic age of Ruby application development. We'll discuss why each test suite can provide at most one type of confidence and one type of feedback. I'll introduce a set of five narrow, focused types of test suites and explore how each of their roles can combine to provide all of the value that test automation can hope to offer. Together, we'll gain the ability to discuss the value of each test with much greater precision and subtlety.
Submitted: November 16, 2013 @ 22:34:01 pm UTC
Votes: 9
Most of us think we would love for our app to get bazillions of users, generate wads of cash, and maybe even get bought by some huge company. And we like to imagine that life will be stress-free while the money rolls in faster than we can count it. But anyone who has lived through rapid team growth can tell you it’s not all fun and games. In this talk, I will present recommendations for what teams must and should do at each step of the way in order to survive success, from rails new [new_app] to many development teams working concurrently on the same product. These will include technical and people best practices with plenty of anecdotes that can only be considered amusing in distant hindsight.
Submitted: November 27, 2013 @ 05:53:49 am UTC
Votes: 8
You've probably already read the GitHub blog post on Unicorn and "Zero Downtime Deploys" and would like to try it out for your application(s). This talk will cover the particular particulars of making this work. Detailed discussion will be given on our Unicorn, NGINX, Runit, RVM, Capistrano and Chef changes that needed to be made in order to make this work reliably. Approaches to migrations and schema changes will also be discussed. Even if your stack differs slightly, the salient points should be applicable. Once you have zero downtime deploys working, you'll wonder why you ever did deploys any other way. Say goodbye to cap deploy:maintenance. Secrets will be revealed!
Submitted: December 05, 2013 @ 19:46:22 pm UTC
Votes: 8
Rails is a great framework for creating web apps... for awhile. What do you do when your codebase grows large? How do you handle large teams of developers? When performance becomes an issue, how do you scale? Most importantly, how do you write code which can easily be refactored later? This is a story of a real life project built from day 1 with all these questions in mind. Learn about the problems we solved and lessons we learned: how to partition your Rails app into distinct modular engines, how to speed up your test suite by only running code effected by your changes, how to add a layer on top of ActiveRecord to enforce loose coupling, and many other patterns that can be applied to your own Rails apps!
Submitted: October 30, 2013 @ 04:32:19 am UTC
Votes: 7
Are you passionate about writing code? How do you know that coding is the right career path for you? Is the work you're doing making you happy? Do you spend too much time sitting and coding, and not enough time exercising? If you are passionate about writing code, how do you balance it with the rest of your life? The word "passion" comes from the Latin word pati: to suffer. If writing code takes over your life, if your passion consumes you, if you do not balance writing code with an active, healthy, sane lifestyle, then you will suffer. This talk explores these questions and pushes everyone to find their own sustainable pace that will allow them to write code for as long as it makes them happy. This talk comes from 10 years of personal experience and lessons learned from trying to balance writing code with staying active and healthy.
Submitted: October 30, 2013 @ 04:34:35 am UTC
Votes: 7
Concurrency has never been a hotter topic in the Ruby community than it is today and it is only going to become more and more important as the breadth and scale of our applications increase. Unfortunately, there is a lot of misinformation about concurrency in Ruby floating around out there and getting started on understanding all of this can be quite overwhelming. Join me in taking you through an overview of the most common concurrency patterns, showing you examples of these patterns in the wild and explaining how concurrency impacts all of us, from the application developers to the gem contributors.
Submitted: October 30, 2013 @ 16:55:15 pm UTC
Votes: 7
Many of us dream about setting our own hours, being our own boss, and shipping code from a beach in Thailand. This is a state beyond a mortal programmer’s existence, I call this state: Consulting Zen. The path to the state of Consulting Zen is long and arduous. It is a path marked by 7 am conference calls, absurd clients, and high stress. In my talk, I will show you how to effectively achieve Consulting Zen. I will share the mistakes I have made on my path so that you will not make the same. I will also share some methods I picked up while working in-house at thoughtbot and ZURB, two leading consultancies. This talk is geared towards those considering becoming independent consultants and consultants who want to improve their craft. This talk is also intended for those who often work with contractors or consultants.
Submitted: October 30, 2013 @ 22:00:38 pm UTC
Votes: 7
This talk describes Softcover, a Ruby-based system for writing and publishing ebooks. Special focus is given to the softcover command-line client for generating, building, and deploying book projects, which dramatically lowers the barrier to publishing ebooks and other digital goods. In recognition of the many entrepreneurs in the Ruby community, the talk ends with strategies to help technical authors make the transition from "writing a book" to "building a product empire".
Submitted: December 02, 2013 @ 21:21:40 pm UTC
Votes: 7
If baseball is America's Pastime, then surely poker is America's Game. An iconic game of the Wild West, today it has lost much of its stigma and emerged as a preeminent game of skill and intellect, dominated by mathematicians, stock brokers, and developers. What has software development brought to this American tradition, and what lessons does poker have to offer us in return? In this talk, I'll give you a crash course in poker, discuss statistics and odds, the psychological aspects of the game, how I use Ruby to improve my poker game, and the business side of managing a career as a professional gambler... and how the skills of one profession can help us understand another.
Submitted: November 03, 2013 @ 23:53:56 pm UTC
Votes: 6
You can't go to a Ruby conference lately without someone banging on about concurrency and thread safety. You're a smart Rubyist, but... you don't get it. You understand the basic idea, you nod along, but once they get into the jargon, what does it all mean? How does it apply to you, and what is it, exactly? This talk will answer those questions, by engaging in a basic primer on concurrency in Ruby, a discussion of actual examples of how it works, and provide you with answers that will leave you nodding in agreement, rather than nodding off.
Submitted: November 03, 2013 @ 23:55:56 pm UTC
Votes: 6
Authors don’t write literary masterpieces on the first draft of a manuscript; they refine their ideas over time. Software developers don’t write a finished, perfect system on the first “draft” of a codebase; they add and refactor code over time to change the existing system. The final product of both groups is more clear, refined and palatable as a result of these “refactorings”. This talk will start by explaining why refactoring is important, give an overview of the pre-requisites for successful refactoring and end with a tour of some common refactorings starting with “extract method” progressing from there. This talk will give both newbies and veterans alike some concrete knowledge that can help their codebases become easier to maintain and more fun to work with in the long run.
Submitted: November 16, 2013 @ 16:47:49 pm UTC
Votes: 6
In this talk I'll show how Ruby code is executed by MRI. This talk is going to be the journey of our ruby code. We will revisit basic computational theory in order to understand all the steps performed by the runtime to get our code executed.
Submitted: December 04, 2013 @ 01:15:53 am UTC
Votes: 6
Code is communication. The more forms of expression we master, the better we can become as developers. Learning to compose effective prose will improving our ability to express ideas to developers and to construct better software. You are already great at using Ruby to communicate your ideas to other developers, and you use html and css to communicate with people using your site. I hope to help you become a better wielder of the written word in the form of blog posts.
Submitted: October 25, 2013 @ 14:58:12 pm UTC
Votes: 5
Rails is a mixture of design patterns, practices, and magic. In this talk, we'll explore how Rails embraces ideas from other frameworks and projects. Active Record was born of Martin Fowler. MVC was the brainchild of Trygve Reenskaug. Rails 3 completely absorbed the Merb project, gaining modularity and extensibility that it previously lacked. We all learn by standing on the shoulders of giants, even Rails. By understanding the inception of design patterns, we are more likely to be able to create ideas of our own. This helps us to not only grow in our own ability, but to help others improve as well.
Submitted: October 25, 2013 @ 14:59:24 pm UTC
Votes: 5
An introduction to the Elixir programming language geared towards Rubyists. We'll cover the basic syntax as well as examine where Elixir and Erlang shine.
Submitted: November 11, 2013 @ 00:01:37 am UTC
Votes: 5
As I write this abstract, Bitcoin has broken 750 dollars/bitcoin, the US government has given it some legitimacy, and the Winklevoss twins are saying it’s the future of money. Bitcoin is a heck of a piece of technology, described by Dan Kaminsky as “alien technology”, this talk will teach you some of the intricate technical details of how the system works.
Submitted: November 18, 2013 @ 22:36:54 pm UTC
Votes: 5
Creating games is crazy fun and dirt simple with Ruby. You will leave this session with a working game; no previous game development experience necessary. We will introduce basic concepts of game programming and show how to implement them using the Gosu library. This includes the game loop, sprites, animation, camera movement and hit detection. We will build a complete game, so you might want to bring your notebook and follow along.
Submitted: November 20, 2013 @ 15:52:24 pm UTC
Votes: 5
Ruby's great and robots are neat, so we'll start off with a survey of robotics in ruby and then dive into some specific, fun projects such as: - Controlling a Sphero and a Parrot AR Drone with ruby - Using JRuby on Android to control GPIO on the Raspberry Pi via drb - Building your own full-stack remote controlled robot using drb.
Submitted: November 10, 2013 @ 23:57:22 pm UTC
Votes: 4
Software projects rarely fail for technical reasons. The icky, gooey human aspects of our teams and organizations regularly present structural obstacles around which a solution simply can't be programmed. "Office politics" deserves much of the derision it receives, but every virtuous person who opts out of it effectively forfeits the organization's future to others—potentially to folks who would use their power malevolently. Developers tend to have several disadvantages when it comes to this arena, but they can be mitigated with greater awareness and can ultimately be overcome with intelligence and leverage. In this talk we'll discuss how to gain awareness of the human systems that govern organizations and—through the use of examples and illustrations—we'll highlight the individual virtues necessary for successfully having an impact on your organization's future that's larger than yourself.
Submitted: November 15, 2013 @ 20:51:13 pm UTC
Votes: 4
Rather than a dry introduction to DI, I'll demonstrate with code some practical techniques to inject your dependencies involving a minimum amount of ceremony. No frameworks or libraries necessary, just a little plain old Ruby code you can write yourself in minutes. We'll see that our code can be * Simpler, with fewer responsibilities * Easier and faster to test * Open to re-use and re-purposing * Loosely coupled to the rest of your system We'll also explore how you might persuade your Rails app to benefit from DI.
Submitted: November 17, 2013 @ 23:42:05 pm UTC
Votes: 4
Why are so many Rubyists buzzing about Go? This hot new language that grew out of Google just a few years ago is taking the world by storm and is generating a lot of buzz in the Ruby community. In this talk we'll look at the highlights of Go and try and figure out what the hype is all about, and we'll do with a keen Rubyist eye. We'll also look at where it would make sense in our Ruby/Rails projects to extend them with this highly concurrent, and performant language. What do you say my fellow Rubyists; are you up for the challenge of learning something a bit different?
Submitted: December 03, 2013 @ 16:16:58 pm UTC
Votes: 4
Ruby is a sweet language, and you can make great web apps with Rails, Sinatra, rack.... Those are all well and good, but there is a whole world beyond the browser. This talk is about that world. Making an API wrapper gem, connecting to a database without ActiveRecord, custom rake tasks, tests, and maybe more. Probably even some spectacular live coding.
Submitted: November 13, 2013 @ 16:11:24 pm UTC
Votes: 3
Data Warehouse in Ruby, why not? I'll demonstrate how we Open Sourced our homegrown ETL engine. I'll show the challenges that we had and how we solved it here at ZestFinance.
Submitted: November 15, 2013 @ 08:19:44 am UTC
Votes: 3
Congratulations! You had a tight deadline to roll out your application. Along the way you had an onslaught of changes and surprise pivots but, you got it deployed and everyone is happy. Well, everyone except for you and the unlucky soul to work on it next. Like it or not, the aggressive deadline, the surprise changes, and the unexpected pivots let technical debt creep into your (initially) thoughtfully planned code base. It happens, but the question is: what are you going to do about it? We’ll be looking at tools to identify rough patches of your code (other than your own feelings of guilt) with examples from stories similar to the one above. Then, we’ll look at things to consider when improving them with a heavy emphasis on object-orientation. Additionally, we’ll look at reducing branching where possible, leveraging the ruby standard library as much as possible, not engaging in premature optimizations, and getting the code to tell a better (or at least readable) story.
Submitted: November 18, 2013 @ 03:15:29 am UTC
Votes: 3
There are few moments in my growth as a developer that are as significant as when I first embraced TDD. This has lead me to think more clearly about the problems I am trying to solve and the code I write to solve them. After working in this context for some time, I began to think that there may be a way to apply the same pattern to things I wished to accomplish outside of software development, so I endeavored to create a test suite for my life. And while this was a ridiculous undertaking that crashed and burned in spectacular and hilarious fashion, it did allow for some satisfying moments of triumph while also leading me to pursue a more thoughtful and contemplative approach to coding. This talk will be to share that experience, the lessons learned, the insights gained in programming, and to encourage everyone to not try this at home.
Submitted: November 18, 2013 @ 03:36:59 am UTC
Votes: 3
Distributed systems are big, in every sense of the word. From the biggest social networks and search engines to the simplest web or iOS application, distributed software causes problems, stemming from its greatest feature: the system should continue working even when parts break. Client applications without network connections still want to capture data, backends with a failed service or two shouldn't break the entire application, and the app should still mostly work even when the big datacenter (you know the one) goes down. How do you grow a simple monolithic Rails app into a distributed system? What does it take to make your UI save data for a network connection later? How do you even test all this stuff? I'll be presenting a survey of concepts, architectures, and experiences, with a few tools that make distributed systems less obtuse.
Submitted: November 22, 2013 @ 22:41:39 pm UTC
Votes: 3
This talk will cover the basics of using AngularJS in conjunction with a Rails application. Specific topics will include connecting Angular to a REST API, using Angular within the asset pipeline, and testing Angular applications within the context of Rails. The talk will also cover the tradeoffs inherent to using a client-side technology in place of the traditional Rails server-side rendering model.
Submitted: November 27, 2013 @ 02:41:24 am UTC
Votes: 3
The state of diversity in open source contributions is abysmal. With the number of female OSS contributors at a shockingly low 1.5% and other groups not even documented, we need to ask what we can be doing better as a community. We’ll discuss the barriers that people face contributing to our open source projects and what we can do to increase participation.
Submitted: December 01, 2013 @ 21:16:18 pm UTC
Votes: 3
In a single weekend in December, 2012, I set out to run my first marathon and start a new job -- my first job as a "principal." Big dreams, and it didn't all work out for me. I woke up feeling sick the morning of the run, and walked off the course at mile 14. Shaken and shaking. I started my new job the next day. I learned a lot my first few months on the job -- languages, techniques, technologies. What I really learned was to be ok with not knowing how to do things. This talk is about working in the lab, and how I learned to be okay with failure.
Submitted: November 13, 2013 @ 16:05:56 pm UTC
Votes: 2
Software engineering teams are becoming the lifeblood of many organizations. They are good at solving the technical problems for a business but that is only half the battle. Does your team have all of the technical hurdles cleared but feel that the team could do so much more? How do you create a sustainable engineering culture that allows the team to operate at their best? This talk provides a common understanding of what sustainable culture is and proposes a simple formula for keeping engineering teams operating efficiently, delivering maximum value to the business and to the members of the team. It will give you real world examples of proven practices that you can use today as well as some guidelines for tweaking the process to help it fit within your organization. It will leave plenty of time for questions so together we can iterate on this important piece of the puzzle for successful engineering teams and the businesses they serve.
Submitted: November 16, 2013 @ 16:48:55 pm UTC
Votes: 2
Do you ever have those days where it seems like your thoughts just wander all over the place? Do you ever have one of those days where it seems like you are unstoppable while developing? The difference between those days is simply a different level of focus. Meditation is a time tested practice that allows us to improve our focus. As we improve our focus, we improve our ability to work more efficiently. As we work more efficiently, the quality of our work improves. This talk will explain who, what, where, why, how and when of meditation in everyday terms. It will present some information about how our brain works. It will explain why focus is so important in the connected world we live in. It will present some simple steps that anyone can follow to improve their focus. Finally, it will try to convince all in attendance that developing software can benefit from a simple meditation practice.
Submitted: November 16, 2013 @ 16:49:54 pm UTC
Votes: 2
Every day you hear about remote work: companies that have decided to ban it completely or those who don't have an office. I've been working remotely over the past year for an LA software company and in this talk I will share the challenges and opportunities of working from anywhere.
Submitted: November 16, 2013 @ 17:22:19 pm UTC
Votes: 2
There are many software development methodologies that invite to write the tests first. Excellent experienced developers recommend this and yet it is still something to be practiced by the majority. * Is it true that brings the benefits that are promised? * What is it that prevents us from doing our daily work? * Is it a waste of time? * Is it even possible in real projects with deadlines? Find out in this talk real experiences on the implementation of this technique on real projects and decide for yourself if you want to give it a try.
Submitted: November 16, 2013 @ 17:26:23 pm UTC
Votes: 2
Let's leverage themes in _Pacific Rim_ to expand our understanding of __Pair Programming__. - discover your personal definition of _drift_ compatibility. - which tools will help you adapt to a new partner. - how to leverage non-verbal forms of communication. - configure your cockpit. - working together to make the most of your _Jaeger_. While we battle with our software _Kaiju_ we'll reference studies on pair programming and anecdotes from full-time _Jaeger_ program pilots to give us an edge. Like any good discussion of strategy, we wouldn't be diligent in our study without addressing when the program works and when it falls short.
Submitted: December 02, 2013 @ 03:18:28 am UTC
Votes: 2
By now, we've all written JSON APIs in Rails. But how do you write fast, testable and sane APIs? I'll guide you through the trials of designing and building awesome, scalable APIs. We'll cover rails-api, active model serializers, and all the associated goodness that our ecosystem has to offer. I'll speak on the approaches to authentication, versioning and how to ensure we remain good REST/HTTP citizens.
Submitted: December 03, 2013 @ 14:46:12 pm UTC
Votes: 2
Becoming a well sought after and "better" developer is easier than you think. There are no tonics or elixirs you can take that will instantly make a desirable engineer, but there are easily defined steps to that goal. In this talk we will discuss the different avenues that are at your disposal to become a better developer. These achievable steps have led me to a successful software development career, and they can help you too. This is not a get rich quick scheme, there is sweat and hard work involved, but it'll fun. So let's get better!
Submitted: December 03, 2013 @ 16:14:22 pm UTC
Votes: 2
In Ruby 1.9 the MiniTest testing framework was introduced. This lightweight testing framework is fast, powerful, and easy to understand, yet so many people over look it. In this talk we'll look at using MiniTest in a simple, non-Rails, project and then work up to using it in a Rails application. We'll look at both the TestUnit and RSpec style syntaxes that MiniTest offers. We'll also learn to write custom matchers, run specific files, and much more. Testing is important to all Ruby developers, and with such a powerful testing library already bundled with Ruby, shouldn't we learn how to use it?
Submitted: December 03, 2013 @ 16:14:38 pm UTC
Votes: 2
Writing modular applications can speed up development time, ease testing, and make deployments faster. Sinatra is an excellent tool to augment Rails with. We'll take a look at what Sinatra is and how well it plays with Rails. We'll look at mounting Sinatra applications in Rails, creating Rails Engines with embedded Sinatra apps, and more. This powerful micro-framework is the perfect companion to Rails, so let's see when, where, and how to use Sinatra with Rails.
Submitted: December 03, 2013 @ 16:14:59 pm UTC
Votes: 2
Logic programming has its niche of application or problems at which is useful. Prolog is probably the most representative language for logic programming. With this talk I want to show to the audience what are the fundamentals of logical programming using Ruby. The goal of the talk is just to show that some problems can be solved with a different thinking.
Submitted: December 04, 2013 @ 00:19:16 am UTC
Votes: 2
"That's stupidly awesome" or "You're such a jerk :)" The above is obviously positive, but how would you train a computer to figure that out? So much of our language is contextual and has subtle hints of sentiment that this is a tough problem in natural language processing. Though there is an algorithm called Support Vector Machines that can find a close solution! And there's a Ruby library for you to use as well! Join us for this talk where we'll go detecting sentiment in movie reviews using support vector machines.
Submitted: December 04, 2013 @ 19:24:14 pm UTC
Votes: 2
There's a game online called Prof or Hobo? (http://individual.utoronto.ca/somody/quiz.html) where you answer a quiz to see whether the picture is a Professor or Hobo. While that's all fun and games, what if we were to take a more machine learning slant on facial classification? Namely how would someone build a tool to detect things like whether the person had facial hair, or glasses. This talk will explain how to build a tool to determine whether someone has facial hair, wears glasses and uses a simple to understand algorithm called K-Nearest Neighbors (KNN). We'll explain how these things work and by the end of it you'll know more about computer vision, and simple machine learning classification.
Submitted: December 04, 2013 @ 19:31:31 pm UTC
Votes: 2
Is your mobile app getting more and more users everyday? Feeling you need some server-side resources and you don't know a good way to create your backend? This talk can help you on this task by showing you how to use Ruby with some frameworks to solve your backend problems for mobile apps! Mobile applications have been getting popular and popular as the days passes by. But behind great mobile apps... there's a nice backend application. Ruby is a nice way to develop backend application for mobile environments. This talk will show nice tips for building backend apps for your mobile applications in a fast and easy way. Some topics of the talk: - Mobile apps - do I need backend? - Is it a good idea to use Ruby to create my app? - Push notifications - dealing with messages - Helios tools - a nice way to deal with iOS apps
Submitted: December 05, 2013 @ 14:43:48 pm UTC
Votes: 2
Redis is a data structure server, but yet all too often, it is used to do simple data caching. This is not because its internal data structures are not powerful, but I believe, because they require libraries which wrap the functionality into something meaningful for modeling a particular problem or domain. In this talk, we will cover 3 important use cases for Redis data structures that are drawn from real-world experience and production applications handling millions of users and GB of data: * Leaderboards – also known as scoreboards or high score tables – used in video games or in gaming competition sites * Relationships (e.g. friendships) – used in “social” sites * Activity feeds – also known as timelines in “social” sites The talk will cover these use cases in detail and the development of libraries around each separate use case. Particular attention for each service will be devoted to service failover, scaling and performance issues.
Submitted: December 05, 2013 @ 19:49:42 pm UTC
Votes: 2
Oh what a magnificent edifice! A hundred thousand lines of code and another hundred thousand of tests. There were just a couple of small problems: nobody understood the whole system anymore and everybody had to coordinate their work in that one codebase to get anything done. This is the story of taking New Relic from a single giant Rails app and starting to break it up into those "services" you've heard so much about. The story is about technology and tools, but it's also about teams. Conway's law reminds us that if you want to modularize your software, first you must modularize your organization.
Submitted: December 07, 2013 @ 07:50:36 am UTC
Votes: 2
Why does a team of smart people end up with a messy code base over time? We use great technologies and methodologies, but the reason for the mess often comes down to human nature. Broken Windows theory explains how seemingly little problems can provide the foundation for a future disaster. People often unconsciously don't fix things because they think it’s ok to keep it messy, but these "broken windows" can lead to a whole host of bigger issues in your code base. This presentation shows how Broken Windows theory can be applied to Software Engineering. It shows how to deal with broken windows in our software, deliver value and keep programmers happy.
Submitted: November 06, 2013 @ 00:20:12 am UTC
Votes: 1
You write good code. You knock out features and maybe play around with new shiny sometimes. How often to do write code that you don't want to ship? How often to you explore and experiment? I'm talking about practice, the value of it and some ideas on how to go about it.
Submitted: November 13, 2013 @ 20:17:34 pm UTC
Votes: 1
I transformed my office building into an airport using a combination of Ruby, Objective-C, and a number of hardware hacks. The goal was to prototype a better in-airport experience using a mixture of GPS and iBeacon technology to establish precise indoor geolocation. This talk will run down the various stages of the project, an overview of outdoor vs indoor location technologies, and how the iPhone (and Android) devices currently handle location. I'll also discuss how I built a robust Ruby backend, and how I hacked some hardware together to create iBeacons.
Submitted: November 20, 2013 @ 23:05:43 pm UTC
Votes: 1
DEF CON Capture the Flag is the world series of computer hacking, with hundreds of teams from all over the world trying to qualify, and a select few competing on site in Las Vegas. For our first time hosting this event, we picked a Ruby-based stack running the game, which has teams attempting to defend their network services while hacking opponents' and stealing secrets. What's involved in competing in DEF CON CTF? How did we build two complete competitions in five months? What kind of teams survive the experience?
Submitted: November 22, 2013 @ 22:43:31 pm UTC
Votes: 1
What is the best way to approach a technical problem ? To solve it manually or to come up with the tool that does the job for you? It depends. We'll look at the problem at different angles. Solving the problem on a small vs a large scale. Automated vs manual testing. We need to use every technique wisely since every approach has the different cost. We'll choose the best tool for the job. But most importantly, there’s going to be a lot of pictures of funny cats ;)
Submitted: November 24, 2013 @ 20:10:43 pm UTC
Votes: 1
Although my work lives in the browser, I spend a lot of my time on the command line, and I have found that investing in my control over this environment to be a huge productivity boost. This talk will cover the various Unix utilities I use daily with a focus on Vim, tmux, git, and zsh. It will cover both specific enhancements and tips for those tools, as well as the more general approach I take to extending and improving my use of these tools over time.
Submitted: November 27, 2013 @ 02:39:51 am UTC
Votes: 1
Introduced in Ruby 2.0, TracePoint is meant to help developers better instrument their code for debugging and performance reasons, but there's more to TracePoint than that! In this talk we'll learn about TracePoint while building several example projects. Once we know the basics we'll use TracePoint to do things to Ruby that we couldn't have done otherwise. By the end of this talk you'll be able to frighten and amaze your friends when you show them things like true abstract classes and interfaces in Ruby, just like Java! Yikes!
Submitted: December 03, 2013 @ 16:13:59 pm UTC
Votes: 1
Neural networks are an excellent way of mapping past observations to a functional model. Many researchers have been able to build tools to recognize handwriting, or even jaundice detection. While Neural Networks are powerful they still are somewhat of a mystery to many. This talk aims to explain neural networks in a test driven way. We'll write tests first and go through how to build a neural network to determine what language a sentence is. By the end of this talk you'll know how to build neural networks with tests!
Submitted: December 04, 2013 @ 19:25:48 pm UTC
Votes: 1
Tired of endless web frameworks? Let's hit some pipes, count out a few datagrams and dig around in a Unicorn's guts to see where the magic is. Although admittedly unpopular as a systems programming language, Ruby is a good place to learn and experiment with unix sockets. It turns out that it can be practical too! Using the Unicorn HTTP server and the New Relic Ruby Agent as examples we'll see how knowing your tools can help make impossible problems into easy ones.
Submitted: December 07, 2013 @ 07:19:43 am UTC
Votes: 1
It's a known fact that language models the way we think but, how do programming languages do that with the programmer? There are two forces fighting each other inside a programmer: The hacker who wants to do things fast with a "ship it" attitude but at the risk of creating crappy code and the perfectionist who looks for the most elegant solution, but at the risk of suffering "analysis paralysis". How Ruby allow us to achieve balance between both approaches? This talk is not about how I program in Ruby, is about how Ruby "programmed me" influencing my way of thinking about problems and my approach to problem solving.
Submitted: December 07, 2013 @ 17:41:44 pm UTC
Votes: 0
Submitted: January 04, 2014 @ 01:36:14 am UTC
Votes: 0
Welcome to the 6th Annual LA Ruby Conf
Submitted: January 12, 2014 @ 21:19:34 pm UTC
Votes: 0
Submitted: January 12, 2014 @ 21:20:16 pm UTC
Votes: 0
Submitted: January 12, 2014 @ 21:20:52 pm UTC
Votes: 0
Submitted: January 12, 2014 @ 21:31:44 pm UTC
Votes: 0