Talks

Robot on Rails

Robot on Rails

by Max Hawkins

The video titled "Robot on Rails" features Max Hawkins in a unique lecture-performance format that incorporates machine-generated content about Ruby on Rails. The event takes place at Rails Pacific 2016 and explores the intersection of artificial intelligence and software development, particularly through the use of text generation bots and recurrent neural networks.

Key Points Discussed:

- Introduction to Machine Learning Algorithms: Max explains the use of algorithms that generate text based on a dataset of presentations about Ruby on Rails, specifically trained on around 14,000 SlideShare presentations.

- Neural Network Dynamics: The talk dives into how recurrent neural networks (RNNs) function, particularly Long Short-Term Memory (LSTM) networks, which predict text sequences based on prior characters inputted.

- Discussion on Ruby on Rails: Max addresses the accessibility and scalability issues in software development, specifically referencing Ruby on Rails, and shares anecdotes from his programming journey including experiences with major companies like Cisco and Amazon.

- Audience Interaction: Max engages with the audience, encouraging participation and sharing questions about their experiences with Ruby on Rails and related technologies.

- Text Generation Demo: During the presentation, Max provides a demonstration of the trained neural network, showcasing how it generates content after analyzing the training data. The progress of text complexity and coherence is illustrated through different checkpoint outputs from the neural network's training.

- Real-World Applications: He also touches on the implications and challenges of using machine-generated content, discussing its potential applications in various creative and coding fields, while acknowledging current limitations.

- Personal Journey as a Developer: Max reflects on his experiences, including his transition from a stable job at Google to pursuing independent work, emphasizing the evolving landscape of tech work that allows for flexibility and creativity in projects.

Conclusions and Takeaways:

- The presentation illustrates the capabilities and quirks of emerging AI technologies in generating meaningful textual content, while also highlighting their current limitations.

- The conversation emphasizes the importance of understanding software frameworks like Ruby on Rails in the context of modern programming practices.

- Max encourages developers to explore machine learning tools and understand their applications, advocating for creativity in utilizing technology in everyday coding challenges.

00:00:12.200 Thanks for coming at this crazy early hour, and thank you to the Rails Pacific team for putting on this great conference. I'm really happy to be here. Hello, everyone! My name is Max Hawkins, and today I'm going to talk about speed, access, integration, and invoking static messages. I'm going to cover developers, infrastructure, scalable frameworks, Terraform services, and Ruby.
00:01:06.080 Next, I'll use the application of reflection and storage in the client. Looks like it's time for a demo! Let's see what this is about by using the pipe bond on its own controller. We're good to go with rake data, so I'm going to put this into a rake file.
00:01:42.520 Now, how did it happen? LSTM and the future... copyright 2011 Cisco and its affiliates, all rights reserved. Torch RNN is open for testing and deployment. Let's take a look. We can try this one out. You can go to this page to see how it works. This repository is technical documentation, so I’m going to move on.
00:02:35.780 Policies should be dry—do not repeat yourself! Let's go to policies in HTML. Ruby is great; Ruby is pain. Ruby is required, and this is Ruby's home. To counter that, each of you will have new controllers to test. Okay, here's a question for you: Who is online? Show of hands, please. Some of you! Who here is using Ruby on Rails? Everyone in the room should raise their hands. Alright, who here is consulting? A couple of you. Who is using jQuery? Great! Who is programming specifically for MVC? One person. Is anyone automatically logging into a server here? No one? Who has headlight skills? No? It's known as the database. I'm moving on.
00:05:14.410 I want to share a story with you. It was May 30, 2013. At one point, I heated the Cisco Amazon EC2 stack talk factor on a Rails beta test as a metal developer. I installed JavaScript and wanted to tell you about another story: about a distributed Heroku resource block and simulations providing scalable continuous integration. The engineer said, 'But what about unicorns and the signing of the functionality of failure?' The engineer replied, 'Mac, Ruby on Rails is the answer.' He typed in the console and developed a client-server application. Now I'm going to head to this URL and present it to you. I believe this production code is broken in Rails or in the method session objects.
00:08:12.540 Your password has been reset; all the code is prima control. Check the company fire agreement: it's only confidential, exclusive domain capital filters—Ruby on Rails. When JSON is involved, it's most developed by stakeholders. Let's keep the conversation going. I don't want this to end here; please tweet about it using the hashtag #vegan, #French, #scritch, #mouse, #trackpad, and #wrestling to get the word out there.
00:10:40.110 Thank you for agile and remote connections! You are the best developers in development. You need middleware like me right now, which leads us to our next topic. Could you tell us what was going on with your presentation behind the scenes?
00:12:46.980 I’m not exactly sure. I've been really interested in these sorts of machine learning algorithms that consume a database of text, or information about a topic, and then create something that mimics that information. It's interesting to see that right now the technology doesn't necessarily work that well, which creates an interesting space. Unlike turning on a TV or running an FFT on an audio signal, there's a strange kind of otherworldly output from these programs.
00:14:06.100 So, I thought for this talk I would explore what it means to follow that and what insights it can provide about our work here. I began this project about a year ago. It started when I initiated the travel project, which was all about the numerous options available to us. Allowing a computer to help determine travel means seemed like a reasonable choice. Therefore, I utilized a computer program that understands travel costs globally to randomly suggest destinations within my budget.
00:16:05.450 In fact, I found out just a month ago that I would be here. Besides being a robot developer, I've worked freelance, providing software solutions for clients by building websites and apps.
00:18:37.790 He mentioned that I started using Ruby and exploring Rails very early on. Part of my drive for this presentation is to reflect upon how I got started programming. A lot of us learned about Ruby through the internet and a community of learners. I think my first programming tutorial was the 'Why the Lucky Stiff' Ruby tutorial. Since then, I've been watching talks on Rails and Ruby since I was in middle school.
00:20:20.359 So, is that why you left a cushy job at Google to be here? There were many reasons. I think it was interesting to be present at this conference. Besides, securing a job as a subway developer allows me a lifestyle I custom-create for myself. This flexibility enables unique experiences around the world that influence my thinking.
00:22:19.200 Now, regarding what's next: I'm still captivated by computer-generated paths. In about a month, I'll be asking the computer where I should go next, and I'll follow its directions no matter what. Typically, there is something about the destination that helps me determine my next steps.
00:24:08.360 Thank you very much! Can we take some questions? Sure! This presentation was based on a neural net I trained. I downloaded about 14,000 SlideShare presentations about Ruby on Rails and aggregated all the text—around 100 megabytes—into an LSTM recurrent neural net. After training for about 24 hours, it generated output. Theoretically, it can create something immediately. Yes, I've been working with it, and found that these neural networks predict outputs based on characters that came before them. While structuring the outline for my talk, I delete portions and have the neural net fill them in. The challenge lies in keeping the narrative coherent, as often the model veers off direction due to memory limitations.