Transcription
In the last video, we created a mini-app, and judging by the views, you like the topic. Thank you for watching. Well, in the process, we overlooked two small but powerful buttons in the Canvas tool, especially one of them, "Add Gemini Functions." Today, we will fix this oversight. I will explain what these buttons are for and show you in practice how to use them. I took our app, like this, meaning I can select it like this. I highlight it, and here I can write. I made it so that they don't just count numbers, so it's called analysis, and when you click on it, it's here. After that, I will demonstrate how to create a single-page web application and immediately use these functions. It will be interesting. Let's go. So, the last video, I started by demonstrating an app that I created on the fly to count cable remnants at my main job. Those who haven't watched can watch it via the link. I already tried to implement these functions here, and now I will show you how it looks. So, the first thing I did, I decided to try how it works to select and ask. That is, I selected this tab, "Calibration," and asked to change the icon to a microscope and label it "Calibration." That is, I can select it like this. I highlight it, and here I can write. Like this, change the icon to a regulator icon and label it "Settings." I press Enter. Immediately, it starts redrawing our app. We have to wait a little, but let's see what happens. So, it's ready. It redrew our app. As you can see, it changed, it changed the label, it changed the icon. Everything is great. So, I don't think we'll dwell on the "Select and Ask" tool for long. I also tried making other apps. That is, I tried to highlight a piece of the interface, like this, and say, "Round the corner" or "Make it sharper," "Leave one round, the other sharp." That is, it really works great. It really understands what you're typing and what you're asking about. Well, and if you want to undo the action of this button, you need to "unpress" it. Next, I will show you how we will create an app completely from scratch and use these functions. In the meantime, I will show you, so to speak, post-factum what happened when I tested and pressed this "Add Gemini Functions" button. That is, intuitively, I had the feeling that after I pressed it, it would somehow try to ask me what I would like to add or something like that. But after I pressed it, the app immediately started redrawing, and this text appears here. That is, "Great idea!" And here I added two powerful functions. Yes, I repeat that I didn't ask for any of this. It analyzed it itself and added the functions that it thinks can be implemented here. Whether this is good or bad, I don't know. You be the judge. But it seems to me this is more of a drawback. I would like to have a choice. That is, do I want it to just generate for me, for it to do it like this, just insert its functions, or ask me? Maybe I already have some idea, and I want to create it, and it just starts redrawing and inserts some of its functions. Yes, that is, it's a bit thoughtless here. That is, imagine you have an idea, you have an app, you go in, you want to enable this function and ask it to, "Yes, yes, I want to create it like this and so," you press it, and it creates something completely incomprehensible, and you need to ask in the next prompt to cancel it. Well, okay, let's go back to the beginning of our conversation. So, after I pressed it, it inserted these two smart functions: "Scan Label" and "Tab Calibration." That is, on the "Settings" tab, this banner appeared. It came up with the name of this banner and the description. That is, what needs to be done: "Photograph the label," and the "Scan Label" button. After clicking it, it offers me to select an image of my label. Here, I have prepared this image. I press "Open" and let's see what it shows us. As you can see, it read the data from the label, and this data was automatically entered into our fields. All we have to do is press "Calculate two grams per meter," and we get our desired value. We press only the "Use" button, and it pops into our first field. Well, in general, that's all about this. I explain in more detail in the previous video. And the second function it added is "Smart Report." Aha. That is, here we can calculate this calculation, it will go here, the first line. Let me write something here: "Old weight: 2 kilograms," "Weight if I had weighed, let it be 35 kilograms." We press "Calculate cable remainder," it shows us this. Okay. And I want to send a report. What will it do? That is, this is how it sees it: "Report," that is, "Grouping by cable type." That is, it looked at what kind of cable it is. Here is the data. I can copy it. Well, it's probably interesting if you really want to, you can make some kind of export to PDF here, probably. So, these are the two functions that it implemented itself, and honestly, I don't really like it because maybe I meant something else, and now I just have to, so to speak, catch up and figure out what it came up with. Well, and our second app was this budget calculation calculator for travel. Again, after pressing the "Add Functions" button, it immediately started redrawing and started adding functions that, in its opinion, are missing here. So, as you can see, the "Alcohol" section, it didn't come up with anything, although the functionality could have been greatly expanded here. But it added these two buttons. One is called "Analysis," and when you click on it, it briefly describes our budget. Well, quite a lot of information, convenient to read in a separate window. Not bad. And the second button it added is on each country card. It added these "Trip Plan" buttons. If we click on it, then here we can read more about our trip plan. Again, this depends on the sources. And as you remember, we connected the sources from the laptop. So, if you have reliable, good sources that you trust, then I think there's nothing to be afraid of, you can use it. It's interesting what will happen if I press this function again. Look, it started rewriting the app again, but it's interesting what it will come up with this time. And so, as you can see, it redrew our app and added these two functions. "Alcohol" is in place. Phew, dodged it. Good. It didn't change anything here. "Packing List." This is what the packing list looks like for each country. By the way, notice I clicked on "Packing List" a second time, and it's displayed differently. That is, each time it accesses the Gemini model and generates this information each time. Therefore, this is what we are talking about in the previous video: why take information from a laptop LM for an app if you can get it directly from the chat? For this, that the laptop LM, when we store information there, we only take it from there, it is constant and does not change. But here, you see, I entered a second time, and it's all displayed completely differently. The information is completely different here. Most likely, it's similar, but it's not the same. If it's very important for us to be accurate, then these buttons are not so great. And the second function is "Phrasebook." "Phrases for Italy." I like it. Let's look at the phrases. "Per favore, mi scusi, quanto costa?" Well, I'm telling you, red or white? "Bianco o rosso?" That's all you need to know when traveling to Italy. Yes, a huge drawback is that there is no control over all of this. The function invents itself, the placement, the design, and generally what this function will be about, it invents itself. But again, we just click once, and so, something for something. That is, precisely here I wanted to draw attention to the fact that with just one click, a quite interesting function appears. How suitable it is for us and what power we have over it is another question, but the function appears, and it works quite well. And about how to use this function exactly as we want, I will tell you further. Of course, and in this app, if something doesn't suit you here, you can naturally fix all of this with just one prompt. Just write like this: "The current functions don't suit me. Let's replace them with practical ones. Delete the 'Analysis Budget' and 'Trip Plan' functions." That is, in another chat, I asked to create a prompt for me to replace these functions. And that's it. Our app was reassembled, and the functions we requested were added: "Smart Packing List" and "Secret Places to Visit Without Tourists" for each country. Perhaps these examples will seem primitive to you. Don't pay attention to them. I just wanted to show the principle of how it works. You can, of course, use your own functions, layer them on top of each other, add an infinite number of them, use a laptop LM, and so on. So, we've looked at how to implement Gemini functions into existing apps. And now let's try to create an app from scratch. An app that will prepare all the information about my video before uploading it to YouTube. That is, it's necessary to add tags, add a description, add time codes, and generate a title, and so on. Those who have their own YouTube channel know what we're talking about. To generate our app, I made this prompt. Don't be scared that it looks super-structured and has so many beautiful words. I certainly couldn't say all of this. I will attach it during editing and show you what the original of this prompt looked like. I just threw it into the chat and asked it to tidy it up, structure it, and make a normal prompt out of it. So, a normal prompt looks like this: "App architecture: Dashboard. Interface structure: Grid layout. Three semantic zones: Zone 1, Zone 2, Zone 3. Brief visual style." This is the most important thing to pay attention to in this prompt. Here I ask the title generator and description generator twice. That is, I am more than sure that it will apply Gemini functions immediately upon the first generation of this app. So, let's copy and paste. Yes, and an important point, of course, in the tools, select the Canvas mode. Oh, nice. I like the style. Let's insert a transcript of one of my videos here. I'll insert my second-to-last video. Immediately, instantly, it calculated the word count, the time it takes to read. So, let's try the main function, generation. And as you can see, it's generating titles for me in English. Interface buttons for switching between how it will look on a computer and a tablet. Nothing happens when you click them. Down here, it's completely unclear what this is. Well, let's try to tell it about all our problems that we're not satisfied with in this app. So, I fiddled and fiddled with this app, honestly, it's turning out to be complete nonsense. And I know that it can turn out better because I tried throwing the raw mess that I said when creating the prompt directly, and it turned out much better. So, I have a feeling that I overdid it a bit with the purity of this prompt. That is, probably, I gave it too much data in this prompt, and it's trying to adhere to all of it, and it's turning out to be a mess. Let me try copying the unedited prompt again in a new chat. So, it's ready. Oh, I like this much better. At least the buttons work, which show how the interface will look. Okay, let's insert the text. Attempt number two. This button didn't want to work the first time. I press "Generate." Aha. And here's the title. "Generate." Let's come up with a new one. It's not working again. What's going on? We highlight, we ask, "The button isn't working. Redo it." So, the button is generated. Ours works. "Update" works. "Switch interface" works. When you click these buttons, nothing happens. And rewrite the interface of these buttons into Russian. So, our app was reassembled again. We insert again, we generate, we update, we check. It works. When the number of time code points changes, nothing happens. Okay. Well, again, I don't like it. It just deletes, changes the time. That is, my video cannot be shortened. If it lasts twelve and a half minutes with ten points, it cannot last only eight minutes with five points. That is, again, there are things to fix here and fix. That is, it's clear that ideally, you need to tell it to create a general window where all of this will be collected together. And ideally, it's probably not necessary to bother so much, and you just need to create one window with one button, "Generate," and so that it just generates a new title all the time based on the text from the transcript. That is, to ask to leave, for example, this banner. It works more or less. That is, the meaning of the whole idea is lost here. It's easiest to throw this into a regular chat, the chat window, and ask it, and it will give a list of generated titles. You choose the ones you like, and okay. Honestly, I'm simply tired of trying all sorts of variations and fixing literally every millimeter of this entire app. Therefore, the conclusion is simple: control over this entire process is still very, very, very raw to create any sensible app, specifically, precisely as you want. It will take, I don't know, maybe ten to twelve hours for sure. Yes, it does it. Yes, it corrects. You can point out errors, and it corrects them, but it takes a lot of time for all of this. But if it's a regular function, and you don't care how it works, you just need something to show beautifully, then yes, it seems to work. So, last time we said that creating apps is like a Lego constructor. Today we tried to assemble Lego Technic from this Lego. But as you can see, it turned out not Technic, but Lego Duplo. That is, for very young children. Everything needs to be fixed. Everything needs to be monitored. Control over all of this is minimal. You can't create a full-fledged app that can be published on the App Store this way. Otherwise, they'll write in the comments again. But we're just creating simple, ordinary visualizations of our tasks. That is, if you are a geography teacher and want to create a simple app that, I don't know, will show you a map on the side and on the other side will show you the population of that country, or if you are a dietitian and want to demonstrate to your client how their weight depends on the food they consume, and you want to show it live by moving sliders left and right and pulling information using this smart button that we discussed today. Well, then this function is for you. If you want to have full control over it, then I don't think it's even worth starting. You'll waste a lot of nerves, and it's not worth it. For now, it looks more like a toy and a nice addition to surprise friends. So that you can create such tools, you don't need to know how to code. You need to know what to ask for. In the last video, I gave a list of thirty UI elements. And in today's video, when composing the prompt, we talked about dashboards. Therefore, today I will give you ten variants of the architecture of such a simple web interface. Besides dashboards, there are also Kanban boards, treemaps, feeds. In general, all of this is collected in a file and written when, what, and why to apply. All of this is available via the link under the video in my Telegram channel. Come, download, try. And by the way, subscribe to support me there too. Well, in general, summing up, don't let complex terms confuse you. Behind all this magic lies a simple thing: you speak, and the technology does it. This is probably the simplest way to buy yourself some time for truly important things. Value yourself, value your experience, and goodbye.