42-Praveen-Mohan.txt

(00:00:00):
Hey, everybody.

(00:00:00):
How you doing?

(00:00:01):
Welcome back.

(00:00:01):
This is Jim Grisanzio from Java Developer Relations.

(00:00:04):
And this afternoon,

(00:00:05):
I’m here with a very special guest,

(00:00:07):
somebody who’s going to have a slightly different take on things,

(00:00:10):
a little bit of a departure here for Duke’s Corner,

(00:00:13):
but I’m really looking forward to it.

(00:00:14):
I’m here with Praveen Mohan.

(00:00:16):
Praveen is the Director of Java Quality and Infrastructure at the Oracle India

(00:00:21):
Developer Center in Bangalore.

(00:00:23):
And that team and Praveen is a part of the JPG Group, the Java Platform Group at Oracle.

(00:00:30):
And we’re going to talk about what’s going on in Indy with the Java Platform Group.

(00:00:34):
Praveen, welcome.

(00:00:35):
Welcome to Duke’s Corner.

(00:00:36):
Hey, Jim.

(00:00:36):
Thanks for inviting me to this episode.

(00:00:38):
I’m glad to be here.

(00:00:39):
It’s cool to have you.

(00:00:40):
It’s really interesting.

(00:00:41):
Usually,

(00:00:42):
I’m talking to people who are,

(00:00:44):
you know,

(00:00:44):
they’re Java user group leaders or Java champions or just Java engineers working in

(00:00:50):
the community.

(00:00:51):
But occasionally, I get a chance to talk to

(00:00:54):
other Oracle employees in the engineering group.

(00:00:57):
And what’s really interesting for me is it gives me a chance to learn or to

(00:01:02):
experience more of the org itself.

(00:01:04):
It’s very large.

(00:01:05):
It’s many hundreds of people.

(00:01:07):
And also to see how various Java groups are working with the community externally.

(00:01:13):
It’s a very, very important function.

(00:01:15):
We oftentimes don’t realize that these communities are

(00:01:18):
around the world,

(00:01:19):
these Java communities around the world have tremendous amounts of support from

(00:01:23):
various companies who in and of themselves involved with the community.

(00:01:27):
And that certainly is no exception here at Oracle.

(00:01:30):
So educate me a little bit, talk to me a little bit about what your team does in Bangalore.

(00:01:35):
So, Jim, this team, a little bit of history, I will say here.

(00:01:41):
This team was formed back in 2014 in India,

(00:01:46):
which started with a handful of people,

(00:01:48):
like three people,

(00:01:49):
I think,

(00:01:51):
back in 2014.

(00:01:52):
So we were predominantly focusing on the quality and compatibility of limited areas

(00:01:58):
within Java at that point in time.

(00:02:01):
In the past decade,

(00:02:02):
I think the team has grown roughly about 40 people right now,

(00:02:06):
taking complete ownership of the quality of Java LTS releases.

(00:02:10):
And we have a subset of people handling the infrastructure as well,

(00:02:15):
the infrastructure that helps the build and test.

(00:02:18):
As you know,

(00:02:19):
the Java LTS releases are mainly targeting the enterprise customers who prioritize

(00:02:27):
stability and security or latest advancements as these releases are deployed into

(00:02:33):
complex production environments that keep running on a 24 by 7.

(00:02:38):
The key expectation from the customer is the backward compatibility and where

(00:02:44):
customers can just replace the existing Java with a new CPU release and everything

(00:02:50):
should work seamlessly as before.

(00:02:54):
That’s a key to the adoption of newer CPU releases,

(00:02:57):
which also assures the customer the Java version that’s being run is the most

(00:03:02):
secure and stable version for the customer.

(00:03:05):
Hence, primary focus of

(00:03:07):
my team is to ensure the newer updates which are released on a quarterly basis for

(00:03:13):
the java lts releases starting from jdk 7 8 11 17 21 and so on are the most secure

(00:03:21):
stable backward compatible enough and of high quality so

(00:03:25):
That’s the primary goal of this team.

(00:03:29):
Interesting.

(00:03:29):
I didn’t realize there were 40 people.

(00:03:31):
That’s really great.

(00:03:32):
I think one of the things that I find interesting in engineering organizations is

(00:03:37):
just how much,

(00:03:39):
well,

(00:03:39):
particularly for large enterprising applications like Java or systems like Java,

(00:03:44):
is just how much testing is involved.

(00:03:47):
So can you talk a little bit about just how in-depth your team has to go in order

(00:03:54):
for Oracle to be able to say,

(00:03:55):
this is a secure release,

(00:03:57):
this is a stable release,

(00:03:58):
this is of the highest quality?

(00:04:00):
Because I don’t think,

(00:04:01):
especially young people don’t realize when they’re in school and things,

(00:04:06):
just how much testing has to occur after you write the code.

(00:04:10):
It’s not simply just writing the code and saying, here it is, good luck with that.

(00:04:14):
Yeah, absolutely, Jim.

(00:04:16):
So as we all know,

(00:04:17):
Java is being used on billions of devices,

(00:04:20):
which are extremely diverse in terms of the nature of hardware,

(00:04:24):
the architecture,

(00:04:25):
the operating systems.

(00:04:27):
It could be on different virtualization platforms, containers, etc.

(00:04:32):
The testing scope is also proportionally much larger and wider here.

(00:04:38):
The impact of any bug escape can potentially impact a very large user base of Java

(00:04:46):
that’s available out there.

(00:04:47):
So obviously, we need to cover a very large spectrum of use cases with our finite resources.

(00:04:54):
And we have to be really efficient and effective in qualifying the releases.

(00:04:59):
And this is typically achieved through robust automation.

(00:05:03):
And we have a state of our

(00:05:04):
state-of-the-art infrastructure,

(00:05:06):
and we have stringent processes that govern what kind of content go into these LTS releases.

(00:05:12):
To give you a perspective,

(00:05:13):
I think we handle about seven release trains running in parallel for each CPU release,

(00:05:18):
starting from JDK 7 to JDK 22 right now.

(00:05:22):
we also cover we look at basically the functional regression compatibility stress

(00:05:28):
and reliability aspects of java on across different os variants about 20 plus

(00:05:35):
operating system variants and different architectures like intel arm and when it

(00:05:40):
comes to the component specifics we have multiple different component areas within

(00:05:45):
java for example you have

(00:05:47):
Code libraries,

(00:05:47):
security libraries,

(00:05:49):
the UI libraries,

(00:05:50):
the deployment stack,

(00:05:51):
the installers,

(00:05:52):
and various different components within the Java platform.

(00:05:57):
And so each of these components come with their own set of complexities.

(00:06:02):
For example,

(00:06:02):
if you look at VM,

(00:06:04):
you have to test multiple versions of garbage collectors,

(00:06:09):
multiple runtime modes.

(00:06:11):
Now,

(00:06:11):
when it comes to security,

(00:06:13):
you have different cipher suites,

(00:06:14):
different algorithms that we need to cover,

(00:06:16):
different protocols,

(00:06:18):
and things like that.

(00:06:19):
And when it comes to installers, we deliver various different sets of bundles, for example,

(00:06:24):
On Windows, you have .exe, MSI, compressed archives.

(00:06:29):
On Mac, we have different like DMG, PKG, those kind of formats that we support.

(00:06:34):
So installer team will predominantly focus on those combinations.

(00:06:38):
And for UI libraries,

(00:06:40):
it’s mostly the kind of graphics cards that you use and the window managers and the

(00:06:46):
kind of rendering pipelines that we have.

(00:06:49):
So there’s a huge set of combinations that we are talking about here within the Java platform.

(00:06:54):
And to give you a perspective,

(00:06:56):
I think overall for each CPU release,

(00:06:58):
we run about 50 million tests on an average across all these release trains to be

(00:07:04):
able to say that the Java is of high quality before we ship it to the customer.

(00:07:10):
So that’s the kind of complexity involved in this.

(00:07:13):
Did you say 15 million tests?

(00:07:15):
yeah so 50 million five zero fifty i’m sorry fifty what’s even worse that’s

(00:07:21):
incredible that that’s really incredible um i knew things were complex but i guess

(00:07:26):
the next question i have is in dealing with this massive complexity with just 40

(00:07:31):
people obviously you obviously have spoke about you know some some automation here

(00:07:35):
has to take place especially for 50 million tests what type of engineers become

(00:07:40):
involved with quality engineering

(00:07:42):
I don’t know, I’m asking the question quite ignorantly here.

(00:07:45):
Is there a different mindset in terms of an engineer who deals with this as opposed to, say, development?

(00:07:51):
The kind of engineers that we hire are full-fledged Java developers.

(00:07:57):
And they spend pretty much, they spend as much time on the Java code as much in the testing as well.

(00:08:04):
And they expect

(00:08:04):
The limitations of test cases that we write in Java,

(00:08:08):
the code quality should be on par with the product code.

(00:08:11):
So people out in the community,

(00:08:14):
they look at the test code and see how a particular feature is being used for any

(00:08:18):
new enhancements or features.

(00:08:21):
Test code acts like a demo for the customers, right?

(00:08:25):
So they look at our code and see how to use this new feature and things like that.

(00:08:31):
So in terms of skill sets, I think, obviously, we need very strong expertise on Java.

(00:08:36):
But other than that,

(00:08:38):
how this is different from the development is that one needs a lot of patience and

(00:08:44):
perseverance to be successful in the QA organization.

(00:08:48):
So basically,

(00:08:49):
we expect a passion towards quality and build quality and build the ability to

(00:08:55):
think unconventionally or out of the box.

(00:08:58):
And basically, we kind of build a database around the errors that people usually make in the code.

(00:09:04):
As you get experienced, you kind of by looking at the code review, you can figure out what kind of

(00:09:09):
mistakes that people have made or usually make and those kinds of things.

(00:09:14):
Usually people who are experienced have that database built in their mind over time.

(00:09:19):
And basically you need a mindset to explore, right?

(00:09:22):
You need to think unconditionally and do a lot of exploration.

(00:09:26):
And so you,

(00:09:28):
I usually tell my new hires like overcoming the trained incapacity with a questioning attitude, right?

(00:09:34):
Question everything,

(00:09:35):
question the fundamental assumptions and basically you represent the customer and

(00:09:40):
so be the voice of the customer.

(00:09:42):
So have a perspective of how this would be used by the customer and bring that view

(00:09:47):
into the organization being the voice of the customer.

(00:09:50):
So that’s key to be successful in the QA organization.

(00:09:54):
That’s really fascinating.

(00:09:56):
I’m so glad you answered it that way.

(00:09:58):
It’s really educational for me.

(00:09:59):
And it also helps to sort of remind me, I used to work in Solaris engineering at Sun and also at Oracle.

(00:10:06):
Actually, my director also owns the QE team.

(00:10:10):
And I’ve sat in many QE meetings,

(00:10:13):
and I was always so fascinated with the mindset with just exactly how you explained it.

(00:10:17):
These were developers,

(00:10:18):
obviously,

(00:10:19):
but they were writing,

(00:10:20):
developing tests and test cases,

(00:10:22):
and they were running huge systems that were running these tests in an automated way.

(00:10:27):
And they really fascinated with me with this whole concept of test, test, test.

(00:10:32):
Basically, it’s just core science, right?

(00:10:34):
And I’ve also known a lot of Linux developers and also Oracle Database developers

(00:10:39):
who really think in this same way.

(00:10:41):
And I’m so fascinated by, this is one of the reasons why I do this podcast.

(00:10:45):
I’m just so fascinated by how developers solve problems and how they think through

(00:10:50):
things that are insanely complex and how they manage,

(00:10:54):
how they build these systems,

(00:10:55):
but also manage them.

(00:10:57):
Just fascinating to me.

(00:10:59):
Okay,

(00:10:59):
so let’s switch gears a little bit here and talk about your team also has another function,

(00:11:05):
which is incredibly valuable to Oracle,

(00:11:07):
is that you guys are interacting with the community in Bangalore,

(00:11:11):
the Java community,

(00:11:12):
and through Oracle events,

(00:11:14):
because sometimes Oracle puts on big conferences in India,

(00:11:17):
as well as user groups,

(00:11:20):
you know,

(00:11:20):
the Bangalore Java user group,

(00:11:21):
which is in and of itself massive.

(00:11:23):
So let’s talk a little bit about what your team does at various community events in Bangalore.

(00:11:30):
Sure, Jim.

(00:11:30):
So Bangalore Java Issue Group is one of the most vibrant and largest Java

(00:11:37):
communities in India aimed at fostering community relations and bridging the gap

(00:11:43):
between the Java advancements and the developers.

(00:11:46):
So it was also revived around the same time the Java platform group was started in India,

(00:11:52):
which was 2014.

(00:11:53):
And now in that last decade, this community has grown to 10,000 plus members in the community.

(00:12:01):
And it’s no exaggeration to say that these communities such as Bangalore Jug are

(00:12:06):
key to the success of Java.

(00:12:08):
And one of the main reasons why Java is still vibrant after three decades and still

(00:12:13):
remains the most sought after programming platform

(00:12:16):
So the Bangalore JAGS involvement is primarily enabling the seamless adoption of

(00:12:22):
new Java features and enhancements and ensure Java’s accessibility and appeal

(00:12:28):
through ongoing discussions and expert guidance.

(00:12:31):
And so,

(00:12:31):
Bangalore JAG is conducting monthly meetups every month on a Saturday and has

(00:12:37):
delivered about 500 plus technical sessions in the last decade through various

(00:12:42):
Oracle in-house presenters plus community Java experts who come and present in the

(00:12:48):
Bangalore JAG and helping the community to stay updated with all the new

(00:12:52):
advancements in the Java space.

(00:13:01):
bangalore jug so we also engage actively with i mean as a bangalore jug we are one

(00:13:08):
of the organizers quality engineering group is part of organizing the bangalore jug

(00:13:13):
and they also engage with the student community around bangalore from renowned

(00:13:19):
universities and basically demonstrate i mean the students basically demonstrate

(00:13:24):
great level of enthusiasm energy and motivation in learning java technology so the

(00:13:29):
live interactions and guidance from the experts have helped them learn the

(00:13:34):
technology faster understand the industry expectations and make them market ready

(00:13:39):
by bridging the gap between the industry and the academia

(00:13:43):
So overall,

(00:13:44):
I think Bangalore JAG is playing a very vital role in ensuring the new enhancements

(00:13:50):
and features reach to the community,

(00:13:53):
and it’s still vibrant and kicking.

(00:13:55):
So we engage with community.

(00:13:59):
We are deeply committed to working closely with Bangalore JAG for the past decade

(00:14:04):
in co-organizing the event,

(00:14:06):
sharing knowledge,

(00:14:07):
and seeking feedback from the community.

(00:14:10):
solving complex problems.

(00:14:11):
People come to the community with some production issues and complex problems that

(00:14:16):
we provide guidance on.

(00:14:18):
Also, we are helping with other logistics sponsorships whenever required.

(00:14:23):
If the event is going to be conducted with an article,

(00:14:26):
there’s a lot of protocols we need to follow in terms of enforced by the local

(00:14:31):
security team and real estate and facilities.

(00:14:34):
We facilitate those things.

(00:14:37):
and for conducting the jug within the Oracle premise in line with the local laws.

(00:14:42):
That’s really cool.

(00:14:43):
I mean, I was aware the jug there was active, but I didn’t realize it was that active.

(00:14:48):
And I also didn’t realize it was that big.

(00:14:50):
10,000 is a huge number.

(00:14:52):
That’s really cool.

(00:14:54):
And also, you’re not just doing presentations.

(00:14:57):
There seems to be interaction with the community.

(00:14:59):
And so it almost implies that things go both ways.

(00:15:02):
I mean, you learn from them, they learn from you, and it goes both ways.

(00:15:06):
So I guess my question is,

(00:15:07):
I mean,

(00:15:08):
obviously,

(00:15:09):
you and I are familiar with this concept of a company enabling its engineering team

(00:15:15):
to directly interact with the community,

(00:15:18):
sponsoring events and things like that.

(00:15:20):
But for somebody who’s not familiar with this, why do you do this?

(00:15:23):
And here’s why I asked the question.

(00:15:25):
I have friends in other industries that are not so familiar with this concept of

(00:15:31):
interacting with a developer community like this.

(00:15:34):
And they’re not really familiar with this concept of contribution.

(00:15:37):
I mean, this is a huge contribution that Oracle is making to the community.

(00:15:41):
All this content,

(00:15:42):
all this knowledge is being given to the community at user group meetings,

(00:15:47):
massive conferences,

(00:15:48):
actually,

(00:15:48):
in fact.

(00:15:49):
But we get something from it, too.

(00:15:50):
We learn from the community.

(00:15:52):
We get feedback.

(00:15:52):
We product feedback, things like that.

(00:15:54):
But can you tell me a little bit about why you as an individual and your team members actually do this?

(00:16:01):
What’s the purpose for Oracle and also for yourself and for your teammates?

(00:16:06):
So the main reason for this community outreach is that we are immensely benefited

(00:16:12):
by the community as a quality engineering team.

(00:16:16):
So we get to understand the developer views on the new features.

(00:16:21):
We get to understand their pain points as to what things are difficult for them.

(00:16:26):
Is it the lack of documentation in some cases or it could be that there could be

(00:16:31):
additional enhancements on the feature which would help the adoption better.

(00:16:35):
We get those kinds of feedbacks and also we get to know about this large to small

(00:16:43):
enterprise use cases as to how the developers use the new features and resulting in

(00:16:49):
much better and comprehensive quality analysis and better customer advocacy from

(00:16:55):
our side.

(00:16:56):
We kind of fine-tune our use cases based on these feedbacks that we get from the community.

(00:17:02):
For example,

(00:17:03):
what kind of system flags they are using,

(00:17:05):
so what kind of GCs they are,

(00:17:06):
garbage collectors they are using,

(00:17:08):
in what scenarios.

(00:17:09):
And we try to replicate similar scenarios in-house,

(00:17:13):
whereby increasing the overall spectrum of use cases in line with how the

(00:17:18):
developers and customers use the new features in the market.

(00:17:21):
So that way,

(00:17:22):
I think that is very critical for us in terms of bringing the customer view into

(00:17:27):
the quality so that it aligns with what the customer expectations are.

(00:17:32):
And that way,

(00:17:32):
I think we are immensely benefited from this by attending,

(00:17:37):
by organizing the Bangalore Jug and being part of it and seeking feedback.

(00:17:42):
In fact, we also sometimes go to other conferences as well.

(00:17:46):
Like the Oracle Dev Live, we presented quite a few topics recently, a couple of months ago.

(00:17:52):
And we also get a lot of feedbacks from those conferences where people provide feedback,

(00:17:59):
interact with us.

(00:18:00):
But Jugg is more like a birds of a feather conversation where people get more time to ask questions.

(00:18:06):
It’s more live interactions, which they probably don’t get much on the conferences you do.

(00:18:12):
uh limited time and there’s a lot of sessions back to back but in jug it’s more

(00:18:18):
like we have very less number of sessions we give more time for people to interact

(00:18:23):
and they keep asking a lot of questions and they tell their use cases their

(00:18:27):
pinpoints which is critical for us being a quality team so that’s one of the main

(00:18:32):
reasons

(00:18:32):
That’s really cool that,

(00:18:34):
you know,

(00:18:34):
you’re able to,

(00:18:35):
you know,

(00:18:35):
when Oracle runs events there in Bangalore,

(00:18:38):
you’re able to connect.

(00:18:39):
These are Oracle events.

(00:18:40):
Now you’re able to connect them with the Java user group there.

(00:18:44):
That’s that’s a huge, huge service that you do, but also

(00:18:48):
I’ve noticed in some of our discussions earlier is that the jugs are getting so big

