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 Evan admits that he has a low tolerance for frustration. Having been frustrated a great deal during his career, Evan will discuss several anti-patterns that he has seen in code and how to use the Dark Side of the Force (frustration, anger, and rage) to escape from them.
“Programmers Love Writing Tests” is the subtitle of one of Kent Beck’s first articles about Test-Driven Development. I don’t think I’m alone in being drawn to TDD at first because it was fun. The quick and consistent feedback and the ability to turn complicated problems into a series of smaller problems to be solved made TDD development seem more like a game than work.
Eventually TDD became less fun. Slow tests made running test suites a cruel joke. Test code gets bulky, and is hard to refactor because, of course, tests don’t have their own tests.
Let’s fix that. We’ll show some notorious testing joy-killers, like slow tests, hard to read tests, tests that paper over bad designs rather than driving new ones. And we’ll squash them, and regain testing delight.
It takes more than talent to make a great product. You also have to focus on the right things, in the right order, with the right people at hand. Ryan will explain key points for successfully developing product so you can make the most progress on your big idea. The talk will cover common pitfalls, techniques for seeing the bigger picture, and advice on how to bring the different roles together.
Today our presenter will take us out of our comfort zone. This talk could be titled, “Ruby Eye for the Sys-Admin Guy”. Or even “Sys-admin Glamour, While Using Ruby Hammer”, but it isn’t. Do you want to be a better UNIX command line person? Do you still want to use Ruby? If so, this talk will give you insights on how to level up at both. Expect tips and real world anecdotes on how to be even more awesome at your keyboard.
There was a time when knowing one language provided you with a life-long career. There was a time when technical prowess alone determined your value to the company. An excellent developer was an expert in their language and tools, relegated to an enclosed room, cranking code to meet specifications. Today, possessing only these traits can leave you at risk. In another few years, possessing these traits alone will likely leave you jobless. What does it take to be an excellent developer in today’s fast-pace collaborative work environment?
How does one learn to build a web application if you’ve never built one before? Once we have grasped the essentials, how do we elevate our game to the next level? In an era of a seemingly permanent talent shortage, how can organizations sensibly invest in less-experienced developers and help them grow?
It turns out that in spite of the challenges, there are practical things we can do, both as individuals, organizations, and open source communities, to continually grow in both skill and perspective. In this talk I’ll explore time-tested strategies that create a culture of learning, enhance a developer’s skills, and help beginners move into environments where they can be most productive.
RSpec aims to help you focus on the design and documentation aspects of the testing process. This starts with artifacts like spec files and reports, but there are also several features that deal with workflow. This talk will cover some syntax, but will also cover runtime tools like custom reporting, metadata, filters, that can not only make the artifacts more useful, but also make the process more productive and enjoyable as well.
We spend most of our times obsessing about the actual act of programming. Is this method name too long? Should I refactor this code? How do I fix this bug? However, sometimes, large gains can be made by drawing in experience from totally different fields.
Steve Klabnik thinks there’s a lot a programmer can learn from the study of epistemology, logic, metaphysics, moral and political philosophy, and aesthetics. In this talk, Steve will give an overview of a bunch of interesting thinkers, philosophical problems, and how they relate to the worlds of software development, open source, and startups.
Feeling adventurous? Not sure which topic interests you? Come join the fun and go on an adventure with me! There are 10 different topics running about 5 to 10 minutes each. We won’t have time to cover them all so you get to help decide what gets covered. As we go along the audience is encouraged to ask questions.
It’s easy to look at Ruby on Rails, built in 2004 around the idea of making server-side HTML generation easier, as an outdated server-side framework. Why bother with something like Rails when you can roll your own using Node or Sinatra and jettison the baggage of ActionView?
The truth is, starting with the embrace of REST in Rails 1.2, Rails has evolved into an extremely capable API server. In fact, Rails is more an HTTP framework than an HTML framework. The Rails plugin architecture makes it easy to share code across applications that hooks into all parts of the Rails application lifecycle (generators, rake tasks, initialization, logging, and a whole lot more), and Rails the 3.2 asset pipeline extends the plugin infrastructure to make it easy to hook your client-side code into the same lifecycle.
In this talk, Yehuda will cover the benefits of using Rails when the client is managing the view part of your application. He will also cover built-in (but little-known) features of Rails, like seamless HTTP caching support, that come in handy when building any HTTP server, even if your client is an iPhone app. Finally, he will talk about how the Rails 3 plugin API, and the way people use it for all kinds of things makes Rails stand out for any kind of application.