Azure Cognitive Services with Ankit Sharma - AiA 435
Ankit Sharma, an Angular GDE and author, joins us in this episode of Adventures in Angular to talk about using Azure cognitive services with Angular.
Hosted by:
Brooks Forsyth
Special Guests:
Ankit Sharma
Show Notes
Ankit Sharma, an Angular GDE and author, joins us in this episode of Adventures in Angular to talk about using Azure cognitive services with Angular.
Links
- https://azure.microsoft.com/en-in/services/cognitive-services
- https://tic-tac-toe-d9068.firebaseapp.com/
- https://bookcart.azurewebsites.net/
- https://azure.microsoft.com/en-in/services/cognitive-services
- How To Create A Multi-Language Translator Using Angular And Azure Cognitive Services
- https://azure.microsoft.com/en-in/services/cognitive-services/face/#demo
- https://ankitsharmablogs.com/
- https://www.c-sharpcorner.com/ebooks/build-a-full-stack-web-application-using-angular-and-firebase
Picks
- Brooks - Cover face AND nose
- Ankit - TEACH: share your knowledge
Transcript
Hello and howdy. Welcome to another Adventures in Angular. My name is Alyssa Nikhil. I am the Angular developer advocate for Kendo UI. And today with me as a panelist on the show, I have Brooks Forsyth with us.
Hello. Hello. And we are super excited to introduce our guest today. It is Ankit Sharma. Welcome, Alissa.
Hello. Hello, Alicia. So tell us tell us about yourself. Yeah. So, my name is Ankit.
I am currently, staying in Hyderabad, India, and I'm currently working with ADP. I have almost 6 years of experience in dotnettechnologies, and I'm currently working as a full stack developer, where, in the front end, I'm using Angular, where in the back end, I'm using dotnet technologies. And I am a Google Developer expert, and I am also a community contributor. So I, like to write articles and blogs on various platform, and I also written books. One of the book is on Blazor, and another one is on c sharp.
And I have also published a free ebook on Angular and how to use Angular and Firebase to to create an, blog application. Oh my good so, like, how do you have time? First off, let's hit that one. Because it sounds like you do it all, and I can't even conquer the front end. So Yes.
So maybe front end in the morning, back end in the evening. You're right. I need some more time management. Yes. So, today, we are I I don't wanna spoil it, but do you wanna tell the audience about what we are talking about on the show today?
Yes. So today, we are going to talk about how to make, your Angular application smart. We are going to in, introduce Azure cognitive service to an Angular application using an asp.netcorebackend. So it will be a full stack project. So UI will be on Angular, and, the backend will be on asp.netcore.
And we will use we will be integrating Azure cognitive services to, to create an OCR. OCR stands for optical character recognition. So the what we will do that we will upload an image. The image will have some text. And using, Azure cognitive services, we will extract the text from the image.
So I've never personally used Azure cognitive services. What are they? The Azure provides a list of, cognitive services, such as, you can extract text from an image. You can translate from one language to another language. You can translate your speech to text.
There there are list of and there are very wide range of cognitive services provided by Azure. So I'm using few of them one of them, in Angular, in my application. That sounds really awesome. Is so is it all free to use? Is it like a subscription plan?
How do you get started with the Azure cognitive part? So Azure itself has a a paid plan, but for the first one month, it's completely free, where you got, if I'm not wrong, almost $300 to play around for 1st for 1 month. And after that, you can transfer it to pay as you go or other there are other plans available. So yeah. And and there are few services which are free for 12 months, And all of the the list is avail I don't have the exact list with me now, but most of the list is available on the Azure website.
So what got you, like, started on this OCR app? So I was just playing around see, I I I've written a lot of article on Angular where I created Flushtag application, where I created some cloud operation, then I created an, I I I was playing with cloud. So I thought of playing with cloud. So in cloud, I first started with Firebase because Firebase was free. So so I created few application with Firebase.
One is blogging application, and another is a multiplayer tic tac toe game application. So in the multi yeah. So this multiplayer tic tac toe game is super awesome. The thing is that the the USB of that application is that you can play with anyone in the world. If I want to play with you, I will send you a URL.
You play at your machine, I play at my machine, and we can play in real time. Okay. I have to find your GitHub real quick. Yeah. It is on it is on GitHub.
If, it is it is on GitHub, it's it's it's free. It's free. Okay. But, I was talking so after after Firebase, after Firebase, I thought of doing something to to play around play around something. So what I, got into is that when I and I joined a new company called ADP in last year August, and there I got it as your subscription.
So let's say I said, okay. Let's play play with it. Why to why to wait waste it? So I was playing around something, getting something, and then I came up with, these few few application. One of them is, multi language translator, which is similar to a Google Translate.
So we there, you have to create you have to, put your input language, and it will translate in almost 26 languages. So that is an, translator. So after a translator a translator, I came across I was going through documentation and saw it that the OCR API from Azure Cognitive Services. I really liked it, so I created this application. OCR stands for optical character recognition.
Oh my goodness. So do we want to tell us what you would like to walk through first? You wanna walk through using the application and what that looks like, or do you wanna walk through creating it and the pieces? Or you you tell me where where shall we go? Maybe, we can start with, how to create it.
So I have a, I have written one blog post also, which is published on my website as well as as well as it is published on freeCodeCamp. So And we're gonna have the GitHub link and the blog post and all your info, linked in the show notes. So check it out if you're not driving. Yeah. So, yeah, the GitHub and in in the article, I have, I have clearly stood the step by step process of how to create this application.
But let me give you an overview of, how to, create this. So the first is there are 2 prerequisites, 2 2 separate prerequisites. So one is for Angular. So if you are new to Angular, if you are not Angular developer and you are you are new to Angular, then you have to do all the prerequisites for Angular. One of them is Angular CLI Node.
Js. There are only 2 prerequisites for, 2 2, software you have to install. And then another one is since we are using asp.netcorebackend, so we have to finish the prerequisites for dotnetcore also. So for that, we need, dotnetcoreashdkit3.1, which is the latest one, And we have to install Visual Studio 2,019. I do wanna say, I recently I've been, like, JavaScript all the way.
Okay. And I've done a little bit of, like, Ruby on Rails, but mostly it's, like, hey, I'm, like, sticking to the front end. So I recently had a coworker at work who works with dot net, and he was, like, hey, let's spin up this app together on my machine. And I was, like, okay. And it wasn't as, like, I've I've downloaded, I've cloned down, and, like, got started with node projects that were harder to get set up.
So it's really not that difficult to get started with dot net. And so if you haven't, and you wanna try it, just really, it's not that scary. So, anyway, keep going. Yes. It's it's very straightforward.
It's simple. You you just need to install Visual Studio 219, and the community, it is, is completely free for the lifetime. You won't be charged any a single penny for that. Visual Studio 19. And dotnetcoreashdk.netcore is also an open source, so you can directly get a dotnetcoreashdk also.
So after this installation is done, the third thing you require is an Azure subscription account. So if you don't have an Azure subscription account, you can create a free Azure subscription account for 1 month, and you may need a credit card for that. And, you won't be charged anything until you use that. But for first one month, it's completely free. After that, it will be paid service.
So after this prerequisites is done, you have to create a, Angular and ASP dot NET code project. So there there are few templates provided by Visual Studio in dot net, where they have already created a template application where all all the setup is done, where we have a back end of ASP dot NET Core and the front end of Angular. So you have to create a template application, and then you can, you have to get you can get started with the dot NET Core. So the first step, that we can do is to create a dot net code, service, which will call our Azure API. So for that, the first step is to we have to go to Azure, and then we have to clear the cognitive service.
So there there is something called Azure portal. You you there you have to go. So, if you sign, if you sign to Azure, you can, go to portal.s0.com, and there, you have to clear the cognitive service. So the steps are pretty simple, and, it is the steps are clearly mentioned in the applications, in the article also. There, you have to create something called computer vision.
So computer vision is the name of our cognitive service that we have to create, and it's very simple. It it it it it's a system, straightforward form where you have to keep the name and location and, some pricing tie and those basic details you have to furnish and will be created. And then you will get a key, subscription key, and the endpoint URL. So the subscription key and the endpoint URL, will be unique for your own cognitive service. And you have to use this to access your cognitive service from your, dot NET Core application.
That is how the whole communication from your code to an Azure cloud is going to work. So this is where the key and the, endpoint URL comes into effect. So once your key is, done, generated, your endpoint URL is, generated, now the things are, pretty much straightforward. So what you have to do is you have to write a service. And in the service, you have to make an s t p call, and you have to send your image data in form of bytes to your Azure cloud via the s t p call.
And then you will get the return, and and all the, work is done by your cognitive service, they will return you all the text from that image, in form of a JSON. Now you got the JSON. Now it's up to you how you are to want to manipulate it. So, in my case, I have done some manipulation. The reason for that is they will send JSON in a, in a word format.
So, like, they will send each word wise, and they will send a lot of information, like, what is the coordinate of that word, if the word is state or not, it is rotated by some degree. There's a lot of information they send. I don't want all the information. The requirement for my app is that if there's a text written over the image, I want to print that text on the simple text box. And, also, the text is written in form of line, but the object is written the JSON is written where they have separated word wise.
So I did some, small manipulation where I am, joining all the words to create a line by separation. So there's a small manipulation where I use a string builder to, look through that JSON and, fetch the word and then create the sentence. And once you got the sentence, you will also get the language. So the OCR API support, I think 26 languages. I am not sure about the exact count, but around 25 to 26 languages.
So you can send, you you can send it, upload the image in any of these 26 languages, and they will give you the result for that. I'm just amazed. I'm watching the GIF on the bottom of your blog post right now, and it's amazing. I'm just amazed. Like Yes.
Yes. That that GIF yeah. So that GIF is, there. And, so, once once you create that application, once the application is, no. Well, yeah, you got the JSON return.
You got the JSON, and you got the language also. So now the question is now there is a very interesting thing. So I will tell you what is the the the according to me, this is the best part of my article. So the language which they returned is in the form of code. For example, en for English, fr for French, and something like that.
But if I have to show to the user, I cannot show en or fr. That is not user friendly. User don't understand that. So I need to show full language, English, French. So now there are 2 option.
Either create, there is a documentation on Microsoft website where you can see the list of all the languages, which is supported by, OCR API. So you have to create the the you have to create a dictionary or a lookup table, manually, where you will map every language with, your their key. But that is not what programmers do. If I have to do work manually, I I cannot be a programmer. Right?
So I have to do some automation. So so what I did is so I did a kind of hack. So there is another cognitive service that is called translate text. So as the name suggests, it translate text from one language to another language. So Microsoft has created a public API, where they expose the list of all the languages, which is supported by translate text API.
And the list of languages, which is supported by OCR API, is a subset of list of language supported by translate text API. So I make a call to translate text API, endpoint. I get all the list, populate it in a dictionary, and my work is done. I set all my manual work, and now everything is, automation. So if you see in the article, I have clearly mentioned if you go, there's a section called why do we need to fetch the list of supported language.
There's a, there's a I found it. Yeah. There there is a small paragraph. So there I have mentioned clearly that why I am calling because people will get confused that if you are working with an OCR API, why you are calling and translate test API endpoint. So this is the reason.
I just need to fetch the list of language and make it a more user friendly application. So from this, I am creating a lookup table, basically, a dictionary. And when I am getting a language code like en, I am getting I am displaying the value as English on the UI. If I'm getting f r for French, I am displaying the name as French on the UI. So this makes my language more user friendly.
So, I I I also like to add one more thing. So on this particular thing only, I spent almost 2 days, because I want, I thought that let's show the, code only, but then I thought that code won't be more user friendly. So make it something, more, user friendly so that people can, relate to it. So that is why I created this particular hack. I love it.
Is it a hack? Do we do we have it? Is it? It's not a hack, but it says something different, than the normal workflow. Yeah.
And and and and in the client side, if you see, it's a plain simple, UI, for Angular. So I have a service. I am calling the endpoint, and the the thing is that I am uploading the image. So there is a, there is a option to upload the image and then show a image preview. So if you see, to show the image preview, calling an up I am uploading the image, and I am, showing the max file size of 4 MB.
Yeah. So there is a limitation also. I forget to mention that. There is a limitation of OCR API that, the maximum file size can be 4 MBs only. So I I don't know what is the logic for this limitation, but, frankly, this is a limitation.
So that's why I have put the maximum file size 4 MBs. And and then, once the image is uploaded, I will get that uploaded image and in the form of byte, and I am sending, via HTTP call to my back end. And then the back end is sending me a string data, either text, and I which I'm displaying on the UI. So this is how my, application is working end to end, and I'm using Bootstrap for some styling. And, that's how you get to the end of the article where you can see that awesome GIF, which you are a fan of now.
Oh my goodness. I am I'm actually looking through your GitHub codes right now. I'm trying to find the point that you're calling the the vision service or the to find the list of language language support for computer. So I I I will tell you, you have to go to, OCR controller inside the controller's folder, and the, and the last method is get available languages method. So how long did you said that the the OCR portion where you're translating basically from, like, FR to French took you 2 days.
How long did the whole thing take to accomplish? So the whole application, see, there there are multiple parts. So the whole application, I will say, along 5 days, 4, 5 days. I I'm not sure the days. Yeah.
But, yeah, working part time, not completely. You're like, I do it in my sleep, basically, is what you're saying to me. Yeah. No. No.
I it's it's a working part time, basically. It means, like, over 2, 3 hours a day. So I will say 15 to 20 hours to create everything. And, 2 days, especially for that translation from to create that lookup dictionary. Well, I have to think of a logic that what should I do in that case.
At one point of at one point, I thought to create everything manually. And I think then there is no program on between me and a lazy and a lazy person. Like, we should be we are developer. We should do some smart solution. We should give some smart solution.
So that's why I come up with that particular logic. So that's how this, method come into existence. So, one more thing I would like to add. So here, you can see I have created few models also. So these models will allow me to bind to my JSON data directly.
So the OCR API is returning, data in a format of a JSON. And then, when I deserialize the JSON using, our in our code, in, dotted code, then I need a class or a model to bind it to directly. So that is why I have created, a few models to, to store the values where that is coming from the JSON. So here you can see, we have a language test model, which will give the name of the language, the native name that, directly the there are few things are there, which are coming from the JSON. And, maybe, at the end, I can I can share few relevant details where you can find the JSON structure and maybe, the Azure cognitive service OCR API official documentation where you can see the JSON structure and the step by step?
It will be more helpful. Yes. I haven't even touched the dot net side. Now I'm scared. I was, like, walking through your Angular code, and I'm, like, oh, no.
What is on the back end? So what walk me through what everything that, like, the dot net is handling. It's obviously handling Yes. Yeah. You can say the heavy lifting is done by the dot net, and Angular is just, for the just to show, like, you can suggest for the UI, just for make the ad beautiful.
Look and feel. Yeah. Are you doing any sort of authorization with dot net or anything like that, or is this just demo so you can bother? No. So, there is a so initially, I told that when you, when you create the API, you will get a key API subscription key and the endpoint.
So this subscription key is the my authorization. Okay. So that's that should be kept kept hidden, or it should be used privately. Yeah. It's a it's a really cool app.
Thank you. It's always annoying to, like, have to deal with paper anyways. So, you know, just you can whip one of these up pretty quick is is awesome. Yeah. So yeah.
So now yeah. So so, adding on the same note, so now, Azure has 2 different kind of APIs. One is for optical character reader, which I am using, which recognize only the printed text. It will not recognize the handwritten text. Now there's another API called read API, which is, beneficial for large document or handwritten text.
Let's say you have, multiple pages, which you want to handwritten page and which you want to convert to a word, then you can use a read API, which is a separate API from this, and which which works very good with handwritten text. I mean, like, I'm thinking maybe not my handwriting. Maybe, like, someone who can actually right? You could train the models, you know. Oh, yeah.
Oh, man. It's rough, Bob. My husband, who's known me for, like, 10 years, he he still, like, struggles to I it's because it it changes daily. So Dynamic handwriting. Oh my goodness.
So that was for the application. I really enjoyed this, creating this because it was a lot of tricks and lot of things that we have to do. It was a great experience for me. And then I I read this article. I said, let's share this knowledge with everyone.
So I write this article. I'm just amazed that because I I'm on your GitHub looking at all your applications. Do you just get a hankering? You're like, hey. I want it, like, blogging app with Angular Cloud Firestore.
Yes. You're you're just like, hey. So, see, this blogging so this blogging app, which Angular and Firestore has a long story attached to it. So, yeah, so the story is that, this is this application is my playground. Playground means, add, if I want to learn something in Angular, I use this application.
And and there is another application if you see. Have you seen the book cart? No. I was just looking at that. Yeah.
Yeah. So for book cart, I have pinged you in the chat also. You can look at that. So Book Cart is a kind of, complete page, complete, what you say, shopping cart application. So there is a, online ecard here in India called Flipkart.
So I just I just stole the name from there. I put Bookkart. Love it. So so this is a bookshop as you can see, and it's a pretty basic application. I'm using Angular Material, esp.netcore SQL Server to come into an application, and it has, authorization, authentication, and there are a lot of other things also.
So you can place the order. You can, see, upload the images. You can see the preview of images, log in station, and we have a temporary even form, reactive forms. So whatever I so these two application, blogging application, book card application is my playground. If I I have to learn something, I put it here.
Oh, awesome. So it, like, keeps evolving and growing as you do? Yes. Exactly. Yeah.
Exactly. It's capable. So so right now in a book card, I am planning to implement NGRX because I'm learning NGRX since last few days few months, basically. So I want to implement NGRX over there so it might grow. So what's the do you plan on having, like, a split of, like, this version within GRX, this version without, or you just No.
This is not I will just upgrade. Oh, yeah. Upgrade. It's it's a it's a demo application. It's a and it's already on, GitHub freely available.
So if anybody want to show the previous version, they can already go to previous commits and see that. I can't wait. I'm totally gonna start following you and peeping on the couch. That's awesome, man. That that that would be very awesome.
So before we get too much off topic, I think you said you had a couple things you wanted to mention or may did you already touch on them for back to the original application with with OCR? So if you go to the original application, I think I have covered most of the part. And I would have shown a demo, but I think, I cannot see it. Only. Yeah.
Audio only. Yeah. So that way, I would and and, unfortunately, I have not deployed it anywhere. Otherwise, people could have played it out, but, there are some issue with the deployment in my end, Azure application since the company provided my company provided. So there is some limitation over there, so I could not be able to deploy it.
But, if you follow the steps mentioned in the application, or or even if you just create a API key and the endpoint, clone my repository, put your key and run it, it will run. Perfect. So yeah. Yeah. The yeah.
It's a guarantee. You will not face any issue. It's a guarantee. That is some big talk and dirty hack. No problem.
Yes. It's a guarantee. You will not have an issue. I love that so much. Yes.
You will it's a guarantee. Time taken. If you have an issue, you can post public on your Twitter that your your app is wrong. It's a guarantee. It's obviously on your end.
Oh my goodness. This this is tried and tested. So and I I would say that Azure cognitive service is awesome. So, you will you will see some difference, from your normal app. So I have written a lot of articles.
If you see, I am writing for almost last 3 years, and I have written a lot of articles more than 55 to 60 articles I have written, on doing lot of different kind of application. But this using cognitive services is something different because it makes your app, smart. Your app become smart. Like, it and it looks cool. So that that yeah.
It looks cool that you are doing something you're doing something great. There there are other applications also. I am not saying bad about other application. Like, even I am written out forms and then, data uploading, credit operations, and GRX. They're all great.
But this is something different. No. It is. And I I love it that you were just like, hey. They offer this API.
I need to use it. Yes. And and there are there are a lot of different APIs, like, so they have something called, language APIs, and, they have, q and a maker. So the, in in the Azure, there's something called q and a maker. So there, you can set up, q and a for your, website or something like that.
Then text analyst analytics. So in the text analytics, you can analyze the text what are the text, what are the keywords and entities and all. And, then you have, in the in the vision, in the face recognition. The face recognition is one of the very great API where you can upload an, image, and it will recognize the face, the location of the face, and then, you can, it will show a box around that. It will look like a sci fi movie.
So that that looks awesome. Yeah. So, and then, you have, Vision API form recognizer. So you you you can upload a form. You can extract it from the form.
So those there are a lot of APIs provided. So I I I will provide a list. I will provide the, link. You can put in the notes, and, people can, go through it and see that data extensive document provided by Microsoft. And and and the the best part about this is, this is all going on back end.
So all the API, you you, so that I I would say that 3 types architecture. 1 is on the cloud, where which do all the heavy lifting. You clear the API, get the key, and then you have a, middleware part of thing. So we are, like, services. In my case, it is ASP dot NET Core.
And the UI, you can use anything. You are free to use any UI. So I am using Angular and Blazor. So I have few application, Blazor also and Angular also. So I am working parallelly on both of them.
You can use other also. You can use plain JavaScript, Vue. You can use React. Whatever you want to use. So I saw I saw you wrote a book on Blazor.
Yeah. And the funny part is that is the first ever book in the world on Blazer. Oh, oh my well, it didn't it, like, just drop, like, officially? It was dropped officially, but when I wrote the book, it was still in preview. Nice.
That's awesome. Oh, what is that? What it Yeah. Is that on Amazon? What is that on?
Yeah. It's on Amazon. So, yeah. Front door. Of course.
It's on Amazon. Yeah. So and and recently, I have published another book on c sharp, where I have coauthored with Rafael and Marius, who are also Microsoft MVPs. So this is published recently on c sharp. It's a complete c sharp guide from beginners to advanced level.
That is awesome. I actually have a friend and coworker who is an advocate for Blazor here at Kendo UI. I might have took you 2 up because that's, that's awesome. Yeah. Sure.
Sure. Actually, I am more into the UI. That's why I pick Blazor easily. And, so earlier, I used to work as a dot net developer almost when I started my career as a dot net developer almost 6 years back. And Blazor uses c sharp as a language, so it was natural to me.
And then, I moved to Angular because the demand in the market. It's simple. Yeah. Because Blazor is still in the development phase, so that is fine. We are let's not go discuss about the Blazor, but, Angular is awesome.
Yeah. So I I I yeah. And Angular gives me food. That's why it's awesome. How long ago did you start using Angular?
Almost 3 years. Little less than 3 years. Yeah. I started from Angular 4. Okay.
Oh, that's nice. You didn't have the, the one to 2 swap. Well, this has been such a fun show, and I really am amazed. If you write a book next, could it please be about how I do so much with my life and how you can stop wasting yours? Like, that I think it's the title needs work, but I think Yeah.
Good idea. But, no, is there anything outside of OCR app that you wanted to talk about before we get to PIX? Outside the OCR, if you if you look into same cognitive services, I have created a, translate text cognitive service also. So there is another app, so there is another, link I can share you. I I am not sure if it is published on free Codecam, but it is published on my website.
Sorry. Not my website. In the the media in different medium. You know, angle in-depth, website angle in-depth is there on medium. Right?
So, yeah, there there is a publication on, medium that is called Angular in-depth. So I have created a I have written a article on that, how to create a multi language translator using Angular and Azure cognitive service. So, it's a it's a similar to Google Translate. And if, if you I have pinged you the link in the chat. If you open it again, go to bottom, you can see that awesome GIF.
And the so so there, you can see that you can write, you can transfer from any language, many language. I think almost 25, 26 language 60 language. Sorry. Sixty languages supported by translated, API. So you can transfer from 60 languages to and fro to and fro from 60 languages.
Yes. So, again, that architecture and the structure of this app is same to that of OCR app. Everything is same. I created an API, write the middle layer, and then put a UI to make the app beautiful, and I'm I'm passing I'm calling the API through service calls. These are the 2 which I have explored, till now.
I'm I'm planning to explore the face API next because that looks cool to me. Yeah. I saw the face, can detect emotion, which is kinda cool. Yeah. Like, if you're you're happy to start.
Yeah. It's good. Anger, contempt, disgust, fear, happiness, neutral, sadness, and surprise. That is And it gives you, like, a rating on each one. Because I know humans who can't detect those things.
I was gonna say contempt and anger That's, like, legit. Are similar. Like, I think I could use that, just in day to day. I mean, I know both. They're probably someone's yeah.
Anyways, so that's cool. That's definitely, it'd be fun to play around with for sure. Azure is awesome. Like, if you play on the community service, it is it is great. I'm making sure these links make it in the show notes.
Alright. I got the face one. Awesome. Perfect. Well, thank you so much for coming on the show today.
And, again, what is your Twitter handle slash GitHub so people can find your username and follow you. Okay. So my Twitter handle is anki sharma_007, and, my GitHub is anki sharma hyphen007. So the reason Twitter does not contain hyphen is because it does not allow hyphen. Ah.
So That's the worst. You have, like, a username, and then it's like, nope. Yes. So symbol. So yeah.
So this this is, this is and, also, I have a blog, personal blog, ankeeshamablogs.com. So there I write continuously, and, there is a free ebook I have published. So, I can I can share you the link also? I will just, mention a brief description of the app. So you just talk about that blogging application.
Right? So I have written a free ebook. It's almost 100 pages where I have explained how to create this blogging application using Angular and Firebase from scratch. So this book is a step by step guide where you can learn how to use Firebase with an Angular application. Oh, I love that.
You said you're a g d e. Are you both Firebase and Angular? No. Only Angular. Okay.
I mean, we could fix that. We need to talk to the Firebase team because you've got, like, I don't know, 20 demos using Firebase. Yeah. I I would I would love that. So okay.
I think we are ready for picks. Although, I am pick list today. So, Brooks, hopefully, you can pick up Oh, jeez. Where I am totally dropping said ball. I was I'm kinda pick list, but I I just wanted to, stand on my soapbox for a second and say, if you're wearing a mask, cover your nose and your mouth.
Fuck. Fuck. Fuck. Because if you don't cover your nose, one, you look weird as all get out. Like, your nose looks, like, 10 times bigger.
And 2, it's not really doing anything. Oh, man. Last week's pick for me was wearing Crocs with socks. So, like, me me saying you look weird with your nose sticking out. That's something.
Yeah. It gets me when I'm, like, driving and I see, like, other people driving alone wearing masks. That's weird too. That's weird. That's creepy.
I'm like I'm like, come on guys. You you can breathe now. This is you're in the car. Right. I'm like, maybe they're just so comfortable.
They just don't wanna take it off. I don't know. I just think it's bizarre. Alright. That's that's my pick.
Covering your, face and nose with a mask. I love it. I love it. To use what is what the mask is for. I know.
Yeah. Okay. So, yes, I think. Do you have any picks? They don't have to be tech related.
They can be random. I I have something which I talked a lot often about, and and I I I, asked a lot of people also, like, you guys are also community contributor. Not only you, everyone. So I I what I say is that teach. That's it.
So how you can teach? So let's say you know something. It it doesn't matter what you know. You know something. You teach to your junior.
So if you are a developer, teach your junior about development. If you are a tester, you teach your test or testing, junior or testing. If you are marketing, guy, if you are a salesperson, whatever you know, teach your juniors. The reason for I'm the reason I am saying this is that you can learn more from your peers than from your school or colleges. And this is not only in this is mostly in my country, but I think this holds to everywhere in the world.
So I just want to say to everyone, just teach. Spread the knowledge. Mhmm. So that is one of my motive behind doing all this community work. So, like, spread the knowledge.
Whatever you know. Whatever you know, just teach it. That is what I'm saying. Teach. That's beautiful.
I love it. That's great. Thank you. Thank you so much for coming on the show today. You were a absolute wonderful guest.
Thank you. Thank you. I I I would love to I would like thank you guys also for inviting me, and this was a great session. I I like talking to like, I I talk through an article without sharing anything, without showing anything. I know.
It's very weird. It's it's hard sometimes because people are like and I show this code, and I'm like, well, you could. But Yeah. No one would see it. So it's always Yeah.
Really interesting to see people teach through code concepts or Angular, you know, without visuals. So oh, awesome. Well, thank you so much. Everyone has a marvelous day, and we'll see you on the next one. Yeah.
Thank you. Bye bye. Thank you, Brooks. Bye.
Azure Cognitive Services with Ankit Sharma - AiA 435
0:00
Playback Speed: