 That's correct. Sorry. Yes, it was. Okay, can you guys hear me? All right, thank you. Hi, my name is Ken. My surname is, so I'm a Singaporean. So today I'm going to talk about process automation using an open source tool that I built maybe over a year ago. So let me segment my talk today into three parts. The first part I'll spend a few minutes to talk about, you'll show some photos about my open source journey since this is about GitHub and the open source community. And the second part I'll spend a few minutes to talk about what is process automation, specifically the branch called robotic process automation. And then the last part I'll spend maybe a 10 minutes or so to talk about the tool that I've developed and how you can use it. It'll be open source being free and basically the technical details. There may be five minutes left just for Q&A, all right? Okay, so let me see. Why is this not showing? Okay, so yeah, my open source journey started in 2015, so I'm like a late boomer, right? This was me, 2015, three years ago. So at the time I was at DBS, that's where I first signed up my GitHub account. I think it's January 2015. So this was me at DBS and I was developing test automation tools for manual testers, kind of like replacing manual testers job in a sense. So what I do there is to basically write program that whenever the software releases, there's upgrades. We no longer have 10 people sitting there to test the application, specifically trading application. Let's say we trade the forex, US dollars, Euro and so on. We don't have to test 1,000 test cases manually one by one. So I just write code basically to automate that away. So, but at the time I thought that I want to do something more exciting that maybe I want to do process automation stuff but not on staging system. I feel that there's a more challenging value in trying to do automation in production system. So I was there for one and a half years and I left DBS basically after I was... I just selected to be the agile team lead for the new agile team, but I tendered my resignation and then I basically packed my bags, went to Eastern Europe with my wife for one and a half years. Then I came back. So during that time I was spending all my time to develop the open source software. Pali is because of interest. Pali is because I want to build up my developer skills. So this was me, I was 95 kg and this is my weight chart. So basically I can also talk about weight loss if you want to hear about it. Basically the last thing you want to do when digress a bit, the last thing you want to do when you want to lose weight is to avoid eating the thing that you want to lose, which is fat. So if you want to lose weight and you avoid eating fats which is essentially life, your body will stop losing the fat totally. So you should not avoid eating fat if you want to lose weight. So that's my key takeaway. So the first place I went to was Serbia. This is a Nikola Tesla museum. Nikola Tesla makes his name in the United States but actually where he's born is from Serbia, the eastern side of Europe. So when we were there, we visited his museum. Let me zoom out. And this is, this is his urn. Basically. So I was there in Serbia for one month plus. Then I moved on to, this was Belgrade. Then I moved on to Novi Sad. Novi Sad is a beautiful place with about 300,000 people. And this is their fortress. This is the Novi Sad beach. It was summer at the time when we went. Then after that we went to Budapest and the locals will pronounce it as Budapesh with a SH. Although to us we pronounce it as Budapest. This is the co-working space there. It's called Impact Hub. So I was working there on this open source process automation stuff and this was Sunday night I think it was maybe 11, 11 p.m. So I got to catch the last bus and then I just took a photo before leaving. I like Hungarian food very much. So I started to learn how to cook Hungarian food. They are kind of curry. They are meatballs and stuff. Alright. This is a home-cooked dinner I made for my wife. Usually I'm the one cooking for some reason. She doesn't really cook. Then some of you may have come across this software called Prezi. It's for making what you call PowerPoint slides in a web-based version. So I went to Prezi headquarters in Budapest and they were having a talk on machine learning using H2O. Now they are running the deep water version. So this is the Prezi HQ. And they are doing a talk on sparkling water. But now the next phase for their product roadmap was actually deep water. This is a meetup at one of the start-up centre. So this is me. Okay. So after Budapest I came back, continued developing my code and I can't stay in Europe for too long because Singaporeans, you can stay maximum three months and then you've got to do border runs and so on. So basically I was staying there four and a half months, five months, then I came back. After that we rest for a few months then we went back to our next trip again. We started off with Chiang Mai because it was still too cold in February 2017 when we were about to go there. This was Chiang Mai and it has changed a lot. This is a tree house which I do my development every day. So every morning I'll wake up, have breakfast, go to this tree house cafe and do coding and end of the day. Then I'll meet my wife. Okay. And this is the Prata. They have their local version of Prata. There's also time for parties. This is a music festival in Chiang Mai and authentic Thai Pad Thai food. After that we went back to Novisat again. This is the same fortress as just now but this is where the sun is setting and I think this is the moon rising and the night view. Also attend some of the machine learning talks in Novisat. So this is our Euro trip for a year. Okay. Now, Lee Se Do. So what got me started on to move towards automation stuff was in 2016, I'm not sure, or 2015. But there was this time where Lee Se Do was having matches with AlphaGo and I'm a Go player for 15 years already. Maybe my rank is 1Q around there. During lunchtime I would just go off to watch this live telecast and I was totally shocked that how can a computer beat a human player that easily. I was basically shocked. So after the few series of games I basically go online to buy Lee Se Do's book and just share a copy with my friend. Okay. Yeah, so let me now go to the next part I'll talk about. The first part was just my background. Now I'll talk about automation and process automation. Okay, before that. So after the Euro trip I came back last year and then I happened to meet a director at AI Singapore. So I was saying, oh, I've developed this automation software. It has gained considerable traction in the open source community. And then I was saying, okay, since I'm going back to work, why not you guys at AI Singapore just take whatever I've developed and use it in your processors and whatever. And so happened at a time he was looking to hire engineers. So that informal meetup became the interview and I just got in and started working there sometime in December last year. Okay. Now, I'll touch on a little bit about AI Singapore before I continue. Okay, basically, AI Singapore is a government-funded organization. It's a nonprofit. We don't raise funds, but more of helping the Singapore ecosystem to build up local AI capabilities. So our programs, if you go to our website, AI Singapore, you can see a few things under programs. There's doing fundamental research, doing some grand challenges which we tackle challenging problems in healthcare, fintech, and urban solutions, for example. And then we have 100 experiments and AI apprenticeship where we try to tie up researchers from ASR and the various universities with some of the private sector companies to help them build AI MVPs. So if you want to know more about AI Singapore, you can just go to our website. Okay, going back to RPA, right? Okay, so, okay, for automation, if we look at the whole span of the IT industry since the 1960s, the whole entire 50 years, 60 years, essentially automation itself. IT itself is automation. When you try to reach that process, you are essentially automating the backend whatever happens. For example, let's say you file income tax to IRAS. Some companies actually do the auto fouling so their employees don't have to do the fouling themselves. So all these backend things that are going on is actually automation. But in the last few years, there's a rise in the new type of automation called robotic process automation. So that type of automation actually is built on legacy IT systems. Instead of trying to integrate, you have system A, you have system B, C and B, instead of trying to integrate every of the systems together through the backend, through the APIs, we actually try to integrate them through the front end. So you see the difference. The traditional IT integration, we have all API calls, we have all the rest services, and more recently, the Facebook GraphQL is picking up. But in process automation using the RPA way, the robotic process automation, we do it in a way that we make the behavior of a user. For example, let's say you receive an email from your boss to do something. So after you read the email from your boss, you'll get the relevant information out and then you'll log into, for example, application A to do certain steps. And after doing certain steps and getting certain results, you log into application B and do the next few steps. And after getting certain results, you log into application C and then you do the remaining steps. This is an example of a workflow that if you are able to map this sequence of business logic into some rules, actually you can automate the process and repeatedly do it many times again and again and again. So this thing is being used in the market now in mostly in banks and accounting firms because they have the skill to do large volume transactions and they have the skill to invest in automation for RPA so that they can tell, like, make things more accurate at the same time they can handle a larger workload with the same amount of workforce without hiring more people. So that is the background of process automation. Okay. But there's a gap in the market now. Traditional commercial process automation software costs about 5 to 10,000 a year per user. So that is very costly for any SME to even try to use. Because even if you try to write the first automation script you've got to pay so much cost just to use it. But I'm not saying that those commercial tools are not good, they are great, but I'm just saying that there's a gap in the SME space smaller companies which they have no access to process automation tools. So in that respect, I think maybe an open source version of those type of tools will make it easier for those smaller companies. That's the reason why I left DBS to just basically spend one year to develop and then, you know, it got subtraction on GitHub. Okay. Now I will go into the tool. Okay. So if you type Google tag UI, you'll see the link to the tool. It is spelled tag UI in the sense you are trying to tag the user interface. So tag UI. The first result would be the tool. And if you type there's also a Chrome extension if you like to use a Chrome extension. So I also make a Chrome extension that you can download to help you with the automation. So, okay. Now I go into the introduction. So basically this is an open source tool that's free and it is under MIT license. Later on it will be Apache 2. So I joined AI Singapore with the goal of adding ML and AI capabilities to this tool while keeping it open source and free to use. Not just by Singapore community, but anywhere else in the world you can try to use it. So some of the key features I developed with a focus on web applications because more and more we have the traditional application type of apps moving from legacy applications into web based cloud solutions. Some of the browser you can run on Firefox, Chrome, PhantomJS. You can do visual automation. You can do OCR. You can automate besides websites. You can automate your desktop application for example Excel, Microsoft Word or your Outlook email client. And you can write your automation in 20 over human languages. Initially I built this tool just to write my automation. But later on after I made the tool, I basically write an automation flow and run it to let it build itself. So essentially I write a few lines of code and then I let it run and build the language definition itself. How it does it is it goes to Google Translate and then one by one you slowly get the keywords and submit to Google Translate and get the corresponding matching keyword for Hindi, for Polish, Hungarian and so on. And then at the end of the building process it will be able to get all the languages converted for use. But the only one, the only two languages I did manually is Chinese and English because the rest I'm not familiar to really manually check through. The rest are actually generated languages. And you can unzip and run on Mac, Linux and Windows. So this is slightly different from the traditional RPA software because the commercial RPA software is mostly based on Windows as the Windows Microsoft API is more supportive of backend automation. But I try to build it based on cross-platform open source way so I support Linux, I support Mac OS and also of course Windows. Recently I added Python and R integration to the tool which means that right from the automation script itself you can run Python and R code your machine learning libraries and get the results and basically do more complicated stuff. You can run by schedule and advance API course of order, the typical developer stuff. I'll just download and do a demo. It's very easy to use. Once you go to a website you can just unzip and run it. So let me see this. It may be too small. Okay. So let's say I want to run assemble automation flow. Okay. So let's say I want to log in, I want to go to Yahoo and do a series of steps, capture some screenshots and then save the result to somewhere for example. So I can just run it from command line this way maybe using Chrome so I can see the automation happening in front of me. Wait let me queue it. Okay. So right now what you are seeing, the typing and clicking search, getting the results and saving screenshots is actually done through the automation script. So after searching for GitHub I capture a screenshot and then I go to some other, you can see what's happening here. So I capture the screenshots, I go to some other web page and type some other stuff over at the new web page. So all this clicking and typing is automated. So this will be an example and then I will just jump in to show a video for some other examples. Okay. So in this example I will, I showed a using of the Chrome extension to do a recording of automation and then replaying it and in this case is to record and replay account creation. So now I'm recording using the Chrome extension and then I go to this web page key, my username and password and then save the recording. After that I'll replay it. So after saving and exporting the recording what you'll get is actually text based files with English like language click, get started click something else, you know enter user email, enter password blah blah blah. So after running through exporting the text file you can just do your updates like maybe I want to wait for a few more seconds to capture the results and show the results and then you can just run it after that. So imagine doing this by sending an Excel spreadsheet to this application. You can actually instead of registering 500 accounts you can just use the Excel spreadsheet to key in the accounts you want to create and then pump it to the application to this tool and let it automate the creation process. Okay so alright I have a few more minutes. I will show another video maybe this one. Okay and I will jump straight into the example. So let's say this okay now I will show an example of automation of downloading let's say you have a survey you want to automate downloading of the survey results. So this will be an example so whatever you are seeing now that's happening in the front end is actually automation script including typing of the passwords and so on and the user ID, the logins and then after logging in you do certain things and you download the CSV file to your desktop and then you use it for the next step of the workflow process. So all these things can be stacked up to form a more complicated workflow but this is just a very short workflow to show an example of what it can be done. Okay I think I got 2 minutes left so any questions for the floor? Alright okay cool so do we have any questions here? Can't say again it's alright. Okay cool so thank you very much Ken so thank you very much.