Episode Transcript
Available transcripts are automatically generated. Complete accuracy is not guaranteed.
SPEAKER_01 (00:00):
Yeah, so I was like,
okay, my career is going to be
in air-conditioned environment,period.
You really need to get reallyunlucky into something really
meaningful and interesting.
Because there are tons ofinteresting stuff with robotics.
Until today, there is nothing inthe industry that comes close to
what Maven did to Java.
SPEAKER_02 (00:21):
From fixing electric
kettles and greasing tanks to
become a voice of developers inDevOps and Java communities.
This is Conflict Developer.
unknown (00:39):
Bar?
SPEAKER_01 (00:40):
Hello Victor.
SPEAKER_02 (00:41):
Welcome to Conflict
Developer.
SPEAKER_01 (00:42):
Thank you.
And we are here at the lovelyBasel at the Basel 1 2025
conference.
SPEAKER_02 (00:47):
So it is something
different from uh the usual
format that we do at theConflict Developer where we have
uh more like uh you know Zoomstyle and virtual approach for
interviews.
SPEAKER_01 (00:57):
We don't need
virtual approach for the
interviews, we're here togetherdelivering a talk in an hour
about uh one of our favoritetopics, and that's by coding
because we don't need to writeany code, um, which is pretty
cool.
Yeah.
And uh yeah, Victor hijacked myuh verbose mode studio.
SPEAKER_02 (01:14):
Um yeah, the thanks
for Taxcare for uh hosting us
today uh in uh the Taxcare boothhere in Switzerland, uh in
Basil, Switzerland.
Basil.
Basil, it's the correct Basil isthe build tool.
Yes, basil build tool, Basil isthe correct pronouncement of
this lovely city.
Barrow.
Yes.
Two words for those of you whodon't know you like I do.
(01:37):
Um what do you do, uh where youwork, and what's your current
occupation, and what you exciteyou?
SPEAKER_01 (01:44):
Uh I'm a head, head,
head, depends who who you ask,
uh, of developer relations in acompany called Taxcare.
Um those guys.
Uh and um Taxcare does uhend-of-life uh sorry, security
patching for end-of-lifecomponents, open source
components.
Um you name it everything, wetake the security patches from
(02:07):
the latest version and backportit for versions that are not
supported but still in use.
SPEAKER_02 (02:12):
Yep, so yeah,
interaction with developers in
this aspect is very importantbecause not only uh get excited
about new versions of theframeworks, but also some people
be like less lucky in workingwith the software that is
critical enough to do like easyupdates and I I don't like the
less lucky.
SPEAKER_01 (02:30):
You know what?
I don't like the less lucky.
Um yes, new versions, the latesttech is exciting, and we are
toddlers playing with shinytools, obviously.
Yes.
But also in the end of the day,uh like real-world enterprises
and companies that build uhsoftware that we all use, more
(02:50):
often than not, are not runningon the bleeding edge, the
cutting edge, and what's not.
The majority of developers inthe world can play with the
shiny new toys uh for for theirnew frameworks, wipe coding
tools, for their pleasure andeverything else.
But their their workingenvironment, it's something
that's been there for years,stable, generates revenue, works
(03:15):
great for the customers, yeah,and what's not.
Yeah, why why to change guess?
What's what's the problem?
SPEAKER_02 (03:20):
All of a sudden, all
of a sudden, uh some of the
software gets uh end of life,like a platforms getting
end-of-life operating system.
So this is where I guess the taxgear comes into the case.
SPEAKER_01 (03:30):
Absolutely,
absolutely.
And you you can continue usingthe software that proven and and
uh and uh useful, and then youcan plan your upgrade to the new
and Chiny on your terms and notbecause there was a
vulnerability discovered in theversion that you use and you
have nowhere to go for the forthe patch.
SPEAKER_02 (03:48):
Correct.
So um you know a lot aboutsoftware.
I know you for I don't know,last 15 years at least.
Not probably more, no, it'sless, but it feels like more.
Um and you've been doing thisstuff a lot.
But was it always that uh like Ican imagine little Baruch was
(04:09):
doing software and stuff?
Like how, like, one of thequestions that we like to ask
our luminaries in this podcastand how everything started, what
was your first job?
What was it was it somehowrelated to our IT and software
or or whatnot?
So uh what was that?
SPEAKER_01 (04:25):
So first job had
actually nothing to do with IT
and software, and it wasn't thefirst job that got me into
laptops into computers.
The first job was I was fixingkettles.
Uh like kettles like for boilingwater for tea?
Okay.
Yes, yes.
SPEAKER_02 (04:41):
So we meaning that
it's gonna be like an electric
uh kettle.
SPEAKER_01 (04:44):
So it's not not the
not the ones that you need to
put on the stove and back in the90s that was kind of the the the
beginning of the electrickettles, and they were nothing
uh like uh what you have today.
Well, it they were like you havetoday, but they were much
simpler.
So you had the warming coilright in the bottom of the
(05:06):
kettle.
SPEAKER_02 (05:06):
Yes, I remember that
that's it.
SPEAKER_01 (05:08):
And then you plugged
in the cable, it wasn't like uh
uh like cabless or whatever theterm is uh wireless.
Cordless.
You actually had to plug thecable and you plugged it
directly into the coil theinside.
SPEAKER_02 (05:22):
Makes sense.
SPEAKER_01 (05:23):
Now um the problem
is that uh there are areas where
the water is is very hard andthere is a lot of uh residue
residue that that builds uh onuh warm uh metal.
Yes.
SPEAKER_02 (05:35):
Uh so when the coil
was exposed and there would be a
lot of residue on top of thecoil.
Okay.
SPEAKER_01 (05:42):
Exactly, right, and
then you're supposed to descale
it.
Right.
Uh which uh no one does.
Well, not no one, but a lot ofpeople don't do.
And then obviously, in somepoint of time, this uh this
residue absorbs so much heatthat it stops that the coil is
not uh doesn't provide enoughheat to actually boil the water,
so the water actually stoppedboiling.
(06:03):
Yeah, and that's uh it was avery big symptom in the early
kettles when you after someusage you plug it in, the water
gets hot and stays hot, yeah,but never gets to the point of
boiling.
SPEAKER_02 (06:16):
Yep.
SPEAKER_01 (06:17):
And this is when
people bring it to service, and
uh, there was me uh either uhjust pouring uh the discaler on
it and just returning it back.
SPEAKER_02 (06:27):
Or maybe it'll like
wipe it with some, I don't know,
exactly some paper or something.
SPEAKER_01 (06:32):
Or sometimes it was
past salvation, so we needed to
replace the quill.
Yeah, so that was my first job.
SPEAKER_02 (06:38):
How much you were
gaining for how much you were
all uh getting in terms of likeuh the salary for for this?
SPEAKER_01 (06:44):
Yeah, yeah.
So uh my salary was uh my firstsalary, um I was in seventh
grade, I was 13.
That was my first job.
Uh just after we moved toIsrael, escaped from Soviet
Union, uh, and my salary was 20shekels a week.
Uh shekel was back then, I wouldsay something about two dollars.
(07:05):
So it's like a$10 a week.
Not great, but for me that waslike absolutely crazy amount of
money.
Um, and this is how I bought myfirst computer.
Oh, which is the same.
So here we were plugging it intothe IT theme.
SPEAKER_02 (07:21):
Yeah, and uh what
kind of computer was that?
Like what we were doing withcomputer?
So you probably will startprogramming like DevOps and
stuff and things like thatimmediately.
SPEAKER_01 (07:31):
Almost almost right,
right, right.
So then it was a very strangebeast.
Um I bought it secondhand.
Um I had no idea what I'mbuying, uh, but then I started
to research after I alreadyheard uh had it, and and it
turns out it was a very, verystrange uh beast.
Uh it was uh IBM compatible umXT186.
(07:54):
Now 186 uh wasn't a thing.
Uh 026 was wildly popular in the86, 80, 80.
So 86 was the first mass marketIBM PC compatible uh platform.
Yep.
Uh it was the first one that wasuh that wasn't like IBM but IBM
(08:18):
compatible.
Yes.
And that means that all thethird party components
dramatically reduced in inprice, and um every household,
or not every, but a lot ofhouseholds could suddenly allow
buy uh PC.
Yep.
And that was huge.
Uh the next most popular one was286, and 286 was where the real
(08:41):
like massive adoption reallystarted.
That was the first one with themore uh uh storage of disks.
SPEAKER_02 (08:49):
Okay, so how much
disk was there, how much RAM was
there?
SPEAKER_01 (08:52):
So the the first one
that I had um didn't have any
hard disk, no hard drive at all.
Uh it has two floppy disks of uhuh five and uh five and a
quarter?
Five twenty five?
Yeah, five and a quarter, uhlike larger uh floppy disks, two
of them, A and B.
SPEAKER_02 (09:08):
So in this case, you
you're one of those people who
knows why we have a disk A anddisk C on the modern operating
system.
SPEAKER_01 (09:16):
The story is A and
B, two floppy disks, and then C,
the hard disk.
Yes, and people who had C, I uhI had huge envy.
Yes because they actually hadthe hard drive.
SPEAKER_02 (09:28):
And B, meaning that
like if you don't have it on
your computer or you didn't haveit during the time when um the
floppy disks were the thing,meaning that you didn't have
access to 5.25.
SPEAKER_01 (09:40):
Uh not necessarily.
Both A and B could be five and aquarter or four and a half.
SPEAKER_02 (09:45):
Yeah.
SPEAKER_01 (09:46):
Uh it could be
either or.
SPEAKER_02 (09:48):
Yeah.
Oh, yeah, because sometimesbecause you don't have a disk,
you need to copy from one placeto another.
SPEAKER_01 (09:53):
Right, and no, but
yeah, you generally need to run
out of something when youreplace the other one.
Ah.
Right.
So it was your.
SPEAKER_02 (09:59):
Yeah, reading from
memory, uh, reading to memory,
you try to load the games.
SPEAKER_01 (10:03):
Right, exactly.
Right.
So so whoever had C, um, I had ahuge envy because it means that
they could run games from a harddrive and didn't need to replace
like seven uh floppy disks whenthey wanted to run something
like Mean Streets.
It was a great game, legendary.
Uh based on a movie Mean Streetsfrom the 70s, uh Scorsese.
Yeah.
(10:23):
Yeah, um, excellent.
Uh you asked me aboutprogramming on this wonderful
computer.
Well, the extended programmingthat I did was AutoXicBut and
System Sys.
SPEAKER_02 (10:35):
Yes.
SPEAKER_01 (10:35):
Uh and those are two
files that are loaded when uh
MSDOS was uh was booting up.
Yeah, and uh you could do prettyneat stuff.
You can change the colors of theprint, you can actually print
something that you wanted.
Yes.
You you could make it beep.
SPEAKER_02 (10:53):
Um maybe you can
even like it would be very
inventive, you can play somesome musical.
SPEAKER_01 (10:58):
Uh you can because I
didn't have sound blaster.
SPEAKER_02 (11:01):
Uh but you can uh
play the music on the speaker.
SPEAKER_01 (11:03):
Uh no, no, there was
only beeps.
Uh huh.
Only beeps.
There is nothing else.
SPEAKER_02 (11:07):
No, no, like beeps.
You can beep with differenttones.
SPEAKER_01 (11:10):
Uh you could beep, I
think, like with two tones, but
you cannot really do a lot.
Uh but yeah, um 286, hard drive,color display, CGA or maybe EGA,
and the sound blaster was thedream machine back then that
only the rich kids had.
SPEAKER_03 (11:31):
Yes.
SPEAKER_01 (11:31):
And uh, you know,
they had stuff like mouse, which
is pretty cool.
And I'm another one.
Maybe like for mouse, you needto have um graphic interface
like Windows.
Um I'm lefty, but I use mousewith my right hand because I
learned how to use mouse at myfriends' houses that had 226
(11:53):
with hard drive and Windows.
So I went um to their places toactually play some more advanced
games, and this is how I learnedto use the mouse.
So I still uh use mouse with myright hand, although I'm a
lefty.
SPEAKER_02 (12:06):
Yeah, um I remember
you were telling about the story
where like you didn't go likedirectly to software.
Yeah, like after the fixingkettles, you also spent some
time in uh Israeli military uhdoing what?
Uh greasing tanks.
Oh wow, okay.
Yeah, so this is something likevery similar to probably also
DevOps, right?
(12:26):
Absolutely, absolutely.
SPEAKER_01 (12:28):
Uh um uh I did the
minor engineering degree in
robotics, uh hoping to dosomething meaningful in the
army, and um you really need toget really unlucky to not to
having the degree in roboticsand not getting into robotics.
Into something really meaningfuland interesting because there
(12:49):
are tons of interesting stuffwith robotics, right?
Even uh you know what, even withtanks, you can actually uh
design uh weapon advanced weaponsystems with stuff like AutoCAD
and like really meaningful,meaningful uh jobs, um and a lot
of robotics, and now especiallyin modern warfare, yeah, all the
(13:10):
drones and what's not this islike a lot of that.
Yes, servo motors, this is likethe basics of of uh autonomous
warfare and what's not.
And I just somehow got reallyunlucky and got stuck in the
most mundane and boring job,yeah, greasing tanks.
You can use like robots togrease tanks.
Uh probably.
They didn't ask me.
(13:30):
I would probably build them one,but but they didn't.
SPEAKER_02 (13:33):
Hopefully, we'll
have the the the new robots very
soon, so they will be able to dothis this way.
SPEAKER_01 (13:38):
Absolutely,
absolutely, and then like it's
an Israeli Mediterranean summer.
Yeah, it's like 40.
40 degrees.
It's yeah, so it's a desert,it's heat, it's humidity, it's
40 degrees in the shade, uh 110uh Fahrenheit.
Not fun.
And this is when I decide, youknow what?
(14:00):
Fuck it.
SPEAKER_02 (14:00):
Yeah.
SPEAKER_01 (14:01):
I'm going my
permanent job, my go to
Disneyland.
How my my permanent career willbe in air-conditioned
environments.
SPEAKER_02 (14:10):
Yes, yes.
SPEAKER_01 (14:11):
This is the only
thing I was caring about.
SPEAKER_02 (14:13):
I was thinking about
this yesterday when I checked in
the hotel and couldn't findbecause it's Europe, and I
couldn't find the uh airconditioning.
I was like, okay, okay, how Ican uh and I did this old
school, I just opened thewindow.
So here you can open the window.
SPEAKER_01 (14:26):
Yeah, yeah, no, but
we're talking about Israel in
the summer.
Uh yeah, so I was like, okay, mycareer is going to be in
air-conditioned environment,period.
No matter what.
SPEAKER_03 (14:36):
Yeah.
SPEAKER_01 (14:36):
And and um uh
programming and computers um
made a lot of sense coming fromrobotics environment.
It's the same idea ofprogramming stuff, but in air
conditioning.
SPEAKER_00 (14:48):
Now a quick word
from our sponsor.
Confluent developer the podcastis brought to you by Confluent
Developer the website, which haseverything you need as a
developer of data streamingsystems.
And it's completely free.
We've got curriculum, hands-onexercises, executable tutorials,
the online data streamingengineer certification, also
free, a way to find a meetupnear you, those are free.
(15:11):
Everything is there.
I really want you to besuccessful in your journey as a
data streaming engineer, andthis is the site that has what
you need.
Check it out atdeveloper.confluent.io.
That's developer.confluent.io.
Now back to the show.
SPEAKER_02 (15:28):
So I'll ask a
question.
So, what was your firstprogramming language then?
So um, you know, I assume thatyour first computer didn't have
much of the capabilities foryour program.
And you didn't have a desireprobably to program.
Like you mentioned the games andstuff.
Yeah, absolutely.
And now we learn that you wentto university for robotics.
Probably there was some computerscience or like a programming
(15:49):
program, programming programs,uh, courses or whatever.
Um, can you tell us what wasyour first?
SPEAKER_01 (15:54):
Yeah, that well
luckily enough, the first
significant language that uh uhdid I learn was Java.
Oh uh yeah, that was.
SPEAKER_02 (16:01):
Next question,
please.
SPEAKER_01 (16:02):
Uh in the college
that I went to, um uh it was a
branch of an American college,Champlain College, uh located in
a wonderful place in Vermont.
Uh most beautiful.
I was lucky to visit there asalumni after we moved to the
United States.
And uh they had a branch in uhin Israel.
Um when it was like mixed, someof them was actually remote
(16:24):
lectures from the Vermontcampus.
And for others, they hiredIsraeli um uh professors.
Professors.
Uh and this is where I started,and uh my first kind of almost
my first day was an introductionto object-oriented uh
object-oriented programming.
Okay, so part of Java course.
SPEAKER_02 (16:42):
You knew everything
about um you know horses, uh
cats and dogs, probably.
SPEAKER_01 (16:46):
This is how so yeah,
so the professor comes in and
like, okay, we're going to learnabout objects, and in this uh
paradigm, uh everything isobject.
Yes.
SPEAKER_02 (16:56):
Uh and somehow and
polymorphism.
SPEAKER_01 (16:59):
Yeah, yeah.
So and and he and he uh gave anexample of a horse that is like
a polymorphism, it's also ananimal, uh, and uh you know
there is like um inheritance andand and what's not, and uh he
goes into explaining that theobjects have uh properties and
methods, actions, yes, like forexample, the number of legs is a
(17:23):
property of a horse, and anaction that it can like run and
so is horse alive?
SPEAKER_02 (17:30):
Is it property or is
it a state?
What is that?
SPEAKER_01 (17:34):
Exactly.
Uh that the first one of thefirst questions was like, okay,
we understand that like a smallhorse is a horse, an adult horse
is a horse, but what about deadhorse?
Right?
And then the professor, like,well, uh, probably it's probably
a state, it's probably aproperty, and it went downhill
(17:55):
from there.
SPEAKER_03 (17:55):
Yeah.
SPEAKER_01 (17:56):
Next thing we
discussed, what about if we burn
the horse?
Yeah.
Will it be like the ashes?
SPEAKER_02 (18:04):
Yeah.
Is it still an object of theother?
Journalists, uh uh, what ifjournalists ate the horse,
right?
SPEAKER_01 (18:08):
Right.
So if we burn it, uh I are theashes still object of a horse.
SPEAKER_02 (18:15):
No, the kids can go
very far with this type of
things if you don't have all theanswers for them.
Um it was it was exactly that.
SPEAKER_01 (18:22):
And it was a
disaster, and this professor
left and never came back again.
SPEAKER_02 (18:26):
So probably you can
recall some of the you know,
some of the times in yourconsultancy jobs where you were
talking to the customers andthey also go that deep, kind of
like what if uh definitely Ihave some some some some uh some
stories in the past of the whenthe people asking about things
about Kafka.
And like, what if it's gonna belike shutdown of all the notes
(18:46):
and we lost the disc and allthis kind of stuff?
It's the same thing with like adead horse.
Like dead horse, is it likeburnt horse is still horse,
right?
Yeah, yeah.
SPEAKER_01 (18:55):
And uh basically
this was the end.
SPEAKER_02 (18:57):
It's a good question
for people in the comments.
Maybe people uh have a similarexperience and they have an
answer to uh to to to us.
Like what do we think?
Write down in comments.
SPEAKER_01 (19:08):
Yeah, no, the
correct answer is obviously that
object-oriented programming isnot uh a complete model of the
real world.
Some of the concepts don'ttranslate.
This is one of them, forgetabout it and move forward.
SPEAKER_02 (19:20):
Yeah, it's it's
called leaky abstractions or
like abstractions that can likefall apart under Yeah, no, but
this is fine.
SPEAKER_01 (19:25):
It doesn't suppose
to uh uh to directly mirror a
real world.
This is this is an abstractionand it means that by definition
it's a simplification.
So that would be the rightanswer.
Unfortunately, our professor uhcouldn't uh give us this answer,
so uh we never saw him again.
(19:46):
Yeah, um, our next class, uh, inthe same course of introduction
to object-oriented, we got luckyto get one of the best teachers
I ever had.
Um, Chaim Michael.
Um is a very well-known uhlecturer, instructor, and course
creator um for computer sciencein in Israel.
Yeah, he's still doing it.
(20:06):
Uh, there are still tons ofcourses online that you can
learn from him, and he's uhamazing.
And the first thing that he did,um he took out of his bag the
two uh tomes of uh core Java byProfessor Craig Horsman, who is
right here, and we justinterviewed him for the Verbose
mode.
(20:27):
You can find it on um Taxcare uhYouTube.
Uh and he was like, Okay, you'regoing to read this, and we're
going to read it together.
We're going to learn Java, andit's amazing.
And that was where I fell inlove with Java, with uh
computers, with programming, andthe rest of the system.
SPEAKER_02 (20:46):
Yeah, my first Java
book was uh surprisingly Herbert
Schild.
I don't know if uh he's alsowell known in the industry here.
Uh how he was very popular in uhback in Russia, wrote the C
book, C book, um uh Java book,dot net book.
So um have uh but also the KaiHorsman's book was like very
popular.
SPEAKER_01 (21:06):
And then the third
one, I think, like the big three
is Think It in Java.
SPEAKER_02 (21:09):
Yeah, Java, but it's
kind of like you know, if you
know C.
SPEAKER_01 (21:14):
Exactly, exactly.
So Think It in Java is anamazing book to get started in
Java after seeing C.
Yes, and and this is somethingthat a lot of people don't know,
and they try to learn it as thefirst book in general, yeah, and
this is where it's not great.
SPEAKER_02 (21:29):
But you know, we're
not talking about this guy
anymore since he started doingScala and stuff, so
unfortunately, yeah, yeah.
Yeah, we lost him.
Um but like he he was doing, Ithink, uh also a little bit
Kotlin, maybe?
No, I don't know.
SPEAKER_01 (21:41):
Um Bruce, tell us if
uh why you hate us and what are
you doing now?
We love you, we love you, buddy.
SPEAKER_02 (21:47):
Um so let's let's
talk a little bit about the the
next step.
So in uh Confund Developer,we're also exploring origins, uh
we're talking about where whereeverything started, but the the
skills that That you learn alongthe way.
Are there any interesting, notnecessarily maybe challenging,
but something interesting thatyou find like puzzling and
(22:08):
something that you solve thatyou can share with the with the
audience, something like achallenging problem that you
were able to implement andsolve?
SPEAKER_01 (22:20):
One of the projects
that I really kind of am very
proud of until this day, it's aMaven to Gradle converter.
Maven to Gradle Converter.
This is how we actually get it.
Yeah, yeah.
Maven to Gradle converter was alot of fun because it was my
first encounter with Groovy.
And I completely fell in lovewith this language as the better
(22:44):
Java, as the next Java, as theJava as Java should have been.
And back in the day, I was aconsultant in a Java consultancy
shop.
And one of the things that wedid were researching new
technologies that we can offerto our customers.
Our really speciality of ourconsultancy was the CI CD.
(23:09):
Back then it wasn't even a name.
SPEAKER_02 (23:11):
It was not a name,
yes.
SPEAKER_01 (23:12):
Exactly.
CI was just getting started, butnothing about uh but but still
it was like the build CI CD,what we call CI.
SPEAKER_02 (23:20):
Someone will compile
it somewhere.
SPEAKER_01 (23:23):
Yeah, so we we were
we were about that.
Ship it somewhere.
Yeah, and the thing that we dida lot was uh we had our offering
of uh pretty advanced ANDscripts that has like uh uh
modularity to them and theability to do a lot of
complicated stuff.
SPEAKER_02 (23:41):
Remember kids,
pretty advanced AND scripts.
SPEAKER_01 (23:44):
Yes, and and we went
uh from one customer to another
setting it up and then helpedthem maintain and then
revolution happened.
Yeah the revolution was ApacheMaven 2.
SPEAKER_02 (23:56):
Okay, okay.
SPEAKER_01 (23:57):
Apache Maven 2 was
absolutely tectonic shift in how
we build Java projects.
Until today, there is nothing inthe industry that comes close to
what Maven did to Java.
The entire idea and up untilthis day, if you go to uh Maven
(24:20):
website, the description of theproject, you know what it says?
SPEAKER_02 (24:26):
No, I never thought
about it.
SPEAKER_01 (24:29):
Java project
comprehension tool.
SPEAKER_02 (24:33):
Okay.
Let's uh let's let's unpack it.
Like there's not building, yeah,there's a lot of unpacking.
SPEAKER_01 (24:40):
Not building, not
compiling, not packaging
comprehension.
Comprehension.
Interesting.
It was about you are going tolook at the project and you are
going to know exactly what areyou looking for in the first
five seconds.
SPEAKER_02 (25:01):
Well, I mean before
before you know what's the
effective poem, uh it would benot entirely true, but hey.
SPEAKER_01 (25:09):
Obviously, it's not
as much.
SPEAKER_02 (25:10):
There's lots of
conventions, there's some of the
things.
SPEAKER_01 (25:13):
Obviously, the
reality is not as simple as this
simple as this statement.
But but but still, that was arevolution.
SPEAKER_02 (25:20):
Yes.
SPEAKER_01 (25:29):
How do we
standardize Java project with
this complicated, convolutedscripts?
SPEAKER_02 (25:38):
Advanced hands
scripts.
Exactly.
Hashtag advanced and scriptexactly.
SPEAKER_01 (25:41):
Right.
So for us, that was wow, thatreally blew our mind.
SPEAKER_02 (25:45):
Yes.
SPEAKER_01 (25:45):
Uh we pretty quickly
uh saw the uh the missing piece,
yeah, which was the whereeverything is.
SPEAKER_02 (25:53):
Exactly.
Like why and why this issomewhere on the internet.
SPEAKER_01 (25:57):
There is Maven
Central, which obviously we
cannot, we go to our enterprisecustomers and we say, okay, you
have some internal modules.
Uh probably sharing it on MavenCentral is not a great idea.
SPEAKER_03 (26:09):
Exactly.
SPEAKER_01 (26:09):
Right, and this is
where we kind of saw the
opportunity to build out afactory that became JFrog of the
factory, that became JFrog andthe rest is history.
Yeah.
And this is kind of somethingthat we uh really got into.
Yeah, but in parallel, we keptlearning about new technologies
in the space.
SPEAKER_02 (26:25):
This is how you get
uh into like Spring World, wrote
the book about Spring, right?
SPEAKER_01 (26:29):
Right, right.
SPEAKER_02 (26:30):
And and and it's
like just to explain for folks
here, it's just like in theconsultancy, there's the way how
you can establish yourself inthe community and in uh in the
industry through you knowconferences, speaking on the
conferences, having kind of likea loud presence in the
community, but also like writethe books.
Uh Björst truly wrote the bookswhen when we were in the
(26:50):
consultancy, uh the Baruch wrotethe book when he was in the
consultancy, and in the hashtagalso deveralt.
Yes, hashtag also develop, yes,exactly.
Same idea.
Uh yeah.
SPEAKER_01 (26:59):
Uh yeah, and uh so
one of the things that we did to
to be on top of the oftechnology was that every
consultant had an area ofresearch when they went ahead
and researched the most advancedtopics that are in the
interesting trends and stuff.
For example, I was presentingfor the company and then in our
conference a completelymind-blowing concept of elastic
(27:23):
computing.
SPEAKER_03 (27:23):
Uh-huh.
SPEAKER_01 (27:24):
And it was like
unbelievable.
SPEAKER_03 (27:25):
Yeah.
SPEAKER_01 (27:26):
I mean, you suddenly
don't need to provision all
those servers in advance.
If you have Black Friday coming,you can actually get more
computing power automatically.
That was completelyunbelievable.
SPEAKER_02 (27:36):
Yeah, I think it's
still like a times of like a EC2
start, like Elastic ComputeEngineering.
Exactly.
SPEAKER_01 (27:42):
Exactly.
And uh another consultant, uhDor Brzeznitsky, who was uh CPO
for a Jeffrock for the longesttime, uh, he came up with
another build tool that waslooking to solve a lot of
problems that Maven had.
SPEAKER_02 (27:59):
Even more advanced
and end set of scripts.
Exactly.
Technically, that's how it'severything started.
SPEAKER_01 (28:04):
Exactly, that will
rely on the same ideas of
standardization andcomprehension of Maven, but will
solve the rigidity of theframework, of Maven framework.
SPEAKER_02 (28:17):
For example, XML,
XML, uh, POM, POM XML.
SPEAKER_01 (28:20):
But for example, the
the the rule of thumb, not the
rule of thumb, the thehard-coded rule that only that
uh one project can only emit onejar file.
SPEAKER_02 (28:31):
Yeah.
The reality is sounds like uhyeah, very interesting thing to
be in uh early days.
SPEAKER_01 (28:38):
Yeah, and that was
honestly that was obviously
Gradle, uh, and and uh it was uhagain a revelation for a lot of
us, and we started to play withit and and look, um maybe now we
should start uh working withGradle.
And this is where I kind of Iwas very excited about it,
decided to do what if we take aso since Gradle infoity is
(29:02):
definitely a superset of Maven,yes, can we take what Maven does
and convert it to Gradle script?
And this is and since Gradlescript was written in Groovy,
uh, although it was Groovy DSL,it was nothing like Groovy
itself.
SPEAKER_02 (29:17):
Um that the Groovy
DSL, but DSL itself, API itself
was written in Java.
SPEAKER_01 (29:21):
Uh yeah, but again,
from the outside it didn't even
look like Groovy, although itwas uh compiling Groovy script.
Uh I was like, okay, uh let'slook at this language, and this
is where it was like anabsolutely um mind-blowing
experience.
That yes, this is how Javashould have been from the
beginning.
How much boilerplate you canreduce, uh how much more
(29:45):
expressive the language can be.
Uh it was uh it was great, andthis is where I wrote this
converter from Maven to Gradlethat gained some limited
popularity in some circleseventually and highly popular
across like a very limitedcircle of individuals.
Exactly, ended up uh as what wenow know the Gradle Init plugin
(30:07):
that you can pass um dash dashMaven and it will take the poem
and convert it to um uh toGradle script.
Yeah.
So yeah, yeah, but it was a verynice project.
I cannot say that it was somehowchallenging.
SPEAKER_02 (30:19):
But I think it's uh
it's also very um not
influential, but at least likeyou have to migrate some of the
conversations that you willeventually will happen with your
customers because before thatyou spend a lot of time to, I
assume, um to you know movingthem from like ants in into into
Maven.
Maven was great, and it stillstill is.
(30:41):
Um to world where you think thatlike feature going, like with
the slightly um differentapproach to describing the jobs,
providing the not only joboutput, but maybe there were zip
files, maybe there would be somesome other artifacts um
available in multiple jar filesthat can also happen.
SPEAKER_01 (31:00):
Correct.
Yeah, so that was uh a very,very nice project that um again
got me some notoriety in very uhspecialized circles.
SPEAKER_02 (31:09):
Exactly.
SPEAKER_01 (31:10):
The more interesting
project that I did that
unfortunately didn't goanywhere, but I I learned a lot
uh was the spring dataimplementation for
non-relational database forMongoDB.
SPEAKER_02 (31:24):
So before Spring
Data was a thing with the with
all these uh built-in featuresthat available?
SPEAKER_01 (31:30):
It was a wrapper
over JDPC driver.
SPEAKER_02 (31:33):
Okay.
Oh yeah, because before thatprobably Mongo didn't even have
uh like proper async driver.
SPEAKER_01 (31:40):
Um it was is all it
was is a JDPC like a wrapper on
JDPC driver that you can do umJPA on top of it with Hibernate
and uh JPA wasn't the thing thatyou could do hibernate uh in
Spring.
Basically, that was it was anduh and uh I was consulting for a
(32:02):
company that uh were veryexcited about MongoDB.
It was super early days, no oneknew about it.
I mean there was like I don'tknow, like 10 10 people in the
company.
SPEAKER_02 (32:11):
I think it was
before 2000, what, 2010, 2009, I
guess?
SPEAKER_01 (32:15):
It was yeah, more
like yeah, yeah, 10 and 9,
something like that.
SPEAKER_02 (32:19):
Around the same
time, I moved to New York and a
lot of founders of Mongo.
They were like more startedthere, and they were doing the
Horovitz.
The Horovitz itself was doingDevRail of the of the Mongo.
Yeah, yeah, yeah.
I remember exactly.
SPEAKER_01 (32:32):
Exactly, right,
right, right.
And uh so I said, what if Iwrite the implementation of
Spring Data to work withMongoDB?
Yeah, my job as someone whoneeds to come and implement
applications on top of MongoDBin Java will be much easier.
Yes.
And uh that was a veryinteresting experience uh to see
(32:55):
how we can map the uhrelationship.
Uh into uh exactly uh non-SQLconcepts into a system that was
designed to serve um SQL uh uhstorage.
And uh it actually it actuallymapped very well.
So I'm definitely not surprisedthat Spring Data later came with
(33:17):
support for everything and thekitchen sink.
Yes.
Uh because it was very well uharchitected to begin with to
support that, and I experiencedit firsthand by implementing all
those interfaces for forMongoDB.
Um unfortunately I it didn't uhget into Spring uh project um
(33:38):
itself.
Yeah uh the pull request um Ithink they're still somewhere
out there um uh for um reasonsthat um that was exactly the
time that the Spring team workedon something similar and they
obviously used theirimplementation and not mine.
Uh but that was a very niceintroduction for me into how
(34:03):
well Spring concepts, Springbasics, Spring fundamentals are
designed that it accommodated soeasily concepts which are pretty
alien to each other, SQL andnon-SQL storages.
SPEAKER_02 (34:20):
I think um this is
um this is a very great
conversation about uh API designprobably of the framework.
Exactly.
Um I don't know when you'rewatching this show right now,
but we do have episode anotherone with the Matthias X where
we're talking about um also APIdesign and what's important to
you know follow similarities,how say Java streams uh doing
(34:43):
the thing, so how we can do thesame in Kafka streams.
So check it out on the conflictdeveloper uh YouTube channel, um
it will be definitely there.
So lessons learned over over thetime.
What you can um, based on someof your personal career, what
you can the most important wishor like uh the share with the
(35:04):
audience if the people listen usagain the the core of this
podcast, the origins of thisluminaris, how you become from
the guy who was cleaning this,uh the the kettles and greasing
tanks to be like a very bigvoice in the community of uh
software Java, Java champion bythe way.
The uh the the the Kubernetes uhambassador, uh or how they call
(35:27):
it these days, like uh CNCFambassador.
SPEAKER_01 (35:30):
Alumni not active,
but it's okay.
SPEAKER_02 (35:34):
You've done the
thing, so you've been you've
been in different places.
So there's nothing nothing wrongto to to brag a little bit about
this.
So advices, like give some ofthe you know takeaways for our
listeners.
SPEAKER_01 (35:45):
The most important
advice I can give you if you are
in extreme weather, like verycold or very hot, opt in for
career with air conditioner.
Or heat.
SPEAKER_02 (35:56):
Uh well air
conditioning, like central heat.
SPEAKER_01 (35:59):
Yeah, the air
conditioning as changing the
temperature inside to morefavorable for human beings.
SPEAKER_02 (36:05):
Yes.
SPEAKER_01 (36:05):
The most important
advice.
Uh advice number two, uh becurious.
Uh get into stuff that looksinteresting, even if you are not
sure that you even belong there.
SPEAKER_03 (36:18):
Yes.
SPEAKER_01 (36:18):
Right?
Just pick your nose and and andsee.
Maybe someone will stick,something will stick, maybe not,
but be curious and get intothings.
SPEAKER_02 (36:27):
Yeah.
SPEAKER_01 (36:28):
The current thing F
A F O.
F-A-F O.
And uh FIFA, yeah, exactly.
SPEAKER_02 (36:36):
Be around and find
out.
SPEAKER_01 (36:37):
Exactly.
Be around and find out.
Uh also YOLO, uh hashtag,another hashtag, yes.
Uh, we're cool things.
We're playing cool.
Yes, yes, yes, yes.
We're pretending to be cool key.
SPEAKER_02 (36:47):
Yeah, exactly.
But they don't say hashtag, Ithink, anymore.
Yeah.
SPEAKER_01 (36:51):
Okay, no.
No.
All right.
So uh skateboard, floppy disk.
Yes.
Yes, yes, exactly.
Um be curious, get uh into thething that gets you excited and
see what you can do in it.
SPEAKER_02 (37:04):
Yes.
SPEAKER_01 (37:04):
And this is
something that worked over and
over again in my career.
Uh and uh you should do it too.
Don't just go with the flow.
Try to peek around and see ifthere is something even more
interesting that you can do.
SPEAKER_02 (37:19):
Yeah, this is a
great advice, this is a great
episode.
Uh, we talk a lot of otherthings.
Uh, you can find more episodeslike this on Confluent Developer
YouTube channel and all placeswhere we can consume podcasts if
you prefer audio versions.
Uh, this episode, again, thanksfor Taxcare for lending us a
little bit of the hardware.
(37:40):
We can uh so we can uh recordthis like a very fancy, very
fancy place.
Thanks very much, Barok, forbeing my guest today.
Thank you, Victor, for havingme.
Um, Bark Sodagorski, VictorGamov, and as always, have a
nice day.
It was conflict developer.
Stay tuned for the next episode.
It's gonna be so next.
Bye.