Ruby, Rails, and Imposter Syndrome, with Glenn Goodrich

Share this article

Glenn Goodrich on the Versioning Show
Glenn Goodrich on the Versioning Show

In this episode of the Versioning Show, Tim and David are joined by Glenn Goodrich, aka Ruprict, a developer by day and SitePoint’s Ruby Channel editor by night. They discuss the benefits of Ruby, building websites with Rails, the confusion between languages and frameworks, writing articles, dealing with impostor syndrome, whether or not Turbolinks are cool, and the story behind that intriguing nickname.



Key Takeaways

  • Glenn Goodrich emphasizes the object-oriented nature of Ruby and its efficiency for certain programming jobs, despite acknowledging it’s not perfect.
  • Rails allows developers to be productive quickly, even without deep initial knowledge of Ruby, which can sometimes lead to misunderstandings about the language versus the framework.
  • Goodrich highlights the importance of using the right tool for the job, citing his own use of Go for tasks requiring high concurrency, which Ruby handles less effectively.
  • The Ruby community is praised for its welcoming and supportive nature, making it an ideal environment for both learning and contributing to open-source projects.
  • Impostor syndrome is a common theme throughout the discussion, with Goodrich sharing his own experiences and coping strategies, emphasizing that even seasoned professionals can suffer from it.
  • Rails is still considered a relevant and powerful framework for web development in 2016, with strong conventions that help new developers learn important programming concepts.
  • Goodrich’s career trajectory was significantly influenced by community engagement, starting from a simple comment on a post that led to a major role at SitePoint and a shift towards Ruby as a professional focus.

Show Notes

Conversation Highlights

I like how Ruby implemented the objected-oriented aspects of its language. It’s not a perfect language, but none of them are. But for a lot of jobs, it’s the right tool. You can get a lot done very quickly.


Using something like Go, you can get the job done and you’re using the right tool for the job. I would strongly suggest learning other languages. Although I can’t really recommend PHP. Sorry. :p


You can be productive in Rails, and get a site up, and now know Ruby very well. There are Rubyists that get really mad when you say things like that, but it’s true. It is how I came to Ruby. I started doing websites in Rails. For the longest time, I had no idea if it was Rails or Ruby.


Even today, people will say, Are you using Rails to write your programming? I’m like, Rails isn’t the language, but they all think it’s the language. In fact, in the book, I actually do a couple of paragraphs and I’m like, Say this out loud. Ruby is a language. Rails is the framework.


I’ve learned over my long, long programming career that I don’t know everything and certainly don’t know anything about languages I don’t use. For example, I’ve used Python just a little bit, and I do not like the whitespace. I don’t like it, and I will joke around about it, but I understand why people like Python. It’s fast. The syntax is similar to Ruby. It’s easy to read. It has a lot of the same advantages of Ruby. I don’t like it. Other people like it.


If they can be productive in that and get their job done, then I don’t care if you’re using QuickBASIC … which I did use a long time ago. I’m not a zealot. I’m not a you-have-to-do-what-I-do person. There are too many smart people doing things that either I wouldn’t do or don’t know anything about to shut them out without my having experienced it. I guess it’s like I haven’t walked in their shoes, so I’m not going to rip them down or rip down what they’re doing.


It is funny to think that, because I commented on a post, I ended up getting this part-time gig that I’ve been doing for five years now. It’s really changed my career. A silly comment really ended up changing my career and turning it much more quickly towards Ruby as a profession than it probably would’ve been otherwise.


He goes, We’re going to release all your things as a book. I said, Don’t do that. He goes, Why? I go, Because” … Do you know what impostor syndrome is? … I said,Don’t do that. Don’t release those things as a book. I’m just going to get mocked.He goes,Write a preface for it.My entire preface for that book is what I would have done differently. I’m guessing anyone that got that book was like,I can’t wait to read … Oh! God …”


I think [the Ruby community is] probably just about the best programming community out there. Go has a great community. The Node community has grown up quite a bit. When it started, it was not good. It was very, very contentious and angry. I actually remember posting in the Google group for Node when it was just a few people and saying, You guys need to work this out, because you’re all angry to each other and angry at everybody else. They did. Node community is just fine now.

Glenn Goodrich on the Versioning Show

Transcript

Tim:

Hey, what’s up, everybody? This is Tim Evko …

David:

… and this is M. David Green …

Tim:

… and you’re listening to episode number 19 of the Versioning Podcast.

David:

This is a place where we get together to discuss the industry of the web from development to design, with some of the people making it happen today and planning where it’s headed in the next version.

Tim:

Today, we are talking with Glenn Goodrich. We have a number of excellent things we’re going to talk about, including — I think we’ve been told there is something about a book. So we’re probably going to talk a little bit about that. We’re going to talk about the web as usual. So let’s go ahead and get this version started.


Glenn, thank you so much for joining us today. How are you doing?

Glenn:

Great. Thanks for having me.

David:

I’m really excited to meet you. It’s great to have somebody talking about Ruby. Ruby has been a long-standing member of the web community, and it still has a great deal of validity now, in 2016, and going forward. I’m looking forward to hearing more about that from you.

Glenn:

Yeah. In fact, I just wrote a blog post on why in 2016 Rails and Ruby are still very, very relevant and very, very much worth learning.

David:

I’m glad your mind is going in a philosophical direction, because we usually start the show with a philosophical question for our guests. Your philosophical question for today is: in your current career, what version are you, and why?

Glenn:

Oh, God. I hope I’m not the last version of me. I’ve been doing this a long time, so I’m probably well past version 1. Maybe, let’s say version 9.8. The reason I say that is because maybe version 10 is where I’m going to be like perfect. Maybe 9.8. Maybe 9.5, or least, before I switch to another versioning numbering scheme — meaning I learned something new. I hope that answers it.

Tim:

There’s always 9.851.

Glenn:

That’s right. RC1.

Tim:

Because we’re going there.

David:

That’s excellent. I’m glad that you’re not thinking toward the last version already.

Glenn:

Not yet.

David:

Cool. I’m really curious. You’re working in Ruby. How long have you been working with Ruby? How did that get started for you?

Glenn:

I’ve been programming since I was about 12, which I’d say is a while ago.

David:

At least five years.

Glenn:

At least five years. Back when I had to save everything to a cassette tape. My progression of programming was Basic, to C, to .NET. I was in .NET for quite a while. I really liked ASP.NET for a long time. I think a lot of developers’ evolution is to go from — especially .NET developers, obviously — is to go from there to find something else, because .NET gets (for many people, not everybody) very frustrating. I found Ruby. I actually found Rails, and was blown away. This was probably 2006/7. Rails, I think, came out 2006, maybe 2004. It was version 2, I think, at that time.

It’s the MVC, and how fast you could get things done — it just blew me out of the water. There used to be a thing in Rails where everybody did the write your own blog and you do it in 15 minutes, and it’s just — back in the day, that was huge. I fell in love with Rails, which led me to Ruby, which is a very elegant language. I fell in love with that, and I had to work a long time to get people to hire me for Ruby, because I was a .NET person. I wanted to switch my career. That took a while. I basically had to go to a startup that would have taken anyone to do it, and learn on the job and burn through all my savings, like you do in a startup. But I did it, and I turned my career towards Ruby, and I haven’t really looked back.

David:

What was it about Ruby that really appealed to you? What features of the language drew you in?

Glenn:

Ruby was created by a guy named “Matz”. His doctrine behind it was “make programmers happy”, and it does that very well. It’s very easy to read; it doesn’t have any weird whitespace issues like Python. The object oriented nature of it is very appealing to me … or it was at the time. It still is. I’ve moved on to learn some other languages. I’m still doing Ruby every day, don’t get me wrong. I like how Ruby implemented the objected-oriented aspects of its language. It’s not a perfect language, but none of them are. But for a lot of jobs, it’s the right tool. You can get a lot done very quickly. That’s what I like best about it.

Tim [4:10]:

I want to talk real quick about the progression from .NET to Ruby. I notice in today’s landscape, a lot of developers (I’m raising my hand here) really only focus on one language. My language of choice — the thing I do almost everything in — is JavaScript. I know a little bit of PHP. If I really had to, I could get something done in maybe a couple of other languages. But in your own words, why is it something that developers should do — like branch out to and become fluent in another programming language? How easy was it for you to make that switch from .NET to Ruby?

Glenn:

I’m pretty familiar with JavaScript. I’ve done it for much of my career. I hesitate to use the phrase “full stack”, because I don’t like that phrase. (I don’t like the phrase “Ninja” either, but whatever.) The web has JavaScript, but then you have a backend. At least for the longest time, there wasn’t a JavaScript backend. I can remember the days before Node, and Express, and those tools.

You had to learn more than one. There’s a necessity. That’s one thing. There’s also the concept of the right tool for the job. Ruby, as I said, is not perfect. It doesn’t have a very good concurrency approach, or gain. Hopefully they’re going to fix that in Ruby 3. Fingers crossed.

There are languages out there like Go. I’m a big fan of Go, and it has a wonderful concurrency. It makes it easy, because if you’ve ever heard about concurrency, the first rule of concurrency is don’t do it, because it quite often leads you down the road to hell. With Go, it’s easy. It takes care of a lot of the issues that smarter programmers could get away with, and programmers like me need a language to handle it.

When you have to write things that are super fast — like system-type programs, like an ATI Gateway where it’s maybe thousands, or hundreds of thousands requests coming in, and they’ve got to route them really quick. You’re not going to use Ruby for that. Probably not going to use JavaScript for that. Using something like Go, you can get the job done and you’re using the right tool for the job. I would strongly suggest learning other languages. Although I can’t really recommend PHP. Sorry.

David:

Hey. I take that a little bit personally. I’ve been a PHP programmer over the years.

Glenn:

I’ve actually never done it.

David:

Although not lately. In fact, lately, I’ve been edging away from Ruby and toward Go myself. In fact, I used to go to some of those meetups back in the mid-2000s, when people were just starting to do those blogs in Rails. I’ve noticed a lot of the same people I saw at those meetups then are now showing up at the meetups for Go. It’s interesting that you bring that up. I’m curious how you see that transition.

Glenn:

It is funny. There’s another programmer that I work with in my company, and he is a big Rubyist. We’ve worked at the old startup together. We came to this company where I am now together. He and I both went to Gopher Con. I think Rubyists by nature, maybe, are a little more pragmatic and curious when it comes to things like, We do love Ruby, but we know it’s not the best tool for all the jobs. Because, in many cases, such as mine, you’ve tried to use Ruby for everything and been burned alive when it couldn’t handle whatever you were doing.

So you reach for things like, “What’s something faster that I can handle — again, in Go’s case — a concurrent type application with …” You look for that. I guess it’s just a Rubyist’s nature to do that. Maybe I’m wrong. Maybe it’s a programmer’s nature.

Go has a lot of momentum right now. It’s 7 years old. It just had its birthday, and it has a cute little mascot. So I don’t know. I can’t answer that with any real intelligence. Maybe it is the whole Rubyists looking for the right tool for the right job.

David:

You still do argue that there’s a case to be made for learning Ruby in 2016.

Glenn [7:40]:

For example, in a project we recently completed, it was — I call it the Buzzword Project, because it had microservices and an API gateway, and it had Redux, and it had React, and it had all these stuff that people were like — it was literally like somebody had said “These are all the buzzwords of 2015(because we started then). We shoved them all in this project, all at the same time. Most of them were pretty new, at least, to us.

We wrote all of the services for that. All the services for that project were written in Rails. It was because we could go 100 miles an hour and finish these services, and they were solid. They all had great testing coverage. We knew the language well. It was great. I think Rails has a good — especially now at Rails 5 — has a really good API story. It’s a useful tool. It’s a useful language. A lot of people think Rails might have jumped the shark. I don’t agree with that at all. For things like the front end for that particular project, we used Note and Express, and we wrote the isomorphic. (Again, all the buzzwords on this one project.) So, that was the right tool for that, and it was great.

Ruby, in the article I’ve mentioned, when you learn Rails, Rails has conventions. They have this thing called “convention over configuration”, which means there are things you need to handle in a website, but when you’re first learning things, you may not know all of them, or you may not know how to handle all of them. Rails has conventions, like, if you don’t know which database you want to use, just use SQLite, because until you pick another one, Rails will just take care of that for you.

There’s conventions around cookies, and sessions, and all this stuff that comes baked into Rails. As you learn what the conventions are, you learn what it is to build a website. What’s a session? Go figure out why Rails handles it that way — what it is and how it does it. Then you can replace it if you don’t like the way it does it, because Ruby is a fantastic community full of contributors, and gems, and all this stuff to do that. Once you master Rails, you’ve really mastered web development, if you’ve done it the right way.

Tim:

So, you wrote a book.

Glenn:

I did.

Tim:

What is this book about? Is it about web development?

Glenn:

It’s about Rails. The name of the book is Rails: Novice to Ninja. It’s published by SitePoint. It is an update of a book that was written for Rails 2, which is … we’re on Rails 5, so it’s three versions ago. It was in bad need of an update, because Rails has changed very, very much between versions.

The first edition was written by a guy named Patrick Lenz, and he did a really, really good job. In fact, I used a fair amount of his content in this update. It is updated to Rails 5. It is very much aimed at the person that is new to Rails, and or new to web development in general. It doesn’t cover some of the more advanced pieces of Rails. Not very much at least. It gives you springboards off to it. It’s 513 pages, I think, so it’s a hefty book, and it took months and months and months of work, but it was worth it. It was a good effort, good fun.

David:

You would say that Rails is still a good introduction to programming foe people who are new?

Glenn:

Yeah. The good thing about Rails — and I’m not sure that this is true of any other web frameworks. The ones I know about it certainly isn’t, like Express. You can be productive in Rails, and get a site up, and now know Ruby very well. There are Rubyists that get really mad when you say things like that, but it’s true. It is how I came to Ruby. I started doing websites in Rails. For the longest time, I had no idea if it was Rails or Ruby.

David:

I know what you mean. That was me in 2005 too.

Glenn:

Yeah, that’s Rails. Even today, people will say, Are you using Rails to write your programming? I’m like, Rails isn’t the language, but they all think it’s the language. In fact, in the book, I actually do a couple of paragraphs and I’m like, Say this out loud. Ruby is a language. Rails is the framework. The point of that is, really, that you can come to web development through Rails not have to learn a whole language. I don’t think you could really do that with Express. I don’t know that you could do it with anything in Python. You certainly couldn’t in Go. [Laughs]

David:

I feel as if the Rails paradigm has inspired a lot of the newer frameworks — the champion to convention over configuration. I feel like that’s been picked up to a certain extent, although perhaps not as deeply as Rails has implemented it.

Glenn [12:00]:

I think Django is very similar, from what I know about it. It’s the Rails on Python, or at least that’s what I’ve heard.

You know, DHH, and the guy who created Rails …

David:

David Heinemeier Hansson

Glenn:

Yeah. A polarizing individual at times. Certainly brilliant. He did The Rails Doctrine. He rewrote it sometime last year I think, and it’s really quite good. It’s 7 or 8 tenets, and not really any of them are like, Make a website. It’s more like, Throw up a big tent so that we have a big community. We want to stay on the edge of web development over stability. Whether or not you agree with all these tenets, it’s immaterial.

The point is, we have a framework to make websites, and it has 8 tenets about community and making sure it stays on the edge of technology. All this thought goes into just these things. It’s pretty amazing. I don’t know any other framework that has that much thought put into things that aren’t directly related to writing code.

David:

I know. I’ve still been guilty of making the joke that Rails is the perfect framework if you want to write Basecamp.

Glenn:

Yes. That’s true. It did come out of Basecamp. There are definitely things in Rails that people don’t agree with, and that I don’t agree with, I don’t use. Again. You can pull them out. It’s convention over configuration. If you don’t like Turbolinks — it’s one of those things that people don’t like. And I will tell you that, until I wrote this book, I didn’t like them either, but I had this part of the book. I wanted to make sure people understood, and so I wrote about Turbolinks. I was like, Those are kind of cool, actually. You can yank them out. It’s not hard. You can replace almost anything Rails does by convention very easily. People that got hung up on the “Rails way” probably don’t use Rails every day — or at least not for anything significant.

Tim:

I feel like we see a lot of contention in the modern programming landscape, wherein someone publishes a post on Medium and they say, Don’t ever use such and such in this language. How do you approach things you don’t like in languages? How do you deal with those types of posts around the internet wherein you see people saying, Don’t do X or Y when you’re programming.

Glenn:

If you ask me this question 5 or 10 years ago, you probably would have gotten a much more fanatical answer. I’ve learned over my long, long programming career that I don’t know everything and certainly don’t know anything about languages I don’t use. For example, I’ve used Python just a little bit, and I do not like the whitespace. I don’t like it, and I will joke around about it, but I understand why people like Python. It’s fast. The syntax is similar to Ruby. It’s easy to read. It has a lot of the same advantages of Ruby. I don’t like it. Other people like it.

