uk: Комп'ютерні науки

description: Great storytelling feels almost impossible at times, yet week in and week out, for over 30 years, the jacked-up men & women of World Wrestling Entertainment have been doing it, five minutes at a time. No back-story, little dialog, and a live crowd that knows it's all scripted. Yet, they get the audience invested in the outcomes almost every time. Sound impossible? Pro-wrestlers know the essence of great storytelling—called “ring psychology”—and have used it for decades.

uk: вхід без авторизації

name: Storytelling via the Psychology of Professional Wrestling


Colin Fulton

type: Person

cs: Informatika

de: Informatik

fi: tietojenkäsittelytiede

uk: Комп'ютерні науки

en: Computer Science

fr: Informatique

da: Datalogi

es: Ciencias de la Computación

nl: Informatica

cs: Technické vědy

de: Ingenieurwissenschaften

fi: tekniikka

uk: Інженерія

en: Engineering Sciences

fr: Ingénierie

da: Ingeniørvidenskab

es: Ingeniería

nl: Engineering

description: Did you know that the time machine in your text editor is probably broken? Better yet, have you considered that your text editor has a time machine? The majority of our day is spent in a text editor, but most never think about how they really work. There is a lot more to an editor than saving a few keystrokes or the rivalry between Vim and Emacs; they can teach us about data structures, IO, design, and the dangers of time travel. Let's take a closer look at some of the most enduring applications, and see what we can learn by trying to build a better editor using Ruby.

TIB AV-Portal

type: Service

type: WebContent

type: MediaObject

@language: en

cs: přihlášení není vyžadováno

de: keine Anmeldung erforderlich

uk: вхід без авторизації

en: no login required

nl: geen login vereist

name: String Theory and Time Travel: the humble text editor

Confreaks, LLC

type: Organization

cs: Video

de: Video

fi: Video

uk: Відео

en: Video

fr: Vidéo

da: Video

nl: Video

es: Video


Tagging your world with RFID

uk: Комп'ютерні науки

description: Come learn all the wonderful uses of UHF RFID tags and how Ruby makes it easy to read, write and deploy real time asset tracking systems. RFID tags can be read from 30 or more feet away and easily integrated with a variety of existing systems with a low barrier to entry. By the end of this session, you'll learn how to track your pets, clothes, keys, and even make a tool that assists with your grocery shopping.

uk: вхід без авторизації


The Art of Ruby Technical Interviews

uk: Комп'ютерні науки

description: So, you want to be a Ruby developer? You've attended a bootcamp, read the books, and completed online courses. You're ready to start building great things. But the technical interview process can be a challenge for new Ruby developers. I'll teach you how to prepare, practice and give you techniques to answer tough questions.

uk: вхід без авторизації


The Hitchhiker's Guide to Ruby GC

uk: Комп'ютерні науки

description: When Ruby programs slow down, the usual culprits—database queries, superlinear time complexity—aren't always the real problem. Ruby's object space and garbage collection are a surprisingly rich and oft-misunderstood area of the language, and one where performance issues can easily hide. This talk is a brief but deep dive into the history and details of garbage collection in Ruby, including its evolution, parameter tuning, and a case study using the Unicorn web server.

uk: вхід без авторизації


The Joy of Miniature Painting

uk: Комп'ютерні науки

description: As developers, we often stare at a computer screen all day only to come home and stare at more glowing boxes all night. Having a productive, nontechnical hobby can really help to keep us sharp for our day jobs. You'll watch me live-paint a small model for a game called Warmachine while I describe some of the techniques I use. You'll hear about how painting has helped me to clear my mind after work, keeping me away from burnout I might encounter if I wasn't exercising a different brain lobe. Afterward, I'd love to chat about painting and playing games.

uk: вхід без авторизації


The Math Behind Mandelbrot

uk: Комп'ютерні науки

description: One day in my high school classroom I heard a student ask "What is 'i' good for anyway? I mean, is it a concept that's useful in the real world?" I jumped at the chance to explain the Mandelbrot set. Come with me on a journey to understand how infinite complexity can arise from a few simple rules. Infinity will fit inside your head, and you'll feel like you just learned one of the Great Secrets of the Universe. If you can multiply, you'll understand all the math in this talk.

uk: вхід без авторизації


The Not So Rational Programmer

uk: Комп'ютерні науки

description: Cognitive biases are heuristics that the brain uses to process information and quickly come up with decisions. They are generally pretty useful, but they aren’t perfect processes and can often lead to suboptimal decisions or behaviors. This talk will help you to recognize their patterns in your thinking and behavior and (since we unfortunately can’t quite de-bug our own brains yet) to monkey-patch them - in order to become a more efficient, more cooperative and ultimately more successful developer.

uk: вхід без авторизації


The Seven Righteous Fights

uk: Комп'ютерні науки

description: There are seven fights that I have over and over again, whenever I start at a company. I'm here to convince you that it's valuable for everyone to have these things in mind from the inception of a project. Having these fights early prevents you from doing the software equivalent of poking chocolate chips into an already-baked cookie

uk: вхід без авторизації


uk: Комп'ютерні науки

description: When you type print "Hello, world!", how does your computer know what to do? Humans are able to naturally parse spoken language by analyzing the role and meaning of each word in context of its sentence, but we usually take for granted the way computers make sense of the code we write. By exploring the way our brains construct grammars to parse sentences, we can better understand how parsers are used for computering -- whether it be in the way Ruby and other languages are implemented or in webserver routing -- and recognize when they may be the right tool to use in our own code.

uk: вхід без авторизації

name: Time flies like an arrow; Fruit flies like a banana: Parsers for Great Good


uk: Комп'ютерні науки

description: We’ve worked to improve security in MRI for a variety of security critical applications, and will describe some of our successes and failures in terms of real-world applications and their various runtime environments. We will describe some of the security principles that guide our work, and how they fit in with the ruby culture. We will also introduce some objectives we have moving forward to improve ruby’s security, and ways we’d like to engage the community to help.

uk: вхід без авторизації

name: Using Ruby In Security Critical Applications


uk: Комп'ютерні науки

description: Many Ruby domain-specific languages go for beauty over usability - and it shows, when you try to use them. But one of programming's oldest, most common DSLs - regular expressions - is both as ugly and as persistent as a cockroach. What makes regexes tick? By breaking down their design, we'll learn concrete principles that go deeper than "Englishy:" principles like "composability" and "deep domain integration." We'll learn how to get precise about the API design and boundaries of our DSLs. We'll write a micro-DSL that is usable without monkeypatching.`

uk: вхід без авторизації

name: s/regex/DSLs/: What Regex Teaches Us About DSL Design


Why is nobody using Refinements?

uk: Комп'ютерні науки

description: Refinements have been a feature in Ruby for several years now, added as a more structured alternative to the "scourge" of monkey patching, but it seems like almost nobody is using them. My question is this: why not? Are they a bad idea? Are they broken? Or do we just not understand them? Let's figure out once and for all what refinements are good for, and what their limitations might be, so that future generations can either use them for glory, or rightfully ignore them forevermore.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Your code is your partner. It struggles against you, but also alongside you. Your code comes to you as it is, not as you wish it were. Like a real-life partner, it has a history that you’ll never fully know; like a real-life child, it bears your imprint, but it is wild, unruly, and fiercely self-sovereign. You’ll never stop working with code that’s hard to figure out or difficult to change. But this code, this stubborn creature, is entrusted to you. Let go of your anger at the developer who wrote it. Let go of the terror of being blamed for its unforeseeable regressions.

uk: вхід без авторизації

name: Working Compassionately with Legacy Code


uk: Комп'ютерні науки

description: Have you ever wondered how to use all of your cores? The talk will take you on a path of writing a simple concurrent class. We'll start with a basic implementation and gradually improve it based on presented problems and newly learned facts. Our final solution will behave well in the face of concurrency and execute consistently on all Ruby implementations. We’ll investigate various Ruby runtime differences that we’ve abstracted away with the synchronization layer of the concurrent-ruby gem. We'll go down to JRuby extensions, even volatile fields and compare-and-swap operations.

uk: вхід без авторизації

name: Writing concurrent libraries for all Ruby runtimes


Your own 'Images as a Service'

uk: Комп'ютерні науки

description: The average web page size is greater than 2MB, and increasing. And great swathes of that are images. Serving the right size of image can vastly improve the experience for your users. But while we're arguing about whether Rails is slow or not we're chucking vast images at peoples phones over EDGE connections. Serving images should be a 'solved' problem, just like it is for 'hosting' or authentication. However lots of solutions make poor default suggestions. What can we do for our users with 100 lines of code, Sinatra, a single gem and a CDN?

uk: вхід без авторизації


uk: Комп'ютерні науки

description: There's more to being a successful developer than simply being great at programming. The gotchas that slow us down or trip us up are often outside of the code we write, manifesting instead in our process or how we work with our peers. Whether you're new to programming or a veteran of many projects, these 5 things can improve your code, your career, and your team, and is a refresher course on what goes into the day-to-day, reminding us to have some empathy for individuals new to our community.

uk: вхід без авторизації

name: 5 Things I Wish Someone Had Told Me About Programming Before I Started


uk: Комп'ютерні науки

description: Do you do web development in Ruby? Have you been forced to go to node or other technologies just for concurrency/websockets etc. Do miss your gems, and tire of functionality you have to implement from scratch? Do you hate javascript? Well no need to switch languages/platforms, Jubilee could be your new best friend. Jubilee, a rack server on top of Vert.x gives you Concurrency Speed Easy Websockets support Shared Memory Access to the JVM ecosystem Ability to reuse your existing Ruby knowledge and gems "Say Hello to your new friend" - Al Pacino

uk: вхід без авторизації

name: 6 Reasons Jubilee Could be a Rubyist's New Best Friend


A Lever for the Mind

uk: Комп'ютерні науки

description: Our brains are great at social interaction and pattern matching, but terrible at reasoning about the complicated non-human systems which dominate our world. Abstraction is the adapter between the fearsome complexity of the universe and our simple primate minds; when the real world is too intricate for us to manipulate directly, abstraction gives us big friendly levers to pull instead. I’ll explain how this single powerful idea underlies computers, mathematics, language and everything else we rely on in our daily work as computer programmers, and then show you how to use it effectively.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Ever type 'next' into your debugger and then realize you should have used 'step'? Or perhaps invoked a method that you wish you could take back? Regret no more! Just turn the clock back a few ticks and begin again! With only a few restrictions and side-effects we will learn how to construct and use a time machine. WARNING: Time travel may cause zombies.

uk: вхід без авторизації

name: A Partial-Multiverse Model of Time Travel for Debugging


A World Without Assignment

uk: Комп'ютерні науки

description: In Ruby, assignment is our primary tool. By contrast, functional programming makes much less use of assignment and mutation. Instead techniques like function composition, recursion, and anonymous functions are used. Despite being OO, Ruby accommodates pure functional approaches. This talk will demonstrate how tasks can be accomplished without assignment. Ruby and Scheme will be used for examples. I'll also discuss some of the great resources available for those interested in digging deeper into functional programming.

uk: вхід без авторизації


Affordances in Programming Languages

uk: Комп'ютерні науки

description: A good design communicates the intended use of the object. In the physical world, this communication is accomplished by "affordances" as discussed by Donald Norman in "The Psychology of Everyday Things". Programming languages also have affordances, and they influence the kinds of solutions we develop. The more languages we know, the more we "expand our design space" so that we can come up with better solutions to the problems we face every day. We will look at a few example problems and show how they can be solved using the affordances provided by different languages.

uk: вхід без авторизації


An Introduction to Spies in RSpec

uk: Комп'ютерні науки

description: Spies are a relatively new feature in RSpec. In this tutorial-style talk: we'll look at what spies are, how spies work in RSpec and how one can write better tests with spies. We'll work through some of examples of writing new tests with spies, improving old tests with spies and the reasons why spying is a useful tool for your testing practice. If you're new to RSpec and looking for ways to improve your testing practice, understand the library better or just ask some questions, this session will be great for you.

uk: вхід без авторизації


Benchmarking Ruby

uk: Комп'ютерні науки

description: Testing is firmly ingrained in our culture, and many of us rely on a network of services to test, evaluate and profile our code. But what about benchmarking? Learn tips and tricks about how to approach benchmarking and the variety of gems that are available. Learn about tools to help determine algorithmic complexity of your code, as well as how this information can help you make development choices. Learn how to properly set up your benchmarking experiments to ensure that the results you receive are accurate. More importantly, discover that benchmarking can be both fun and easy.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: As software becomes less monolithic and more service-oriented, log collection becomes a real problem. How can we stop hacking together brittle log parsing scripts and start building a unified logging layer? Fluentd is a data collector written in Ruby to solve this problem. Unlike other log management tools that are designed for a single backend system, Fluentd aims to connect many input sources into several output systems. This talk surveys Fluentd's architecture and shows real-world use cases of how different users extend it to do more with their logs with less code.

uk: вхід без авторизації

name: Build the Unified Logging Layer with Fluentd and Ruby


Building Your API for Longevity

uk: Комп'ютерні науки

description: One of the greatest challenges to developing an API is ensuring that your API lasts. After all, you don't want to have to release and manage multiple versions of your API just because you weren't expecting users to use it a certain way, or because you didn't anticipate far enough down the roadmap. In this session we'll talk about the challenge of API Longevity, as well as ways to increase your API lifecycle including having a proper mindset, careful design, agile user experience and prototyping, best design practices including hypermedia, and the challenge of maintaining persistence.

uk: вхід без авторизації


Chat Robots Next Level Tooling

uk: Комп'ютерні науки

description: Developers are lazy! So we are great in creating tooling for our daily work. But it has its weaknesses, we are creating a tons of scripts on our local maschine, sometimes we share them via git or other vcs systems. But all over all this tooling sucks when it comes to collaboration. We developers also love hanging out in chat rooms like campfire or jabber. Why not combine this via chat robots. Our tooling would be available to everyone without installing wired shell scripts plus we can get rid if questions like: Do you have the deploy lock?

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Docker’s lightweight virtualization may supplant our hypervisor-backed VMs at some point in the future, and change the way that tomorrow's Ruby applications are architected, packaged and deployed. Using Docker, your Ruby applications will sit atop an excellent platform for packing, shipping and running low-overhead, isolated execution environments. You will get a brief intro to the Docker ecosystem, get to know the tools and processes needed to create containerized Ruby applications, and learn best practices for interacting with the Docker API from Ruby.

uk: вхід без авторизації

name: Containerized Ruby Applications with Docker


Deoptimizing Ruby

uk: Комп'ютерні науки

description: Ruby is notoriously difficult to optimize, but there is a solution: deoptimization. This means jumping from compiled code back to an interpreter, and it allows Ruby implementations to take shortcuts, make guesses and pretend Ruby is simpler than it is, but at the same time still be ready to handle the full language if it’s needed. You’ve seen talks about what makes Ruby slow: monkey patching, bindings, set_trace_func, object space & so on. We’ll show how with a Ruby implementation using deoptimization, such as JRuby+Truffle, you can use these features without any runtime overhead at all.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Messy code often begins with a simple "if". Continuing down that path is a road to ruin, but there's a simple way to avoid it. East-oriented Code is an approach that helps you follow Tell, Don't Ask. It guides you away from Feature Envy and toward better encapsulation. See before and after code and walk through easy to repeat steps that will make your Ruby programs better and easier to maintain.

uk: вхід без авторизації

name: Eastward Ho! A Clear Path Through Ruby With OO


Easy rewrites with ruby and science!

uk: Комп'ютерні науки

description: Ruby makes it easy to prototype a new data model or codepath in your application and get it into production quickly to test it out. At GitHub, we've built on top of this concept with our open source dat-science gem, which helps measure and validate two codepaths at runtime. This talk will cover how we used this gem and its companion analysis gem to undertake (and complete!) a large-scale rewrite of a critical piece of our Rails app -- the permissions model -- live, side-by-side, and in production.

uk: вхід без авторизації


Enumerable for Fun & Profit

uk: Комп'ютерні науки

description: Let's peek under the hood of the the Enumerable module, a goldmine of examples of the power and flexibility of Ruby. Although some of Enumerable's methods are familiar from workhorse Ruby data structures such as Array and Hash, there are tons of hidden gems, including cycle, lazy, partition, and grep. Mastering the ins & outs of Enumerable will save you time, avoid bugs, and help you write clearer and more concise code. Join the author of the Ruby on Rails Tutorial on a journey through one of the most captivating and illuminating modules in Ruby's Standard Library.

uk: вхід без авторизації


Epic Intro Music: BLE Beacons and Ruby

uk: Комп'ютерні науки

description: Would you like to stroll into the office to your own dramatic theme music? We can arrive in style with an epic score. Learn how to use RubyMotion, a Raspberry Pi and iBeacon Technology to play the Imperial March when the CEO walks in. The ability for mobile devices to detect their proximity to beacons is relatively new. We will learn how they work, the common gotchas, and how to integrate with a bigger system. Let's build something fun with Ruby and Beacons. Plus, who doesn't want an awesome theme song?

uk: вхід без авторизації


uk: Комп'ютерні науки

description: It's 2015... your stakeholders have decided that PayPal is out and Stripe is in. Fortunately, you're a planner. You have all of your PayPal interactions isolated in an adapter gem and your interface is clearly defined, easy to re-implement and enforce. Rewriting your adapter isn't small, but it is surmountable and can be estimated accurately so it won't lead to surprises. You win. This talk will cover a collection of best practices for defining, enforcing and test-driving the adapter for your 3rd party service to provide easier flexibility in the future.

uk: вхід без авторизації

name: Future-Proofing Your 3rd Party Integrations


Going Evergreen

uk: Комп'ютерні науки

description: Consultants divide projects between greenfield and brownfield projects, and talk about this evolution from green to brown as inevitable. It's not true. Large evolving software projects can stay easy to change, easy to grow, easy to reimagine throughout their long lives. This talk explores the code and social practices that make this kind of project succeed.

uk: вхід без авторизації


Going the Distance

uk: Комп'ютерні науки

description: If you've ever misspelled a word while searching on Google, you've benefitted from decades of distance algorithm development. In this talk we'll break down some popular distance measurements and see how they can be implemented in Ruby. We'll look at real world applications with some live demos. It won't matter if you get your kicks "Hamming" it up, if you drink your coffee in a "Levenshtein", or if you're new to Ruby: this talk is Rated R, for "all Rubyists". You'll be guaranteed to walk away with O(n^n) expectations met.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: In this end-to-end discussion about the challenges with civic data, from no-documentation & incomplete government code to figuring out how to scale data-driven SOA, we'll show you how two Ruby newbies managed to create an awesomely useful parking app in just four weeks. For those new to coding, or experienced devs looking to work with civic data, we'll show you our roadmap as well as what we learned pairing as two junior developers just starting out in the big bad world of programming.

uk: вхід без авторизації

name: 'Good Luck With That' : Tag Teaming Civic Data


uk: Комп'ютерні науки

description: What do you do when your Ruby startup takes off and you realise that Ruby might not be best suited for everything? This talk covers our initial attempts to use Ruby as a data analytics platform, and how we ultimately ended up solving the problem using ideas from LISP and ActiveRecord scopes to bring the power and performance of data science languages to Ruby. We will also cover how Ruby can learn from other languages, and why Ruby is still our language of choice.

uk: вхід без авторизації

name: Harnessing other languages to make Ruby better


uk: Комп'ютерні науки

description: Do you know how addition works in Ruby? It's simple right? You just add 2 and 2 and out pops 4. But what if you add 2 to cats? That makes no sense, but how does Ruby know it makes no sense? And what if you had a Really Good Business Reason for adding 2 and cats. To achieve the needed degree of cuteness, you're going to need to be positively cat-like yourself. In this talk you'll learn about the magic of the coerce method, and that can't be coerced into Fixnum isn't a warning, but a dare, and what you can do to make your coworkers, collaborators and future self regret it.

uk: вхід без авторизації

name: 2 + Cats = 4 * Cute: How Math Works in Ruby


Incremental GC for Ruby Interpreter

uk: Комп'ютерні науки

description: In this presentation, I will talk about incremental GC algorithm for Ruby interpreter. Ruby 2.1 has Generational GC algorithm, which improves GC performance dramatically. However, long application pause time problem on major GC is not solved. To overcome this problem, we Matz team at Heroku, Inc. implemented a well-known incremental GC algorithm into MRI/CRuby interpreter to reduce application pause time without any compatibility issues, with our "write-barrier-unprotected" objects technique. In this talk, I will explain the algorihtnm, implementation and evaluation results about new GC.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: As single page apps become common, more and more of our logic becomes duplicated between the front and back-end. We also spend more time writing API glue code to move data between each side. With isometric development you can remove the boilerplate of web development and the cognitive load of switching between languages. Existing isomorphic web frameworks run JavaScript on the server. Volt lets developers write their app code in ruby and have it run both in the browser and on the server. Data is automatically synchronized to remove the need for REST API development.

uk: вхід без авторизації

name: Isomorphic App Development with Ruby and Volt


It's so quiet. Let's make music.

uk: Комп'ютерні науки

description: Ruby is used for a lot of things, but for some reason, only a few people are using it for music. In a language that is meant to make programming fun, the lack of such creative code is scary. Let's fix the current landscape by learning how to use the tools available in Ruby (and some not) to let those creative juices flow. We will be focusing on how to build sounds from the ground up (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.

uk: вхід без авторизації


JRuby 9000

uk: Комп'ютерні науки

description: JRuby 9000 is the largest update to the JRuby platform during its lifetime. We will support Ruby 2.1 (or perhaps 2.2) features, replace our execution pipeline with a new optimizing compiler, support true native IO and Process logic, and finally bring character transcoding in line with MRI. At the same time, people are building more and more amazing things with JRuby. In this talk, we'll unveil JRuby 9000 and talk about the future of JRuby and Ruby.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: We will explain the introduction of the Smalruby and the Ruby Programming Shounendan, For more information about the implementation of the smalruby-editor of the Ruby programming visual editor.

uk: вхід без авторизації

name: Kids, Ruby, Fun!: Introduction of the Smalruby and the Ruby Programming Shounendan


uk: Комп'ютерні науки

description: Haskell is a functional programming language that cleanly separates pure algorithms from messy real-world concerns. To learn how it ticks, I've translated an algorithm for Simulated Annealing from Haskell to Ruby. It also gave me an excuse to play with ruby-processing, a toolkit for graphics processing ;). Come learn about Functional Programming and how it can make your Ruby better!

uk: вхід без авторизації

name: Learning from FP: Simulated Annealing in Haskell and Ruby


Letting Concurrency Help You Today

uk: Комп'ютерні науки

description: Ruby has never been renowned for its performance. We choose to love Ruby for its more admirable traits, like simplicity and expressiveness. But it turns out that we can have the best of both worlds by kicking the single-threaded model to the curb and using tried and true concurrency abstractions. We will take a look at the building blocks Ruby offers for concurrency and how Rubyists have used these to build scalable, performant libraries just dying to be used. You’ll walk away with an understanding of concurrency and how you can leverage it in your applications today.

uk: вхід без авторизації


Ruby Conference 2014: Lightning Talks

uk: Комп'ютерні науки

uk: вхід без авторизації


Madam Sandi Tells Your Future

uk: Комп'ютерні науки

description: Life's demands are such that it's easy to get lost in the day-to-day, trapped inside your own private world, expecting today to repeat endlessly and the future to remain a distant, untroubling land. The future is coming, however, whether you are ready or not, and when it does everything will change. This talk is a history lesson that covers 3,000 years of technology. It uses the past to lend perspective to the present and give guidance for the future. It reminds us where we come from and suggests how technology can help us to choose where we’ll go next.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: I didn't know squat about C or building extensions in Ruby. But I did want a Ruby-controlled Lego Mindstorms robot to get kids excited about Ruby. We'll dive into the basics of building C extensions, build a Ruby DSL to teach kids to drive cool Lego robots, and show off the amazing things you can do when you pull up Ruby's floorboards and look at the actually-not-too-scary C code underneath.

uk: вхід без авторизації

name: My Little C Extension: Lego Robots are Magic


Nobody Knows Nobu

uk: Комп'ютерні науки

description: Nobuyoshi Nakada is the most prolific contributor to Ruby. He is the all time leader in commits to the CRuby source code. With over 10,000 commits, he leads second place by double the number of commits. Leading to his psuedonym "Patch Monster". Allow me to introduce you to the man, the myth, and the legend that is nobu. You will learn the true story of how nobu came to be, and witness exactly how he earned that psuedonym and why everyone loves nobu. We will also show you what it takes to make it in ruby-core using nobu as an example.

uk: вхід без авторизації


Norikra: SQL Stream Processing in Ruby

uk: Комп'ютерні науки

description: Data streams (ex: logs) are becoming larger, while analytics in (semi-) real time is also becoming more important today. Moreover, there are many non-programmers who wants to write queries in this big data era. Norikra is an open source server software that provides "Stream Processing" with SQL, written in JRuby, runs on JVM. We can write and add queries for stream easily on Norikra, without any editors, compilers or deployments. I will talk about implementation of Norikra and its application in LINE corporation.

uk: вхід без авторизації


On The Outside Looking In

uk: Комп'ютерні науки

description: The view of an outsider – What I have learned over the past 2 years from attending nearly 40 programming conferences on 3 different continents (with most of them being Ruby Conferences) and working on just under 1000 presentations. Have you ever felt like you were on the outside... What programming looks like to an outsider. Connections that are created. A better community experience. Superheroes are human too. Why an outsider loves the Ruby Community.

uk: вхід без авторизації


Ruby Conf 2014: Opening Keynote

uk: Комп'ютерні науки

uk: вхід без авторизації


uk: Комп'ютерні науки

description: We use Strings. A lot. We use them for pretty much everything that isn't a number (it's jokingly referred to as "stringly-typed"). It ends up creating unnecessary complexity in our applications, making the boundaries between classes and modules hard to understand. What if we used Ruby's power to create richer data types? These types would define clearer boundaries in our system, and make our code much easier to understand.

uk: вхід без авторизації

name: Overcoming Our Obsession with Stringly-Typed Ruby


uk: Комп'ютерні науки

description: There are gems out there solving very common problems that could easily be contributed back to Ruby itself. Suggesting a new Ruby feature isn't as daunting as it sounds. As long as you're diligent, you too can push ruby forward.

uk: вхід без авторизації

name: Polishing Ruby: Building a better language together


uk: Комп'ютерні науки

description: The learn to code movement has popularized the idea that coding is a skill everyone can and should learn. It's the American dream: learn the desirable skill and you'll succeed financially. Those who master the skill and achieve the goals are held up as prime examples of just how easy it was. But if it was that easy, why are there so few victors encouraging hoards of hopefuls? I'll discuss the history of the American Dream, how new programming education endeavors have repackaged it, and how the lack of awareness and analysis of this privileged rhetoric is damaging our culture and workforce.

uk: вхід без авторизації

name: Programming, Education, and the American Dream


Promises in Ruby

uk: Комп'ютерні науки

description: Sequential workflows are easy to write (top down), but hard to write well. State machine workflows start to feel hacky, when complex; presenter patterns can be very heavy. Promises are a beautiful way to define and execute progressive routines while allowing access to independent steps for things like logging, exception handling, and picking up where you left off.

uk: вхід без авторизації


uk: Комп'ютерні науки

uk: вхід без авторизації

name: Ruby Conference 2014: Questions for Matz


uk: Комп'ютерні науки

description: Whether you are using a 3rd party or custom JSON API service, integration into an existing application can be time consuming: Where do you start? How can you build an object relational model that can adapt to changes in the schema? In this talk we'll start with an existing JSON schema and build a Ruby adapter to provide a pure Ruby interface to: consume, modify and re-export that schema into JSON and XML.

uk: вхід без авторизації

name: Rapidly Mapping JSON/XML API Schemas in Ruby


Real World Ruby Performance at Scale

uk: Комп'ютерні науки

description: Large scale and fast production Ruby applications are not a myth. As we've continued to scale out our infrastructure and our application, we've been able to keep things fast and reliable. We do this by building and using tools that take advantage the great improvements that have come in Ruby 2. I'd like to share some of the lessons we've learned in scaling our app as well as show off the latest and greatest in open source performance tooling.

uk: вхід без авторизації


Roda: The Routing Tree Web Framework

uk: Комп'ютерні науки

description: Roda is a new Ruby web framework designed around the concept of a routing tree. Roda gives you the simplicity of Sinatra for simple cases, while being able to scale well to handle larger, complex cases. It provides performance very close to a pure Rack application, with a flexible plugin system powerful enough to handle almost any needs. Come learn about routing trees, how they make web development better, and how Roda adds a twist on the routing tree concept to avoid the scope pollution problem inherent in many other Ruby web frameworks.

uk: вхід без авторизації


Rsense Knows Your Code

uk: Комп'ютерні науки

description: Rsense brings the kind of static analysis tooling to Ruby that programmers in other languages take for granted. The kind of tooling I kept hearing was impossible to implement for Ruby. Accurate type inference, code completion, definition finding, and eventually so much more. How about a real refactoring tool, or the ability to find whole classes of bugs without executing the code? This is where Rsense is headed. Learn how Rsense does its magic, find out how you can use it to improve your daily coding experience, where it's going next and where you can pitch in to make rsense even better.

uk: вхід без авторизації


Ruby After Rails

uk: Комп'ютерні науки

description: What happens to Ruby when Rails dies? Ruby rode the Rails rocketship to worldwide renown. While a handful of us were writing Ruby code before Rails came along, most of us owe Rails a debt of gratitude for taking Ruby mainstream, allowing us to make a living writing code in a language we love. But opinions codified in Rails are falling out of favor. We're not writing apps that do heavy server-side rendering. Our apps have complex domain logic that grates against "The Rails Way." Is that it, then? Has Ruby entered its twilight years?

uk: вхід без авторизації


Ruby Changed My Life

uk: Комп'ютерні науки

description: When I found Ruby several years ago, I had no idea how strong an influence it would be in my life. It made my life happier and I was eager to share this new found happiness with other developers. Then by the way of MagLev - I found the magical world of Smalltalk - and my joy was complete. Come hear about this journey, how Ruby.is_a? Smalltalk and appreciate the following quote on another level: I always knew that one day Smalltalk would replace Java. I just didn't know it would be called Ruby. -- Kent Beck

uk: вхід без авторизації


Ruby Idioms You're Not Using Yet

uk: Комп'ютерні науки

description: Idioms are some of the smallest patterns that we use in our programming languages. Learning the idioms of a language helps you more quickly understand commonly used patterns. Over time, some idioms fall out of favor, and new idioms are developed and adopted. In this talk, we'll explore a few idioms that are relatively new to the Ruby community. These include: Module factory Tag module Circuit breaker Fetch with default block

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Did you know that inject() and especially all?() iterator nested in another loop can really slow you down? Or that bigdecimal and string comparison is unbelievably slow in Ruby < 2.0? Or that parsed CSV is 13x larger in memory than on disk? Want to know these and other performance hints with in-depth explanations? Want to learn how to use profilers to find what's slow by yourself? Then this session is for you.

uk: вхід без авторизації

name: Ruby Performance Secrets and How to Uncover Them


uk: Комп'ютерні науки

description: The fact that Ruby has different implementations is both strange and powerful. Writing an extension for the language can be a daunting task but there's no better way to get to the heart of what exactly Ruby objects are and the reason for some of the language's quirks. In this talk, we'll use an example of writing a C extension for Ruby to use a third-party C security library. We'll peel back the layers of Ruby objects to deepen our knowledge of MRI and to understand in a little more detail what it really means to write object-oriented code.

uk: вхід без авторизації

name: Ruby-red onions: Peeling Back Ruby's Layers in C Extensions


Rubyists, have a sip of Elixir!

uk: Комп'ютерні науки

description: This talk is about Elixir – a functional, meta-programming aware language built on top of the Erlang VM. I introduce some of Elixir's more interesting language features. Then I will demonstrate some of the features that Erlang gives Elixir for free, such as the OTP framework, that let's you build fault tolerant and distributed systems. So come along and join me to experience programming joy.

uk: вхід без авторизації


Sauron: DIY Home Security with Ruby!

uk: Комп'ютерні науки

description: This is the story of how I built an all-seeing eye with Ruby, and how I use it to defend the sanctity of my suburban home. Using a Raspberry Pi and some homemade motion detection software I've developed a home security system that can send me notifications on my phone and photograph intruders. It uses perceptual hashes to detect image changes and archives anything unusual. I can even set a custom alerting threshold and graph disturbances over time. If you've ever had the desire to be an evil wizard with a glowing fireball of an eye this talk is perfect for you. Come play with Sauron.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: If you're developing webapps, I guess you deploy sometime using tools like Capistrano. We think existing tools slow for huge apps and a lot of servers. We serves cookpad.com, which is a huge Rails app, and the largest recipe site in Japan. It's backed 120+ app servers. We've used Capistrano + SSH + rsync, but it became a bottleneck, slower and slower, as well as server increases. Our developer have wanted to focus on development. Deployments should be done in short time. In this talk I'll introduce about our new deploy tool Mamiya, and will talk about how we deploy webapp in a minute.

uk: вхід без авторизації

name: Scalable Deployments - How we deploy Rails app to 100+ hosts in a minute


Stress Testing as a Culture

uk: Комп'ютерні науки

description: If you are working on a serious project, you want it to scale. The thing about scale is, you only focus on it once you really need it. I’m the CTO of an soccer social network based in Brazil. To put it mildly, soccer is big in my country. This summer, we focused our marketing on the World Cup, preparing our application to support as many users as possible. To do that, we had to benchmark and improve, but how could we load test? What tool should we use? Those are just some questions that I'll go through in this talk, that will show youhot to address this challenge so stress test you app.

uk: вхід без авторизації


Strong Duck Type Driven Development

uk: Комп'ютерні науки

description: As a language, Ruby plays fast and loose with the type system. Developers rely on duck typing to check that the things they want to do with an object are permissible. Whilst this freedom makes writing code frictionless and often a whole lot of fun, it doesn't always scale up well to writing larger systems. I can't promise that strong duck typing - adding automated checking to inter-object interfaces - will make writing complex systems easy but it will help you think about how to structure code in new ways and bring some of the lessons learned from other languages to the Ruby community.

uk: вхід без авторизації


Sweaters as a Service

uk: Комп'ютерні науки

description: In the 1980's, Nintendo had plans for a knitting add-on to the NES, with an interface that resembled Mariopaint, but with patterned sweaters as output. Sadly, this product never saw the light of day. Devastated on hearing this, a group of Airbnb engineers (who knew nothing about machine knitting) set out to hack a knitting machine from the 1980's to be computer-controlled. Learn about how we wrote our own yarn printer API in ruby and printed our first doge meme in yarn. And watch us as we send knit requests to our yarn server, and behold as it knits ugly sweaters from those images!

uk: вхід без авторизації


uk: Комп'ютерні науки

description: The transition from working in advertising agencies to becoming a full-time developer was something I never thought I could do. 6 months into it, I found myself working for one of the best Ruby consultancies. There are 8 things that I wish I would have known before jumping head first into a career as a software engineer, especially coming from a non-technical background. You will leave this talk not only feeling inspired to enter the Ruby world as an engineer, but have concrete action items on how to make it a successful transition.

uk: вхід без авторизації

name: Switch Up: How to Switch Careers to Become a Ruby Engineer


uk: Комп'ютерні науки

description: Software engineering pushes us to our limits, not only of cognition, but, perhaps surprisingly, of character. Using the cardinal virtues as a framework, we can see that developers need courage to learn, temperance to prioritize goals, a sense of justice by which to discern, and wisdom to act. By being honest about where we lack virtue, and implementing steps to develop character, we can perform TDD on ourselves. This process can help us grow not only as coders, but as human beings.

uk: вхід без авторизації

name: TDD For Your Soul: Virtue and Software Engineering


Template Engines in Ruby

uk: Комп'ютерні науки

description: HTML template engine is one of the most important library to build a web application. But who actually knows how it works? Who can explain how the engine parses the given template and finally composes the HTML body? In this session, I will dig into implementation details of several Ruby libraries such as ERB, Haml, Slim, Tilt, Temple, etc. and give you a quick tour into the world of template engines!

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Bugs and mess-ups are serious problems in software. Mistakes are inevitable - but the stakes can be high. If you're writing a hospital management system, they can cost lives. In a payments system, they can cost money. Since we can't eliminate bugs, this talk will cover strategies, hacks and monkey patches in Ruby to prevent bugs from leading to disaster. This isn't a traditional testing talk, but rather a thinking outside-of-the-box approach to busting bugs and building more robust software.

uk: вхід без авторизації

name: Testing Isn't Enough: Fighting Bugs with Hacks


The Quiet Programmer

uk: Комп'ютерні науки

description: Hi, I'm [NAME] and I'm an introvert. But contrary to what you might think, it's not a problem and I am not working on it. In fact, I've embraced it. In this session, we'll explore the strengths of introversion within the realm of programming and software development. We'll discuss how it plays a role in your interactions with other developers, your preferred work environment, and yes, even your code.

uk: вхід без авторизації


The Social Coding Contract

uk: Комп'ютерні науки

description: Social coding revolutionized how we share useful code with others. RubyGems, Bundler, and Github made publishing and consuming code so convenient that our dependencies have become smaller and more numerous. Nowadays, most projects quickly resemble a Jenga tower, with layer upon layer of poorly understood single points of failure. As we celebrate a decade of RubyGems, let's reflect on our relationship with open source. Convenience and ego drive most open source adoption, but these shortsighted motivations raise long-term problems we need to clearly identify if we can ever hope to solve them.

uk: вхід без авторизації


Writing mruby Debugger

uk: Комп'ютерні науки

description: mruby forum released mruby 1.0.0 in Feb. 2014. It's been stable to use. However, because mruby is used on small boards or in application programs, it's hard to debug mruby applications. When we develop mruby application, we should write not only Ruby code, but also C code. So we need to debug both codes. To make debugging mruby application easier, we are writing prototype of mruby debugger. Current mruby distribution has no debugger, but there are some useful API sets to implement own debugger. In this talk, we introduce their API and how to use them to write a debugger.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Ruby's full of nice little metaprogramming tricks. Learning a new one's always the same cycle: 1. scared & tentative; 2. drunk on power; 3. woefully repentant; 4. mature & reasonable. Using my own history (of poor choices), I'll take you through stages 1-4 for: mazes of twisty little send calls, all alike! replacing def with method_missing! hook method indirection "magic!" Ill-timed define_methods! Sure, you could skip to the end - stage 4 is mostly "obey SRP; extract service objects" and "anonymous module inclusion's your BFF" - but getting there is half the point and all the fun.

uk: вхід без авторизації

name: Your Bright Metaprogramming Future: Mistakes You'll Make (and How to Fix Them)


uk: Комп'ютерні науки

description: Ruby may seem like a humdrum language best suited for writing web apps, but underneath that cool exterior lies plenty of power -- power we can harness for making our own games! In this talk, we'll introduce Gosu, a sweet little game library. We'll talk about how games are structured in pretty much every language and framework ever, where to get ideas for things to make, and ways you can share your game with your friends and the world.

uk: вхід без авторизації

name: Attention Rubyists: you can write video games


A Look at Hooks

uk: Комп'ютерні науки

description: Ruby has several methods that are invoked implicitly under certain circumstances. These methods are called "hooks", and they provide points to extend behavior. While hooks might seem like "spooky action at a distance", they can be really powerful. In fact, hooks are one of the primary ways that Ruby provides for meta-programming. Unfortunately, Ruby's hooks are not all documented very well. We'll take a look at what hooks are available and how to use them. We'll also talk about when to avoid using hooks and provide some tips on how to troubleshoot when hooks are involved.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: What does becoming a mid-level developer mean? How can a junior set goals and make steps to achieve this? It's difficult to shed the title of 'junior', not only in your own mind, but in the minds of others. It is important to keep progressing in your career as a developer to be able to level up and no longer be seen as the junior on the team. Kim and Kinsey will provide two perspectives to enable you to leave this talk with tangible action items. They will also dive into what employers can do to help build frameworks to allow for this transition.

uk: вхід без авторизації

name: Becoming a Mid: Two Perspectives on Leveling Up


Better Code Through Boring(er) Tests

uk: Комп'ютерні науки

description: Your tests are annoying. Whenever you update your application code, you need to change a lot of them. You've built yourself some test macros, and some nice FactoryGirl factories, and installed this really cool matcher gem... and your tests are still annoying. What if you changed your application code instead? In this talk, you'll learn what "listening to your tests" means in the real world: no mysticism, no arrogant TDD purism, just a few practical refactorings you can use tomorrow at work.

uk: вхід без авторизації


Bootcamp Grads Have Feelings, Too

uk: Комп'ютерні науки

description: You’re a bootcamp student. You’re so excited to become a developer! Amidst your excitement about this new industry, you hear everyone say that bootcamps are a blemish on the community, that they’re a waste of time and money. “Maybe I’ve made a huge mistake,” you think. “I don’t know how I’ll fit in here." But you can make this community better! In this session, you’ll learn about the varied experiences of bootcamp students and grads, how exclusionary behavior can end up stunting our community as a whole, and what you can to do make a more inclusive environment for everyone of all skill levels.

uk: вхід без авторизації


Building a Better OpenStruct

uk: Комп'ютерні науки

description: OpenStruct, part of Ruby's standard library, is prized for its beautiful API. It provides dynamic data objects with automatically generated getters and setters. Unfortunately, OpenStruct also carries a hefty performance penalty. Luckily, Rubyists have recently improved OpenStruct performance and provided some alternatives. We'll study their approaches, learning to take advantage of the tools in our ecosystem while advancing the state our community. Sometimes, we can have our cake and eat it too. But it takes creativity, hard work, and willingness to question why things are the way they are.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: We’ve been living in the future for a full 15 years already and developers are still using antiquated technology like “keyboards” and “mice” to run their applications. We’re going to learn to use voice recognition to run our Ruby code so we won’t need to depend on archaic plastic input methods to live our megalomaniacal dreams. I think we can all agree that the world needs more robots listening to our every word, let’s build an army of them and arm them with Ruby!

uk: вхід без авторизації

name: Building HAL: Running Ruby with Your Voice


uk: Комп'ютерні науки

description: mruby and mruby-cli makes it possible to ship single binary command-line tools that can be used without setup effort, but how difficult is development in MRuby? In this talk we'll explore how to work with MRuby and mruby-cli. We'll cover the differences in development patterns when using MRuby, the maturity of the MRuby ecosystem, and development patterns when using mruby-cli to build a command-line tool.

uk: вхід без авторизації

name: Building maintainable command-line tools with MRuby


C Ruby? C Ruby Go! Go Ruby Go!

uk: Комп'ютерні науки

description: Ever wanted to rewrite performance sensitive code as a native Ruby extension, but got stuck trying to navigate the depths of Ruby’s C API before you could get anything done? Or maybe you’re just not comfortable with C and want an easier path. Do you know any Go? Well, if you do, you’re in luck! Join us for this talk about a tool named gorb that will quickly and easily let you generate native Ruby extension wrappers for your Go programs. And if you don’t know Go, come anyway, it’s really easy to learn! We’ll have you writing blazing fast code that you can use right from Ruby, in no time at all.

uk: вхід без авторизації


Composition

uk: Комп'ютерні науки

description: Our work as programmers consists largely of problem decomposition and solution recomposition. This talk is interested in how we cobble small units together into cohesive solutions. We'll examine and compare both object and functional composition, using a Haskell-inspired, functional style of Ruby. Along the way, we'll see how good functional principles can improve our object-oriented design, and vice versa.

uk: вхід без авторизації


Computer Science: The Good Parts

uk: Комп'ютерні науки

description: You don't need a 4-year degree to learn the best parts of computer science. Maybe you've seen jargon like "Big O Notation," "binary trees", "graph theory", "map-reduce", or the "Turing test", but have been afraid to ask. But did you know that that these concepts are responsible for Mars rovers, self-driving cars, mobile databases, our air traffic control system, and and even how we elect presidents? In this beginner-focused talk, I will present some simple and very practical ways apply the "good parts" of computer science to your next app.

uk: вхід без авторизації


Continuing Education at Work

uk: Комп'ютерні науки

description: The list of things we want to learn is infinite. How many of us have marked items to read/watch, yet never go back to them? Despite the best of intentions, I often only learn what I directly need. It wasn’t until I started running a couple lightweight continuing education programs at work that I followed through on my goals. We’ll discuss strategies for making these programs low maintenance and long-lived, as well as flexible enough to help both more and less experienced folks. If you’ve been looking for a more effective approach to learning, but still outside classrooms, this talk is for you!

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Most of us have a "that day I broke the internet" story. Some are amusing and some are disastrous but all of these stories change how we operate going forward. I'll share the amusing stories behind why I always take a database backup, why feature flags are important, the importance of automation, and how having a team with varied backgrounds can save the day. Along the way I'll talk about a data center fire, deleting a production database, and accidentally setting up a DDOS attack against our own site. I hope that by learning from my mistakes you won't have to make them yourself.

uk: вхід без авторизації

name: Datacenter Fires and Other "Minor" Disasters


uk: Комп'ютерні науки

description: Good news! Ruby is a successful and mature programming language with a wealth of libraries and legacy applications that have been contributed to for many years. The bad news: Those projects might contain a large amount of useless, unused code which adds needless complexity and confuses new developers. In this talk I'll explain how to build a static analysis tool to help you find unused code and remove it - because there's no code that's easier to maintain than no code at all!

uk: вхід без авторизації

name: Deletion Driven Development: Code to delete code!


Diving into the Details with DTrace

uk: Комп'ютерні науки

description: "Argh, why is this so slow?!" We've all asked questions like this without getting satisfying answers. And so we slog along, finding workarounds and architecting around the slow bits. But what if we had a friend who could see things we can't? Someone who could say whether our guesses were right, and what to look at next? DTrace is that friend, and it's here to help! In this talk, I'll show you how DTrace can answer incredibly general and specific questions about systems performance, and help us to generate new ones. Along the way, we'll see that it's easier to use than you might think!

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Machine learning is a popular and rapidly growing field these days, but you don't usually hear it mentioned in the same breath as Ruby. Many developers assume that if you want to do machine learning or computer vision, you've got to do it in Python or Java. Not so! In this talk, we'll walk through training a neural network written in Ruby on the MNIST dataset, then develop an application to use that network to classify handwritten numbers.

uk: вхід без авторизації

name: Dōmo arigatō, Mr. Roboto: Machine Learning with Ruby


Evaluate Ruby Without Ruby

uk: Комп'ютерні науки

description: Have you ever wanted to implement a tool that can be configured by Ruby code? You may think such tools require MRI, JRuby or Rubinius to evaluate the configuration. But that's not true! Let's see how we can build a tool that evaluates Ruby without dependency on Ruby interpreter using mruby.

uk: вхід без авторизації


Even the Justice League Works Remotely

uk: Комп'ютерні науки

description: "Remote welcome for senior level". This appears in countless job descriptions. Remote work is largely accepted in the developer community, but often only for very experienced developers. This fear is not without cause. Sometimes hiring remote developers at any level doesn’t turn out well but there’s generally a reason for that. Newer developers can also be very successful remote workers. In this talk, you’ll learn what to look for when hiring remote developers at any level and non-senior developers will learn what characteristics to keep in mind in order to have a successful remote experience.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Have you ever wished for more feedback from colleagues to help you get better at your job? When’s the last time you offered helpful feedback to someone else? Imagine an entire company fluent in the daily practice of giving and receiving constructive feedback. Would your experience improve? What does a team lose when feedback doesn’t flow? Feedback conversations can be difficult. But giving and receiving feedback pushes us to the edge of our growth potential, where the biggest payoffs occur. Join this session to grow your career by learning how to get real.

uk: вхід без авторизації

name: Finding your edge through a culture of feedback


uk: Комп'ютерні науки

description: Using and contributing to open source has been a cornerstone of the Ruby community for many years. Despite this strong tradition, it’s hard to find anything collecting the likely advantages and costs of working on open source. This talk will introduce open source work, the benefits and costs of doing that work, and then provide a straightforward list of activities that can be done by anyone, no matter their level of experience with programming. Pick a project, schedule at least 15 minutes per day, join the core team. It’s your destiny!

uk: вхід без авторизації

name: From no OSS experience to the core team in 15 minutes a day


uk: Комп'ютерні науки

description: “How do I become a senior engineer?” It’s a question every bootcamp grad will ask. Most engineers look at advancement through a lens of increasing technical skill. More than ever, though, being “senior” means more than just parsing Ruby in your sleep. As our companies grow and as our industry grows, seniority means helping new teammates and colleagues advance their own skills. It means knowing how to teach. You don’t need Matz-level knowledge to be a great teacher. With social awareness, a dash of psychology, and some proven approaches, by helping others learn, you’ll earn senior-level respect.

uk: вхід без авторизації

name: “Am I Senior Yet?” Grow Your Career by Teaching Your Peers


Grow Your Team In 90 Days

uk: Комп'ютерні науки

description: So you want to work with an awesome ruby developer? Great! But finding one is hard. It’s much easier to hire that apprentice or bootcamp grad, but that person is not an awesome developer. How do you help them get there? You will learn how to build a learning plan and become the best mentor to a budding software developer. You have the opportunity to mold your apprentice’s skill set into exactly what you need, while benefiting from their diverse skills and experiences. We will build an example learning plan of a developer learning Ruby, showing clear and specific choices and likely outcomes.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: How does Ruby allocate memory? Ever wonder why that poor application of yours is using hundreds of megabytes of RAM? Ruby's garbage collector means that we don't have to worry about allocating memory in our programs, but an understanding of how C Ruby uses memory can help us avoid bloat and even write faster programs. We'll talk about what causes memory allocation, how the garbage collector works, and how to measure memory activity in our own Ruby programs.

uk: вхід без авторизації

name: Halve Your Memory Usage With These 12 Weird Tricks


uk: Комп'ютерні науки

description: It was the perfect storm of events and circumstances: a first job, naïveté of inexperience, a fear of getting fired, and a loud boss prone to yelling. One morning, I realized that the first web “project” of my first job in my new career had gone horribly off track. What came to pass in the following weeks was the most involved and tense coverup I’ve undertaken in my life. This experience can tell us all about how we communicate with each other. How we can create environments where people can ask for help and how an atmosphere of pressure and tension can ruin a business.

uk: вхід без авторизації

name: How I Corrupted Survey Results and (Maybe) Ruined a Business


How I Taught My Dog To Text Selfies

uk: Комп'ютерні науки

description: This talk is for the Rubyist who wants to get into hardware hacking but feels intimidated or unsure of where to start. The Arduino Yun is wifi-enabled and runs a stripped-down version of Linux. That means that you can build hardware hacks that execute Ruby scripts and interact with web APIs. In this talk, we'll start from scratch and live code a hardware hack that my dog uses to text me selfies using a webcam, Twilio, and a big red button.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Most of us who've played games or worked in any one of a number of popular programming languages will have used virtual machines but unless we've taken a course in programming language design we probably have only a loose idea of what these are and how they work. In this talk I'll look at the various parts necessary to model a computer-like machine in code, borrowing ideas as I go from real-world hardware design. We'll use a mixture of C and Ruby as our modelling languages: C is the lingua franca of the VM world whilst Ruby is the language which brought us monkey-patching...

uk: вхід без авторизації

name: Implementing Virtual Machines in Ruby (and C)


Improving Coverage Analysis

uk: Комп'ютерні науки

description: If you follow modern practices, test coverage analysis is a lie, plain and simple. What it reports is a false positive and leaves you with a false sense of security, vulnerable to regression, and unaware that this is even the case. Come figure out how this happens, why it isn’t your fault, and how coverage analysis can be improved.

uk: вхід без авторизації


It's More Fun to Compute

uk: Комп'ютерні науки

description: Come with us now on a journey through time and space. As we explore the world of analog/digital synthesis. From computer generated music to physical synthesisers and everything in between. So you want to write music with code, but don’t know the difference between an LFO, ADSR, LMFAO, etc. Or a Sine wave, Saw wave, Google wave. We’ll explore what these mean, and how Ruby can be used to make awesome sounds. Ever wondered what Fizz Buzz sounds like, or which sounds better bubble sort or quick sort? So hey Ruby, let’s make music!

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Ruby has seen its heaviest on servers; Client-side Ruby has been limited to experiments and toys, and Ruby C extensions complicate embedded use. But there's a better way: JRuby. Using frameworks like JRubyFX and Shoes 4, among many GUI and graphics libraries, JRuby makes client-side development fast and powerful. With an embedded JVM, JRuby runs your app on mid-level embedded devices without compiling a line of code. And JRuby is still the best way to power up your Rails 5 app. Come learn how to use JRuby everwhere!

uk: вхід без авторизації

name: JRuby Everywhere! Server, Client, and Embedded


Just a Ruby Minute

uk: Комп'ютерні науки

description: Just a Minute is a game show that's a part of the British national consciousness, delighting audiences across the country for almost half a century. In it, speakers are challenged to speak for one minute without hesitation, repetition or deviation, it's much harder than it sounds. It's fast paced, funny, insightful and you might even learn something.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Write clearer code more easily. Write functions that are more composable and flexible. Ruby 2.0's KWArgs feature isn't just an easier way to write functions that take keyword arguments; KWArgs turn Ruby into a lean, mean Hash processing machine. In this talk, you'll learn the details of how to write the next generation of Ruby code. Code that is easier to read, easier to write, more flexible and easier to change, all based on this one simple Ruby feature.

uk: вхід без авторизації

name: Keyword Args — the killer Ruby feature you aren't using


Learning Fluency

uk: Комп'ютерні науки

description: All languages work in formulaic ways. Cracking these formulas takes discipline, time, creativity, trial and error. But is there an overarching formula to crack these formulas? Is there a designated set of steps we can take to guarantee fluency? In this talk, you will learn about the methods people use to learn both foreign languages and programming languages. As developers, we often just jump in and start building. Why is this? Does full immersion work best always and for everyone? What is fluency, and is it ever something we can achieve in Ruby? Let’s explore.

uk: вхід без авторизації


Lies, Damned Lies, and Substrings

uk: Комп'ютерні науки

description: Generate all of the substrings of a string—a classic coding problem. But what's its time complexity? In many languages this is a pretty straightforward question, but in Ruby it turns out, it depends. Follow me into the matrix as I explore copy-on-write optimization, how substrings are created in MRI, and eventually create a custom build of Ruby to try to speed up this classic coding problem. This talk will be a mix of computer science and a deep dive into how Ruby strings work in MRI.

uk: вхід без авторизації


Lies

uk: Комп'ютерні науки

description: All abstractions are lies, if they are abstractions at all, and as developers, we live our lives surrounded by them. What makes a some abstractions better than others? This will be an opinionated and empowering look at the value and nature of abstractions, with a jaunt through quantum mechanics and the nature of reality. You know, just your average, light discussion.

uk: вхід без авторизації


Ruby Conference 2016: Lightning Talks

uk: Комп'ютерні науки

uk: вхід без авторизації


Ruby Conference 2016 - Matz Q&A

uk: Комп'ютерні науки

description: Part of our annual tradition, Matz answers questions from Evan as well as the audience

uk: вхід без авторизації


Metaprogramming? Not good enough!

uk: Комп'ютерні науки

description: If you know how to metaprogram in Ruby, you can create methods and objects on the fly, build Domain Specific Languages, or just save yourself a lot of typing. But can you change how methods are dispatched? Can you decide that the normal inheritance rules don't apply to some object? In order to change those core parts of the language, there can't be much difference between how a language is implemented and how it's used. In this talk, you'll make that difference smaller, building a totally extensible object model on top of Ruby, using less than a dozen new classes and methods.

uk: вхід без авторизації


Methods of Memory Management in MRI

uk: Комп'ютерні науки

description: Let's talk about MRI's GC! In this talk we will cover memory management algorithms in MRI. We will cover how objects are allocated and how they are freed. We will start by looking at Ruby's memory layout, including page allocation and object allocations within those pages. Next we'll cover collection algorithms used by MRI starting with the mark and sweep algorithm, followed by generational collection, and the tri color abstraction. Finally we'll cover experimental developments for the GC like heap splitting. Expect to leave this talk with heaps of pointers to add to your remembered set!

uk: вхід без авторизації


My Meta Moments

uk: Комп'ютерні науки

description: Meta-programming is alluring. To write code that writes more code sounds like the peak of efficiency, but learning it is filled with infinite loops and confusing stack traces. It is a place with lots of hair pulling and endless puts debugging. Meta-programming in ruby can be intimidating. Yet, even with all that, it is fun. It is learnable. It is quintessentially ruby. If you’re interested in getting your feet wet, come share my journey of learning things like method dispatch, BasicObject, class ancestry, and the joy of things you should think twice about before doing in production code.

uk: вхід без авторизації


Ruby Conf 2016 - Opening Keynote

uk: Комп'ютерні науки

uk: вхід без авторизації


Optimizing Ruby Core

uk: Комп'ютерні науки

description: I made ruby interpreter 10 times faster. Let me show you how.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: We love Ruby's object orientation, and you might have heard functional programming is the new hotness. But don't leave home without one more paradigm! Logic programs express relations and constraints, allowing us to work with incomplete information, build knowledge systems, and find outputs of a system given whatever inputs are available. You'll see examples of logic programs using Ruby, learn about an algorithm that searches for a solution in a finite problem space, and explore potential applications for logic programming approaches, both in practical areas and for your mental models.

uk: вхід без авторизації

name: Problem Solved! Using Logic Programming to Find Answers


uk: Комп'ютерні науки

description: After several years of programming in Ruby using Shoes, my daughter and I were hunting for a new project. Something more useful than a game. Something with a real-world connection. Then it struck us: Chickens! Join us as we show you how we built our coop monitoring system. It’ll be a wild ride of hardware hacking, weather-proofing, and father-daughter bonding, with Ruby sprinkled throughout. You’ll learn how to modernize your surroundings, and about engaging the young people in your life in technology along the way.

uk: вхід без авторизації

name: Programming in the Small: Kids, Chickens, and Ruby


Rainbows! Color Theory for Computers

uk: Комп'ютерні науки

description: We often use color as a way to add information, whether in design, in UX, or for visualizations. When we visualize information, what's the best possible color scheme to use? How can we display the most possible information? The only way to know is to explore the nature of color! We'll build up to the color-handling code that exists in 'graphics.rb', a Ruby-language visualizations library. For free, we'll end up with intuitive models of computer color spaces and tricks for how to think about common color concepts like gradients and paint mixing.

uk: вхід без авторизації


Rhythmic Recursion

uk: Комп'ютерні науки

description: One of the best things about multi-disciplinary work is recognizing familiar ideas in a different setting. It’s like running into an old friend while you’re on vacation halfway around the world-- “I had no idea you’d be here! It’s so great to see you!” In this talk we’ll run into our old friend recursion in the faraway land of minimalist music, by rewriting a piece of rhythmic music in Ruby.

uk: вхід без авторизації


Ruby 3 Concurrency

uk: Комп'ютерні науки

description: Learn from Koichi about the work he's doing to bring a new concurrency model to Ruby 3!

uk: вхід без авторизації


Ruby for Home-Ec

uk: Комп'ютерні науки

description: Come learn how to design your own algorithms and code to solve problems around the house. Trying to use your scrap wood efficiently? Want to sort your pantry to maximize variety? I’ll talk about the problem-solving process, walk through code, and touch on the computer science behind it all.

uk: вхід без авторизації


(m)Ruby on small devices

uk: Комп'ютерні науки

description: mruby is the lightweight implementation of the Ruby language for linking and embedding within your applications. This talk will show how it can be used on small resource constrained devices like Raspberry Pi Zero and exploring some techniques of memory and run-time optimizations.

uk: вхід без авторизації


Ruby versus the Titans of FP

uk: Комп'ютерні науки

description: Clojure, Haskell and Javascript reign as the dominant functional languages of our era. But surely anything they can do, Ruby can do better? And what is it that they actually do? Come learn about three core concepts of functional programming, and see how Ruby stacks up against its peers when it comes to making them powerful.

uk: вхід без авторизації


Ruby, Red Pandas, and You

uk: Комп'ютерні науки

description: Red pandas are adorable, playful, curious, and super cute. Unfortunately, they are in serious trouble. Over 50% of red panda newborns born in captivity do not survive long enough to leave their den and no one knows why. Come find out why red pandas are so amazing, how I met a Smithsonian Zoo researcher studying this and how we’re solving this important problem using Ruby and machine learning. You will also leave this talk knowing how you can get involved (no matter your skill level) with great projects like this.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Ruby’s C extensions have so far been the best way to improve the performance of Ruby code. Ironically, they are now holding performance back, because they expose the internals of Ruby and mean we aren’t free to make major changes to how Ruby works. In JRuby+Truffle we have a radical solution to this problem – we’re going to interpret the source code of your C extensions, like how Ruby interprets Ruby code. Combined with a JIT this lets us optimise Ruby but keep support for C extensions.

uk: вхід без авторизації

name: Ruby’s C Extension Problem and How We're Solving It


uk: Комп'ютерні науки

description: A few miles from this convention center, Teespring prints millions of short-run custom products every year from modern direct-to-garment printers and ships them all over the world. Like most companies, Teespring's architecture is polyglot, but the core business logic is in Ruby. We'll discuss how we use large at-scale manufacturing and production systems to help anyone, anywhere turn their ideas into reality.

uk: вхід без авторизації

name: Running Global Manufacturing on Ruby (among other things)


uk: Комп'ютерні науки

description: Metaprogramming and lambda functions in Ruby should be explained within their rightful place: living examples. You may have read tutorials on what these concepts are, but still do not understand when or why to use them. I dredged through over 50 prominent Open Source Ruby projects to bring you ten successful patterns that are used time and time again to create some of the most expressive and popular Ruby DSLs. Join me as we cover these patterns so that you can immediately begin using them in your own code to implement powerful DSLs. No vacuum-living, esoteric concepts here.

uk: вхід без авторизації

name: Seeing Metaprogramming and Lambda Function Patterns in Ruby


Slo Mo

uk: Комп'ютерні науки

description: No one wants to be stuck in the slow lane, especially Rubyists. In this talk we'll look at the slow process of writing fast code. We'll look at several real world performance optimizations that may surprise you. We'll then rewind to see how these slow spots were found and fixed. Come to this talk and we will "C" how fast your Ruby can "Go".

uk: вхід без авторизації


Surgically Refactoring Ruby with Suture

uk: Комп'ютерні науки

description: The next feature means changing legacy code. The estimate just says "PAIN" in red ink. Your hands tremble as you claim the card from the wall. For all of Ruby's breakthroughs, refactoring is as painful as 2004, when Feathers' book released. It's time we Make Refactors Great Again. That's why I wrote Suture, a gem to help at every step: In development, new code is verified against recorded calls In staging, old & new code is ensured side-by-side In production, unexpected errors fall back to the old code With renewed confidence and without fear, you grab the card. You've got this.

uk: вхід без авторизації


Test Doubles are Not To Be Mocked

uk: Комп'ютерні науки

description: Test doubles (which you may know under the alias “mock objects”) are the most misunderstood and misused testing tools we've got. Starting with the fact that nobody can agree on what to call them. Contrary to what you may have heard, test doubles do not inherently lead to fragile tests. What they do is hold up a harsh mirror to the assumptions in our code. They are the light saber of testing tools: a more elegant weapon for a more civilized age. But be careful not to cut your code in half, so to speak. Herein: a guide to using test doubles without losing your sanity.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Performance, readability and correctness are fine and dandy, but what happens when we start optimizing for whimsy, illegibility and outright silliness? Self-rewriting programs that also function as ASCII art? Yup. Rewrite any JavaScript program only using six characters? Why not? Let's take a break from the practical and laugh at some of the most unbelievable code you've ever seen. Then let's pull out the magnifying glass to figure out how it actually works. Learn how to read the unreadable and how to write code that—to borrow a phrase from the Ig Nobel Awards—makes people laugh, then think.

uk: вхід без авторизації

name: That Works?! Quines and Other Delightfully Useless Programs


The Building Built on Stilts

uk: Комп'ютерні науки

description: In the summer of 1978, structural engineer William LeMessurier got a phone call that terrified him. An undergraduate student claimed that LeMessurier's acclaimed 59-story Citicorp Center in Manhattan, just completed the year prior, was dangerously unstable under certain wind conditions. The student was right, and it was almost hurricane season. The key to building a culture of innovation in your team is learning how to respond when mistakes inevitably happen. Let's let Bill LeMessurier teach us how to respond when it all goes wrong so that our creations can thrive despite our mistakes.

uk: вхід без авторизації


The Little Server That Could

uk: Комп'ютерні науки

description: Have you ever wondered what dark magic happens when you start up your Ruby server? Let’s explore the mysteries of the web universe by writing a tiny web server in Ruby! Writing a web server lets you dig deeper into the Ruby Standard Library and the Rack interface. You’ll get friendlier with I/O, signal trapping, file handles, and threading. You’ll also explore dangers first hand that can be lurking inside your production code- like blocking web requests and shared state with concurrency.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Have you ever felt like you are in the passenger seat of your career? By simply looking around and seeing how few 20+ year veterans you work with, you're actually staring our industry's sustainability problem right in the face. But the software industry needs you still contributing 20 years from now! Fret not, we can start fixing these problems, right now, in your own job. Using in-depth research across companies of all sizes, you'll come away with a plan to start designing a sustainable career track to help you grow in skill, influence, and income now and long into the future.

uk: вхід без авторизації

name: The long strange trip of a senior developer


uk: Комп'ютерні науки

description: Video contains explicit language - Because people are complex, diverse creatures, ensuring that your open source community is healthy, vibrant, and welcoming can be challenging. The good news is, science can help you understand human thoughts and behaviors, and the complexities of interacting in a collaborative way online. We'll discuss cognitive biases, the SCARF collaboration model, the online community life cycle, and how these things interact. You'll come away from this talk with a deeper understanding of yourself, your fellow humans, & the knowledge to improve personal interactions and the open source communities you belong to.

uk: вхід без авторизації

name: The Neuroscience and Psychology of Open Source Communities


The Truth About Mentoring Minorities

uk: Комп'ютерні науки

description: In the tech industry, we currently lack the ability to produce mentors who are able to effectively teach and connect with their minority protégés. In this talk, we discuss what changes we can make in the way we mentor to give our minority protégés the best chance to succeed. We will take a look at some of the struggles that I faced throughout my software developer apprenticeship, and pinpoint the sources of my success. In conjunction, we will also look at various case studies of other minority professionals who were both successful and unsuccessful in their attempts to climb the corporate ladder.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Act 1 - State of Grace After many years of Ruby, we built our app in Clojure, why not. Clojure is a breath of fresh air. Learn a lisp today! Act 2 - The Fall It's harder to succeed when you're in a new and different ecosystem. How Clojure contrasts with Ruby. Act 3 - The Wilderness Rewriting your app is a bad idea but we did it anyways. How we came to that decision. Act 4 - Reconciliation How I write Ruby has changed: a discussion.

uk: вхід без авторизації

name: To Clojure and back: Writing and rewriting in Ruby


Why Is Open Source So Closed?

uk: Комп'ютерні науки

description: Why is Open Source So Closed? With the rapidly increasing amount of students coming out of bootcamp schools we have now created a gap within our communities of the "haves", and the "Looking for job"s. Being the organizer of New York City's 4,500+ member Ruby community with NYC.rb I have discovered ways we can ensure the generations of rubyists after us have a path paved before them. "Cyclical Mentorship" is the answer. Best part is we will know individually how we can immediately begin the feedback loop of not computers, but people!

uk: вхід без авторизації


Why recursion matters

uk: Комп'ютерні науки

description: In modern programming, recursion is so common that we take it for granted. We work with recursive processes and structures every day, and it's easy to forget that recursion was once a highly contentious issue in programming language design. But there's more to recursion than meets the eye. In this talk I'll discuss how it is fundamental to computing; how it can prove programs are correct, make them run faster, and even let you run programs backwards! Along the way we'll meet maths, Haskell, Bash, JavaScript, and our old friend Ruby doing some very surprising things.

uk: вхід без авторизації


You graduated from bootcamp, now what?

uk: Комп'ютерні науки

description: Throughout bootcamp, your biggest worry was finding a job. Now that you’ve found one and you’ve started your career as a developer, what comes next? In this talk, we’ll explore what the career of a bootcamp graduate looks like a few years after the program. We’ll talk about the good and not-so-good parts of being a newly-minted developer. We’ll come away with actionable steps we can take to continue to grow as developers post-bootcamp and be happy and successful, even when we don’t have the mythical perfect job.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Are you the sort of developer who makes the user want to headbutt the computer or hop happily sideways? Documentation is often one of the least favorite activities of a developer, and it’s probably always going to suck for some people. But it doesn’t have to give you the bleat-down. We’ll cover: how to discover what the user wants, how to convey what the user needs, what we’re doing wrong, and then we’ll outline the winning formula. If things go really well with your empathetic documentation, you can reduce costs, justify a salary increase, and even become famous. No, really. I’m not KIDding.

uk: вхід без авторизації

name: You Have the Empathy of a Goat: Documenting for the User


4 Programming Paradigms in 45 Minutes

uk: Комп'ютерні науки

description: One of the most important lessons I've learned is that programming languages are tools and not all tools are good for all jobs. Some tasks are easier to solve functionally. Some are clearly suited for OO. Others get simpler when you use constraint solving or pattern matching. Let's go on a whirlwind tour of 4 different programming languages emphasizing different programming techniques: OO, functional, logical, and procedural. You'll leave this talk with a better understanding of which languages are best suited to which types of jobs and a list of resources for learning more.

uk: вхід без авторизації


A History of Bundles: 2010 to 2017

uk: Комп'ютерні науки

description: When Bundler 1.0 came out in 2010, it did something really great: installed all of your gems and let you use them in your app. Today, Bundler does something really great: it installs all your gems and lets you use them. So, given that, why has Bundler needed thousands upon thousands of hours of development work? What exactly has changed since then? Prepare to find out. We’ll cover performance improvements, server response optimizations, adapting to new versions of Ruby, and adding features to support new usecases.

uk: вхід без авторизації


A New Pair of Shoes!

uk: Комп'ютерні науки

description: While web applications dominate much of the computing landscape, sometimes you just want to open a window on your desktop. Enter Shoes! With a long history in the Ruby community, Shoes is an easy to learn, fun to use framework for writing and packaging GUI apps. It's ideal for kids, beginners, and anyone look for a simple way to build apps that run on Windows, Mac, and Linux. After many years of development, a release candidate for the new version (4.0) of Shoes is ready! Come learn how to get Shoes, how it builds on the cross-platform power of JRuby, and how you can get involved in the project.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Humans and data science are flawed on their own. Humans lack the ability to process large volumes of information. Machines lack intuition, empathy and nuance. You’ll learn how to guide users of expert-use systems by applying data science to their user experience. Layering data science within our systems allows us to take advantage of the human-touch while leveraging our large data sets. In this talk, you’ll learn the process for sprinkling data science into your applications, the challenges we have faced along the way, and how to measure the business impact.

uk: вхід без авторизації

name: Augmenting Human Decision Making with Data Science


Building a Compacting GC for MRI

uk: Комп'ютерні науки

description: We will talk about implementing a compacting GC for MRI. This talk will cover compaction algorithms, along with implementation details, and challenges specific to MRI. Well cover low level and high level memory measurement tools, how to use them, and what they're telling us. We'll cover copy-on-write optimizations and how our GC impacts them. After this talk you should have a better understanding of how Ruby's memory management interacts with the system memory, how you can measure it, and how to adjust your application to work in concert with the system's memory.

uk: вхід без авторизації


Buuuuugs iiiiin Spaaaaace!

uk: Комп'ютерні науки

description: Space is really cool. From precision electronics, to giant rockets, spacecraft can represent the best of engineering. But sometimes things go wrong. Terribly wrong. What do exploding Soviet rockets have to do with Agile development? How did LISP and Forth hacking save part of the Galileo probe? What about that time astronauts added life-saving monkey patches... while orbiting the moon! Exactly how much damage can a little dead code do? (Hint: a lot!) This talk is for anyone whose love of a good space story is rivaled only by their passion for incredibly resilient software.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: The attitude among many developers seems to be that code reviews can be either honest or nice but not both. I see this as a false dichotomy; while code reviews should be both honest and kind, they should be focused on inspiring creators to go back to their work, excited to make it better. This talk will introduce the Liz Lerman Critical Response process, a framework for giving feedback on anything creative. You'll leave this talk with tips on how to improve your code reviews by putting the creator in the driver's seat and inspiring everyone on the team to make the product even better.

uk: вхід без авторизації

name: Code Reviews: Honesty, Kindness, Inspiration: Pick Three


Compiling Ruby

uk: Комп'ютерні науки

description: Since Ruby 2.3 and the introduction of RubyVM::InstructionSequence::load_iseq, we've been able to programmatically load ruby bytecode. By divorcing the process of running YARV byte code from the process of compiling ruby code, we can take advantage of the strengths of the ruby virtual machine while simultaneously reaping the benefits of a compiler such as macros, type checking, and instruction sequence optimizations. This can make our ruby faster and more readable! This talk demonstrates how to integrate this into your own workflows and the exciting possibilities this enables.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Monday mornings are bad when the coffee runs out, but they’re even worse when all of your impossible to reproduce, “flaky” tests decide to detonate at the same time. Join us to learn a systematic, proven workflow for expertly debugging any test failure including consistent, order-related, and non-deterministic failures. We’ll discuss the importance of fixing intermittent failures before they reach critical mass and why you should eradicate the term “flaky tests” from your vocabulary. Don’t wait for an emergency to prioritize fixing the ticking time bomb of intermittent test failure.

uk: вхід без авторизації

name: Deterministic Solutions to Intermittent Failures


uk: Комп'ютерні науки

description: Debuggers can seem like dark magic—stopping a running program, tinkering with the program state, casting strange spells on VM internals. I spent much of my career diagnosing problems using “puts” because debuggers intimidated me. If you can relate, this is the talk for you! We’ll use Ruby's powerful TracePoint API to implement a simple but fully featured debugger for Ruby programs. We’ll also explore a few of the advanced techniques behind a "live" production debugger, and discuss some of the debugging features and limitations of the Ruby VM itself.

uk: вхід без авторизації

name: Dispelling the dark magic: Inside a Ruby debugger


uk: Комп'ютерні науки

description: Ruby has a rich and flexible syntax. It allows us to write not only an easy-to-read program, but also an "hard-to-read" one. This talk will show its unlimited power. We present and demonstrate some esoteric, obfuscated, and even artistic programs that we have ever created, including a program that contains a spinning globe, a robust program that can have any single character removed and still works, a program that consists only of alphabetical letters, and so on. We will also review the implementation techniques.

uk: вхід без авторизації

name: Esoteric, Obfuscated, Artistic Programming in Ruby


Finding Beauty in the Mundane

uk: Комп'ютерні науки

description: Amongst the exciting challenges of making software, there are some tasks we go out of our way to avoid: linting files, updating dependencies, writing documentation. But even the "boring" parts of the job are opportunities to make big changes for the better, little by little. In this talk, you'll learn how to make even the most mundane development tasks exciting in order to better your applications and become your team's hero in the process.

uk: вхід без авторизації


Don't get Distracted

uk: Комп'ютерні науки

description: In 2011, with a team of interns at a Department of Defense contractor, I created a Wi-Fi geolocation app to locate hotspots. It could find the location in 3D space of every hotspot near you in seconds. We made formulas to model signal strength and probable distances. We used machine learning to optimize completion time and accuracy. I was so caught up in the details that it took me months to see it would be used to kill people. What do we do when we discover that we're building something immoral or unethical? How can we think through the uses of our software to avoid this problem entirely?

uk: вхід без авторизації


FIRESIDE CHAT - Q&A WITH MATZ

uk: Комп'ютерні науки

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Ruby have many libraries named standard library, extension and default-gems, bundled-gems. These are some differences under the bundler and rails application. default-gems and bundled-gems are introduced to resolve dependency problem and development ecosystem around the ruby core. We have the plan to promote default/bundled gems from standard libraries. It says “Gemification” projects. What Gemification changes in Ruby ecosystem? In this presentation, I will explain details of Gemification and future things of Ruby language.

uk: вхід без авторизації

name: Gemification for Ruby 2.5/3.0: Future of Ruby standard libraries


Get Off the Tightrope

uk: Комп'ютерні науки

description: Do you feel stressed when you’re trying to hold a big problem in your head? Do you get frustrated when someone interrupts you and you have to start all over again? Those emotions are inevitable if you’re in the common habit of treating each programming task as a long, precarious, all-or-nothing tightrope walk. But it doesn’t have to be that way! In this talk I’ll explain why the tightrope walk is so harmful and show you some practical techniques for avoiding it.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Have you ever gotten really stuck while trying to understand the cause of a bug? Thinking of your debugging session as a science experiment, and using the scientific method can help you make progress again. Come and learn how to adapt the scientific method (the process used for scientific research) to get past that stuck place and find the cause of bugs or production incidents. You’ll walk away with a great new tool to keep you calm and focused in the face of inevitable bugs.

uk: вхід без авторизації

name: Getting Unstuck: Using the Scientific Method for Debugging


Git Driven Refactoring

uk: Комп'ютерні науки

description: Often we know that our code needs refactoring, but we have no idea where to start. Maybe we studied some common code smells and learned about the things that we should be avoiding, but memorizing the rules doesn’t automatically lead to fixing all problems. In this talk, we explore how you can use Git to recognize and address violations to each of the SOLID principles. Using diffs, commit history and pull requests you can learn to recognize patterns in code that point to problems. These same tools can help you correct those issues and write more maintainable code.

uk: вхід без авторизації


uk: Комп'ютерні науки

description: Apprenticeships are a great way to ramp up a newbie, but these programs are much tougher to successfully implement than many organizations expect. It is a surprisingly large investment to guide someone through the ups and downs of their first gig as a developer, and if you aren't prepared it can be a bad experience for everyone involved. Let's dig into what makes a robust and empowering apprenticeship, from full team buy-in to setting clear learning goals to providing a clear path to the optimum final outcome: a new full time junior developer and a team dedicated to investing in education.

uk: вхід без авторизації

name: Great Expectations: Power-Charging Apprenticeship Programs