(00:18:53):
now that they’re collaborating with each other,

(00:18:56):
like in other cities in India,

(00:18:57):
like Mumbai and Delhi and these different cities,

(00:19:00):
they all have jugs and they all have very large jugs.

(00:19:03):
And so these user groups are coming together to form conferences.

(00:19:07):
And this is a phenomenon around the world, actually.

(00:19:09):
I mean,

(00:19:10):
some of the biggest Java conferences in the world started out from small user

(00:19:14):
groups 20 years ago,

(00:19:15):
15 years ago.

(00:19:16):
And I always tell people,

(00:19:18):
you know,

(00:19:18):
if you’re starting off,

(00:19:19):
the best place to get involved is a Java user group because that’s where it’s where

(00:19:24):
everything starts.

(00:19:25):
Right.

(00:19:25):
That’s really fascinating.

(00:19:26):
So but in India itself, which is where you are, the Bangalore jug also collaborates with other jugs.

(00:19:31):
Right.

(00:19:32):
Yes, absolutely.

(00:19:33):
I mean,

(00:19:34):
Bangalore Jug has been collaborating with other jugs in India,

(00:19:38):
such as the one in Mumbai,

(00:19:40):
Chennai,

(00:19:41):
Hyderabad and different other cities.

(00:19:44):
And to highlight one important thing which has happened is mid-2023, Bangalore Jug has organized

(00:19:51):
conference called Java Fest.

(00:19:53):
It’s a developer conference,

(00:19:54):
which is non-profit,

(00:19:56):
non-promotional,

(00:19:57):
purely community-driven technology conference at one of the universities,

(00:20:02):
Christ University in Bangalore.

(00:20:04):
And this was a resounding success.

(00:20:06):
So this was done in collaboration with several other JECs like Mumbai, Chennai, Delhi, and Hyderabad.

(00:20:12):
And this had about 500 plus diverse participants involving developers,

(00:20:19):
students and research scholars and various other people under one roof.

(00:20:24):
And this was a whole day event having several stimulating sessions,

(00:20:29):
workshops and discussions on the Java technology.

(00:20:34):
Conducting a conference of this size by a community is no easy task.

(00:20:39):
And thanks to the relentless efforts of the organizers in terms of scouting for the venue,

(00:20:46):
finding some sponsorships and presenters and filtering through the topics and

(00:20:51):
finally working through the massive logistics involved here.

(00:20:54):
So as of today,

(00:20:55):
I think as part of this successful event,

(00:20:58):
Bangalore Jack reminds to be one of the most preferred community partners for

(00:21:02):
multiple developer conferences in India and across the globe in terms of promoting

(00:21:08):
developer-focused events around the globe.

(00:21:11):
So we do have a standard set of people who come regularly,

(00:21:16):
who find value in these conferences and also the

(00:21:20):
regular jug sessions that’s because we have built that trust and loyalty and one

(00:21:26):
incident that i can quote for that is that during the pandemic i think everybody

(00:21:31):
had a lot of issues and people were trying to adjust to the new environment so

(00:21:37):
people had a lot of restrictions enforced locally in terms of commute in terms of

(00:21:42):
gathering people gathering etc and uh

(00:21:45):
But on the other hand,

(00:21:46):
people had a lot of time to spend at home and since they couldn’t commute anywhere

(00:21:51):
and things like that.

(00:21:51):
And Bangalore Junk Organizers saw that as an opportunity and quickly switched over

(00:21:58):
to the virtual mode and made the frequency from monthly to weekly during that one year.

(00:22:03):
And we have delivered about 100 plus sessions in a year,

(00:22:09):
which involved from basics of Java to most advanced topics.

(00:22:13):
also that was the time where uh the economically the tech sector was not doing all

(00:22:20):
that great and there were people who were losing jobs and things like that and

(00:22:24):
these kind of sessions immensely benefited the community in terms of upskilling

(00:22:29):
themselves and

(00:22:30):
With the renewed skills,

(00:22:31):
they were able to quickly find new jobs and those people still come to the JAG on a

(00:22:38):
regular basis and through which we have built some kind of trust and loyalty with

