CppCast - Incredibuild in the Cloud

Episode Date: June 4, 2021

Rob and Jason are joined by Dana Rochman and Amir Kirsh from Incredibuild. They first discuss conference news and a blog post from Andreas Kling. Then they talk to Dana and Amir about the latest from ...Incredibuild, including new support for accelerating builds in the cloud, and build caching. News C++ On Sea Schedule Core C++ I quit my job to focus on Serenity OS Full time 13 C++ Libraries To Watch Out For Links Incredibuild Sponsors C++ Builder

Transcript
Discussion (0)
Starting point is 00:00:00 Episode 302 of CppCast with guest Dana Rolkman and Amir Kirsch, recorded June 2nd, 2021. This episode is sponsored by C++ Builder, a full-featured C++ IDE for building Windows apps five times faster than with other IDEs. That's because of the rich visual frameworks and expansive libraries. Prototyping, developing, and shipping are easy with C++ Builder. Start for free at Embarcadero.com In this episode, we discuss some conference news. Then we talk to Dana Rochman and Amir Kirsch.
Starting point is 00:00:51 Dana and Amir talk to us about the latest from Incredibelt. Welcome to episode 302 of CppCast, the first podcast for C++ developers by C++ developers. I'm your host, Rob Irving, joined by my co-host, Jason Turner. Jason, how are you doing today? All right, Rob. You know, I think we can amend our intro. Oh, yeah? To what? We're not just the first podcast for C++ developers, but we're still the only one that actually publishes consistently. So have all the new ones not been too consistent? Is that what you're saying? Well, I mean, as far as I know, it's still only us and CBP chat that are C++ specific. That's true.
Starting point is 00:01:50 And CBP chat. Definitely not every week. It's a challenge to John and Phil be a little more consistent with your episodes. I don't know if they're, if they listen to these still or not. Maybe they're just giving them a hard time. Yeah. Well, we'll hear from them if they're if they listen to these still or not maybe they're just giving them a hard time yeah well we'll hear from them if they do
Starting point is 00:02:08 okay well at the top of every episode I threw a piece of feedback this week we got this email from Sam saying hey y'all SPAC seems interesting but have you heard about Nix it's basically SPAC but goes all the way down to
Starting point is 00:02:25 the bare metal, as one can use it to construct an entire OS. It uses very similar tricks to SPAC, it sounds like. R-path shenanigans, environment sandboxing for building, etc. The language is a bit odd, but nice once you get used to it. Underlying it are some monstrous bash scripts, but most of the
Starting point is 00:02:42 time, you don't need to mess around with those. I've started using it because I'm tired of paving machine kit, of the paving machine kit config, or trying to do the thoughts and prayers approach with salt and Ansible. Have you heard of this one before, Jason? The name is familiar,
Starting point is 00:02:58 but I've never used it for sure. It's described as Nick's OS, not a package manager. So yeah, it goes all the way down to the entire OS, but it sounds like it is. Yeah.
Starting point is 00:03:11 Yeah. It sounds like maybe one step further again than what SPAC was offering for you. Yeah. Well, we'd love to hear your thoughts about the show. You can always reach out to us on Facebook, Twitter,
Starting point is 00:03:24 or email us at feedback at cpcast.com. And don't forget to leave us a review on iTunes or subscribe to us on YouTube. Joining us today is Dana Roachman. Dana is an experienced dev and product leader with a deep understanding of software architecture and product development cycle. As VP of product, Dana is a key member
Starting point is 00:03:42 of the incredible management team and is responsible for product strategy and execution. Dana holds a bachelor's in computer science from Tel Aviv University. And Amir Kirsch. Amir is a C++ lecturer at the Academic College of Tel Aviv Yafo and at Tel Aviv University, previously the chief programmer at Converse after being CTO and VP of R&D at a startup acquired by Converse. He's also a co-organizer of the annual Core C++ Conference and a member of the ISO C++ Israeli National Body.
Starting point is 00:04:08 Recently, Amir joined Incredibuild as a C++ developer advocate. Welcome both of you to the show. Hello. Hi. Good to be here. So that college that you are a lecturer at, Amir, that's the same location that Core C++ was held a couple years ago, is it not?
Starting point is 00:04:24 Correct. And if I remember correctly, and I think I do, That's the same location that Core C++ was held a couple of years ago, is it not? Correct. And if I remember correctly, and I think I do, you were there, I think, with the keynote and also presenting a workshop. I did a workshop and one of the keynotes there, yeah. Right. So sorry if we met and I don't recall. That was a very busy travel year for me in 2019. I think that maybe you recall there was a quiz that I was organizing. So maybe you remember the quiz.
Starting point is 00:04:56 There were some activities that maybe then you can recall me. Right. And standing at the reception desk standing standing at the reception desk standing at the reception so i almost certainly saw you and interacted with you at some point yes that's that describes my life in 2019 you must remember the two in jaffa yes absolutely yes so i was was the organizer. I was not the one who took the tour and I was not the guide. Right. I gave a few words before. I will say it is the only conference I've ever been to that organized an official tour of the old town nearby. So that was definitely nice. Might be, but not all conferences have old cities nearby.
Starting point is 00:05:46 So maybe this is the problem. Yeah, no, Code Dive in Wrocław, Poland, I think could pull that off. That's the only one I can think of. We're in a good place, though. Okay, well, Dana and Amir, we got a couple of news articles to discuss. Let's feel free to comment on any of these, and then we'll start talking more about the latest from both of you with Incredibuild, okay?
Starting point is 00:06:07 Alright, so this first one, we have some conference announcements. This is C++ on C. The schedule has gone live. You can see all the speakers who are up. Jason, anything you want to point out here? Nothing
Starting point is 00:06:24 particular, although it's certainly a lot of faces that we recognize. I think actually, I think we've interviewed every single person on the lineup almost, except for Walter. Yeah, I think you're right. We have not had Walter Brown on the show, but pretty much everyone else here look like familiar faces to me.
Starting point is 00:06:42 How come they have that Walter didn't come to the show yet? We asked once. We asked. He wasn't very interested. That's fine. Not everyone is interested. So this is your next challenge. Yeah, maybe we'll give it another shot.
Starting point is 00:07:02 And then another conference announcement which Amir, I'm guessing you are involved in, is Core C++. This is going to be August 25th to 26th this year? Correct. Yes. Anything you look forward to with the conference? Was it completely canceled last year or was it virtual? Yeah.
Starting point is 00:07:22 No, it was completely canceled due to the COVID-19 and this year we started planning that when we still don't know whether we could get people from abroad. So we call it C++ Core CPP Local.
Starting point is 00:07:40 Even though I guess that we would get audience from abroad. It's going to be live. And now the restrictions are going down, and I guess people will come. I mean, from Israel, we have a lot of interest, and I guess also people from abroad. Do you have any idea what the restrictions are
Starting point is 00:08:03 for traveling into Israel right now for people who are listening and might be interested it changes I'm sure changes right it actually depends on on where you're coming from so to said the specific restrictions by specific locations I know that us is open but there's other restrictions. But everything is probably on the website. You can put this on your website as well,
Starting point is 00:08:32 so people will know. Good idea. Will you be joining? I'm not sure if I'm doing any travel yet. When is it again? I don't think. August. I actually have several trips planned now for the last half of the year
Starting point is 00:08:48 which went from nothing planned to several things planned so I'm like I think the second half of my year is good I don't need to add anything else yet well we quite anticipated that people either would be would have difficulties to arrive
Starting point is 00:09:04 or you know need to plan things or change things. So we do plan for a local event, but I guess that we would get some guests from the road. Yeah, I'm sure. I mean, I was surprised to see who all came. Complete aside, but in 2019, one of the guys that comes to my local meetup was went to uh core c plus plus and i didn't know he was going to be there i'm like what wait what are you doing
Starting point is 00:09:33 so you know people take the opportunity to travel when they can and and the local community is very strong so even if it's only the local community, I guess, I mean, also for the speakers and the audience, it's a very strong C++ community. Right. So the call for speakers is out right now for people who are interested. The call for speakers is out there and we are getting very good proposals. And this is going to be a great conference. Hopefully like we had in 2019. Excellent.
Starting point is 00:10:06 Okay, and then the next article we have is from Andreas Kling, who we had on the show like two months ago, maybe. And he wrote that he quit his job to focus on Serenity OS full-time. And he's kind of putting out his whole story of his journey with Serenity OS, which we talked about with him a lot when we had him on the show.
Starting point is 00:10:26 But that's pretty exciting that he's now at a level where he can kind of focus on it full time as opposed to just being a, you know, free time and evenings type of project, which it was before we talked to him. It looks like he's still looking for maybe some more support like patreon and github sponsors and things like that but um he's doing well and it's great to hear that uh serenity os is you know doing so well for him he actually gave a full breakdown which people don't tend to do for where his income sources are coming from and it looks like something on the order of about 2000 us dollars per month, which is no, I mean, in most countries,
Starting point is 00:11:08 that's not enough to support a family on, but, um, I was just out of curiosity, kind of kept reloading his Patreon page to see what was happening after this announcement went live. And I think it went up at least 25, maybe 30% of support dead,
Starting point is 00:11:22 um, within a couple of days. Uh, but that's awesome i i i love to hear a success story something like this i was reading the um hacker news comments on this and like 98 of people are like this is so awesome i'm so glad that you get to you know focus on this project and like two percent of people are like this is stupid what's the real world use case of a toy hobby operating system? Like, duh, of course there is no real world use case, right?
Starting point is 00:11:50 Like, anyhow. Yeah. Either of you have a chance to check this out. I watched the episode and he looks, you know, so brilliant, this guy. So he takes the courage to take such a step. And I feel that he will succeed. I mean, with the project and with making it more usable and probably at the end might be financially in a way
Starting point is 00:12:19 also as in the industry, I mean, getting some incomes. Yeah. Either one of you have toy hobby operating, not operating system projects, toy hobby open source projects that you wish could have taken off and became a main source of income or anything like that? Well, not as a source of income,
Starting point is 00:12:38 but I have some hobby, which is not much time. People invest much more time on that. But I do occasionally answer or write questions in Stack Overflow. I do occasionally write examples in CPP reference. Not much, but for example, I think the last example that I added in CPP reference was for reverse iterator. There was an example for reverse iterator, which I think was not good enough or at least didn't help my students.
Starting point is 00:13:18 So I said, OK, we need another one. So I replaced and it was not rolled back. So it's fine. It's a wiki. Cppreference is a wiki. The listeners can also take a look and add their own pages or examples or anything that is needed. And in some cases, the page itself says that there is missing info in this page and you can add. So people go into Cppreference and add stuff. How about you you Dana?
Starting point is 00:13:46 Well, I started as a Cpp developer back in the days. I think I switched to products somewhere when Cpp 11 was out. Just before it became too complicated, I switched to blog. I even think that I recall Amir was one of the lecturers when I studied in Tel Aviv University. So I'm more around the product end of it and less development of the days, but I still miss it from time to time. All right. And this last article is a post,
Starting point is 00:14:19 which Jason, you picked this one. Did you realize it was from Dory Eksterman from Incredibuild when you picked this article? It was on my list of articles to read, and it got to the top of the queue at the moment that I was putting this together and realized, hey, wait a minute, it's from Incredibuild. Coincidentally, I may as well just throw this one in here, too. So yeah, this is the top 13 C++ libraries to watch out for.
Starting point is 00:14:44 And it's a good list uh a lot of these we've talked about obviously the top one is the c++ standard library followed by boost um and i think most of the other ones we've at least mentioned on the show we did an episode on poco we certainly talked about open ssl before there was one on here that i've not heard of before and it's Eclipse Mosquito. I've never heard of it. Yeah, the MQTT protocol, which sounds like it's really useful for like microcontrollers. So if that's
Starting point is 00:15:14 the area where you work in, maybe check out Eclipse. But yeah, I think most of the other libraries we've certainly talked about before. It made me feel a little bad because we interviewed someone from Poco. It was like the second or third interview that I was a part of. So it was a really, really long time ago. And I still
Starting point is 00:15:30 have never actually checked out the library. So I feel like maybe I should. Yeah, that was a while ago. Any comments from either you, Amir or Dana on these libraries? I remember using a library which is not in the list,
Starting point is 00:15:45 which is ACE, the communication library. I think it is much less in use today. Yeah. But I just checked recently when I saw the list from Dory and I saw that ACE is being maintained. So the last version is from, I think, last month, which makes me a bit nostalgic going back and doing some stuff today.
Starting point is 00:16:12 Nice. Okay, well, we just mentioned Dori Eksterman, who we had on the show, I think, like five years ago, talking about Incredibuild. So it has been quite a while since we talked about it on the show. Dana, could you maybe start off by telling us a little bit more
Starting point is 00:16:30 about your role in the company and about what Incredibuild does? Sure, I'd be happy to. So first of all, I'm the VP of product here at Incredibuild. I've joined around September 2020. It was a crazy year for Incredible. We just recently received
Starting point is 00:16:52 $140 million investment from site partners who are behind JFrog and Docker and a lot of other great companies. So crazy year. They're going to help us with the hyper growth, which we're in. We've doubled the size of the company. We're growing R&D and customer success and product.
Starting point is 00:17:19 We've even added a developer advocate and developer relations position, which brought Amir on board. So definitely a crazy and exciting year, which I'm so happy to be part of. For those who don't know exactly what Incredible does, just let me go back, again, five years, a long time. We have a dev acceleration platform. What we do is we accelerate software development life cycles from compilation to release, allowing our customers to release their products faster into the market with better quality. And along the process, we even
Starting point is 00:18:00 found some exciting ways to reduce the cloud bill in the process. So it's great. And then just a while ago, I saw the C++ 2021 Annual Developer Survey. It's still build times. It's still one of the top two challenges for C++ developers year over year. So this is exactly where we come in. So this is with our amazing platform. Just shorting how we do that, we sit in between the process and the operating system.
Starting point is 00:18:34 So we elastically and dynamically allocate a pool of resources, whether it's on-prem or on the cloud, and we take these workloads, builds is one of those, unit testing can be another. We break this into microprocesses, which we then distribute across this pool of resources, which we allocated, which allows us to accelerate. And we're super excited to introduce a new patent pending technology, which we just are testing in beta for build caching. So that will allow us to not just distribute, but also cache when we can, making it a full solution, combining multiple acceleration methodologies. So very, very excited about that. I've worked with organizations that use the local Incredibuild distributed system,
Starting point is 00:19:26 but I haven't been exposed at all to the cloud aspect of this. What does it work with? Google? Does it work with Amazon? Does it work with Microsoft? What are... Yeah, so we work with Amazon, AWS. We work with Azure, Microsoft.
Starting point is 00:19:43 We have Google in our roadmap. We see a strong trend, especially around COVID, where specifically CI, I think, are more there already. But we also see a lot of trend in developer switching to the cloud. What we do there is so you don't need all these cloud resources always on. So we allow to only spin up and down these machines when you need them from spot instances to different types of machines from different availability zones. We allow all of that in a flexible way so that that's what makes it so exhilarating,
Starting point is 00:20:27 not compromising on quality or speed, but you use less resources only when you need them, which makes it, we see companies reducing their cloud bill by even 30%, which is amazing. Yeah, makes it an enabler for some of the companies to actually perform this digital transformation. So we're very happy to be part of this era. I just want to say congratulations, by the way, on the investment. I don't know how large of a company IncrediBuild was before that, but I imagine $140 million investment is significant to your organization.
Starting point is 00:21:03 It is. We're actually a bootstrap company. We've never had an investment before. So that's a change for Incredible. And that's a very large investment. We have very large plans for Incredible. So that comes in a place, again, hyper-growing. We're already at around 130 developers, around 130 employees,
Starting point is 00:21:26 and getting bigger every day. We see all new faces every day coming in. So it's great. Wow, crazy. I want to end up the discussion for just a moment to bring you a word from our sponsor, C++ Builder, the IDE of choice to build Windows applications five times faster while writing less code.
Starting point is 00:21:42 It supports you through the full development lifecycle to deliver a single-source codebase that you simply recompile and redeploy. Featuring an enhanced Clang-based compiler, Dyncomware STL, and packages like Boost and SDL2 in C++ Builder's Package Manager, and many more. Integrate with continuous
Starting point is 00:21:58 build configurations quickly with MSBuild, CMake, and Ninja Support, either as a lone developer or as part of a team. Connect natively to almost 20 databases like MariaDB, Oracle, SQL Server, Postgres, and more with FireDAC's high-speed direct access. The key value is C++ Builder's frameworks, powerful libraries that do more than other C++ tools. This includes the award-winning VCL framework for high-performance native Windows apps and the powerful FireMonkey framework for cross-platform UIs. So from what I remember from talking to Dory about the more localized version of IncrediBuild is you would kind of install a build agent on multiple machines in your company's network.
Starting point is 00:22:51 And then when I did a build, it might go out and use my co-workers' machines to accelerate everything, get my build done faster. How easy is it to set up this new cloud version? Is it as easy as just installing a build agent? I guess there's a little bit more work to it if you have to set up AWS new cloud version? Like, is it as easy as just installing a build agent? I guess there's a little bit more work to it if you have to set up AWS or Azure instances. Can you tell us a little bit about that? Sure. It's super easy.
Starting point is 00:23:14 You're right. We have these agents. If it's an on-prem local version, every computer that you add to the network becomes an agent in the network. So it can help anyone that initiates a build, for example, or a different workload. With the cloud, we allow an onboard to the cloud as a simple button. You don't install agents at all.
Starting point is 00:23:38 It's all automatically, as I said, it's spin up and down. We also use spot machines, which is amazing because we're able to take the cache and make sure that when machines are up, they're up with a warm cache, which is also something that creates a better performance for us when we're up in the cloud. Everything is very easy to install and create. And we're always working on automating this. So we're right now installing the installation will be on a tenant of the actual client. But we have plans to become a full SaaS solution and be up on the marketplace for AWS. So these are things that are on our roadmap. So right now, automated, but still not a SaaS
Starting point is 00:24:28 solution yet, but we're going straight into that direction as well. So Accelerate as a service is on the roadmap. So do you still, I feel like in the past, targeted you know organizations that needed this kind of support uh do you yet or current plan to have a solution that would be good for someone like me who is um an independent contractor who works with several different clients and i've got large projects to build sometimes i haven't built them in you know a month and it's going to take an hour or two of my build time or something like that, where I could just as a, you know, single developer quickly spin up something in an economic way, build it, you know, on the cloud or whatever and get the results back. Yeah, so you're right. We have solutions, we have customers from small, medium businesses to enterprise customers. We also have a free dev option on our website that allows less options than our enterprise, of course, or our pro version, but still allows to accelerate, even if you're just the one developer. And especially if you have an option to go into the cloud.
Starting point is 00:25:42 And then, as you say say you're not always building these large projects so when you are building the large project you can scale to the cloud so that's another option that you have it's not going to be free to scale to the cloud but but definitely only pay allows you to only pay for cloud resources when you need them so So we have several options, really from small, from free to small, medium, and then very large enterprises. So we support all of those. Awesome. Awesome. Yeah, it sounds like, you know, with COVID, obviously, people are starting to go back into the office now. But for all those people who are still working remotely, and don't have the
Starting point is 00:26:24 option to maybe use their larger computers that they might have at the office to just be able to connect to some resource that the company sets up and be able to expedite your builds that way. It sounds like it'd be really nice. Yeah, I mean, all of our customers, of course, work from home or work from everywhere, if you'd like to call it that way. They all work from home. Yeah, we do see a trend of people going back to the office.
Starting point is 00:26:49 We saw a trend of people not wanting to maintain their hardware in the office so move to the cloud. Also saw a lot of offices being closed in that time, so switch to the cloud because of that. So that's a very good option for for again working from everywhere depending on which poll you look at upwards to 60 percent of employees say that they would rather quit than go back into their offices now that's that that's the good one we actually see a lot of companies here so we are doing so much effort to bring people back into the office,
Starting point is 00:27:25 recording movies and animations, and we see everything to get the people in. I have to say that we're incredible, to be honest. We've never stopped being in the office. We're working in a hybrid mode right now, so three days at the office and two days at home, which I think is a good balance for most of the people. But I know it's pretty hard for a lot of the companies to bring the people back to the office. The traffic jams came back.
Starting point is 00:27:56 Yeah. I mean, we had a glorious couple of months here in the Denver metro area where there was no pollution, no traffic at all but that was only for like the first like two months when like everyone was required to stay closed and then still I mean I don't know anyone here who actually works in their office yet again even though the offices are allowed to be open again I don't know anyone who is um so I don't know I have no idea where things are going to go here.
Starting point is 00:28:25 That doesn't mean that the traffic is still completely gone. The traffic still somehow came back even though no one's going into the office. You mentioned some build caching. We kind of skipped over that and talked more about the cloud stuff. Do you want to tell us a little bit more about the build caching and what that will achieve? Yeah, definitely.
Starting point is 00:28:43 We have a very major version coming up. It's in beta and some of our customers are very excited about that. And build cache is part of that. We've developed our own build caching patent pending. So we're excited about that. And what it does actually, it caches the outputs. And then once we go into the process, and because of where we sit between the process and the operating system,
Starting point is 00:29:12 we have a very good visibility into the process and how it's running and all of these tasks. And so if we have in the second run, if we see that something is already in the cache, we just don't build this and don't distribute that. So the combination between the caching and the distribution, making this a hybrid acceleration platform, that's the news for us. We see acceleration really reduce the time of the build with caching. Again, talking about the cloud reduction we also see more less cloud resources needed because of the cash we we really excited to see how it works in kind of a production with our customers we also allow to share cash between developers. So if somebody is the first to build, the second, third, and
Starting point is 00:30:05 everyone else will enjoy from that. And of course in CI environments that are building and rebuilding all the time, that's a lot of reduction in speed, better speed and reduction in cost. Very excited about that. It sounds like it'd be very helpful for the CI for sure. Yeah, it sounds like if you have a couple developers working on the same project and with the caching in place, you'd probably get closer to instantaneous builds,
Starting point is 00:30:33 I would imagine, if there's not too much delta between the different developers. Yeah, yeah. That's what we foresee, especially when test this in our labs. Looks amazing, really promising. And especially in CI when they're rebuilding all the time.
Starting point is 00:30:54 By the way, we see a lot of our customers from data that we get. The developers themselves also always a lot of the time cleaning and rebuilding. So even if you clean and build, you'll still see a reduction of time. So not just for CI, but I'm with you that CI will be the killer in this case. Okay. I feel like as a developer, you know, sometimes you're like, you know, something just isn't right.
Starting point is 00:31:24 I've got this really weird issue. So I'm definitely need to do a full clean build just to make sure there's not some like wonky object file laying around. And now I'm starting to feel a little bit nervous that my build system is, you know, like secretly caching all of these things for me. Is there like a big red button I can press and be like, no, seriously, I don't want the cached version. We're not thinking about the red button yet. So for caching and distribution, we don't touch any of the code or the processes. We do everything in a seamless way and does not require any heavy installation.
Starting point is 00:32:10 Only a kind of a small client from Incredible. So that's something that's very important for us. So we don't really interrupt or touch anything and need a lot of maintenance from our end. In terms of cache, we really make sure that our cache does not, that if only if you can use what's in the cache, we use it. We're very strict on that. So then we don't hurt anything in the process. And that's very important for us. Of course, you can always decide to run that without Incredible to your question,
Starting point is 00:32:47 without the caching and only distribution or only caching. Everything is dynamic and you can use that. But we do see that developers that are used to running with Incredible, you don't want to get a couple of hours of a build and wait for it so usually our customers
Starting point is 00:33:08 will not run without that but all the options are available. So Amir how long have you been with Incredibuild now? Oh I think it is my first month or I just finished a month. Do you want to tell us a little bit about your role as developer advocate?
Starting point is 00:33:24 Well the idea, I think, is to think together how to bring IncrediBuild to the C++ community and the C++ community to IncrediBuild. Because we have here a great product, something that is actually needed in the C++ process. And first of all, we want the C++ community to be aware of the problem. They know of the problem to know of the solution. And we also want to be part of the community in a way that we, you know, contribute back to the community by knowledge and know-how in the build and make processes. So I think these are the mandates, the roles. At least this is how I see it. We're definitely very happy to have Amir on board with us. And I mean, we're a product by developers for developers, so the community is super important to us.
Starting point is 00:34:29 I've expressed to a couple of companies recently how important I think having a product advocate, developer advocate is. This is someone who can relate directly to us, normal people who are trying to use your tools. So I'm glad to hear that you've got someone on now. Amir, is this your first time as a developer advocate? Well, this title is new for me.
Starting point is 00:34:53 Right. But I did things that I would say resemble a bit. Well, working inside the community or, you know, with the community is something that I was doing and doing by organizing C++ meetups, being part of the C++ course, the conference and that. And before that, I'm now for a few years, aside from my academic roles, working as a consultant in several companies. So I do see companies in several domains. And now, with IncrediBuild, I do see the community back. I was in Converse for about a decade.
Starting point is 00:35:41 Converse was a company doing value-added services for telecommunication, for telecommunication companies. So I was there as the chief programmer. And it is a challenge, which is more towards the R&D and less towards the community, but it requires following what is new,
Starting point is 00:36:07 what you should bring to the teams, to the R&D groups, how to align every product lines to the same decisions, to the same guidelines and tools. So eventually you want, you know, several products which are different in the way they work. Convos was built organically and by buying some startups. And eventually you want several products to work the same, to look the same, to be able to integrate with themselves. And this was the challenge. So it's not the same. But, you know, it's nice getting new challenges, which are similar in a way to things that I did before,
Starting point is 00:36:53 but in some ways are new. I kind of my mental image of becoming a developer advocate is you get the job, and then the company announces we have a developer advocate. And then people start asking you questions, and you're expected almost overnight to be an expert in all of the products that your company offers. Did it feel that way? Oh, well, I think that I is something that the idea is I would say that the product is what is nice about the product is
Starting point is 00:37:33 it is quite easy to explain I like products which are complicated inside but quite easy to explain and this is something that the users see that we have a quite easy product to use, which is valuable. And they understand that there is quite a width inside.
Starting point is 00:37:56 So I think that the position of explaining what is the advantage of using acceleration tool, acceleration engine. This is something easy and the rest I leave for Dana. No, but let me just make it clear, the expectation is totally there. So we do expect that. No, it was not clear. Yeah. But we also use,
Starting point is 00:38:26 the idea is also to use Zomio not just to bring to the community, but also listen to the community. And we have, we're very much integrated with a lot of tools in the ecosystem. We always want to know what's coming up next to be integrated with what's new
Starting point is 00:38:42 and what's used. So if we're developing support for unit testing frameworks and we support G-test, for example, for testing what's next, if we support code analysis tools and we've added support for maybe, I mean, I know Clockworks, so what's next, what's most used. So it's a kind of a two-way position for us. We want to learn and give back to the community.
Starting point is 00:39:09 Yeah, I imagine, yeah, going to a conference and saying, do you want your builds faster? This is not a hard sell, right? But maybe a developer comes up and says, well, yeah, but I use Cvelup. Can I still use IncrediBuild from my obscure, but relatively less used IDE? That kind of thing. The great thing about our platform is that we
Starting point is 00:39:36 have a way to accelerate generic workloads. A lot of our customers use us to accelerate custom, homemade, homegrown tool. So that's great. But in terms of certification of these tools, we have a pipe of integrations that we're always working on. So we do have a certification for the most used tools, I would say, in IDEs. I mean, that's how we prioritize these integrations. But again, I mean, we see a lot of homegrown tools
Starting point is 00:40:12 and a lot of tools that are being used by a generic license for acceleration. So that's another great thing about the platform. So which IDEs do you natively, I guess, work well with then? We have a very long list. We're a commercial add-on within Visual Studio. That's integrated really deeply into Visual Studio, of course. We continue to support all these new versions.
Starting point is 00:40:43 We support CLion, for example. I mean, we do have a very long list of IDEs, of build systems, of compilers that we support. Again, the frameworks for unit testing, everything is very, we have a very long list. I am now actually getting kind of specifically curious because it's been a while since I've seen this, but with Visual Studio, if you did a distributed build with Incredibuild, you might see this big time graph that shows you how all of the things went and which systems they ran on and whatever. If I were to do a build from inside of CLion, would I expect similar level of integration and feedback or is it going to be less so less integrated than visual studio uh it's it's going to be less integrated into visual studio what you see with all these graphs um is a build monitor which also comes as part of the product so maybe you're not going to see that integrated within the ide but you can always
Starting point is 00:41:43 open the build monitor and get everything that you need that's integrated within the console of Visual Studio. We also support a lot of Unreal Engine. We have a lot of gaming users, which have very, very
Starting point is 00:42:00 heavy workloads. We get a lot of Unreal Engine where they're integrated into Qt Editor. Again, we really have a long list. It's one of the things we want to know that our users can use
Starting point is 00:42:15 in all of the tools that they're using. That's something we always keep thinking of inside our products. I'm sorry, go ahead, Amir. Jason, go. I was just going to say then I guess this is, I'm sorry, go ahead, Amir. Jason, go. Well, I was just going to say, I guess this is your job now
Starting point is 00:42:29 is if there's some new upcoming IDE that's not supported yet, you need to make sure IncrediBuild knows about that. Yeah, definitely. We always look on surveys. For example, I mentioned that the C++ developer survey, which we looked at challenges.
Starting point is 00:42:47 We also look at what's the most used and listen to that and act on that. And since it's quite easy to use, we hear from customers who come and brag and say, you know what, we just succeeded in doing this and that. For example, in accelerating C-sharp unit testing, which, you know, we thought about one thing and they just used it for something. And we say, oh, great. And they show how they did it. And we say, yeah, this is something that we do support, even though we didn't speak with you about that or didn't prepare something special for that. The same thing goes with new environments, new ideas, I guess, because eventually it's quite easy to create the proper command line that you need for running your make and creating and getting the acceleration from IncrediBuild. And in many cases, the customer would, you know, with a line of code or, you know, a very easy integration or very easy line inside the IDE
Starting point is 00:43:55 would come and say, you know, I just did this and that. And this is something that we're always happy to learn from Epic customers. Right. It also comes down to operating systems as well. I mean, we've originally supported Windows, and then we added Linux support, so we're supporting also Linux for a couple of years now. So that brings another set of integrations on board.
Starting point is 00:44:21 So we have to look across the entire ecosystem and make sure that we support most of the customers. Thanks for mentioning that. I think when we had Dorian several years ago, it was probably just Windows at that point, right? We added Linux around five years ago, so I think that makes sense in terms of that time frame.
Starting point is 00:44:40 The company exists for 20 years, which is also something crazy.'s completely changed we grew in numbers and what we support but again I mean Linux is already here for 5 years
Starting point is 00:44:57 so we're also exploring the option to support Mac OS in the future. That's also somewhere on the roadmap. I am kind of curious for Amir, if you do have any advice, because this role of developer advocate has come up several times. Well, many times since Rob and I have been doing this podcast in various ways.
Starting point is 00:45:21 First of all, are you still going to keep your role as a lecturer at the college? Yeah, I was lecturing since 1998. You just had to start with 19 and that was going to be good enough. Yeah, I was a kid then. So this is something that I was doing since then, working in a startup as a VPR and in a startup, doing my years in Converse. So, yeah, it's something that I like, I enjoy, and I will keep doing. So, yeah, I'm a teacher at the end. I think this describes myself in any job that I take,
Starting point is 00:46:07 which in a way is the role of being a dev advocate. It's trying to understand things and then explain them internally and externally. So, yeah, being a teacher is good. And I like very much, you know, to meet the juniors and teach them C++. We need the next generation of C++ developers. So I'm there. So I was going to ask if you have any thoughts for someone who's interested in becoming a developer advocate, it sounds like you would at least start with a statement of you want to be someone who's interested in teaching.
Starting point is 00:46:52 In a way, it relates. I wouldn't say that you have to be a teacher or a teacher in your heart, because probably different persons can take a role to different angles but yeah in a way you need to like researching speaking with people about things, learning
Starting point is 00:47:17 new things coding, you have to be hands on in a way but not, there are people who want to code night and day, and this is not a coding position, but it does involve the ability to reach out to the keyboard. Okay. Well, it's been great having you both on the show.
Starting point is 00:47:42 Are there any parting things you want to leave us with? Like, do we know when the updates coming out that will have the new caching? Yeah, planning to go general availability in September. Okay. Gotta include not just caching, but a completely new UI with dashboards and slides. We're completely changing our license model in the process, making it much more flexible. So a lot coming in this version. Awesome.
Starting point is 00:48:15 Well, thank you, Dana. Thank you, Amir, for coming on the show today. Thank you. It was great to be on. Yeah. And Jason, if not, and Rob, if not this year, then just, you know, marking the calendar. I don't know if it would be August 2022 or it would be May.
Starting point is 00:48:35 We just need to check. But call CPP. You're trying to avoid the hottest months, right? The next one. Okay. Thanks. Awesome. Thank you. Thank you. See you. Thanks. Thank you.
Starting point is 00:48:46 Thanks so much for listening in as we chat about C++. We'd love to hear what you think of the podcast. Please let us know if we're discussing the stuff you're interested in, or if you have a suggestion for a topic, we'd love to hear about that too. You can email all your thoughts to feedback at cppcast.com. We'd also appreciate if you can like CppCast on Facebook and follow CppCast on Twitter. You can also follow me at Rob W. Facebook and follow CppCast on Twitter. You can also follow me at Rob W. Irving and Jason at Lefticus on Twitter.
Starting point is 00:49:13 We'd also like to thank all our patrons who help support the show through Patreon. If you'd like to support us on Patreon, you can do so at patreon.com slash cppcast. And of course, you can find all that info and the show notes on the podcast website at cppcast.com. Theme music for this episode was provided by podcastthemes.com.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.