If they can be productive in that and get their job done, then I don’t care if you’re using QuickBASIC … which I did use a long time ago. I’m not a zealot. I’m not a you-have-to-do-what-I-do person. There are too many smart people doing things that either I wouldn’t do or don’t know anything about to shut them out without my having experienced it. I guess it’s like I haven’t walked in their shoes, so I’m not going to rip them down or rip down what they’re doing.

David:

You’ve also been working with SitePoint, I think, for now, five years, doing the Ruby Channel there. I’m curious how you came to that.

Glenn [15:24]:

There used to be a guy that worked at SitePoint named Aaron Osteraas. He’s either in Australia or New Zealand, because they used to be spread out among both. I think they’re all in Australia now.

I added a comment to a post on SitePoint — like a Ruby post. Everybody that puts a comment on this post can be entered for a drawing to attend RubyConf New Zealand at that time. I lived in Charlotte, North Carolina, at that time, and I won. I said, “That’s great! I can’t go. There’s no way I can afford to go from Charlotte, North Carolina, to wherever it was in New Zealand. I ended up giving the ticket to somebody else that lived in New Zealand.

But, I had a dialogue with Aaron. He’s like, Have you written a blog post before for Ruby, or anything else? I said, No. He said, Why don’t you write a couple? I wrote about a 15-post series on building a Rails app, called Loccasions. I didn’t mean for it to be 15 posts. It ended up being 15 posts. It’s super long. SitePoint actually made a book out of it. It’s not a very good book. They’ve put them all together and they released it as a book.

In the middle of that somewhere he goes, I need an editor for this Ruby stuff. Do you know anybody? I seriously think he was fishing for me to go, I’ll do it, because that’s exactly what I did. I went, I’ll do it. The rest is history.

It is funny to think that, because I commented on a post, I ended up getting this part-time gig that I’ve been doing for five years now. It’s really changed my career. A silly comment really ended up changing my career and turning it much more quickly towards Ruby as a profession than it probably would’ve been otherwise.

Tim:

Your first post turned into a book. You really took the easy way out there.

[Chuckling]

Glenn:

Yeah. It’s funny, because I had to write a preface for the book. He goes, We’re going to release all your things as a book. I said, Don’t do that. He goes, Why? I go, “Because” … Do you know what impostor syndrome is?

Tim:

O yes!

Glenn:

The total fear that somebody is going to … I have been doing this for 27 years, and I still have it all the time.

Kent Beck is probably the greatest guy to follow on Twitter, by the way, because he is a god among us all. He constantly tweets out things like impostor syndrome and how it rips him up. I was like, If he’s got it, then I’m okay if I have it.

Anyways, I said, Don’t do that. Don’t release those things as a book. I’m just going to get mocked. He goes, Write a preface for it. My entire preface for that book is what I would have done differently. I’m guessing anyone that got that book was like, I can’t wait to read … Oh! God. This guy doesn’t even want to get …

[Laughter]

David:

I’m taking notes. I may have to start the next piece of writing that I do with a huge disclaimer too. It must be very satisfying.

Glenn:

It’s bad, but it is impostor syndrome. It’s like, Don’t tell me I suck, because I’ve already said it. I guess that’s what that preface … I did not do that in the preface of the latest book, because … I don’t know. Growing up, I guess.

David:

The Ruby community is actually very — it’s always been very open to people. One of the things I remember right from the start is people at all levels were participating in the open-source aspects of Ruby development. It always felt like it was a very open and welcoming community.

Glenn:

It definitely is. I think it’s probably just about the best programming community out there. Go has a great community. The Node community has grown up quite a bit. When it started, it was not good. It was very, very contentious and angry. I actually remember posting in the Google group for Node when it was just a few people and saying, You guys need to work this out, because you’re all angry to each other and angry at everybody else. They did. Node community is just fine now.

Ruby has always been very open, and everyone I’ve ever asked for help in Ruby has been amazing. I’ve met more people just online. In fact, today, I had lunch with a guy named Richard Schneems, who is a big Rubyist. He works for Heroku. We didn’t know each other other than we met on Twitter. I saw him at a couple of meetups one time, and then I come to Austin, and Let’s do lunch, and it was great. Just like old friends. We talked about Ruby. We talked about other things. It is a fantastic community to learn anything in and to be in.

Tim:

So, speaking about open-source stuff, do you have any fun, open-source-type projects you work on?

Glenn [19:38]:

I am the buffet open-source contributor. I go through and find a bug that I fix and I move on. I did that jQuery UI, and it must be 10 years ago that I contributed to jQuery UI. I just got an email. Some guy was like, Thanks for all you great contributors to jQuery UI. I was, “O my God.” I did this little bug fix 10 years ago …

I’ve contributed to that, to Angular. I’ve never contributed to Rails, because I’ve been super intimidated by it, which I shouldn’t be. I’m actually writing a post right now on why Rails is a great thing to contribute to. I think it’s a half a letter to myself to do it.

I have released some very unknown, not used open-source libraries — one for a graph database called Orion DB, which probably nobody has ever heard of, that we used in a couple of jobs ago. I wrote a Ruby gem for it. Other than that, it’s machine gun contributions across the board. The short answer is no. If you go look at GitHub, it looks like I do a ton of open source, but it’s all machine gunny, varied little things for libraries out there.

David:

I, for one, am very glad that you’re writing these notes for yourself that we can all benefit from, because I definitely benefit from reading those things too. I’m grateful that you came here and that you were able to share all these information with our listeners. How can people find you online?

Glenn:

You can email me at glenn.goodrich@sitepoint.com. On Twitter, I’m @ruprict. On GitHub, I’m ruprict. Almost any service that programmers use, I’m probably on there as “ruprict”, which is my name I’ve used for everything since the beginning of time.

David:

Where did that come from?

Glenn:

Have you ever seen a movie called Dirty Rotten Scoundrels?

David:

I’m tracing my memory.

Tim:

Bits and pieces.

Glenn:

Steve Martin and Michael Caine, and they’re grifters. They scam people. In one of their scams, Steve Martin plays this very odd boy, Ruprict. They call him Ruprict the Monkey Boy. In college, somebody gave me that nickname — for reasons. It just stuck. Even my wife calls me Ruprict. That was a few years ago. Yeah, silliness.

David:

Fair enough. Thank you Ruprict for joining us today, and I think we’ll be able to put some information about your book in the show notes as well.

Glenn:

I appreciate it. Thanks for having me.


David:

That show brought back some old memories for me, because it brought me back to my old Ruby days back in — what was it? — 2005 I think we were talking about. It’s been a while.

Tim:

Yeah. I felt like when Glenn was talking about Ruby, I almost felt like with the familiarity that he talks about it, it almost felt like I knew what Ruby was. I don’t really know that much about Ruby. I’ve used Ruby for Sass. I would venture to say most people have when it first got started before it was ported to LibSass, and then Node. He has such a familiarity with the project with Rails, with the history, with the people who worked on it, that I’m thinking myself of getting that book and just learning a little bit more about it.

When he was saying that things like sessions, and cookies, and the way Rails has this sort of all-encompassing framework that goes to teach you a little bit more about these paradigms and how to work within them. It seems like it is a very good framework for new developers to get started with.

David:

I feel like it taught me a lot. Honestly, when I started with Rails, I was fairly fresh as an engineer. It wasn’t something that I was very seasoned at. The philosophy of preferring convention over configuration, and having a whole community of programmers who followed the same conventions and could share code, and could understand what everybody was working on, because everything was written in the same ways, and were working with the same pieces.

It was a great introduction to how to structure a web application at a time when web applications were still a new concept, and they needed that kind of structure.

Tim:

I also really like how Glenn approaches his career, I would say, philosophically, because it’s a versioning show. He approaches his career as, What am I concerned about? What am I trying to tell myself? He goes on to either write about or work on those sorts of things.

It’s cool being able to talk to people who work that way, because most of the time, the questions that you have, or the questions that other people have — if you address those, you’re going to be able to reach a lot of people and teach a lot of people about the thing that you’re interested in.

David [24:00]:

It was particularly enlightening to see just how extremely he suffers from impostor syndrome, which I know we’ve discussed before on earlier shows. No matter how much we discuss it, I am never going to get over that, I don’t think.

In some ways, it’s comforting to know that people as experienced and seasoned as he is with what he’s doing, still feel that. In other ways, it’s just terrifying because that means that is my life from now on and it’s never going to change.

Tim:

I think it’s interesting. I’m always astounded by impostor syndrome, because I know there are people that get it to very extreme degrees. There are people who don’t deal with it very much at all. I think it largely depends on where you’re at in your life, and your stages of maturity, and how humble you are as a person.

