Elizabeth Kaplan
Hello and welcome to Code[ish], an exploration of the lives of modern developers. Join us as we dive into topics like languages and frameworks, data and event-driven architectures, artificial intelligence, and individual and team productivity. Tailored to developers and engineering leaders, this episode is part of our “Heroku in the Wild” series.
Julián Duque
And today we have the opportunity to talk with Errol Schmidt, CEO of reinteractive and Heroku Partner. Errol, how are you doing?
Errol Schmidt
Yeah, fantastic. And it’s great being here.
Julián
Thank you very much for joining us at Code[ish], our Heroku podcast. We are so happy to have you here. For those who are listening right now, you know that we are restarting and relaunching the podcast, and we are glad to be able to talk to our users, community leaders, partners, developers and open-source maintainers.
Julián
We want to learn what they are doing with Heroku and other technologies. This is a deeply technical podcast, but also an opportunity to see what others are doing with our platform. To start, Errol I want to ask you a question. What’s your first experience with Heroku? How was that?
Errol
Yeah. Okay, so our first experience was probably about five years ago now.
Errol
To give you some background, I have been a developer for a long time and most of that time working with AWS. So I’m sure many of your listeners would be as well, when you start working with AWS and I got into that in the early days right, and it’s complex. You want to get something right and you’re always doubting.
Errol
Did I set that up correctly? So my very first experience with Heroku was, I think, was just doing a Trailhead actually. And did the drill, set it up, clicked the button. It was done. I was like “oh, that can’t be it. There’s got to be more to this, there’s got to be some other complication. What? Did I forget the security?
Errol
Did I forget the backups? Did I forget to set up the database?” But no, there it all was. So, I think most people have this experience where they go “oh that was magical.” But it is.
Julián
I remember in my time I had to set up an Apache server, the actual configuration files. I used to be a PHP developer before.
Julián
So, can you imagine all the things you have to do to get your application running? And this is pre cloud. So like, upload files with an FTP, unzip things with SSH, doing things manually. And then the cloud starts, like, coming in. But the experience of just run one command or click one button and have the thing running.
Julián
It was for me when I did my first deploy back in 2011, if I’m not wrong, it was that, like a magical experience.
Errol
Yeah, yeah. I remember at AWS my first experience trying to follow the instructions to set this thing up using the command line. And it was just meta, meta. And I’ve got to be honest, I didn’t understand it. So when it went wrong you’d have to go back and go, okay, what didn’t I type? Where did I go wrong, and edit.
Julián
If you have good documentation and good tooling that I think is not going to be a problem, but sometimes it’s obscure. You need this set of skills. Understanding what you are doing in order to do it right, especially around security, networking, configuration, etc.
Julián
Awesome. So, tell me a little bit more about your background as a software developer.
Errol
Yeah, well, I have to admit PHP as well.
Julián
Oh, nice. Nice. I mean, it is like most of the web is just running on PHP still.
Errol
I mean, I’m anti-PHP these days. But that’s not to put anybody off.
Errol
Truthfully, I started in HTML back before there was a CSS. You probably look at me now going “gee you can’t be that old,” well I’m that old. And sort of just progressed from there, you know, moved into, you know, CSS and then JavaScript and then PHP, and that’s my background. So, you know, that’s a lot of hard-won hours in front of a computer.
Julián
You were around in all of this, Ajax inception.
Errol
Oh, yeah. Oh, yeah, making everything Ajax.
Julián
Of course. That was the whole thing back in the day.
Errol
Yeah, but, you know, I had a lot of fun doing that. And I developed some things that I thought were pretty good. Built some pretty good applications for people. I remember coding an entire ecommerce website for a company and then realizing there were plugins that could just do the whole thing.
Julián
Yeah.
Errol
Anyway, that’s the old days. I moved from there into sales. I like talking, I don’t always like sitting in front of the computer. So, I moved into sales and I like doing sales, it’s still my favorite thing to be honest. Got a job at reinteractive and eventually moved into the CEO role.
Julián
Oh, nice. And tell me more about reinteractive, what does the company do?
Errol
We specialize in Ruby on Rails.
Errol
So basically, we have offices in Australia in Sydney and also in San Francisco, so we operate internationally. So, the company started 15 years ago, and we are very probably one of the oldest existing Ruby on Rails solely development companies. I say that because there are other companies that have been around longer, but they don’t specialize in Ruby on Rails any longer.
Errol
And so we have maintained that viewpoint, it’s all we do besides the odd bit of JavaScript framework around it. That’s what we specialize in and picked up Heroku very early on in the piece as well. So, founder of the company, Mikel Lindsaar, is one of the early guys who was actually on the original commit team.
Julián
Oh nice.
Errol
Yeah. So, his experience goes way back. He actually wrote the Mail gem.
Julián
Oh yes, I remember that one. I used to be also like Ruby developer, but long time ago, like 2010 before Node.js. I started doing Node.js and then like I got converted. Let’s go full JavaScript.
Errol
For your listeners then. Well, for our listeners, I should say, so the Mail gem is a library, code library that exists in almost every single Ruby on Rails application that simplifies the process of sending mail. Downloaded hundreds of millions of times. That’s Michael, he’s since moved off to another company, so I run the company. He started using Heroku in the early days before its acquisition by Salesforce, because Heroku was actually developed for the purpose of Ruby.
Julián
Yeah, that was the main platform, the main language that that we used to serve.
Errol
There’s definitely an interesting relationship that still exists when you go to conferences and you talk to people. So, we continue to use Heroku today because it is still the best tool for Ruby. When we do development work for a lot of companies they’ll bring their applications to us. They will sit on one of two things: AWS or Ruby, occasionally. But it’s typically one of those two. The AWS applications generally have complex and untidy infrastructure layers and the Heroku applications are a dream to work with.
Julián
Nice. That’s pretty good to hear. Does reinteractive only serve the Australian market? Or are you expanding to serve other countries?
Errol
We definitely operate internationally. So we have that alliance with the US, so that’s where spend a lot of my time in the year and I very much like it over here so that works out very well. But yeah, we have a lot of clients here. In the Australian market obviously they’re a much smaller market. So there’s us and maybe one or two other larger development companies. Between us we own the entire market of Australia. So, the US there’s a lot more expansion.
Julián
Nice. I got asked yesterday a pretty tough question. And I want to ask you because I felt it was really good. What has been the most interesting thing that you have learned in the past six months?
Julián
Like something that gives you like, “oh my God, this is really nice.”
Errol
You’re probably gonna hate me for being so boring about it, but I think every day I learn something new on the subject of AI. I’m the sort of person that continually, I’m reading, I’m listening to webinars and so on, and try to learn as much so I can. Every day I learn something new and interesting, and I’m in this very fortunate position
Errol
where I get to speak to the most interesting people from all over the world that have got the most incredible stories and are doing the most amazing things with the technology. We can sometimes take that technology for granted. I think this is like a factor of being a developer or anything in the industry for a while. You can start to take things for granted, but when you hear the amazing things that people are doing every day, I probably haven’t even answered the question.
Julián
No. keep it going, keep going. This is this pretty good. Don’t stop.
Errol
Just this morning I met a guy. He’s a local in San Francisco, and he’s developed a code library to implement AI within Ruby on Rails apps. And he is the most interesting guy. Like, he had the most amazing things, and I asked him. “What are your applications?” Because one of the things that I considered to be a barrier at the moment is trying to find business-ready applications for AI. Granted, there is a lot of sideshow about it.
Julián
It is a lot of experimentation.
Errol
Experimentation. That’s the right word for it. Yeah, not sideshow, the experimentation. Which is fine and there needs to be. Like people like us need to be playing with it every day to figure out “how are we going to use this?” So I asked him, what are your business-ready cases?
Errol
And he gave me two examples. The two that he gave me were both vision-based AI, which is the thing he specializes in. So, vision-based AI is having the AI recognize details from an image. And he said this is one of the areas that has come so far just recently. And we all love you know, you can use ChatGPT to analyze a photo, like ask it “what’s this photo?”
Errol
So the first application he told me about was putting cameras into a dairy shed where the milking cows in their pens and so on, and the cameras watch the cows and can tell by their eating habits and their behavior if they’re getting sick and if they’re getting sick, they can treat that cow before it becomes an issue and they lose. Which I just found amazing because it’s a cow, and he said
Errol
“Oh look, it’s easy. You can tell how much it’s eating and drinking and you can watch the cow because it’s an otherwise static thing.” And he said the interesting one that he did just after that was even more incredible. And this was in medical. And what he does, he’s got it in an operating theater, where operations are being done, and has a camera that sits above the patient and the many people that move around the patient.
Errol
And what this tool does is it counts the number of items that go into the operating theater, watches them, and checks them coming out of the operating theater. And the reason for that is you don’t want to leave something inside a person.
Julián
Definitely not. That sounds terrible.
Errol
That is the most incredible use case. And there is an incredible use.
Errol
And you couldn’t have done that six months ago, twelve months ago…impossible.
Julián
Yeah, I think it’s a pretty good example and use case of AI augmenting the job, augmenting the tasks that you need to perform instead of, “okay, this is going to replace me,” which is which is this feeling that a lot of people has like, “okay, AI is going to replace me.”
Julián
I personally don’t believe that, even though in my case, I’ve been trying these newer AI based IDs. Pretty much you are coding and you’re building project with prompting and it’s fully automatic, which is impressive. But it still needs the person that’s skilled enough to know what to input, review that whatever this AI is building is correct. It is solving the problem you are pretty much writing in the prompt. So it is augmenting my work in some case, and it is giving me some productivity enhancements, but it is not taking over what I do.
Errol
Yeah, yeah.
Julián
And I think it’s very important for people right now to start learning, even though in the most simplest use cases, which is prompting. How to ask questions to an AI, this is the same skill that we have to get, I don’t want to get wrong, but maybe 20 years ago, how to search on Google or how to search on a search engine. What to write on a search engine or as basic as working on a spreadsheet and doing basic formulas becomes something like everybody needs to know. Yes, exactly. So, a lot of people ask me because I’ve been doing, like, some talks around AI.
Julián
It’s like, Julián what do you think we should do to not get left behind? I say, okay, no, go ahead. And you don’t need to study the math. You don’t need to go into the deep research papers unless you are very interested in that topic. But at least understand what is the problem that is being solved and how to ask the proper questions, how to prompt.
Julián
And I know a lot of people keep saying that prompt engineering is the most important thing and it still is. I think it’s very important to get that skill.
Errol
I had a thought on that just recently, actually, because I’m currently assessing internally, we’ve got a large team of developers and I’m assessing which tools and how to use those effectively so that we basically can do more work in less time.
Errol
Clients are happier. And I think the job of writing the correct prompt or series of prompts for a developer to get good code out is a little bit similar to what the job, a good project manager. Because a good project manager has to figure out what’s the problem we’re trying to solve and translate that into “here’s the story, here’s the details,” and that is a little bit similar to what we’re going to tell the AI.
Errol
And the thing is, a lot of people right now who think that they can type a very basic prompt into an AI tool and get back a piece of code that they can use in a program. And they’ll get back something that probably isn’t what they actually wanted in the first place, and the answer to that would be probably.
Julián
Yeah, exactly. You need to iterate, of course, to be able to get exactly what you need. And the more specific, the more descriptive, it can get you there. You mentioned something earlier about these business use cases, like now using AI let’s say it in production. In your customers, or the people you are talking to right now, do you see that there is like a good adoption?
Julián
Now companies are being more conscious about the adoption of AI and they are asking you and your company to implement the solutions? Or they are still hesitant to do it?
Errol
We completed a couple of good projects recently, like over the last 12 months we’ve completed a couple. But mostly people are still hesitant. The reasons they’re hesitant obviously with dealing with enterprise-level businesses and the hold back is around mostly security.
Errol
So, there is a concern still, is the AI tool going to be using the data that I put into it for further learning? And if you interrogate it, the answer is no. But can we be sure of that? I can’t guarantee that to anybody. I like the way Salesforce does it, removes personal information, pulls that out before the prompt is sent off, comes back, data is put back in.
Errol
I think that’s quite smart. For many enterprises though that’s still not enough. And how to mitigate for them, I’m not entirely sure. There’s a couple of ways that I would consider, one would be to host everything within the same environment.
Julián
Exactly.
Errol
I think that’s probably the best way to do it. Then we have the secondary problem of is it going to leak data?
Errol
And I think things have come a long way in the last 12 months. Twelve months ago, we were still dealing with that problem of data, from this example, here is going to go into this one incorrectly. That was still happening. Today I don’t think that is the case, but can we be certain of it? And that’s where companies are going to still.
Julián
Yeah. In the case of data security and trust, that’s a delicate topic. You mentioned tools within the same infrastructure, but that’s super expensive. And that will require also another set of knowledge and skills to be able to maintain, like, an inference service within your infrastructure. Even though it is possible, I don’t think that’s going to be the route for a lot of corporations to adopt and implement AI.
Errol
Yeah, we have to trust the open AIs of the world at some point.
Julián
Or believe in things like what Salesforce is doing with the LLM gateway, data masking, all of those, like, guardrails around the super important data that you have on a like on an org like Salesforce, which is customers that are using Salesforce, they have like pretty sensitive data that they don’t want that data out.
Julián
Have you been doing projects or evaluating Agentforce in any of your software projects right now?
Errol
Yeah, the only real-world one that we’ve done along those lines was to implement an AI chat model. So, one of clients is called Norths Collective and they are a hospitality group in Australia. And the guy that runs the marketing and the IT infrastructure of that company, Robert Lopez, great guy, recently got himself a gold hoodie.
Julián
Oh, really nice.
Errol
Yes. Couldn’t go to a better guy. He’s fantastic. So, he’s a very strong adopter, of course. So, we developed an app for them a couple years ago. So that’s a membership app. So, they’re the vendors that people that go to the restaurants in the clubs and so on have an app to do the sign in and check out their shows and all that sort of stuff.
Errol
So, they recently integrated Agentforce to answer questions on the website and stuff. And so we just put the chat tool onto the mobile version as well. So that’s sort of like an immediate introduction to it. Implementing that is incredibly easy though, like it’s a couple of snippets of JavaScript and we were done.
Julián
Nice. And have you done like any integration between, say, Agentforce and Heroku or use cases around that?
Errol
As a proof of concept. So, I’ll be doing a talk at TDX, which will be done by the time this podcast comes out, discussing that exact subject of how to integrate Agentforce with Heroku-based apps. So, there is a lot of scope there, and I think there’s an enormous amount to discover still.
Errol
So the app that I built as a proof of concept for that is a very, very simple one. So, we’re using an agent in this case to read some plain text data out of an object in Salesforce, use that to present preference options to a user using an app. So, it’s a really simple example, but I think where that can go in the future as this product expands and becomes more known and understood by everyone,
Errol
I think there’s a lot of use cases there. What I’m excited about that, the reason I get excited, is because we have this very powerful tool, Salesforce, the Agentforce tool, and it is capable of doing a lot with the data that sits there and data that we pull in with cloud. So, it has this enormous amount of proprietary data at its fingertips, and then we can expose what we want to of that to a very wide audience through a Heroku app. So, you might have a bunch of data which is very secure sitting within Salesforce. You want to expose just a small part of that to a user of an app. So it doesn’t have to even be very much, but we can do that using Agentforce and connecting that through Heroku.
Julián
Nice, and we are always working on making that whole experience, integration and set up more straightforward and native for the Salesforce admins and developers.
Julián
Now with AppLink, Eventing, all of these great things that that we recently announced, you now are going to be able to more easily integrate those two worlds. I’m also super excited about all the possibilities around and trying to also find some of those use cases and experimenting to see what else can be done. I still believe there is a lot of things to explore, a bunch of opportunities.
Errol
I’m a big fan of saying this, and I say it over and over again, and that is that the best ideas are yet to be had. All of us right now are exploring this brave new world and pushing the frontier on what yesterday was impossible, and today is just barely possible, and tomorrow, who knows.
Julián
And it is just a beginning. Oh my God, this is just the beginning. It is exciting. It is exciting. It’s scary, but exciting. I love the pace these things are moving. And as a technologist and developer, it keeps me motivated to continue learning, continue doing so. It’s a pretty good time for us. Coming back to adoption because of course all of these things are exciting.
Julián
They will continue growing if they are being adopted by companies. What’s the recommendation you have for your existing and future customers to remove that barrier? To overcome that hesitation they have today. How do you show the value of implementing AI so they can say, okay, let’s do it, let’s build it? What are you using to convince them?
Errol
Sort of the same approach that I use to any new feature where there is concern about value. And that’s to develop a proof of concept. So a proof of concept doesn’t have to be complex. We have some very, very clever guys that work in reinteractive, we have some marvelous staff and they are very clever on some of these things. So if I had, say, a CTO who had a great idea how maybe they can implement some AI feature into an existing application or maybe it’s a brand-new application,
Errol
and that person has to get a sign-off from a board or CEO or whoever else, what we would do would be to develop a proof of concept. A proof of concept, maybe it’s about a week of work, it’s not going to look amazing, but it’s going to show part of that and that then can be okay, let’s look at this, let’s work out how this can be used in a broader sphere.
Julián
Yeah. The paper, Figma, diagrams. They can do everything. You can do everything on paper. But it doesn’t click. It clicks when you see the work, even though it doesn’t look great. Like this is why you know, a PoC or those technical demos, it’s like okay now I understand. Now I see the value. Let’s go.
Errol
Let me give you an example of this. We have a client who wanted a particular tool developed. It was an AI tool to read plain text in emails. And the emails that this particular client was getting were very, very not complex, but they were hard to read. They were sent by people overseas into Australia.
Errol
And the language was not always exactly easy to read and understand, what they did is they had people actually reading these emails, try to extract the data, put it into a database where it could be actioned, basically. And they had this idea that a well-written AI tool would solve some of this problem. So we did exactly this.
Errol
We developed proof of concept over about, I don’t know, a week, week and a half. Got one of the amazing staff, he built it and we got a bunch of their sample email to test out. And it was literally just the proof of concept was literally just a few lines, you know, no editing or formatting or anything, just a few lines on a page where you just upload the email and it would interrogate the email and then come out with, here’s the data I’ve extracted from this email into a table, into a formatted table.
Errol
And when we went to demonstrate it for the client, they picked an email that maybe we had used earlier in testing I’m not sure, but he feeds it in and it pulled out all the data. Everyone’s reading the data that’s come out and gone “how did it figure that out and where did that come from?” Reading through the email and eventually the guy goes, “Oh! It’s in there!”
Errol
He hadn’t read it, like reading the email you couldn’t actually see it. But the AI tool had picked this piece of information out and everyone at that moment went, “this works.”
Julián
Errol, this has been an amazing conversation with you. Thank you very much for your time for joining us here on the Code[ish] podcast. We are looking forward to having you again of course, so you can tell us what else are you building, what else are you doing with your customers and with Heroku. Do you have any last words for our audience, an invitation or something that you want to tell them?
Errol
My advice to everybody is keep learning, keep educating, keep finding out things. Make sure like when you read a page, understand what it says, and then go and use it.
Julián
Beautiful. Errol, thank you very much and see you in the next time.
Errol
Bye.
Elizabeth
Thanks for joining us for this episode of the Code[ish] podcast. Code[ish] is produced by Heroku. The easiest way to deploy, manage, and scale your applications in the cloud. If you’d like to learn more about Code[ish] or any of Heroku’s podcasts, please visit heroku.com/podcasts.