A. Scherbenina "There'll be place for Ruby in the future"

Speaker at RailsClub 2016 and RailsClub 2017, teamlead at Artec3D
14 November

Anna Scherbenina at RailsClub 2017
Anna Scherbenina at RailsClub 2017

Software developer. Teamlead at Arctec3D, speaker at RailsClub 2016 and 2017.

On the RailsClub 2017, we’ve managed to talk with Anna about her report, her job and future of programming.

Hi! How are you? Tell something about yourself.

Hello, my name is Ann and I'm a programmer.

What is your talk about?

In short, my talk is about the fact that software solutions presented by companies on the market should, in the first place, be stable. Despite the fact that the correct patterns for solving and avoiding serious problems have been known for a long time, many companies, instead of solving their problems, still simply let them go. For example, for the last six months there have been quite a lot of cases, when some companies did not have a backup, and I'm not talking about a well-known company, I'm talking about more local companies, as the Ruby community has a lot of information circulating inside. Therefore, I think we need to stop and think: "What I'm doing right now, this contribution I make, is it really good?" Surely, there are both interesting and not so interesting tasks out there. To my mind, almost every task is interesting, because the developer's responsibility area does not end at the moment when they wrote the code. It ends when this code works stably in production for years, when this code is supported and does not lead to side effects and potential errors.

How’s the conference going?

Quite comfortable. I'm glad that my talk is the last one, because I'm afraid that I will not fit the time limit. I want to say so much! As every speaker does, I believe.

What about the programming world in the future? How do you see it in 10 or 50 years? Will there be a place for Ruby?

To my mind, there will be a place for Ruby. It is a language that actively evolves and follows trends. Like all languages, Ruby learns from the experience of other languages. When a new technology appears, some patterns of behavior that turn out to be successful in one language, affect the other ones. You don’t need reinvent the wheel, when for some specific problems there are already existing good solutions. Same thing with Ruby: I think that concurrency in Ruby is the cornerstone of the next few years, and, I suppose, it will be implemented under the influence of the experience of already existing solutions. I'm not saying that we need to borrow them, but quite a lot of good solutions are already out there, so this experience will certainly not be left without attention.

In your opinion, what are the hypest things in the technology world right now?

As far as I remember, the Guilds were the latest theme that caused a lot of discussion.

Nowadays, the job of the coder is becoming more and more popular. There are plenty of coders out there. What is your advice to stand out from the crowd?

Probably, my answer is unpopular, but I would advise to work very hard. It is necessary to work hard on yourself, as well as work for the companies, as the first "living" experience practically does not come without setting tasks from the outside. You also need to gain knowledge, to read a lot, to go to conferences. On top of that, it is necessary to communicate with other developers and to be in the same information field with them. Try to read the blog posts, including ones from those people talking here today.

Do you need to read about the code or the code itself? What is more important: theory or practice?

I think the theory is more important. in the recruitment process, several years ago, there were a lot of candidates with good local practical knowledge, the guys were smart and talented. Still, there was no basic theory knowledge at all. I think it's too bad when the developer knows only what he has already done.

Talking about feedback, a lot of people do their job and get a great satisfaction from it, e.g. building a useful thing, such as an aircraft or a ship,  that serves people and they thank you. What do you get this feeling from?

Well, I work for a company that makes the best handheld 3D scanners in the world. To do something that is the best in the world, you need to make efforts, you need to implement something new, to be unique. I am glad that I am a part of this process. In this company, my career has developed. Moreover, I like working with external deadlines. When the deadline is caused by some external factors, you need to concentrate and focus. Most of all I’m fascinated by the amount of work that is done in such a short period of time.

It is believed, that a person of each profession has its own professional nightmares connected to their job. Do you have yours?

Oh, sure I’m in my bed, sleeping from Saturday to Sunday, and they call me and say that there is a problem with one of our projects. If only it was a dream! [laughing]

Thank you for joining us, it’s been a pleasure to talk to you!

Thanks for having me!

 

R. Schneeman: "Threads aren’t evil"

Speaker at RailsClub, 2016 Ruby Hero. Top 50 Rails contributors. Maintainer of Sprockets, Heroku
15 November

Richard Schneeman at RailsClub2017
Richard Schneeman at RailsClub2017

Speaker at RailsClub, 2016 Ruby Hero. Top 50 Rails contributors. Maintainer of Sprockets, Heroku. 

On the RailsClub 2017, we’ve managed to talk with Richard about his report, his job and the future of Ruby and Rails.

Hi! How have you been? How’s Moscow?

Hi, Moscow has been great, I got here, I guess, two nights ago, and yesterday we did some tourism with the other speakers.

It’s cold, isn’t it?

Oh my gosh, it’s freezing! I’m from Texas, so I brought extra jackets, extra shirts. It’s so cold!

Well, hope you won’t fall sick. How’s the conference going? Has it met your expectations so far?

Yeah, somebody has just handed me a giant thing of cotton candy and I wasn’t expecting it, so that’s exceeding expectations. Immediately after my talk people asked questions and, at most conferences, the questions they ask are awful, while here the questions, I think, were really good and they actually added on to what I was trying to say. I really appreciated that. A lot of the developers came up to me and had good questions after the conversation.

Moving to your report. What about threads?

Well, threads aren’t evil. That was it, end of talk. [laughing] I think Ruby developers are very afraid of threads, and they don’t understand what a thread is. So, I wanted to explain the background of threads and show some cases where we can use threads. And it’s not that scary.

Is it possible to make the usage of threads easier?

The best way that I’ve seen to make it easier is through patterns. Threads are so simple, if you do too much on top of the thread and it’s no longer a thread. For example, the guilds is being proposed and that is supposed to be easier. *Cuich* is very interested in making a very easy-to-use case, but, unfortunately, if you are going to use threads, it’s going to be difficult. So, they’re not evil, but they’re hard.

What about the programming world in the future? How do you see it in 10 or 50 years?

Brain implants, I think. And we just think of what we want to happen and then it just works.

Is there a place for Ruby?

This is a very difficult question. I’ve been programming in Ruby for 10 years and when I first started, Rails had just come out and it was Rails 0.9. Everybody was so excited. I think Rails now is very immature, and to me it’s really good. To me, this means that I can be productive, and when people add new features, it’s not a big new feature, but it’s a useful new feature, and I’m really excited about that. So, I think Ruby is a really good intersection of usability and it’s getting faster. I think this is the number one goal of the core team.

So you’ve got the positive outlook, haven’t you?

Yes, I have.

Nowadays, the job of the coder is becoming more and more popular. There are plenty of coders out there. What is your advice to stand out from the crowd?

If you want to stand out from the crown, wear a big hat! [laughing] I’ve always tried to have a large impact, so I picked up maintainership of Sprockets, because a lot of people were using it and there was a need in the community. That’s what I’ve been mostly interested in. I also think, that making sure to get out will help: speak to people, go to conferences. I’ve got a tremendous amount of good feedback writing a blogpost. I’m trying to write a blogpost once a week, which is not happening this week, I’m sorry, I’m in Russia, I’m enjoying the sites.

Talking about feedback, a lot of people do their job and get a great satisfaction from it, e.g. building a useful thing, such as an aircraft or a ship,  that serves people and they thank you. Do you happen to get this feedback or is it just like a task and money?

Oh no, no, no. Well, I like getting money, I like being paid. However, I don’t have any ads on my blog or anything like that. I like sharing what I’ve learned. I learned how to program from so many different people and they were just sharing what they knew. Now I want to share what I know and it actually ends up paying back to me, because sometimes I post and I say: “Hey! Here’s how I did something”, and people reach out to me and say: “Oh, I’ve got a better way”. So, my job is very rewarding for me in this way.

Have you ever thought about writing a book? What would it be about? What would be the name of the book?

Hmm, “Programming isn’t evil”, maybe? Actually, I co-authored O'Reilly's book about Heroku. So, I guess, I can say that I’ve written a half of a book. Talking about my own book, I’d like to, but I don’t necessarily know what people want to hear about. Some of my most popular blog posts are about the service I run called “codetriage.com” and people are very interested in things like how the does the service work, how is it run, how do I get new users. They are also interested in technical problems, like “I did this, and it was wrong. Here’s how you can learn from me”, and I think this is really interesting. It could be a need to package all of it up in a book, as it is half technical, half non-technical.

It is believed, that a person of each profession has its own professional nightmares connected to their job. Do you have yours?

I don’t know. Probably, the worst that could happen is that I was just very adamant about a certain change, and I ignored some good feedback from someone else. What I mean, is I don’t mind being wrong, but I would be very hurt if someone had been trying to warn me to do the right thing and I just didn’t listen to them at all.

Oh, that’s very it's very sentimental of you. Thank you for joining us, it’s been a pleasure to talk to you!

Thanks for having me!