I think my theory — I’m probably wrong. Tell me if I’m wrong, David. My theory —

David:

I’m sure I’ll know if you’re wrong.

Tim:

Yeah. Nice. Man, puns … My theory is that impostor syndrome in this career is so prevalent, because what we do is so technical. In the general corporate world you can use buzzwords, and you can slide your way around concepts and pretend to fit in. When you’re talking about software development, that’s a lot harder to do. It’s a lot harder to draw the graph of how databases are going to deliver information more quickly to your front-end user if you really don’t know what it is you’re talking about.

That pressure to have a very accurate technical know-how weighs on the back of all of our heads. At least, for me, it’s always there. Especially when I’m in a new environment — an environment where I’m not yet comfortable. Impostor syndrome is right there in the back of my head screaming, What if you don’t know? What if you don’t know what you’re talking about? That’s my theory. My theory is because of the technical nature of our field, that’s why it’s so prevalent. What do you think?

David:

I wonder if it’s unique to our field. It certainly discussed more in our field, but I’m not sure why that would be. At least, then again, maybe I don’t know. Maybe it is discussed more in other fields as well. I imagine an academia, there’s a lot of fear of impostor syndrome. Again, it probably does get down to something similar to what you’re talking about, where there is an established body of knowledge that everybody is expected to be familiar with. If you’re not conversant with the current terminology and the latest data, then you have somehow failed to meet the expectations of having a normal conversation around the topic.

Tim:

I think there also might be — since there is such a lack of pedigree in our field, I’m not certified in anything to write JavaScript for your company, but I get paid to do that. I’m certainly not certified to handle large-scale data of customers, but I get paid to do that. It’s a scary thing.

David:

Actually, it’s interesting, because I also work as an agile coach, and I help teams apply agile techniques to the way that they work together. There’s a whole industry around certification for people to work in agile, and I’m completely uncertified. Everything that I know about it is self taught from learning and from experience. What I’ve seen is that there are a lot of people out there who go and take all the classes and get all of the points on their chits and they get completely certified, but they don’t really know how to run an agile team — unlike the people who are going out there and doing it on a regular basis.

The certifications, you can check them off on your resumes. I think, honestly, it’s one of those things that makes me feel that imposture syndrome might be a curable concept if you realize that the ability to do something is more important than the certification that you might get in it.

Tim:

I think it is curable, or at least I want to believe it’s a curable disease. Can we call it a disease?

David:

Syndrome.

Tim:

Syndrome. I think it’s curable, is what I mean to say. You know what would be interesting? It would be very interesting if we actually brought on a psychologist and talk to them about it.

David:

I bet we could find one. In fact, I bet we could find one who’s interested in web development.

Tim [28:00]:

That would be super cool. Listen, dear listener: if you are, or know of a psychologist, maybe who also is interested in coding — but that’s not a prerequisite — let us know. We would love to talk to them about impostor syndrome, and why it happens, and what you can do to just get rid of it forever.

David:

Yup. The best way to get in touch with us to tweet us @versioningshow and let us know. Maybe some of you have gone out and sought counseling for your own impostor syndrome and worked with somebody you think we should talk with.

Tim:

And good for you if you have, because that is an excellent way to actually get rid of it. Rather than just talking about, like David and I are doing right now.

David:

[Chuckles] Well, we’ve gotten pretty far off topic, but I think that what Glenn was talking about about impostor syndrome inspired us to think more about that. The nice thing about talking with somebody who’s been in the Ruby community for such a long time was thinking about what a nice community it is and how engaging. It’s one of the things that attracted me to the Ruby community, and actually encouraged me to work in Ruby as supposed to Python, was the fact that the people were so welcoming and so open.

Tim:

Yeah. I didn’t really realize that the Node community started off a little bit contentious. It was interesting what he said, as a lot of these communities do start off in Google groups. The image of him just jumping into the community and saying, Hey guys, maybe you should work this out, was funny to imagine, but definitely good for him for doing that.

It was really encouraging to see how Ruby cements the idea of a strong community into their core tenets. At least it wasn’t something that around that time it seems like that wasn’t something that a lot of new programming communities really made their goal. It certainly does seem like something that new communities are starting to do.

David:

These days I think that the Go community — as Glenn was saying, and as I think I’ve noticed — the Go community has inherited a lot of that from the Ruby community, and a lot of the people from the Ruby community, too.

