0:08 Miko Pawlikowski
Hello and welcome to another episode of Conf42Cast. Today a special episode, two guests, open source enthusiasts. Today with me, Ranjan Mohan and Silvia Siu Luo. You guys came to talk to me about padaiyal. Am I still pronouncing that correctly?
0:29 Ranjan Mohan
You're very close.
0:31 Miko Pawlikowski
Alright. Yeah, I'll eventually get there. Alright, so tell me, what does that mean?
0:37 Silvia Siu Luo
So padaiyal means 'often' in Timor. It's the name of our open source organization, which we started in October last year. With this organization, we want to provide libraries that are not currently available for the gaps common language.
0:49 Miko Pawlikowski
Okay, so Java. So what's the main selling point? Is that better than x, or filling the gaps for y, or revolutionising Uber for z? What are you guys trying to achieve with this libraries?
1:03 Ranjan Mohan
So right now, it's mostly point two. Because in Java, considering the fact that it's been there over two decades, we are just creating libraries for gaps that we noticed in the language. Gaps that we need to be filled for our day to day work. So it's the second thing that you mentioned, filling in gaps as of now.
1:21 Miko Pawlikowski
Okay. So tell me about the gaps. What gaps are you filling currently? For anybody listening right now, you have probably about 20 seconds of their attention to sell them on going and checking it out.
1:32 Silvia Siu Luo
So, we want to provide libraries that are not there, like for example we have a library in our open source organization that grabs around the terminal. And what this ever does is it will wrap around a terminal, it will execute a command and then display the output from social man to the user. And then we also have another library that will deploy containerized environments and it was called the area. And it uses date and uses Docker and Docker compose to achieve that. So far, we haven't found any such libraries in any page that we investigate or research.
2:03 Miko Pawlikowski
So, that sounds like a wrapper, or basically a Java-based API to interact with Docker. Am I getting that right?
2:09 Ranjan Mohan
Pretty much. Docker and Docker compose.
2:11 Miko Pawlikowski
Awesome. Okay, what else is in store?
2:15 Ranjan Mohan
Those are just two examples that Sylvia highlighted. We have a lot more. As of now we have released about nine libraries so far and out of which we also have a library called j file system, which takes care of any kind of file or low level storage manipulation. And the key selling factor over here is, we are also ensuring that it's compatible across three commonly used platforms, which is Windows, Linux, and the MacOS. So we have our pipelines in place, so that all our changes be it for deploying containerized environments, or be it for wrapping around shells, like PowerShell, Bash, or whatever. As well as this are all tested across these three platforms and are compatible. So that's one thing. And one of the pretty cool changes that we are also excited in terms of working on is, in addition to audio over there, since we right now we're focusing on deploying it via Docker and containerized environments with Docker and Docker compose. But we'd also like to add support to deploy in workload environments, in cloud, as well as in a Kubernetes cluster. So we're looking into adding support for that, so that that becomes a one stop shop library for you to actually deploy any kind of a workload or a containerized environment.
3:28 Miko Pawlikowski
Sounds really cool. So tell me, how did you guys even get started? How did you meet? What's the genesis?
3:35 Silvia Siu Luo
So, we actually met at Trend Micro, when I was an intern there and Ranjan was my mentor. One day we were talking about icing, an open source he was working on outside of work and working with all the functionality that he often used. And then we kept talking about all efficiency that you can add, and we decided to implement that deployment and started up parallel. And that's how we started.
3:56 Miko Pawlikowski
That's cool. And this is just the two of you, or how many contributors have you managed to gather so far? How is the community building around there?
4:04 Ranjan Mohan
So, right now, Sylvia and I are spearheading the organization. Another friend of ours, Kelly, actually helped us with planning a library and on and off help with tasks here and there. Back in the day, when it was just icing, another friend, Prashanth had also helped with a few features over there. And aside that, last but not least, one of the major contributors, I would say, is Mr. Subramanian from Magellan developer. So he's an amazing development coach. We had the opportunity to spend about a couple of hours with him. And we got a lot of insight into ways we can improve our organization workflow and how to focus on prioritizing items. So we spent two hours with him and then we spent about more than 12 hours discussing and expanding on all the ideas given. So I think that has also helped evolve our organization quite a bit. So but as far as any open contributors, we haven't had any yet. But we were actually presenting it in conferences and getting a bit of traction right. Now hoping to get more enthusiasts over the time.
5:05 Miko Pawlikowski
That sounds like a really good plug for announcing the talks that you're going to give at conferences so that people can go and meet you. No? No plugs? Okay, no problem. So do you have an idea of how many people are using it right now, of your audience? Do you track that kind of thing?
5:23 Silvia Siu Luo
We are not going to do it right now. But as of right now, it's just us who are using it. But as I mentioned before, we have presented them at a few conferences. And we started with also receiving intro from some people. And although our primary goal is to keep all requirements, we also want all people to benefit from them. So if people listening here are interested, I assume that you're going to put a link somewhere?
5:51 Miko Pawlikowski
Yeah, let's put a link in. Okay, so let's go back to the pluging then. Do you want to plug any conferences, where you will be talking where we can learn more about your libraries?
6:03 Ranjan Mohan
Absolutely. So we had previously spoken at the Conf42 Java, as well as JavaLand. And I also spoke at Conf42 Python. And these were highlighting our open source libraries, as well as some of the best practices for which we have repositories containing the information in the same organization. And we'll also be speaking at PiCon to come. We would also be looking forward to speak at more Conf42 events.
6:31 Miko Pawlikowski
Good answer, the right answer. Okay, awesome. And for everybody who, you know, might be interested in joining your efforts, what's the best way to get involved? Is it to just find you on GitHub and communicate through issues, or do you have any forums or stuff like that?
6:48 Ranjan Mohan
So in GitHub. The best way to reach out with respect to any of the open source stuff is through GitHub. We will be providing the link to our organization, and anything through our repository or any issues or any features that you would like, feel free to open up an issue. And there is no restriction on who can contribute or who can reach out. As chef Gusteau of "Ratatouille" would say: 'anyone can cook'. So we say: 'anyone can contribute here'. So more than welcome. And we'd also be linking our LinkedIn profiles over here, with this podcast. So anyone who would like to reach out to us on another note, we'd very much appreciate your feedback or comments.
7:30 Miko Pawlikowski
And extra points for "Ratatouille" reference. 10 points for Gryffindor. Let's touch quickly on your experience on the front of an open source project, because you know, it can range very wildly from spectacular successes to being harassed online. Where has it been so far for you?
7:50 Ranjan Mohan
So right now, since we just got started, slowly building traction. We're also getting more friends on board, and they're starting to show interest. And we are planning to give more talks in other companies as well, regarding the utility. So technically, we haven't reached a stage where there is a lot more friction, because it's primarily us and a couple of other folks. We have been able to gel pretty well so far. But yeah, like you said, I think as the community grows, we are anticipating more friction. And I think with that, we would end up creating much better, much more challenging things that would serve a much more common goal.
8:28 Miko Pawlikowski
Okay. And to help you with that, let's pick people's interest and give us a sneak peek of what's to come. What's next? What are you planning in the mid to short-term?
8:41 Ranjan Mohan
Sure. So as of now, we are actually planning on adding some libraries. We are planning to actually present one of our tools in PiCon as well. And that's to do with the command line visualization of logs or any text files. So that's not a tool that's readily... There are many tools that actually do that. So that is something that I have found to be immensely useful, especially with triage and customer issues. So that is one of the projects we're working on. It's called 'pi summarize', it's written in Python. And it makes use of the term graph library which displays bar graph output in terminals. And that's one project. And the other project is with respect to jrdr, where we are actually planning to expand it to not only support deployment of containerized environments via Docker and Docker compose, but also deploy workload environments in different cloud infrastructures like AWS, GCP. And so we are actually hoping for it to become a one-stop shop library to cater to deploying any kind of workload environments.
9:45 Miko Pawlikowski
That sounds like a bright future ahead of you. All right, so please tell me if, you know, I think pretty much all of us have these days when they feel like 'oh, I should just start an open source project doing this'. From your experience, what would you recommend for getting started? Is there, you know, a lot of planning that you would recommend doing beforehand or just kind of jumping into that and seeing what happens and not worrying too much about people judging your early code? What's your recommendation?
10:17 Ranjan Mohan
So I think, at least based on our experience, so one thing that we have realized is, so we need to spend quite a bit of time on even researching the utility of such purpose, and whether there are existing solutions. So that, itself takes quite a bit of time, because we don't want to sit and reinvent the wheel. It becomes very hard to convince other people and also come up with a better solution. Especially when 10s or 100s of people have already worked on another solution. For that reason. So as long as our efforts are being used for filling in gaps, or a completely different purpose that hasn't been taken care of so far, I think that's a great start for creating an open source library. An amazing start would be to start with contributing to existing open source libraries. That would be so cool. One example was like I started contributing to Matplotlib and a bit to F-Prime, the NASA repository. And then when they got the rover out on Mars, we got a small batch on GitHub, saying that the code you contributed was used for this. It may have been a very small line of change, a line of code change, but that is actually pretty inspirational, right? Some code that we were able to contribute is being deployed for such a grand mission. So I guess, starting to contribute to existing repositories will actually give a feel on what the processes are, and how our community works in terms of open source projects. And I think, once we start to identify gaps, that's when we start to ask the question as to whether it's worth an open source project, or whether it's worth updating or upgrading an existing project.
11:57 Silvia Siu Luo
I also want to add that if you want to create your own open source project, you have to sit down and just not dive right into it. Because you have to decide what the requirements for each library's going to be like. I need to make sure that those requirements will also help other people as well. And not just only for you. And in that case, you also need to make sure that the code that you're grading is also default to a certain standard. So not only you can contribute to it, but also other people as well.
12:34 Miko Pawlikowski
Yeah, I think the utility test kind of comes in later. And it's good to have that in mind firsthand. All right. So I think that's a really nice place to kind of start wrapping up. So the last question for you today is, if you were to pick like your favorite piece of open source software that you didn't write yourself, what will be, each of you, yours favorite number one?
13:04 Ranjan Mohan
So one is Linux, definitely. And yes, I agree with the fact that it's definitely not beginner-friendly. And it can get a bit toxic in terms of discussions, because people are pretty strict about how things ought to be done. But I've quite learned quite a bit, especially since it's used in mission critical systems, the sheer amount of discussions and thoughts that go to even a small change, it amazes me. Like aspects that I haven't even thought of. So just going through them, have learned quite a bit. So that is one thing. And the other open source project that I really have appreciated or liked, is the Lucene, Apache Lucene based on which Elasticsearch was also made. So that was actually a pretty, I would even call it, revolutionary design. Like at the end of the day, you're doing something like a no SQL database, and you're storing it as documents and searching. And that was basically the foundation for a lot more such tools to come out, like Elasticsearch, and then Splunk, and all of that. So that was also a huge part of things that I've learned so far. So those are the two repositories I could talk about.
14:14 Miko Pawlikowski
Alright. What about you Silvia?
14:16 Silvia Siu Luo
The first one is this, I mean, is a huge repository, but actually teach you about operating systems. And you can learn about like, how we work, how does a process handle any of the task, and then the open source project that I want to actually like, is this is a secure coding dojo, which teaches you how to program in a way that will prevent vulnerabilities in your code. So I think that is very important for people to learn that too, when they start programming in any language.
14:45 Miko Pawlikowski
Alright. So you both have your two choices, and sounds like they're all very attractive. Thank you so much for your time. Thank you for coming. For everybody who wants to go now and check out the repo, it's on GitHub: github.com/padaiyal. Thank you and see you next time.
15:08 Silvia Siu Luo
Thank you.
15:09 Ranjan Mohan
Thank you Miko.
Priority access to all content
Video hallway track
Community chat
Exclusive promotions and giveaways