(00:22:43):
the community here.

(00:22:44):
And that’s why it’s still vibrant and after 10 years, still happening.

(00:22:48):
Wow, that’s really a cool story.

(00:22:49):
I really have to thank you for so much of this content.

(00:22:52):
It’s really interesting.

(00:22:53):
Whenever anybody asks me why an engineering team should participate in the

(00:22:58):
community or even a company,

(00:22:59):
really,

(00:23:00):
why should a company participate in the community?

(00:23:02):
I’m going to send them to this podcast right here because you’re explaining it so beautifully.

(00:23:07):
And it’s really it’s really cool.

(00:23:09):
Some of it I’m familiar with.

(00:23:10):
I haven’t been around for forever, but some of it I’m not familiar with.

(00:23:14):
And I always have to talk to people who are directly doing these things.

(00:23:18):
And I think I’m going to reach out to some other Oracle engineering directors and

(00:23:23):
managers and just engineers who are participating in the various communities

(00:23:28):
because it helps the community grow.

(00:23:29):
And we as a company obviously grow too.

(00:23:32):
And this has real direct financial value.

(00:23:35):
I mean,

(00:23:35):
I mean,

(00:23:35):
we’re selling products and services into a very,

(00:23:38):
very large market that,

(00:23:40):
you know,

(00:23:40):
we need to know that things are secure and running properly.

(00:23:44):
And it pays to have direct relationships with the market, which is the community.

(00:23:51):
I mean, these things blend seamlessly.

(00:23:53):
It’s always interesting.

(00:23:54):
I…

(00:23:55):
Whenever I go to a quote unquote community meeting,

(00:23:59):
you know,

(00:23:59):
it’s community sounds like,

(00:24:00):
oh,

(00:24:00):
it’s just all kind of happy and fun and everyone’s getting together.

(00:24:03):
But these are people in our customer base.

(00:24:05):
These are people who are employees at all of our customers.

(00:24:08):
Oracle’s that big, right?

(00:24:10):
So when you go to a community event, you’re really talking to customers at one level.

(00:24:14):
So fascinating to me.

(00:24:16):
All right.

(00:24:16):
Well, Praveen, this has been great.

(00:24:18):
Do you have any final words for us here today?

(00:24:21):
Anything that I have left out that I should have asked you?

(00:24:25):
I think I would take this opportunity to acknowledge and appreciate some of the

(00:24:31):
Bangalore Jug organizers who have been running the show for the last several years,

(00:24:36):
dedicating their weekends and conducting these sessions and helping the community.

(00:24:42):
To name a few, I think Vaibhav Chowdhury, he was a former quality engineering group member.

(00:24:47):
He, along with Satish Kumar Thyagarajan and Sovik Das.

(00:24:52):
So these are key people who are the organizers from the community side.

(00:24:57):
And we have a couple of people from Oracle Quality Engineering Group.

(00:25:01):
Jayshree Kumar has been working closely with community,

(00:25:05):
organizing these events,

(00:25:06):
and also Fires from Java Sustaining,

(00:25:09):
helping with organizing the events for the community.

(00:25:12):
So overall,

(00:25:13):
I think I thank these people who have taken a lot of their personal time for the community,

(00:25:19):
and they’ve been doing a great job.

(00:25:21):
That’s a really good point.

(00:25:22):
I’m glad you said that because a lot of the time is personal.

(00:25:25):
I mean,

(00:25:25):
a lot of this is people feel very enthusiastic because when you work with a community,

(00:25:30):
it benefits you personally,

(00:25:31):
but you are doing it on the weekends,

(00:25:33):
right?

(00:25:33):
You are doing it at night and on holidays too.

(00:25:36):
So we all do that.

(00:25:38):
It’s crazy, crazy business.

(00:25:39):
All right, Praveen, hopefully I’ll get down to Bangalore sometime soon and we can have some tea.

(00:25:45):
Looking forward to that, Jim.

(00:25:47):
Thanks.

(00:25:47):
We’ll talk to you soon.

(00:25:48):
Thank you.