Tim:

Yeah. We know that it’s good, because it enables the people to profess the language more and evangelize it. It also enables newcomers to learn it better and then go out and do the same thing. If you encourage good community, your project will succeed. It’s just a matter of time.

David:

If only Go were more searchable on Google.

Tim:

Or easy to use, but we’ll get into that in another day. We should actually also talk to someone who works a lot with Go.

David:

Ah, I know a few.

Tim:

Nice. Excellent.


Well, thank you so much for listening, everybody. We always enjoy getting to talk technology with all of you.

David:

We would also like to thank SitePoint.com, and our producers, Adam Roberts and Ophelie Lechat, with production help from Ralph Mason. Please feel free to send us your comments on Twitter — @versioningshow — and give us a rating on iTunes and let us know how we’re doing.

Tim:

We’ll see you next time, and we hope you enjoyed this version.

Frequently Asked Questions about Ruby on Rails

What is Ruby on Rails?

Ruby on Rails, often just called Rails, is a web application framework written in Ruby. It is designed to make programming web applications easier by making assumptions about what every developer needs to get started. It allows you to write less code while accomplishing more than many other languages and frameworks. Rails is also incredibly flexible, making it a great solution for both small and large projects.

Who is Glenn Goodrich?

Glenn Goodrich, also known as Ruprict, is a Ruby and Ruby on Rails enthusiast with years of experience in the field. He has written numerous articles and tutorials on Ruby and Rails, and has been a guest on several podcasts, including the Versioning Show. His insights and expertise are highly valued in the Ruby community.

What is the Versioning Show?

The Versioning Show is a podcast that explores the world of web development. It features interviews with industry experts, discussions about the latest trends and technologies, and tips for improving your skills. The show is hosted by Tim Evko and M. David Green.

How can I start learning Ruby on Rails?

There are many resources available for learning Ruby on Rails. You can start with online tutorials and guides, which provide step-by-step instructions for building your first Rails application. There are also several books and courses available, both free and paid, that can help you deepen your understanding of the framework.

What are some common uses for Ruby on Rails?

Ruby on Rails is used by many high-profile companies for a variety of purposes. It’s often used to build web applications, from simple blogs to complex eCommerce sites and social networks. Rails is also used for data analysis, prototyping, and even for building APIs.

What are the benefits of using Ruby on Rails?

Ruby on Rails offers many benefits for developers. Its convention over configuration approach saves time and effort, as it eliminates the need for much of the boilerplate code that’s required in other frameworks. Rails also has a strong focus on testing, making it easier to create robust, reliable applications.

How does Ruby on Rails compare to other web development frameworks?

Ruby on Rails is often compared to other web development frameworks like Django, Laravel, and Express.js. While each of these frameworks has its own strengths and weaknesses, Rails is known for its ease of use, flexibility, and strong community support.

Can I use Ruby on Rails for mobile app development?

While Ruby on Rails is primarily used for web development, it can also be used in conjunction with other tools to develop mobile apps. For example, you can use Rails to build the backend of a mobile app, handling things like data storage and authentication.

What is the future of Ruby on Rails?

While it’s impossible to predict the future with certainty, Ruby on Rails continues to be a popular choice for web development. The Rails community is active and vibrant, and new versions of the framework are released regularly, each with improvements and new features.

Where can I find more resources on Ruby on Rails?

There are many resources available for learning more about Ruby on Rails. In addition to the official Rails guides, there are numerous blogs, tutorials, and forums where you can find helpful information. You can also check out podcasts like the Versioning Show for insights from industry experts.

M. David GreenM. David Green
View Author

I've worked as a Web Engineer, Writer, Communications Manager, and Marketing Director at companies such as Apple, Salon.com, StumbleUpon, and Moovweb. My research into the Social Science of Telecommunications at UC Berkeley, and while earning MBA in Organizational Behavior, showed me that the human instinct to network is vital enough to thrive in any medium that allows one person to connect to another.

Tim EvkoTim Evko
View Author

Tim Evko is a front end web developer from New York, with a passion for responsive web development, Sass, and JavaScript. He lives on coffee, CodePen demos and flannel shirts.

PodcastRalphMsitepointversioningVersioning Show Episodesweb
Share this article
Read Next
Get the freshest news and resources for developers, designers and digital creators in your inbox each week