Dieser Podcast ist eine initiative der Development Community des DOAG e.V.

[English] Devs On Tape x Kscope23 – Our Guest: Shakeeb Rahman!

Shownotes

Shakeeb Rahman tells us in this further English edition of Devs On Tape, among other things, how the APEX team has developed since he joined and what his role is in the team. He also talks about his early days in his career and how everything started. The birth of the Universal Theme and the inspirational surroundings were also topic in our session.

Have fun and enjoy!

Shakeeb on Twitter: @shakeeb Devs On Tape auf Twitter: @devsontape Kai Donato - kai.donato@mt-ag.com - Twitter: @_KaiDonato Carolin Krützmann - carolin.kruetzmann@doag.org - Twitter: @CaroHagi

Dieser Podcast genießt die freundliche Unterstützung der Deutschen Oracle Anwender Gruppe (DOAG e.V - https://doag.org)

Transkript anzeigen

00:00:00: [MUSIC PLAYING]

00:00:03: Hello, and welcome to another episode of Devs on Tape.

00:00:16: Again, from the States in Denver,

00:00:19: we are recording at the K-Scope 2023.

00:00:22: And ladies and gentlemen, today, we

00:00:24: have a very special guest in our podcast.

00:00:27: Our guest is part of the APEX team as an architect,

00:00:30: and he's working for Oracle, obviously.

00:00:32: And yeah, we are talking about his invention

00:00:35: back in the days, the universal theme.

00:00:38: We also will talk about the starting of being a web

00:00:41: developer in the early 2000s.

00:00:44: And yeah, today we have the privilege

00:00:46: of exploring the transformation and growth that

00:00:48: led him to this current position and the leader of design

00:00:53: and special projects for Oracle APEX.

00:00:55: We have many things to talk about.

00:00:57: Our guest today is Shakib Rahman.

00:00:59: Hi, Shakib.

00:01:00: Hi, Kai.

00:01:01: Thank you so much for having me here.

00:01:03: Yeah, I'm very glad that we found a spot on your time

00:01:07: schedule that we can talk about many interesting stuff today.

00:01:10: So maybe you can introduce yourself

00:01:13: to our listeners who might not know you.

00:01:15: I don't think there are any, but maybe you can just

00:01:18: add more information to that.

00:01:19: Sure, absolutely.

00:01:20: So hi, everybody listening.

00:01:22: My name is Shakib Rahman, and I'm

00:01:24: an architect on the Oracle Apex development team.

00:01:26: I've been with Oracle for quite some time now.

00:01:29: Joining the APEX team in 2009 under Mike Kitchwa.

00:01:32: I was actually hired for a special project at the time.

00:01:36: And today, I look after the design and user experience

00:01:38: of APEX.

00:01:39: But I also work on a lot of special projects

00:01:41: where we use APEX on a day-to-day basis.

00:01:44: So you are always talking about, in your talks and in the intro,

00:01:48: there are always the special projects, right?

00:01:50: So it's kind of a mystery what you're doing in there.

00:01:53: Can you talk more about what are those special projects

00:01:55: you're working on?

00:01:57: - Sure, yeah.

00:01:58: It may sound like a mystery, right?

00:02:00: What are these things?

00:02:02: There's a lot of use of Apex within Oracle.

00:02:05: And one of the things that I look after

00:02:08: is using Apex to build solutions that we ourselves need.

00:02:13: So for example, one of the projects that I look after

00:02:16: is something called ARIA People.

00:02:18: It's the employee directory at Oracle.

00:02:19: We sort of talked about it a lot at conferences.

00:02:21: And it's an application that our team has sort of built.

00:02:25: In fact, it's predated my career at Oracle by many, many years.

00:02:28: It's probably one of the-- it is the most popular APEX

00:02:31: applications.

00:02:32: It's probably one of the most relatable APEX applications,

00:02:35: because it's really an employee directory.

00:02:37: It's a really nice, easy way to get in, get out.

00:02:40: And it's an application that I'm very proud of at Oracle.

00:02:45: So you're still working on that, or you just

00:02:48: gave it to your team, your leading?

00:02:51: Well, I think it's definitely a team effort.

00:02:54: everything we really do, I think it's hard to say,

00:02:56: like, hey, I'm the only one that worked on this thing.

00:02:59: So it's definitely a team effort.

00:03:00: We have a team that works on special projects, right?

00:03:04: I consider them part of the Apex team.

00:03:06: So the Apex team as a whole is quite a diverse team

00:03:11: at Oracle, diverse in many ways.

00:03:13: We are geographically dispersed quite a lot.

00:03:16: So you're from Germany here.

00:03:17: We have quite a few members in Germany,

00:03:20: across Europe, across India, in the UAE,

00:03:25: in South America, in Mexico, in Canada,

00:03:28: and of course dispersed even across the United States.

00:03:31: So, and within this geographically dispersed team

00:03:34: of I don't know, but like 90 plus people that build Apex,

00:03:39: we have folks that focus primarily on product development

00:03:43: of the Apex product.

00:03:45: There are folks that develop, focus on the development

00:03:47: of the Apex and Autonomous Database Service,

00:03:50: and Apex and OCI.

00:03:55: And there's a few folks that focus specifically on

00:03:56: internal development improvements for our team.

00:04:01: And just like that, there's also folks that focus on

00:04:05: special projects.

00:04:07: And some of these projects,

00:04:10: they go from internal facing applications

00:04:11: to external facing applications.

00:04:13: For example, we recently launched forums,

00:04:15: which I can get into a little bit later.

00:04:17: We launched this internal surveys service.

00:04:17: We have like, you know, I look after a live sequel

00:04:21: and Dev Jam and Ask Tom and many other Apex applications.

00:04:26: - So that was quite a journey you walked, right?

00:04:30: So I think the first time we've met

00:04:32: was at Kscope Chicago in 2016.

00:04:35: And back in the days, you were just into it like,

00:04:38: don't get me wrong, I don't know if it was the introduction

00:04:40: of the Universal Theme and Apex 5,

00:04:42: if it's on the same--

00:04:44: - It's a little bit, it's one year later.

00:04:46: So Universal Theme came out in 2015.

00:04:48: I remember the date, it was April 15th, 2015.

00:04:52: I know this because it was tax day in the United States.

00:04:55: And that was the day that we released Apex 5,

00:04:58: you know, made it generally available for everybody.

00:05:00: And that was the release of the initial Universal Theme.

00:05:04: - And this was basically my second year in the business

00:05:07: with Oracle Apex, and I started with Apex 4.2,

00:05:10: like dynamic actions were at my daily work, right?

00:05:15: And then the universal theme came.

00:05:16: And you were talking about that.

00:05:18: Like, on every single conference,

00:05:20: I was attending on premises or remotely.

00:05:23: And I saw your beautiful presentations.

00:05:25: And I saw it in the presentation.

00:05:27: I was talking to my colleagues.

00:05:29: And I said, I want to do presentations like this.

00:05:32: Because there were animations that are--

00:05:36: I remember exactly what you're talking about.

00:05:38: And it was so great that every single colorful leaf

00:05:44: was leading to one topic of Universal Team.

00:05:46: And I think I saw this presentation like 50 times.

00:05:49: And I was still impressed how much love you put in there.

00:05:53: So it was pixel perfect.

00:05:55: It was perfectly timed with your presentation.

00:05:59: And I knew that the Universal Team would be great

00:06:03: and will get even better because you are leading that, right?

00:06:08: So no, I don't want to put more honey in my jar.

00:06:12: I don't know if it's really--

00:06:14: Thanks for buttering me up, right?

00:06:15: That's the right phrase, yeah.

00:06:18: But yeah, Universal Team is now the main component,

00:06:21: I would say, for an APEX application.

00:06:23: But always when we were talking to customers and people

00:06:27: around us, what's the thing of APEX?

00:06:31: Why should you use APEX to build applications?

00:06:34: Then we say, yeah, you don't have

00:06:36: to write all the boilerplate code

00:06:38: to get an application up and running before you get actually

00:06:40: to the business logic or the core of what you want to solve.

00:06:44: problem, right? And with the universal theme, you get a responsive, good looking and very

00:06:49: flexible theme that you don't have to care about before you're starting an application.

00:06:53: Just say, start with an Apex application, use universal theme, it should look like this.

00:06:57: You put some things on the color picker, and then it's going good. And you were always

00:07:02: talking about universal theme and everything in Apex should be crisp.

00:07:06: Oh yeah, I remember that term. That's right.

00:07:09: Every time it has to be crisp.

00:07:10: I just like to say that, yeah.

00:07:11: So what leads you to--

00:07:14: obviously, Universal Theme was planned, right?

00:07:16: You needed to do that, I think.

00:07:18: It was not your idea, right?

00:07:21: Well--

00:07:21: To do some new UI.

00:07:24: It's an interesting genesis of the Universal Theme.

00:07:28: I think it became quite clear as we were working

00:07:30: on many releases of Apex.

00:07:32: So just to take a step back a bit,

00:07:34: I joined the Apex team in 2009.

00:07:36: But really, my first contributions to Apex

00:07:39: came in early themes that were shipped with Apex.

00:07:44: So I worked on a few themes.

00:07:47: They were shipped with Apex 4, I believe, even.

00:07:49: And then we had new themes in Apex 4.1.

00:07:52: We started introducing new numbers.

00:07:54: So every time there was a new theme, there was a new number.

00:07:56: It's like theme 20, theme 21, theme 22, theme 23, 24.

00:08:00: 25 was a responsive theme that came out in Apex 4.2.

00:08:04: So every release of Apex, we had this new theme.

00:08:06: And what do we tell developers?

00:08:07: "Hey, Mr. Developer, go and refresh,

00:08:12: "actually go and update your application,

00:08:14: "change your theme, and pretty much redo the entire thing."

00:08:18: - Yeah.

00:08:19: - Right, it was quite a process,

00:08:20: especially going to this responsive theme.

00:08:22: And we thought that's just not a sustainable model.

00:08:25: We can't ask our customers to go

00:08:27: and redo their entire apps every single time.

00:08:29: So we thought, well, we have to have a modern theme,

00:08:33: a modern user interface framework

00:08:36: that will stand the test of time,

00:08:38: and something that we can update and refresh

00:08:41: with every release of Apex and make it better and better

00:08:43: and better without having developers

00:08:45: to incur the cost of updating their applications

00:08:47: or really rewriting those applications.

00:08:49: - Yeah, I'm guessing that this is some kind of hard work

00:08:54: to find one single solution that fits everyone,

00:08:57: because I remember I liked like theme 28, I think.

00:09:02: - 28?

00:09:04: - I don't know.

00:09:05: Maybe 21.

00:09:06: - 21, I think.

00:09:07: I don't know.

00:09:07: - There was a really popular theme

00:09:09: that everybody used for their applications, right?

00:09:11: - Yeah, and they're all using the theme

00:09:14: they want to use for the applications,

00:09:16: and then you have to maintain each and one of them.

00:09:18: - Oh yeah, all new markup,

00:09:19: every single theme has different markup,

00:09:21: different style sheets, different set of images.

00:09:22: - Yeah, and they're manipulating the stuff,

00:09:25: and then you try to push,

00:09:26: pull everything on one card, right?

00:09:29: You just say, I have to create a theme

00:09:31: that is good for everyone.

00:09:33: Everyone needs to do that,

00:09:34: and they don't say, no, I want to stay at 21, right?

00:09:38: Or whatever. - Correct, correct.

00:09:39: - So I guess this is a very hard decision to say.

00:09:43: - It was a, and again, like a,

00:09:46: it was so difficult to come up with this concept

00:09:51: of this general purpose theme.

00:09:53: What do you make it look like?

00:09:55: - Yeah.

00:09:55: - Like, in a way, it's sort of abstracting

00:09:58: everything that we do in Apex.

00:09:59: Everything that we do in Apex is,

00:10:00: we have generic components that you can use

00:10:03: to build any kind of application.

00:10:05: And now you're looking at the UI layer

00:10:08: of this, which is really the first impression that people

00:10:10: have about these applications.

00:10:12: And the UI layer really dictates how people perceive

00:10:16: the application, how people will use the application,

00:10:18: what kind of complex capabilities

00:10:20: you can add to that application.

00:10:22: If the UI layer can't support it,

00:10:23: then your application can't have that functionality.

00:10:26: So it was quite an interesting way

00:10:29: of looking at how do we put together a general purpose

00:10:32: theme that can be customized.

00:10:34: And I would like to say Universal Theme has

00:10:37: a few components that made it what it is, a few key features.

00:10:44: So if I take an analogy of a tripod,

00:10:47: there's like three legs of a tripod

00:10:48: that really give it stability and allow it to actually

00:10:50: function as a tripod.

00:10:52: Maybe for those three things for Universal Theme

00:10:55: would be the fact that, one, it's responsive.

00:10:58: So it's going to work on different screen sizes,

00:11:00: different things.

00:11:01: The other one is that it's versatile.

00:11:04: So you can actually do a lot of different things

00:11:06: with Universal Theme.

00:11:07: It should be versatile enough that you can use it

00:11:09: to build any kind of application.

00:11:11: But that alone is not enough.

00:11:14: It has to be responsive, versatile,

00:11:17: and finally customizable.

00:11:19: So we can't just have a color scheme.

00:11:22: Like in our previous themes in Apex,

00:11:23: we would have like, oh, here's a red theme,

00:11:25: or here's a blue theme.

00:11:27: The default look and feel, the default color theme,

00:11:30: the color scheme for universal theme is blue.

00:11:34: It's the most sort of,

00:11:35: the color that's the most neutral for business applications.

00:11:40: But the whole point was you can customize this.

00:11:43: And that led us to building new technologies

00:11:45: like Theme Roller, which for the first time ever,

00:11:47: until that point, live in your application,

00:11:50: you can go and pick a color,

00:11:51: pick different parts of your application

00:11:53: and change it on the fly.

00:11:54: And that was like a mind-blowing moment.

00:11:57: Yeah, I remember a time when I approached two customers

00:12:02: and they were asking, should we go to Universal Theme

00:12:04: or even should we use Apex?

00:12:06: And if you like live create an application

00:12:09: and then you change the color scheme

00:12:11: to their corporate colors and they say,

00:12:13: oh, it's looking already like an application we should use

00:12:16: or we have in our intranet, right?

00:12:19: And that was one of the key factor, I think.

00:12:21: So you started to make that.

00:12:23: My first thoughts when I saw Universal Theme was,

00:12:26: All right, Bootstrap too?

00:12:28: Because I looked into the code, like the naming of the classes.

00:12:31: Correct.

00:12:32: Basically, right?

00:12:33: So now it's a standard.

00:12:34: Almost every front-end framework is using classes like this,

00:12:37: and you add class to elements and change something.

00:12:39: And I said, OK, this is just Bootstrap.

00:12:42: Even the coloring is almost that.

00:12:44: Now I know what journey you were going on to.

00:12:47: It was not just using kind of Bootstrap for Apex?

00:12:51: So just about Bootstrap as well, I did look at Bootstrap.

00:12:54: Bootstrap was very popular.

00:12:55: In fact at the time I think it was called Twitter Bootstrap

00:12:57: and somebody else actually built it.

00:12:59: I even talked to the guy that built Bootstrap.

00:13:02: But really the only thing in Universal

00:13:05: that's inspired from Bootstrap is the grid system.

00:13:10: That was primarily from the Bootstrap style of class names

00:13:14: and the structure of the 12 column fixed grid.

00:13:16: Everything else we looked at Bootstrap as an inspiration

00:13:20: to see like hey this is a general purpose framework.

00:13:22: Everybody's building blogs and websites

00:13:24: and applications on it.

00:13:25: but we couldn't tie it to a specific library, right?

00:13:28: We had to build that in-house because we want to have that full control over the

00:13:31: user experience. And that again goes back to,

00:13:34: we have all these unique sort of components in Apex, right?

00:13:38: We have interactive reports, right? We have classic reports, we have lists,

00:13:42: we have different types of navigation menus, there's tabs,

00:13:45: there's different types of regions, charts,

00:13:47: and all of these things need to sort of feel cohesive. You know,

00:13:51: need to be built in a way that's cohesive when you build an application.

00:13:54: So look at all the different baseline components.

00:13:57: There's buttons, you know, like links, all these things.

00:13:59: And then have a layer of customization on top of that,

00:14:02: which is more than just colors even, right?

00:14:05: So theme or give us the colors, but then,

00:14:08: hey, you have a list, you have a media list,

00:14:09: or you have a set of cards,

00:14:12: but not everybody wants the same type of cards.

00:14:14: So we had this other innovation in Apex 5,

00:14:17: which was called template options.

00:14:19: So it's a really fancy way of saying,

00:14:21: we're gonna add additional classes,

00:14:23: And that's going to change the way that we're

00:14:25: going to style this component.

00:14:27: So what we did was we had template options

00:14:29: for all of our components in Universal Theme,

00:14:31: all the template-driven components.

00:14:33: So now you could check a checkbox

00:14:36: or select an item from a select list,

00:14:37: and it would change the appearance of that item.

00:14:40: Like small, medium, large, x-large, and then stretch

00:14:42: item, remove padding, and so on.

00:14:45: This is what--

00:14:45: Absolutely.

00:14:46: Yeah.

00:14:46: But we also had some things like styling.

00:14:49: Like, oh, here's cards.

00:14:50: Like, you want a featured card, a block card, a compact card?

00:14:53: or whatever, like how many lines of text do you have?

00:14:55: And all these things that kind of made it more versatile.

00:14:58: So now the same component, the same underlying Apex component,

00:15:01: the same markup could be used in many, many, many different ways

00:15:06: to the user.

00:15:06: So there's a plugin structure in Apex

00:15:09: which provides people to contribute, kind of contribute.

00:15:13: Do you plan-- this is just coming out of my mind right

00:15:16: now--

00:15:17: are you planning to contribute visual representation

00:15:23: of items and regions as a contribution from the members.

00:15:27: Like I have an item and I have template components

00:15:30: and I saw it earlier in your presentation

00:15:32: that the page you were creating

00:15:33: were looking exactly like DoorDash

00:15:35: 'cause you have this hero image

00:15:38: and then you had this small image on top of that.

00:15:41: So it looks like the Twitter heading in the profile, right?

00:15:44: So I would never come to something like this

00:15:48: when I create an application.

00:15:50: I would love to have something like this

00:15:52: to be downloaded, put it into Apex,

00:15:54: and say, I have theme one for this page,

00:15:57: or I have theme two for this page.

00:15:59: And I have it in my space and say,

00:16:01: OK, I will have that like this, because Shakil provided us

00:16:05: a template option or template thing.

00:16:08: Are you planning to get more contributions in this?

00:16:13: With the introduction of template components

00:16:16: in Apex 23.1, I think we will start to see this.

00:16:20: So template components, it's really a feature

00:16:23: that Tim and I--

00:16:24: Tim leads the UI development for all of Apex.

00:16:28: This is a feature that we've been waiting for many, many,

00:16:31: many years.

00:16:31: Like, for the longest time, we sort of

00:16:33: had to live within the constraints

00:16:34: of the existing templating system and the templating

00:16:36: engine that we have.

00:16:37: And we enhanced it a few times over the years.

00:16:40: Like, the last big enhancement to the templating engine

00:16:43: has been with the addition of custom positions.

00:16:46: So now you can have any number of display positions

00:16:49: and what they support and so on.

00:16:50: And that was a monumental feature architected and developed

00:16:54: by Vincent and Patrick and many others.

00:16:58: And that's what led the way to have more flexibility

00:17:00: in Universal Theme, but also to build this Redwood theme

00:17:03: that we can talk about later.

00:17:04: With template components for the first time ever,

00:17:06: now we're able to build a UI component in Apex.

00:17:10: It's not tied to a lot of PL/SQL.

00:17:12: It's more tied to the HTML and the presentation of data.

00:17:17: And so now we're using the plugin architecture.

00:17:20: That means that you can have custom attributes.

00:17:22: So let's say you have this new component you want to build.

00:17:25: You want to build a restaurant application,

00:17:29: like a food delivery application,

00:17:30: and you want to show a block of all the cards.

00:17:33: You can use our cards component, but it's fairly generic.

00:17:35: But imagine you had a restaurant card component that

00:17:39: was optimized just for that one use case.

00:17:42: You have a cover photo, like a brand logo, the time

00:17:46: delivery, the ratings, the rating count,

00:17:52: right, like are you the pro member, all of those things

00:17:55: can be declarative attributes now. So when

00:17:56: you as a customer want to build this

00:17:58: application, you drag this, you know,

00:18:01: restaurant card component onto the

00:18:02: screen, you pick the right attributes,

00:18:05: they're all clearly labeled, and that's

00:18:07: it. You have your awesome component with

00:18:08: all the configuration options.

00:18:10: I heard an open mic night yesterday, some

00:18:12: guys were talking about something that

00:18:12: community will do in the future, in the next month. So there will be a template

00:18:17: component plug-in challenge. That's right. They told us. I have to

00:18:22: say it like this because I'm not in this position. There will be a challenge

00:18:27: where the community will be called to create exactly what

00:18:32: you already said, right? Like create a great template component that does one

00:18:37: job. It looks good, right? And it works like you're expecting it. And there will

00:18:42: be a jury that will vote for a rated.

00:18:46: And then it will be--

00:18:48: yeah, it has to be open source.

00:18:49: It has to be published to Apex World so everyone can see it.

00:18:52: So we give that all the guys who are doing that.

00:18:55: It's going to be an awesome template component

00:18:57: competition.

00:18:57: I'm really looking forward to it.

00:18:58: I'm looking forward to seeing what comes out of it.

00:19:00: Because I think for the first time,

00:19:02: we've enabled a much larger audience of people

00:19:06: to participate in this.

00:19:07: I think there's an entire class of developer

00:19:10: that is focused on HTML and CSS

00:19:13: that we're not really addressing with normal plugins.

00:19:17: Plugin development, plugins can be anything,

00:19:19: but with a template component,

00:19:20: you're really looking at a UI component perspective

00:19:23: and how to extend Apex.

00:19:25: So I think there's a huge future

00:19:28: for what people will do with this.

00:19:31: It's gonna be incredible.

00:19:32: - What comes in my mind at this is like what Ronny does

00:19:37: in the company before joining the Apex team,

00:19:38: like this big plugin loaded application.

00:19:43: And if I see all the different parts of the application,

00:19:46: the widgets, if they would be template components

00:19:50: from the visual part, and they were provided to everyone

00:19:54: out there, this would be a very great thing for Apex.

00:19:58: Because you have like--

00:19:59: - Game changer.

00:20:00: - Yeah, exactly.

00:20:01: That was basically what I was searching for.

00:20:04: So you get all the different plugins,

00:20:06: you have the visual representation you want to have.

00:20:08: So I saw so many nice plugins, but on the visual part,

00:20:11: there was just one bad styled select list,

00:20:14: which was not even matching the rest of Apex.

00:20:16: And it was so massively good in the background

00:20:20: with the PL/SQL, but the visual representation

00:20:22: was basically nothing.

00:20:24: And now we are getting plugins, and we would see them,

00:20:28: I think, after the template competition thing,

00:20:31: that we have like kind of a store thing

00:20:35: that you can watch through it in Apex world.

00:20:37: So you can see whatever, and each widget, and plugin,

00:20:40: and template component you want to use.

00:20:42: Just download it, put it into Apex, put a data source on it,

00:20:44: put some attributes on it.

00:20:46: And because it's in competition, they

00:20:48: will really try to get really great templates out there

00:20:52: with as many attributes as possible.

00:20:54: So it's very flexible, and you have it in Cilas.

00:20:57: I'm very looking forward to that.

00:20:59: It's going to be awesome.

00:21:00: I think it's really going to open up Apex a lot more

00:21:04: for people to build out UI components

00:21:06: and having them be reusable, right?

00:21:08: The architecture is all the same.

00:21:10: People will be very familiar with it

00:21:11: from a plugin perspective,

00:21:12: but it's gonna be so much easier to build these things out

00:21:15: and it's gonna be awesome.

00:21:16: I'm looking forward to it.

00:21:17: - I mean, you are going to present

00:21:20: at every single conference, right?

00:21:22: So Ronny was talking about that Apex Connect

00:21:25: and they know and they get a feeling how big this is.

00:21:28: But with the competition, we give it a headstart

00:21:30: and just accelerate that to--

00:21:33: - Yeah, let's get the best and brightest folks on it, right?

00:21:35: people that really understand Apex and have them go nuts.

00:21:38: I think we have sort of unlocked this potential and what I see coming from this is

00:21:43: there's a lot of websites right now where you can sort of look at like

00:21:45: Preact components, React components or other other type of UI components out there.

00:21:50: And now we're sort of bringing that to Apex.

00:21:52: Even if you were just to take like here's a top React components out there.

00:21:57: How could we surface this in Apex?

00:21:59: It's the same UI component, same UI visualization but now in a way that's

00:22:02: wrappered in all the Apex plugin goodness.

00:22:06: So an Apex developer, all they have to do

00:22:08: is drag and drop it, select some attributes,

00:22:10: do the thing that they're used to doing,

00:22:12: building Apex apps in a low-code declarative fashion,

00:22:15: and they get this awesome result at the end of the day.

00:22:18: I'm looking forward to that, and give it a head start,

00:22:21: and see how this community will grow and contribute to that.

00:22:24: So yeah, we already talked about the Universal Theme

00:22:27: and everything that's happening right now.

00:22:29: But let's take a step back.

00:22:31: So you're now an Oracle architect, right?

00:22:33: So we can talk about that in a few minutes,

00:22:36: but let's see at the beginning of your career.

00:22:38: What did you do?

00:22:39: How did you start with web development?

00:22:41: How did it all start before getting into Oracle?

00:22:44: - That's a really good question.

00:22:46: And it's gonna take some time to kind of go back

00:22:49: in memory lane a bit.

00:22:50: - Definitely, yeah, please.

00:22:51: - It all started like, I really,

00:22:54: I had my first computer way back, I don't know,

00:22:57: in '99, something like that, I guess.

00:23:00: So it wasn't, it's been a while.

00:23:03: So I was just fascinated by computers, right?

00:23:06: And I just spent every waking hour on the computer

00:23:09: doing whatever I could.

00:23:10: Like a lot of other kids, I guess, you know,

00:23:12: getting a new toy.

00:23:13: And so with the web, like one thing that I somehow,

00:23:17: I just gravitated towards was really good UI,

00:23:21: really good design.

00:23:23: And for a long time,

00:23:24: I always had a Windows computer growing up.

00:23:28: And I always looked at the Macs

00:23:29: and the design of Mac.

00:23:31: And I always found that very appealing.

00:23:33: It was very aesthetically well designed.

00:23:36: And so in the early 2000s,

00:23:38: I had this website called aquaXP.com.

00:23:41: And actually, it's a funny story.

00:23:43: Tim, who leads UX and Tim Kimbrell,

00:23:46: he and I knew each other,

00:23:48: we've known each other for 20 plus years.

00:23:49: And he had the competitor website, AquaSoft.

00:23:52: - Okay.

00:23:53: - And our mission, the mission of both of these websites

00:23:56: was to make your Windows XP computer,

00:23:59: Windows XP machine, look like a Mac.

00:24:01: - Oh, it could be that I was even on those websites

00:24:06: because I was exactly trying to do that back in the days.

00:24:08: - Yeah, so people would have like the little dock

00:24:10: application, the start menu would move to the top,

00:24:13: you had all these little applications

00:24:14: to like the Windows theme styles and so on.

00:24:17: So that's sort of where this whole thing started, right?

00:24:20: Like my interest in design came from looking at Apple

00:24:23: and their design, like you know,

00:24:24: the stuff that they're able to do.

00:24:26: I look at Windows applications and somehow I didn't find,

00:24:28: like I didn't think they were as well designed.

00:24:31: So we built this website,

00:24:32: like I built this website called AquaXP

00:24:34: and I remember talking to somebody on the internet,

00:24:36: you know, this is when forums were really big

00:24:38: and I was talking to somebody and I found some people

00:24:39: to help me work on it.

00:24:41: And at the time I was using Dreamweaver,

00:24:42: I didn't really understand HTML,

00:24:44: but someone told me that,

00:24:46: "Hey, your HTML, you don't have to use Dreamweaver for this.

00:24:48: You know, you can actually write the HTML.

00:24:50: It'd be so much cleaner and easier and whatever."

00:24:53: So I started looking into writing HTML

00:24:55: writing CSS and customizing things.

00:24:57: And it sort of naturally grew from there,

00:25:00: from building websites.

00:25:02: You know, I would like, you know,

00:25:04: have a number of websites where I use like Google AdSense

00:25:06: to generate a couple of, you know, a couple of dollars

00:25:08: here and there as like a high school student or whatever.

00:25:11: So since then, you know,

00:25:13: I've sort of had this personal interest.

00:25:15: And so when I went to college,

00:25:16: I didn't actually study web design or web development

00:25:19: because I thought like, hey, I already know those skills

00:25:21: or I can learn that on my own time.

00:25:23: So when I went to college, I studied systems engineering.

00:25:27: And before I got to college, there was a competition

00:25:31: that Oracle had.

00:25:32: So in the United States, a lot of kids,

00:25:35: they will participate in extracurricular activities.

00:25:38: So I was never really much of a sports person,

00:25:42: or I didn't really have so many extracurriculars.

00:25:44: I was really like a geek sitting at home with a computer.

00:25:46: But one thing I could do is build websites.

00:25:49: So there was a website building competition

00:25:50: sponsored by Oracle called ThinkQuest.

00:25:53: - Okay.

00:25:54: - And so I thought, well, me and a few other buddies,

00:25:56: like we got together and I said,

00:25:58: hey, I can design the website.

00:25:59: You guys can take care of all the content,

00:26:01: all the scientific research and all the hard stuff.

00:26:04: I'll do the website.

00:26:05: So we built this website.

00:26:06: It was called the Nth Dimension.

00:26:08: It was all about the string theory

00:26:10: and about unifying the concepts of general relativity,

00:26:13: of which is for really, really massive objects

00:26:15: to quantum mechanics and quantum physics,

00:26:18: which are super tiny, minuscule atomic particles.

00:26:20: And how do you join the two together?

00:26:21: There's a thing called string theory.

00:26:23: And so we built this website around string theory.

00:26:26: We submitted it to the competition

00:26:28: and we won in the competition.

00:26:32: So we didn't win first place or second place.

00:26:33: I think we won like third place.

00:26:34: But even then we won third place.

00:26:36: We got to go to open world at the time.

00:26:38: This is like 2005.

00:26:40: I think this is ThinkQuest Live 2005.

00:26:42: And that was really my first, you know,

00:26:46: exposure to Oracle, right?

00:26:48: To the Oracle as the company.

00:26:50: I've always heard of Oracle in some distant regard.

00:26:54: Oracle is not a consumer company.

00:26:56: They're a B2B company.

00:26:57: But this competition, which was to help me get into college

00:27:00: and my college application, really

00:27:02: gave me a career at Oracle, which is pretty incredible

00:27:05: to think about it now.

00:27:06: So this is encouraging our listeners,

00:27:08: even if they don't know where to go.

00:27:09: So just go to competitions, learn new companies.

00:27:13: It all started from a competition.

00:27:15: It was a website building.

00:27:16: Now it can be template component.

00:27:18: You never know.

00:27:18: So to be clear, you don't have to make a website

00:27:20: about string theory,

00:27:21: because this is very geeky and very nerdy.

00:27:23: I think you're very into this topic,

00:27:26: but I think there are competitions out there

00:27:28: where you can reach out.

00:27:29: Even those, the template component challenge,

00:27:32: I think this is another competition

00:27:35: where you can reach out to many--

00:27:37: - A bit more niche, but absolutely.

00:27:38: - Yeah.

00:27:39: - So that's how I really got into Oracle.

00:27:41: I attended Open World as a student,

00:27:43: and they had some cool activities there.

00:27:46: And I actually still work with people today on the Apex team

00:27:51: that have seen from Oracle at the time

00:27:56: when I was there as a student at that competition.

00:27:58: So anyway, competition's done,

00:28:02: Oracle sends an email out to some of the winners saying,

00:28:04: "Hey, we have internships available

00:28:06: "for the winners of these competitions to review

00:28:08: "and vet the websites that people submitted and created."

00:28:10: So I applied for the internship.

00:28:13: It was very close to where I lived,

00:28:15: which is near Reston, and there's an Oracle office

00:28:18: over there, so I got the internship.

00:28:21: I just told them, hey, I can't work full-time,

00:28:22: can I have fewer hours?

00:28:25: So I worked there for, I don't know,

00:28:27: it was supposed to be a two-month internship,

00:28:28: I probably worked for three, four months.

00:28:29: They liked my work, and then they extended my contract,

00:28:32: so I turned into a contractor for the next,

00:28:35: I don't know, two and a half years

00:28:36: as I was going through college.

00:28:38: So I remember I would finish up my classes,

00:28:41: and I would go into the office two days a week,

00:28:43: and the other days I would come in at 6pm

00:28:45: and leave at 9pm or something.

00:28:47: - Yeah, okay.

00:28:48: - It was awesome.

00:28:49: - But it was good money, right?

00:28:50: - It was pretty good money for an intern.

00:28:52: - Yeah.

00:28:53: - Yeah, I was super happy.

00:28:55: And I was at a computer,

00:28:56: I was learning web development and stuff.

00:28:59: And that was my first exposure to Apex as well,

00:29:01: during that time when I was a contractor.

00:29:03: So even today, for example,

00:29:06: Alan Citterson, Vlad, David Bliss,

00:29:11: many others on the Apex team,

00:29:13: They were on the Oracle Education Foundation team

00:29:15: and I've worked with them during my contracting days at Oracle.

00:29:19: Yeah, wow.

00:29:21: Awesome.

00:29:21: So you started-- you call it like web developer at Oracle

00:29:24: in 2006, right?

00:29:26: That's right.

00:29:27: So there are two-- almost three years.

00:29:29: And then there's a break, right?

00:29:31: That's right.

00:29:31: Is it a real break or is it just doing something--

00:29:33: It's an interesting break.

00:29:35: So my contract was coming to an end.

00:29:37: And I had to find a place to go.

00:29:40: I was about to graduate college.

00:29:42: This is 2009, and I interviewed with the Apex team.

00:29:47: So I interviewed with Mike Hitchwa and Mark and Joel.

00:29:52: I believe Patrick was just hired recently,

00:29:53: so Patrick was in Reston as well.

00:29:55: I believe Jason Straub was there.

00:29:57: So there's a handful of people from the Apex team in Reston,

00:30:00: and I go up to the eighth floor,

00:30:01: that's where Mike's office was.

00:30:02: Like there's a conference room in the back.

00:30:03: I kind of meet with the team,

00:30:05: you know, talked about what I could do.

00:30:07: I remember talking to Mike and he kind of said like,

00:30:09: "Hey, so show me what you've done with Apex."

00:30:11: And I was working on this app called think.com at the time,

00:30:16: which was part of the Education Foundation.

00:30:18: But anyway, I think they liked me,

00:30:20: but didn't like me enough that they could hire me

00:30:22: at the time because there was a big hiring freeze at Oracle.

00:30:26: So I couldn't get a job on the Apex team, so that's okay.

00:30:31: I was already contracting with another company,

00:30:33: another web consulting company right across the street.

00:30:35: So they gave me a full-time offer, I took that,

00:30:38: And three weeks later, I have a chat with Mike.

00:30:42: He says, "Hey, I really wanna bring you on

00:30:44: "to help us with some special projects.

00:30:46: "Would you be interested?"

00:30:49: I said, "Yeah, that sounds really interesting."

00:30:51: And Mike sort of sold me on Oracle

00:30:53: by saying it's a large company

00:30:55: and there's a lot of opportunity here.

00:30:57: And by the way, look at the garage.

00:30:59: There's really nice cars in the garage.

00:31:02: - Great, yeah, that's a way to get people, right?

00:31:04: So you were like seven months in a different company,

00:31:07: but already like three weeks after you started

00:31:11: at the company, you were already at Oracle, right?

00:31:13: - That's right, that's right.

00:31:15: Yeah, it was an interesting time.

00:31:17: Like this is my first full-time job out of college.

00:31:20: I'm at this company and three weeks into it,

00:31:22: two weeks into it, I already know that I'm gonna be

00:31:23: leaving to this other thing when Oracle has,

00:31:26: they're hiring FreezeLift and they have an open headcount.

00:31:29: So I still enjoyed working at this company.

00:31:31: I was the first engineering hire at this company

00:31:32: called Perfect Sense Digital, which is now

00:31:34: the creators of Brightspot, the popular CMS system.

00:31:39: But yeah, then I joined Oracle full time in November 2009.

00:31:45: And I worked on the Oracle Store project for several months,

00:31:49: making sure the UI of that--

00:31:51: really focusing on the UI of that application.

00:31:55: But I also worked a lot with Mike

00:31:56: on some of the Apex 4 UI things here and there.

00:32:00: And that's how I started getting into themes.

00:32:02: Then come Kscope in, I believe, June 2010,

00:32:06: it was in Washington, DC, which is local to me.

00:32:08: - Just around the corner, right?

00:32:09: - Right.

00:32:10: And that's when, you know, I was already working with Mark

00:32:13: on some themes and so on,

00:32:14: and we thought it'd be kind of nice

00:32:15: to have a co-presentation together.

00:32:17: So Mark and I did a presentation together.

00:32:19: It was my first ever presentation from Oracle

00:32:22: at a public conference.

00:32:25: And I talked, and I walked people through

00:32:26: how to customize their theme using Photoshop

00:32:30: and updating all the images and the CSS

00:32:32: to have a new look and feel.

00:32:34: And that was 2010 June.

00:32:36: - So you were all in UI stuff

00:32:39: and you started like what you said,

00:32:42: but now you're an architect.

00:32:43: So an architect does more than just UI work, right?

00:32:46: So what changed between when we learned to know each other

00:32:51: when you just created the Universal Theme until now?

00:32:54: What happened in between?

00:32:56: - So I think that my career sort of changed

00:33:00: from UI development and getting into the weeds of the UI

00:33:05: to applying that UI.

00:33:08: So we built this universal theme.

00:33:10: And I still worked on it.

00:33:11: That was really my primary area of development.

00:33:14: But there's a lot of things that we do on the Apex team

00:33:17: and a lot of projects that Mike gets asked to work on

00:33:22: or signs us up for.

00:33:24: So I'll get thrown into projects here.

00:33:26: And they're like, hey, there's an internal application.

00:33:29: to really update the UI of this thing.

00:33:30: Oh, there's this application that we want to build.

00:33:32: Let's go and work on that.

00:33:33: Hey, Shakib, can you look at the UI of this application?

00:33:36: So as we started to go and build more and more

00:33:38: of these applications or update the UI of these things--

00:33:41: for example, I worked on the Ask Tom refresh of the UI.

00:33:44: This is several, several years ago now.

00:33:46: But before that, it was a very classic application.

00:33:49: I remember that, yeah.

00:33:51: And then we updated it to universal theme

00:33:53: and had some custom things here and there.

00:33:56: And so progressively over time, I started working more on special projects and building

00:34:03: Apex applications rather than building the UI capabilities for Apex.

00:34:08: And then we also grew our team over the years.

00:34:11: So we were able to get really talented people.

00:34:13: There's no way I would be able to do what I'm doing now if I didn't have somebody like

00:34:17: Tim that's really taken on a lot of my development responsibilities from actual universal theme

00:34:24: development, the builder UI development, and many other special project

00:34:28: development. So that allowed me to use my time to work on these other strategic

00:34:32: projects to Oracle. And I think that really led its way to the pandemic when

00:34:39: Apex was really, you know, a big fat spotlight which was shown on Apex.

00:34:45: That was one special project I wanted to talk about because you said you're

00:34:49: working on this and that and however, whichever project Mark is signing up

00:34:54: for, there was one big project you were working on, right?

00:34:57: So the COVID applications for the United States, I think.

00:35:01: And there was kind of Larry Ellison, a couple of talks to a guy and was

00:35:07: promising that we will do it for a very cheap price, very quick at most.

00:35:11: Oh boy.

00:35:12: Yep.

00:35:12: Right.

00:35:13: So, so let me tell you a little bit of back story on this.

00:35:14: Yeah, please.

00:35:15: So let's rewind the clock to the pandemic, right?

00:35:19: Like this is for us, like really the, the pandemic really hit when the

00:35:23: lockdown started. And I believe this happened in the United States in mid-March.

00:35:27: So I remember actually going into the office in like March,

00:35:32: I don't know, like mid-March, early March. And we're talking about the pandemic.

00:35:36: And we're like, is this a real thing? We're not really sure.

00:35:39: Maybe there was a conference coming up in the UK. I was like, yeah,

00:35:42: maybe I can go. I don't know. It seems kind of sketchy. Right.

00:35:45: I remember talking to Kyle on the team and he was saying, Hey,

00:35:48: should we really be coming into the office? Like, I don't know. And I thought,

00:35:52: maybe like I'm not really sure yet but seems to be fine.

00:35:56: We go home that weekend,

00:35:58: Saffra sends us out, Saffra CEO of Oracle,

00:36:01: sends an email to all Oracle employees saying,

00:36:03: all Oracle offices are closed indefinitely.

00:36:07: - Okay. - Right?

00:36:08: Three days into-- - Full lockdown.

00:36:10: - Like full lockdown,

00:36:11: three days into that work from home situation,

00:36:13: this is March 18th,

00:36:17: about like 9 p.m.

00:36:19: I get a text message from Chris Rice

00:36:21: and it's sent to Joel Coleman and myself.

00:36:24: And he says, guys, we got to hop on a Zoom soon.

00:36:29: And that's when this whole thing started.

00:36:31: We hopped on the Zoom call.

00:36:32: Mike is already on there.

00:36:34: There's a few other folks on.

00:36:36: And we had just learned that Oracle had promised the US

00:36:41: government that we would build a system

00:36:43: to track the efficacy of early stage COVID-19 treatments

00:36:47: and that we would have the system live

00:36:49: by the end of the weekend or in a couple of days.

00:36:53: And of course, we were going to build it all in Apex.

00:36:55: Yeah, of course.

00:36:56: Of course, there's no technology left

00:36:58: that you could use for such a short deadline.

00:37:02: And then you started developing.

00:37:04: So I remember that they said that you were working closely

00:37:06: to Larry for the UI, or was it just Mike?

00:37:09: And Mike was reporting to Larry to get this design up

00:37:13: and running.

00:37:14: Well, that was an interesting time.

00:37:15: So we got on the call at 9 PM.

00:37:17: The first thing we do, just like any other Apex developer,

00:37:20: I'm sure if I talked to you together,

00:37:22: we would say, "Hey, we wanna build an app.

00:37:23: "What's the first thing you do?"

00:37:24: You probably go to QuickSQL,

00:37:25: you put together a data model, right?

00:37:27: - Exactly.

00:37:27: - So I have screenshots of,

00:37:28: like, "Hey, let's go to QuickSQL,

00:37:29: "let's look up these terms."

00:37:30: We were on, you know, we had a few scientists on the call.

00:37:33: You have to believe, like, Andy Mendelsohn

00:37:35: was on the call as well, right?

00:37:36: And Juan Loiza, and you know, these are executives,

00:37:38: and I'm sharing my screen just because, you know,

00:37:40: I just happened to have my screen up,

00:37:42: and I'm like, "Hey, let's go build a data model

00:37:43: really quickly and started building these apps.

00:37:45: And a couple of days, we had an app ready to share.

00:37:49: And we hop on a call.

00:37:54: I've never been on a Larry call in my life.

00:37:56: And Mike wants me to join the call as well.

00:38:02: We join and we give an update.

00:38:04: Larry turns to Mike and says,

00:38:06: "Okay, Mike, can you share the app that you've built?"

00:38:10: And Mike says, "Sure, Larry.

00:38:11: I'm going to pass it on to Shakib to demo the application.

00:38:15: Oh, I can just imagine how you felt in this moment.

00:38:18: Yeah, it was an interesting moment.

00:38:20: Probably the best time I've ever been put on the spot like that.

00:38:23: Yeah.

00:38:24: And so honestly, I said, all right,

00:38:26: and we walked through the application.

00:38:30: And Larry had some good feedback for us.

00:38:34: And at that moment, you sort of disregard for the moment

00:38:39: that this is the executive leadership of Oracle.

00:38:43: And it's not just Larry on the call.

00:38:45: It's really the entire executive leadership team.

00:38:48: And this is-- just to take a step back,

00:38:52: I've never seen an effort like this

00:38:54: where the entire company has come together

00:38:56: towards a singular purpose.

00:38:59: I think the pandemic really impacted all of us.

00:39:02: And everyone was under lockdown.

00:39:04: And we're trying to see what can we

00:39:06: do to help in this situation.

00:39:08: And I think the Oracle leadership team really

00:39:10: understood that.

00:39:11: And that's why they pushed us to say,

00:39:13: how can we use our technology for good?

00:39:15: How can we use the capability, the staff that we have,

00:39:19: the products and technology that we have,

00:39:21: to help in this fight against this pandemic?

00:39:25: And one thing that I think Oracle does really good

00:39:27: is understand data, make sense of data,

00:39:30: report on that data, so that others

00:39:33: can make better decisions.

00:39:34: And that's really what all we were building.

00:39:37: we're collecting, the application is quite simple.

00:39:40: It's basically a simple survey application

00:39:42: that any doctor could sign up for,

00:39:44: and they may be giving early stage COVID-19 treatment

00:39:47: for their patients, and we wanna know,

00:39:49: is that early stage treatment gonna work or not?

00:39:51: Right, so it's a simple screen.

00:39:52: It's like, hey, does your patient feel better, worse,

00:39:55: or the same as they did yesterday?

00:39:57: Right?

00:39:58: - I mean, if I compare this,

00:40:00: at the beginning of developing this application,

00:40:02: like you have one POC, for example, in the end of a weekend,

00:40:06: And I compare that to Germany.

00:40:08: So we had one application that was used to track each other.

00:40:13: So the devices were communicating.

00:40:15: Like contact tracing.

00:40:16: Exactly.

00:40:17: And this was a conglomerate between Telekom, SAP,

00:40:23: and I think there were a couple of others.

00:40:26: And they used so much time, and they used millions,

00:40:30: millions of money just to create the app

00:40:32: and to push it out in the store.

00:40:34: And there were errors in that, and there were problems.

00:40:36: I said, okay, you are working on Apex applications

00:40:38: to make something else regarding COVID happen in the US,

00:40:42: but this should have been the point

00:40:45: where someone else says, we can do that with Apex.

00:40:47: Of course, you need what's coming right now,

00:40:50: like PWA and stuff,

00:40:52: and then you need an API from the phone itself, right?

00:40:55: But if it's just the visual part,

00:40:57: like an application that is accessible,

00:40:59: where you can enter your data in, maybe a contact--

00:41:01: - Honestly, it's no different than any other application

00:41:03: that any of our customers have ever built, right?

00:41:05: We were basically building a form to collect data that's going to go into an Oracle database.

00:41:10: At the end of it, that's all this is.

00:41:12: And we've done these applications for years and years and years.

00:41:16: And all of our customers have done them.

00:41:17: And they've built mission critical systems across the globe.

00:41:20: So when we got this call to build this app, it was like, it was no big,

00:41:25: like it wasn't as like this monumental task, right?

00:41:28: We already had like the apex application development capabilities.

00:41:33: Like, we were confident we could do this.

00:41:35: Like, there was not a moment of doubt in our minds

00:41:38: that can we deliver this or not, right?

00:41:40: The technology was there.

00:41:42: There was not a moment of doubt that do we have a cloud?

00:41:45: Do we have infrastructure to deploy this application?

00:41:47: Like, this is very sensitive health data, right?

00:41:50: Health, private information, it has

00:41:53: to be treated with very, very strict security controls.

00:41:57: And the Oracle database is the underlying sort

00:42:00: of platform for these applications.

00:42:02: it's used across the globe in these capacities every day.

00:42:05: So we had a technology footprint.

00:42:07: It was just a matter of getting the folks together,

00:42:09: understand the requirements and building an application,

00:42:11: which is the same thing that happens

00:42:13: at every single customer site.

00:42:14: So our customer in this case

00:42:16: just happens to be the US government

00:42:18: and the project manager for this project

00:42:20: happens to be Larry Ellison.

00:42:22: - Yeah, and I think this leads Larry to the conclusion

00:42:27: or to the idea that APEX is the best solution, right?

00:42:30: So I had many stories, I heard many stories about

00:42:33: how he proceeded and asked other teams

00:42:35: why they're not able to be that fast, right?

00:42:41: - So what happened was, we had a number

00:42:43: of these design review meetings.

00:42:45: And in one of the meetings,

00:42:46: there was a lot of UI feedback, right?

00:42:49: And normally, you would pause, you'd take some notes,

00:42:53: and you'd say, all right, we'll come back in a week or two,

00:42:56: and we'll action the feedback, and then we can review again.

00:42:59: Instead, what we did was we said,

00:43:02: let's make these changes live.

00:43:04: So we started making these changes,

00:43:05: and I've said the story again and again,

00:43:07: and I love telling the story,

00:43:08: because it's the same story that happens

00:43:10: at customer sites with normal Apex developers

00:43:12: every single day.

00:43:13: You sit with your customer,

00:43:14: you ask them, what do you want to do?

00:43:16: Do you want to say this?

00:43:17: Do you want to move it around here?

00:43:19: And so if you ask an executive,

00:43:22: hey, can I have three hours of your time

00:43:23: to do a demo of my product?

00:43:26: Hell no, you're not gonna get that time.

00:43:28: But if you sit there and say, hey,

00:43:30: do you want to work on this application together?

00:43:31: And whatever you say, we can make it happen right now

00:43:34: in real time.

00:43:35: And that's exactly what happened.

00:43:37: So for three hours, we did this back and forth.

00:43:39: And I think that, and it wasn't just us working together

00:43:43: with Larry and other professionals there.

00:43:46: It was the entire executive leadership team

00:43:49: that witnessed this happening.

00:43:51: And I think that was a pivotal moment for Apex

00:43:54: and the way that Oracle looks at Apex today.

00:43:57: That was really the start.

00:43:58: And that was just in the early days.

00:43:59: We then went on to build a lot of other pandemic apps,

00:44:02: and probably the most famous one being

00:44:04: v-safe, which has been used by nearly 11 million people

00:44:07: and has reported 159-something million patient-reported

00:44:11: outcomes.

00:44:11: And that application, the success of that application,

00:44:15: has really led to a lot more investment in APEX,

00:44:19: a lot more attention paid to APEX,

00:44:21: and APEX now being used as the strategic tool

00:44:25: to build applications across the Oracle industries

00:44:28: and for the Oracle, you know, Sterner acquisition.

00:44:31: - Yeah, so Larry is heavily investing in Apex right now.

00:44:36: So we see almost in any part of the community,

00:44:40: people joining you guys in the development team, right?

00:44:44: So you got Vincent back in the days,

00:44:46: the Menno joined the team.

00:44:47: - Sure, rock stars.

00:44:50: - Yeah, exactly.

00:44:50: They are coming into your development team.

00:44:54: So we don't have the possibility to show a safe harbor statement right now.

00:44:57: I mean, everything you are saying here doesn't...

00:44:59: Big fat safe harbor.

00:45:00: Exactly. We just print it on a screen or something.

00:45:03: But if you are visiting or if you're looking into the future of Apex,

00:45:08: like maybe 10 years, 15 years, what would be the leading aspect for you?

00:45:14: What points to follow, right?

00:45:16: So what do you think Apex will become in the next 10 to 15 years?

00:45:22: Wow, that's a tough question to answer.

00:45:27: My event horizon is not 10, 15 years.

00:45:31: Let's stick to five years.

00:45:33: Five years is more reasonable.

00:45:35: I feel like Apex has a lot of challenges ahead and I feel like we're going to address them

00:45:42: head on and as best we can, as we've always done.

00:45:45: I think what really changed now more than anything is that I believe Oracle has seen

00:45:51: what it has in Apex and is acting on it.

00:45:56: For the vast majority of our customers and our partners in the Apex community, they've

00:46:01: always sort of seen this, so to say, "magic" of Apex and what it can do to their companies

00:46:09: and their organizations and their application development processes.

00:46:12: Oracle now gets it.

00:46:15: And there's a lot more investment in Apex.

00:46:16: And that's why we have, our team has been growing.

00:46:20: and like the Vincents and Manos and Ronnies and others,

00:46:23: these are individuals that are supremely talented.

00:46:28: And in order to move at the pace that we need to move,

00:46:31: we need to have this caliber of talent.

00:46:33: And this applies to everybody on the Apex team.

00:46:36: I think we've been really fortunate to assemble a team

00:46:38: of just incredible rock stars

00:46:41: that are so humble and down to earth.

00:46:44: And that's part of the reason why we love

00:46:45: coming to these conferences and talking to customers,

00:46:47: It's really, you know, it sort of gives us a lot of energy and drive.

00:46:50: So where I was going with this whole thing is in the next five years,

00:46:55: the next few years, you're going to see Apex tackle bigger and bigger problems.

00:47:00: And something that you've seen already for the past few years is that the

00:47:05: cadence of our Apex releases and the capabilities that we're providing with

00:47:09: every release is, you know, you're, you're seeing that accelerate the pace of

00:47:15: which new capabilities, new strong,

00:47:17: like really large fundamental changes to the Apex,

00:47:21: you know, functionality,

00:47:24: it's growing at a pace that's more than ever before.

00:47:27: And you're gonna see that continue.

00:47:28: Like the result of all these people joining the Apex team,

00:47:31: the FoEx acquisition, right?

00:47:33: You're gonna see that materialize in Apex,

00:47:36: and it's gonna be better for everyone, right?

00:47:39: The capabilities that we're not trying to build

00:47:42: applications aside and say,

00:47:43: hey, here's like some secret sauce

00:47:44: that we're going to use, we want to build it into the platform

00:47:49: so that all of our customers, including ourselves,

00:47:52: because I think we are one of our biggest customers, right?

00:47:54: We eat our own dog food.

00:47:56: We also benefit.

00:47:57: And we can also use our low-code approach

00:47:59: to build applications faster.

00:48:00: So that's where that whole continuous feedback loop

00:48:02: sort of comes in that I mentioned.

00:48:04: Yeah.

00:48:05: This was one last aspect I want to talk about.

00:48:08: So besides what I have--

00:48:11: another question about your personal inspiration,

00:48:13: let's talk about the continuous feedback loop you mentioned in your presentation.

00:48:16: So I think regarding the guys joining your team, they are all so passionate,

00:48:22: they are so into it and they were contributing to the product, to Apex

00:48:26: itself, using plugins or maybe just talking to you and give you the feedback

00:48:30: and they wouldn't just left their companies to join Oracle if they were

00:48:35: not so impressed by how you guys are working with us, right? So I can just

00:48:41: imagine that and Ronnie told us this in the last episode of Devs on Tape or the

00:48:47: recent one that he was just looking up to you guys and saying okay they are

00:48:51: coming to conferences, they are talking to us, they're completely next to

00:48:55: us right there. It's not just a team where you can send emails in to and wait for

00:49:00: something. Yeah exactly and then you're coming to conferences, you drink beer

00:49:04: together with us and we're talking about new features that the developers want to

00:49:08: have. And that's the reason you're just asking the guys and they say, of course I

00:49:11: would join your team. Right. And that's the way.

00:49:14: Well, hold on a minute. First of all, I don't think we're going to people asking

00:49:17: people to ask for, you know, hey, join the Apex team.

00:49:20: Right. But also I think a lot of it is that,

00:49:24: you know, we, the Apex community is something very, very special.

00:49:30: And I think Joel was really the catalyst for this,

00:49:35: right. The entire Apex community movement.

00:49:37: It was always about helping others

00:49:40: sort of succeed and do better, right?

00:49:42: And with the Apex community, I think,

00:49:43: whenever we talk to customers,

00:49:45: whenever we talk to people face-to-face

00:49:46: and they're using our product and they're using Apex

00:49:49: and trying to build something cool,

00:49:50: we learn a lot from that experience.

00:49:52: So actually, we are the people that gain the most

00:49:55: out of coming to these conferences,

00:49:57: and that's why we like to come here so much, right?

00:49:59: We love to talk to people that are using Apex

00:50:02: on a day-to-day, real-life basis

00:50:04: and understand what problems do they have,

00:50:07: What issues are they running into?

00:50:09: What is it that they want to do?

00:50:11: And we have the same at Oracle.

00:50:14: We have thousands of developers at Oracle that use Apex,

00:50:17: and we learn from a lot of them.

00:50:19: And that's how we make the product better,

00:50:20: is we have the same needs, the same challenges

00:50:24: of building applications that everybody else does.

00:50:26: And here's an opportunity to talk to

00:50:28: hundreds or thousands of customers

00:50:31: that are using your product to get that feedback direct.

00:50:34: Like it doesn't get any better.

00:50:35: So that's why I think the APEX development team will continue

00:50:38: to have this close relationship with the community.

00:50:42: Because in a way, we are also consumers of the product.

00:50:46: We're all developers.

00:50:48: We just happen to build APEX.

00:50:49: But we also build a lot of APEX applications.

00:50:51: Yeah.

00:50:52: And then you get the feedback, and you can improve APEX itself.

00:50:55: And then you get this relaunch, or this new generation

00:50:59: of the ideas app, to get new value, just feedback,

00:51:03: and this really feature requests.

00:51:05: So how many people are voting for one single feature you might not talk about

00:51:10: at a conference? And you said, okay, if there's so much,

00:51:14: like so many people wanting exactly this feature, we should talk about that.

00:51:19: And we, and I tweeted that, I think there was

00:51:23: Vincent talking about a guy from the community.

00:51:27: I think we can say it's Jürgen Schuster.

00:51:29: He was completely changing his mind, I think in a timeframe of only one year.

00:51:34: And that was the moment when you told us that you will consider to put more work

00:51:41: and energy on the ideas app and make it more transparent and change the way

00:51:46: the process of sending in an idea will ever be commended.

00:51:50: So if it's declined, it will be commended.

00:51:52: If it's accepted, then you will see how this idea will proceed into the product.

00:51:56: And I think everything

00:51:58: together in this continuous feedback loop, which is a great name, could be from Apple.

00:52:03: right? So like this is one feature or one thing you want to go

00:52:08: further with. It's the right thing to proceed. All right, so there's one

00:52:12: question left which is a little bit more personal. So obviously everyone who is

00:52:18: creative or who is doing like visual stuff has this inspirational source.

00:52:25: And I'm not saying that you're looking at bootstrap and building something similar.

00:52:29: system. So is there something between next to Apple obviously that is inspiring

00:52:35: you in your daily work? That's a tough question to answer

00:52:39: because I get inspiration from from every direction that I can. There's not

00:52:44: like one source that I turn to for inspiration. I think a lot of the

00:52:49: inspiration I get is from looking at what others are doing in the space and

00:52:54: and just trying to stay on top of what's happening

00:52:58: in the UX world and the UI world.

00:53:00: But it's not just limited to that,

00:53:01: it's also in the application development world.

00:53:03: Now AI is becoming a big thing.

00:53:06: I'm looking at ways, I think the entire,

00:53:08: I think pretty much every company is looking at ways

00:53:11: of how can we adopt AI?

00:53:13: And so long way of answering your question,

00:53:16: there's not a single point of inspiration.

00:53:18: I definitely look at Apple and I look at some of the leaders

00:53:21: in that consumer space, right?

00:53:24: But really, I also look at everything around us,

00:53:27: all the things that, we live in a golden age right now.

00:53:31: And I think with AI especially,

00:53:32: we're just getting started with AI.

00:53:36: And it's gonna fundamentally change

00:53:37: the way we interact with technology.

00:53:41: And it's gonna be orders of magnitude more significant

00:53:46: than the last thing that happened

00:53:49: with mobile devices and internet and so on.

00:53:51: And it's gonna be everywhere.

00:53:53: is going to be normal, right?

00:53:54: Just like in a way, if you look at Web 2.0

00:53:56: or responsive design, right?

00:53:58: For a while, those were like flashy terms, right?

00:54:00: Or cloud, I think cloud is still something that's,

00:54:04: you know, not completely uptaken by everybody,

00:54:06: but give it some period of time.

00:54:08: It's only a matter of time where it will only be cloud.

00:54:11: - It is cloud, right?

00:54:12: - Like nobody will want to maintain,

00:54:14: like you don't run your own power company

00:54:16: to generate power for your house, right?

00:54:18: You just pay a service and they just give it to you.

00:54:19: You don't run your own water, you know,

00:54:22: a treatment plant to have water, right?

00:54:24: So in the same way, you will just use the cloud

00:54:27: and AI will eventually be just one of those utilities.

00:54:30: It will just be there.

00:54:32: And I think we will progress a lot

00:54:35: and solve larger problems.

00:54:37: - So I'm glad that I said something safe,

00:54:40: Haba, kind of in the beginning,

00:54:42: because if you were saying it might be going

00:54:45: into the five year or 10 year or 15 year plan,

00:54:48: then that Apex gains some AI features.

00:54:53: I think it's not just Apex,

00:54:57: but I think everything will look at AI.

00:54:59: And I think Apex will be there,

00:55:00: and I want us to be leading in that space.

00:55:03: But it's really hard to say.

00:55:04: Like, I think AI right now means a lot of things

00:55:06: to a lot of people.

00:55:07: For a lot of people, it means chat GPT, right?

00:55:10: And I don't think you'll see,

00:55:11: at least I don't see, you know,

00:55:14: something that simple right now.

00:55:19: I think AI will fundamentally change the way that we're going to look at application development,

00:55:25: look at solving problems as a whole.

00:55:28: And for us on the Apex team, we're going to look at how do we continue to build a low-code,

00:55:34: how do we continue to solve problems, right?

00:55:36: And how do we do that in a way that's the easiest for someone to do?

00:55:39: And if that's using AI, awesome.

00:55:41: If that's using a new component or having template components,

00:55:44: people can kind of build out.

00:55:46: Imagine you're entering the source of an interactive grid

00:55:50: or an interactive report, and then you're not

00:55:53: writing SQL code, because this is the part in low,

00:55:56: which is not no code, like low code.

00:55:59: And then you hit the magic stick,

00:56:02: which is just generating SQL based on what you tell them.

00:56:06: I want to have the employees together with all the

00:56:08: departments, and I would like to know

00:56:10: where the salary is going up and down and whatever.

00:56:13: And the SQL query will be prepared for you, explained,

00:56:17: and then you save it.

00:56:18: - This is definitely something that Oracle is looking into.

00:56:21: There's the entire sort of focus group

00:56:25: looking into generative AI.

00:56:27: And I think Oracle as a company is diving into this space.

00:56:30: And there's gonna be a lot to come.

00:56:32: - It's based on data, right?

00:56:33: Who should be better in data stuff than Oracle, right?

00:56:38: All right, so inspiration, your gut source is like everywhere.

00:56:41: So trying to be on top of that, get everything from like newsletters, Twitter and so on.

00:56:46: This is a question later on.

00:56:48: But do you have a concrete idol?

00:56:51: Concrete is basically the way we work on that, right?

00:56:54: So do you have an idol, like in a person?

00:56:57: And it's not Johnny Ive?

00:56:58: No, it's not Johnny Ive.

00:57:01: And I don't have an idol.

00:57:03: Like I look at everyone for inspiration.

00:57:06: Yeah.

00:57:07: That's good.

00:57:08: I was guessing it's Johnny because of his vision of building things like visual presentation.

00:57:16: All right.

00:57:18: So we're now at the point where we could talk like days, I guess, because there happened

00:57:26: so much.

00:57:27: I would like to ask you some questions from our categories.

00:57:31: This is the way we try to compare our guests from different areas of the world and different

00:57:36: technical corners.

00:57:37: So I have a couple of questions from the hypothetically category.

00:57:44: So if you could undo one technological trend in the past, what would it be?

00:57:50: Oh, this is an easy one for me.

00:57:53: I think it would be social media.

00:57:55: Okay.

00:57:56: I just feel like the proliferation of misinformation and just like people being just hooked on

00:58:05: their devices because of the next update or whatever, I feel like that could be tamed

00:58:12: a bit more.

00:58:13: So that's something that I would undo.

00:58:15: Great.

00:58:16: So and the direct opposite, hypothetically, what would you like to invent and create in

00:58:21: in the future in the technological sector

00:58:24: that's not already existing?

00:58:26: - It's hard to answer this because I think

00:58:29: there's a lot of technology that exists already.

00:58:32: I'm not sure if I would like to create anything new.

00:58:34: I don't have like a novel idea,

00:58:35: but what I would like to do is I would like

00:58:37: to make technology more accessible to more people.

00:58:40: I think we're very privileged to be

00:58:42: in very advanced economies,

00:58:44: and I'd like for the rest of the world

00:58:45: to also be able to have the same access to technology

00:58:49: and be able to be more productive and, you know.

00:58:54: - Great, so you were saying in the question before

00:58:56: that you would undo social media.

00:58:58: So, the next category is in private.

00:59:02: Would you show us your screen time

00:59:03: on your iPhone without blushing?

00:59:05: So, are you kind of a zombie,

00:59:06: which is like a mixture of a zombie and a smartphone?

00:59:11: Smartphone zombie?

00:59:12: - No, you can totally,

00:59:14: I will happily show the screen time on my phone.

00:59:18: I don't think I'm addicted to my phone.

00:59:20: I'm terrible when it comes to text messaging and using social media.

00:59:24: I haven't used social media like Twitter even for a long time.

00:59:29: I try not to be tethered.

00:59:31: If I am tethered to it, it's probably checking email or something boring.

00:59:36: So I will talk to you if I see you at a conference, on the conference, looking at the device and

00:59:40: not working.

00:59:41: Yeah, but most likely I'm probably looking up like slick deals.

00:59:45: Yeah, okay.

00:59:46: Great.

00:59:47: Next question from the in private category.

00:59:50: Are you satisfied with your work-life balance?

00:59:53: - That's a really good question

00:59:56: because I think a lot of people

00:59:58: sort of have to make a trade-off at some point, right?

01:00:01: Like what is work, what is life,

01:00:02: and how do you sort of balance that?

01:00:04: For me, I think I lean way more towards the work side

01:00:09: and I'm trying to address that a little bit.

01:00:11: I definitely want to have,

01:00:13: like working and being part of this team

01:00:16: gives me a lot of purpose and satisfaction.

01:00:20: But I definitely work more than I probably should.

01:00:24: - Yeah, we had one guest answering this question

01:00:27: with there is no work-life balance,

01:00:30: but there's a work-life blending.

01:00:32: Because there are, yeah, parts of the work

01:00:36: which are so into, like, equals the hobby of the guest.

01:00:40: - That's true, that's a good way of putting it.

01:00:42: I think it's a work-life harmony more than anything.

01:00:45: Because a lot of what I do defines me as a person.

01:00:50: So it's hard to think if you take away my role

01:00:55: or what I do for work, it defines a big part of me.

01:01:00: - Yeah, so when you're sitting on the couch in the evening

01:01:02: and opening your laptop and creating an Apex application,

01:01:05: even if it's for private things or just exploring,

01:01:08: it might be some-- - It's not work.

01:01:09: - Yeah, it's not work, right?

01:01:10: So this is-- - It's more of a hobby

01:01:12: type of thing, it's an interest.

01:01:13: - Yeah, I think this is exactly what makes us good

01:01:17: in our job because there's no separation

01:01:20: between those two.

01:01:21: - It's interesting, there's a quote

01:01:22: that was attributed to me.

01:01:27: And they said that, this is actually Larry,

01:01:29: and he said, we were on a call some time ago,

01:01:32: and he said, "This is the life you've chosen."

01:01:35: And I love that quote because I can apply it

01:01:38: to a lot of things.

01:01:41: In a way, it's not like I'm forced to do this.

01:01:44: No one's forced to do that. At least I hope not.

01:01:47: But somehow you sort of enjoy it and you make it your life.

01:01:51: Yeah, sure. And you get the best out of it.

01:01:54: Right. So the next question, again, from in private.

01:01:57: I like those ones.

01:01:58: This one's

01:02:00: what role does your private environment play in your job?

01:02:02: So are you surrounded by geeks or are you surrounded by just completely people

01:02:08: completely other fields?

01:02:10: I'm not surrounded by geeks in my day-to-day personal life, I guess.

01:02:16: I would probably say I'm probably the most geeky one of all of them,

01:02:19: which is kind of refreshing in a way, like just to kind of see how normal people

01:02:24: who work and function, but in my private environment,

01:02:28: like, you know, I think I basically live on Zoom, right?

01:02:33: So when you're on Zoom with me,

01:02:34: you have a window into my house, into my life in a way.

01:02:38: Yeah, but it's refreshing to not just talk to people who are doing the same job.

01:02:43: Right. So you can even if you just turn off Zoom,

01:02:48: then you can really just think of every other thing besides work.

01:02:52: Right. That's right.

01:02:53: All right. Next category is consumption.

01:02:55: How do you consume news and new knowledge?

01:02:58: Are the newsletters, Twitters, books, maybe the Devs on Tape podcast or magazines?

01:03:03: Definitely the Devs on Tape podcast, for sure.

01:03:06: I do listen to podcasts when I'm traveling.

01:03:08: Yeah.

01:03:09: Yeah, I do look at like Twitter and Apple News a lot for like sort of what's happening.

01:03:14: I read BBC News quite a bit.

01:03:16: Yeah, that's my sort of my go-to places.

01:03:19: Yeah, so BBC News is news in general.

01:03:23: And if you just look on tech news, new knowledge, like there's a new framework coming out or

01:03:27: you want to learn something about AI, do you consume it like, as you said, over Twitter

01:03:32: or do you get some newsletters from news aggregators or reading blogs?

01:03:38: Mostly just like I guess social media in a way, right?

01:03:40: The thing that I want to undo.

01:03:42: I want to undo the toxic parts of social media.

01:03:46: I like the information sharing aspects of it, not so much the…

01:03:49: The trolling and hating, right?

01:03:51: Yeah.

01:03:52: And false information.

01:03:53: Yeah, so we will edit that in the hypothetically part.

01:03:54: So you just want to cut off social media regarding those points.

01:03:59: OK, so last question, also from the consumption category.

01:04:06: How do you deal with a growing flood of information

01:04:08: via various channels?

01:04:09: So news information are coming more and more,

01:04:11: like push notifications.

01:04:13: Every single app tries to send you push notifications.

01:04:15: I just turn it off.

01:04:16: I turn it off.

01:04:18: I do not have any--

01:04:19: very few applications have the privilege

01:04:21: of having push notifications enabled on my phone.

01:04:23: Yeah, so I'm grinning right now, because this

01:04:26: was one of the major features you were just--

01:04:27: It's a major feature and should be used with caution.

01:04:31: If you start seeing push notifications everywhere,

01:04:33: which is what every single app wants to do,

01:04:35: then you're just gonna be inundated with notifications.

01:04:38: And how do you live with that?

01:04:40: - I think this is one technical part

01:04:43: which was not so clearly communicated in the conference.

01:04:46: They were all saying, okay, I have to register.

01:04:48: Like, this is a very technical part right now.

01:04:51: If you are going to register a device

01:04:54: for push notifications at Apple's,

01:04:57: Then there you have a key pair which was going to generate

01:05:00: for device and for the app.

01:05:02: And this combined enables us to send a request to Apple

01:05:06: and Apple will send it to your device.

01:05:09: And everyone was saying,

01:05:10: and I think it was in one of the talks yesterday,

01:05:14: they said, "Why do I have to do it

01:05:16: for every single device I'm using?"

01:05:18: And the answer was, "Yeah, because it's like,

01:05:21: you need a key for every device to do so."

01:05:23: But I'm guessing that you need to be in control of the notifications or the

01:05:29: applications that can send you notifications.

01:05:31: And the only way to do so is if you can revoke that privilege from both sides.

01:05:36: So you can just like kill the key from the Apple side, like the application can

01:05:41: be canceled so Apple can say, okay, this service here or this client sends too

01:05:46: much notifications or maybe fake news or whatever, they cut it from the end and

01:05:49: say, okay, this client cannot send it to this device.

01:05:53: But the device can also, besides using the application,

01:05:57: which might not provide this unsubscribe thing,

01:06:01: this device could go to setting and unsubscribe.

01:06:05: And these both combinations, or this combination of the keys,

01:06:10: is the reason why you have to do it on every single service.

01:06:13: And this was not that clearly communicated right now.

01:06:16: Everyone thinks it's just not good enough implemented

01:06:19: that you have to reduce every single device, right?

01:06:22: It's very much intentional.

01:06:23: It's part of the process, right?

01:06:24: Like I think Apple has really been the leader in this space

01:06:27: of sort of, I don't know, caring more about the privacy

01:06:31: and then giving more users options and control

01:06:33: over which notifications,

01:06:35: which access they have to your device.

01:06:38: And I think it totally makes sense

01:06:39: that you would enable it per device,

01:06:41: even for native applications on iOS.

01:06:43: Like you install the app once,

01:06:45: it may be downloaded on the other device,

01:06:47: like on your iPad or whatever,

01:06:48: but you still need to enable push notifications

01:06:50: on the other device as well.

01:06:51: So it is a conscious step and I think it is a good thing to have that.

01:06:56: I think it makes you more in,

01:06:58: it gives you control over what notifications you get, which device and yeah.

01:07:03: Yeah, exactly. I once wrote like an APNS system and PHP back in the days when push notifications were introduced.

01:07:10: And I was wondering exactly about this point, why to do it like this?

01:07:14: So everything is device and you don't have any information about the client, just the key value pair.

01:07:19: And I was guessing you are interested in how this is working in Apex.

01:07:24: This podcast might not be the right point to do so because it's so technical.

01:07:27: You should totally talk to Vincent about this.

01:07:29: I'm sure he'll have a lot of opinions.

01:07:30: One thing I would like to say though is, and I think something that we should

01:07:33: improve upon in our messaging is when push notifications are appropriate and

01:07:37: which type of push notifications are appropriate, because right now I think

01:07:41: because it's so new, at least in the Apex world, that we have this ability to do

01:07:45: push notifications.

01:07:46: What I don't want to see is this outpouring

01:07:49: of push notifications in every single app

01:07:51: for every single little thing.

01:07:54: I'd like to see a more curated and more thoughtful approach

01:07:57: of enabling this so that the notifications that actually

01:08:00: matter are the ones that are pushed and not everything,

01:08:03: or at least giving users more control over it.

01:08:05: Yeah, exactly.

01:08:07: So we are already over an hour right now.

01:08:10: So not to bother our listeners, I

01:08:13: I promise we could just talk hours right now.

01:08:18: But yeah.

01:08:20: It's been a fascinating conversation.

01:08:21: I really enjoyed it.

01:08:23: Yeah, thank you for being here, Shakib.

01:08:24: It was very interesting and very cool for me.

01:08:26: I'm very looking forward to releasing this episode

01:08:28: to our listeners.

01:08:31: And I hope you have a great conference.

01:08:32: And yeah, we might talk about the different stories

01:08:34: maybe in a second part in the future.

01:08:37: Absolutely.

01:08:38: Hey, thank you so much for having me.

01:08:39: And I look forward to listening to Devs on Tape

01:08:39: for all the other guests that you have.

01:08:41: And I'm just psyched to sort of be here in person

01:08:44: at the conference and speaking with all the customers.

01:08:46: It's just been awesome.

01:08:47: And being able to share a little bit

01:08:49: about who I am with the audience,

01:08:52: I'm grateful for the opportunity.

01:08:53: Thank you.

01:08:54: - All right, thank you very much.

01:08:55: Have a good day and yeah, bye to our listeners.

01:08:58: Thank you for listening and be back in two weeks.

01:09:00: Thank you.

01:09:01: (upbeat music)

01:09:03: (upbeat music)

01:09:06: (upbeat music)

01:09:08: (upbeat music)

01:09:11: (upbeat music)

01:09:14: (upbeat music)

01:09:16: - Thank you.

Neuer Kommentar

Dein Name oder Pseudonym (wird öffentlich angezeigt)
Mindestens 10 Zeichen
Durch das Abschicken des Formulars stimmst du zu, dass der Wert unter "Name oder Pseudonym" gespeichert wird und öffentlich angezeigt werden kann. Wir speichern keine IP-Adressen oder andere personenbezogene Daten. Die Nutzung deines echten Namens ist freiwillig.