{"id":8031,"date":"2025-01-05T13:45:00","date_gmt":"2025-01-05T12:45:00","guid":{"rendered":"https:\/\/haimagazine.com\/?p=8031"},"modified":"2025-06-26T10:04:00","modified_gmt":"2025-06-26T08:04:00","slug":"zmaistruj-sobie-apke-czyli-jak-stworzyc-aplikacje-jednym-promptem","status":"publish","type":"post","link":"https:\/\/haimagazine.com\/pl\/narzedzia\/zmaistruj-sobie-apke-czyli-jak-stworzyc-aplikacje-jednym-promptem\/","title":{"rendered":"ZmAIstruj sobie apk\u0119, czyli jak stworzy\u0107 aplikacj\u0119 jednym promptem"},"content":{"rendered":"<p class=\"wp-block-paragraph\">Jaki\u015b czas temu przeprowadzi\u0142em si\u0119 z miasta na wie\u015b. Brak wsp\u00f3lnoty mieszkanowej zrzuca na cz\u0142owieka wiele nowych obowi\u0105zk\u00f3w. Jednym z nich jest ogarni\u0119cie wywozu \u015bmieci. Poprzez podpisanie umowy z Przedsi\u0119biorstwem Us\u0142ug Komunalnych (PUK)&nbsp;deklarujemy, \u017ce b\u0119dziemy odpowiedzialnie selekcjonowa\u0107 odpady w odpowiednio oznaczonych pojemnikach lub zapewnianych przez gmin\u0119 workach. W naszym przypadku wi\u0105\u017ce si\u0119 to r\u00f3wnie\u017c z tym, \u017ce zawsze musimy przy pami\u0119ta\u0107, by zawczasu wystawi\u0107 odpowiedni kube\u0142 za bram\u0119. A pami\u0119\u0107 \u2013 wiadomo \u2013 potrafi zawodzi\u0107.<\/p><p class=\"wp-block-paragraph\">Na potrzeby niniejszego artyku\u0142u postanowi\u0142em stworzy\u0107 rozwi\u0105zanie, kt\u00f3re na telefonie da dost\u0119p do harmonogramu wywozu \u015bmieci w dowolnym momencie i miejscu. Jednocze\u015bnie chcia\u0142em, by informacja ta by\u0142a dost\u0119pna przy minimalnym wysi\u0142ku. Dodatkowo podczas prac chcia\u0142em sprawdzi\u0107, jaki post\u0119p poczyni\u0142y modele LLM je\u015bli chodzi o wsparcie w programowaniu. I podobnie jak przy <a href=\"https:\/\/haimagazine.com\/pl\/ai-w-praktyce\/zmaistruj-sobie-wtyczke-czyli-jak-stworzyc-gre-z-chat-gpt\/\" data-type=\"link\" data-id=\"https:\/\/haimagazine.com\/pl\/ai-w-praktyce\/zmaistruj-sobie-wtyczke-czyli-jak-stworzyc-gre-z-chat-gpt\/\"><mark style=\"background-color:#82D65E\" class=\"has-inline-color has-contrast-color\">projekcie wtyczki do Chrome<\/mark><\/a><mark style=\"background-color:#82D65E\" class=\"has-inline-color has-contrast-color\"><a href=\"https:\/\/haimagazine.com\/pl\/ai-w-praktyce\/zmaistruj-sobie-wtyczke-czyli-jak-stworzyc-gre-z-chat-gpt\/\" data-type=\"link\" data-id=\"https:\/\/haimagazine.com\/pl\/ai-w-praktyce\/zmaistruj-sobie-wtyczke-czyli-jak-stworzyc-gre-z-chat-gpt\/\"> <\/a><\/mark> pokaza\u0107 (w skali mikro), jak mo\u017ce wygl\u0105da\u0107 proces tworzenia produktu, kt\u00f3ry odpowiada na konkretn\u0105 potrzeb\u0119 u\u017cytkownika.<\/p><h4 class=\"wp-block-heading\"><strong>Przegl\u0105d dost\u0119pnych rozwi\u0105za\u0144<\/strong><\/h4><p class=\"wp-block-paragraph\">Istnieje kilka sposob\u00f3w, by dowiedzie\u0107 si\u0119 kiedy odbierane s\u0105 \u015bmieci:<\/p><figure class=\"wp-block-table\"><table><tbody><tr><td><strong>\u0179r\u00f3d\u0142o<\/strong><\/td><td><strong>Minusy<\/strong><\/td><\/tr><tr><td>Drukowana broszura z harmonogramem<\/td><td>Trzeba pojecha\u0107 do urz\u0119du by j\u0105 odebra\u0107, zaraz si\u0119 gubi a na lod\u00f3wce nie ma na ni\u0105 ju\u017c miejsca, bo to zajmuj\u0105 magnesy<\/td><\/tr><tr><td>Strona gminy<\/td><td>Jest prze\u0142adowana tre\u015bciami, co sprawia, \u017ce czeka nas sporo klikania, by uzyska\u0107 jedn\u0105, prost\u0105 informacj\u0119<\/td><\/tr><tr><td>Aplikacja mieszka\u0144ca<\/td><td>By si\u0119 zarejestrowa\u0107, wymagana jest Karta Mieszka\u0144ca. Poza tym jest ca\u0142a (strona, nie karta) na czerwono, co mnie stresuje<\/td><\/tr><tr><td>Aplikacja PUK<\/td><td>By dowiedzie\u0107 si\u0119 kiedy odbieraj\u0105 moje \u015bmieci, musz\u0119 poda\u0107 wszystkie dane osobowe i czeka\u0107 48h na dost\u0119p<\/td><\/tr><tr><td>Zapytanie do Preplexity<\/td><td>Na pi\u0119\u0107 zapyta\u0144 trzy by\u0142y b\u0142\u0119dne. Tej ca\u0142ej sztucznej inteligencji chyba nie mo\u017cna ufa\u0107 \ud83d\ude09<\/td><\/tr><\/tbody><\/table><\/figure><p class=\"wp-block-paragraph\">Nawet wyci\u0105gni\u0119cie informacji z poni\u017cszej tabelki zajmuje nam troch\u0119 czasu. I cz\u0119sto wi\u0105\u017ce si\u0119 z komentarzami w stylu: \u201eO matko, to papier by\u0142 wczoraj?\u201d i tym, \u017ce zostajemy ze stert\u0105 ikeowskich karton\u00f3w na kolejny miesi\u0105c.<\/p><p class=\"has-text-align-center wp-block-paragraph\"> <img loading=\"lazy\" decoding=\"async\" width=\"700\" height=\"308\" class=\"wp-image-8034\" style=\"width: 700px;\" src=\"https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/har_2025.png\" alt=\"\" srcset=\"https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/har_2025.png 1276w, https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/har_2025-300x132.png 300w, https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/har_2025-1024x451.png 1024w, https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/har_2025-768x338.png 768w, https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/har_2025-600x264.png 600w\" sizes=\"auto, (max-width: 700px) 100vw, 700px\" \/><\/p><h4 class=\"wp-block-heading\"><strong>Wystawi\u0142e\u015b kube\u0142 za bram\u0119?<\/strong><\/h4><p class=\"wp-block-paragraph\">Zacznijmy od precyzyjnego zdefiniowania potrzeby rynkowej. Jest ni\u0105 odpowied\u017a na pytanie:<\/p><p class=\"has-text-align-center wp-block-paragraph\"><em>Jakie rodzaj \u015bmieci odbierany jest jutro?<\/em><\/p><p class=\"wp-block-paragraph\">Wi\u0119kszo\u015b\u0107 mieszka\u0144c\u00f3w wystawia kub\u0142y\/worki z okre\u015blon\u0105 zawarto\u015bci\u0105 poprzedniego dnia. A \u015bmieciarka potrafi je\u017adzi\u0107 po okolicy od bardzo wczesnych godzin rannych. I nawet je\u015bli kto\u015b ma altank\u0119, do kt\u00f3rej jest dost\u0119p z ulicy, gmina prosi by mimo wszystko wystawia\u0107 odpady za bram\u0119, by u\u0142atwi\u0107 prac\u0119 ekipie. Ile\u017c to razy w kapciach i pi\u017camie zdarzy\u0142o si\u0119 wybiega\u0107 na ulic\u0119 po us\u0142yszeniu znajomego bip-bip. Z moj\u0105 apk\u0105 &#8211; nigdy wi\u0119cej!<\/p><p class=\"wp-block-paragraph\">I tak narodzi\u0142a si\u0119<strong> \u015amieciapka!<\/strong> W zwi\u0105zku z tym, \u017ce mamju\u017c konto w cyberfolks.pl, to w 10 minut i za 10 z\u0142 sta\u0142em si\u0119 posiadaczem stosownej domeny. Kolejnych 10 minut zaj\u0119\u0142o mi skonfigurowanie serwera, podpi\u0119cie certyfikatu SSL i ustawi\u0142enie dost\u0119pu przez FTPa, na kt\u00f3ry b\u0119d\u0119 wrzuca\u0142 kod aplikacji. Voila!<\/p><p class=\"has-text-align-center wp-block-paragraph\"> <img loading=\"lazy\" decoding=\"async\" width=\"500\" height=\"477\" class=\"wp-image-8036\" style=\"width: 500px;\" src=\"https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/zaslepka.png\" alt=\"\" srcset=\"https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/zaslepka.png 567w, https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/zaslepka-300x286.png 300w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/p><p class=\"wp-block-paragraph\">Prosty prompt w ChatGPT zwr\u00f3ci\u0142 mi kilka propozycji ikonek, z kt\u00f3rych wybra\u0142em poni\u017csz\u0105.<\/p><p class=\"has-text-align-center wp-block-paragraph\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"300\" class=\"wp-image-8038\" style=\"width: 300px;\" src=\"https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/smieciapka.png\" alt=\"\" srcset=\"https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/smieciapka.png 430w, https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/smieciapka-300x300.png 300w, https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/smieciapka-150x150.png 150w, https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/smieciapka-100x100.png 100w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/p><p class=\"wp-block-paragraph\">Ale po co mi w og\u00f3le ikona, domena i serwer www ju\u017c na tym etapie pracy?<\/p><h4 class=\"wp-block-heading\"><strong>Technologia<\/strong><\/h4><p class=\"wp-block-paragraph\">Dost\u0119pne narz\u0119dzia low\/no-code (np. <a href=\"https:\/\/bubble.io\/\" data-type=\"link\" data-id=\"https:\/\/bubble.io\/\" target=\"_blank\" rel=\"noopener\"><mark style=\"background-color:#82D65E\" class=\"has-inline-color has-contrast-color\">Bubble<\/mark><\/a> czy <a href=\"https:\/\/zapier.com\/\" data-type=\"link\" data-id=\"https:\/\/zapier.com\/\" target=\"_blank\" rel=\"noopener\"><mark style=\"background-color:#82D65E\" class=\"has-inline-color has-contrast-color\">Zapier<\/mark><\/a>) pozwalaj\u0105 na zrobienie aplikacji natywnej nawet osobom takim jak ja (czyli nie potrafi\u0105cym programowa\u0107). Z racji, \u017ce mia\u0142em plan, by podzieli\u0107 si\u0119 swoim dzie\u0142em z s\u0105siadami &#8211; przygotowanie jednocze\u015bnie aplikacji na IOs i Androida by\u0142o by zbyt czasoch\u0142onne. Dlatego zdecydowa\u0142em, \u017ce jako MVP zbuduje stron\u0119 www z mo\u017cliwo\u015bci\u0105 zapisania jej na pulpicie dowolnego telefonu \u2013 czyli w tak zwanej technologii progresywnej (PWA). To pozwoli u\u017cytkownikowi na szybkie wywo\u0142anie aplikacji, nawet bez dost\u0119pu do Internetu.<\/p><p class=\"wp-block-paragraph\">By zweryfikowa\u0107 to za\u0142o\u017cenie (POC &#8211; proof of concept) przygotowa\u0142em dla Claudea nast\u0119puj\u0105cy prompt:<\/p><figure class=\"wp-block-table\"><table class=\"has-light-gray-background-color has-background has-fixed-layout\" style=\"border-style:none;border-width:0px\"><tbody><tr><td><code>Wygeneruj stron\u0119 www z wykorzystaniem technologii PWA (progresive web app) zawieraj\u0105c\u0105 nast\u0119puj\u0105ce tre\u015bci:<br><br>1. Tekst: \u201c\u015amieciapka.pl\u201d<br>2. Logo z pliku smieciapka.png, do umieszczenia w g\u0142\u00f3wnym katalogu<br><br>Elementy umieszczone w podanej kolejno\u015bci, centralnie na ekranie.<br><br>Po wywo\u0142aniu strony przez domen\u0119 smieciapka.pl w przegl\u0105darce na smartfonie lub laptopie u\u017cytkownik ma mie\u0107 mo\u017cliwo\u015b\u0107 zapisa\u0107 stron\u0119 na pulpicie urz\u0105dzenia - by wywo\u0142a\u0107 j\u0105 poza przegl\u0105dark\u0105.<br><br>Przygotuj wszystkie pliki potrzebne do wykonania powy\u017cszej operacji oraz kolejne kroki do wykonania.<\/code><\/td><\/tr><\/tbody><\/table><\/figure><p class=\"wp-block-paragraph\">Claude wygenerowa\u0142 wszystkie potrzebne pliki (html, css, json, js), poinstruowa\u0142 mnie jak odpowiednio przygotowa\u0107 ikony oraz wyt\u0142umaczy\u0142, czego potrzeba do konfiguracji serwera www, by zadzia\u0142a\u0142o PWA (tzw. worker Apache). Pierwsza pr\u00f3ba wykaza\u0142a w konsoli przegl\u0105darki kilka b\u0142\u0119d\u00f3w (np. brak plik\u00f3w do PWA), ale Calude sprawnie je poprawi\u0142. Po odpaleniu strony na moim Iphonie w przegl\u0105darce Safari bez problemu mog\u0142em j\u0105 doda\u0107 do pulpitu jako apk\u0119. Przyszed\u0142 czas na MVP!<\/p><p class=\"has-text-align-center wp-block-paragraph\"> <img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"388\" class=\"wp-image-8042\" style=\"width: 300px;\" src=\"https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/pulpit-1.png\" alt=\"\" srcset=\"https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/pulpit-1.png 381w, https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/pulpit-1-232x300.png 232w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/p><h4 class=\"wp-block-heading\"><strong>Zakres prac i technologia<\/strong><\/h4><p class=\"wp-block-paragraph\">Minimalistyczne podej\u015bcie do projektu wymusi\u0142o mocno zaw\u0119\u017cony zakres funkcjonalno\u015bci:<\/p><ul class=\"wp-block-list\"><li>jedna strona,<\/li>\n\n<li>dane tylko dla mojej miejscowo\u015bci,<\/li>\n\n<li>pokazuje dzisiejsz\u0105 dat\u0119,<\/li>\n\n<li>je\u015bli w nast\u0119pnym dniu jest odbi\u00f3r &#8211; pokazuje ikonk\u0119 z rodzajem \u015bmieci,<\/li>\n\n<li>je\u015bli w nast\u0119pnym dniu nie ma odbioru &#8211; pokazuje \u015bmieszny obrazek.<\/li><\/ul><p class=\"wp-block-paragraph\">Do g\u0142owy przychodzi\u0142a mi masa pomys\u0142\u00f3w na kolejne funkcjonalno\u015bci: harmonogramy innych miejscowo\u015bci, instrukcje jak segregowa\u0107 \u015bmieci, wyprzedzaj\u0105c\u0105 informacj\u0119 o odbiorze gabaryt\u00f3w\u2026 Wszystko oczywi\u015bcie z my\u015bl\u0105 o potencjalnym udost\u0119pnieniu apki mieszka\u0144com mojej wsi. I na tym polega w\u0142a\u015bnie pi\u0119kno i przekle\u0144stwo pracy nad oprogramowaniem; nadmiar pomys\u0142\u00f3w i entuzjazmu sprawiaj\u0105, \u017ce&nbsp;z oczu czasem traci si\u0119 g\u0142\u00f3wny cel, projekty zaczynaj\u0105 si\u0119 rozje\u017cd\u017ca\u0107, kasa ko\u0144czy\u0107, etc. Przy wsparciu AI mo\u017cna bardzo szybko wprowadzi\u0107 produkt na rynek, a potem \u2013 je\u017celi mamy biznesowe podstawy i feedback od u\u017cytkownik\u00f3w \u2013 dalej go rozwija\u0107.<\/p><p class=\"wp-block-paragraph\"><strong>Aplikacj\u0119 chcia\u0142em zbudowa\u0107 jednym promptem.<\/strong> \u017beby zadzia\u0142a\u0142, musia\u0142em wcze\u015bniej przygotowa\u0107 wszystkie potrzebne dane i sk\u0142adowe aplikacji. Cze\u015b\u0107 z nich mia\u0142em ju\u017c z wersji POC, jednak postanowi\u0142em, \u017ce docelow\u0105 aplikacj\u0119 zbuduje od nowa.&nbsp;<\/p><h4 class=\"wp-block-heading\"><strong>Dane<\/strong><\/h4><p class=\"wp-block-paragraph\">Jedyny plik z danymi dost\u0119pny na stronie gminy jest w formie PDFa, kt\u00f3ry s\u0142abo nadaje si\u0119 do konwersji. No ale od czego mamy AI? Wyci\u0105gn\u0105\u0142em z PDFa interesuj\u0105c\u0105 mnie tabelk\u0119 (screenshot powy\u017cej) i wraz z poni\u017cszym promptem wrzuci\u0142em wszystko do Calude\u2019a:<\/p><figure class=\"wp-block-table\"><table class=\"has-light-gray-background-color has-background has-fixed-layout\" style=\"border-style:none;border-width:0px\"><tbody><tr><td><code>W za\u0142\u0105czeniu plik harmonogram.png z tabel\u0105 o nast\u0119puj\u0105cej charakterystyce:<br><br>1. tabela zawiera harmonogram wywozu \u015bmieci komunalnych dla okre\u015blonej miejscowo\u015bci i obejmuje kalendarz na rok 2025<br><\/code><br>2. <code>pierwszy rz\u0105d tabeli zawiera kategori\u0119 odpad\u00f3w w kolejno\u015bci od lewej: Zmieszane, Metale i tworzywa sztuczne, Papier, Szk\u0142o, Bio Ogrodowe i Kuchenne, Gabaryty, Choinki<br><br>3. pierwsza kolumna tabeli zawiera nazwy miesi\u0119cy od g\u00f3ry: od stycznia do grudnia<br><\/code><br><code>4. pozosta\u0142e kom\u00f3rki tabeli zawieraj\u0105 numery konkretnych dni w miesi\u0105cu<br><\/code><br><code>5. wyj\u0105tkiem s\u0105 kom\u00f3rki dotycz\u0105ce \u015bmieci zmieszanych odbieranych w miesi\u0105cach czerwiec, lipiec, sierpie\u0144 - gdy odbierane s\u0105 w ka\u017cdy czwartek w danym miesi\u0105cu<br><br>Przyk\u0142ad: w miesi\u0105cu marcu odpady Zmieszane odbierane si\u0105 13 i 27 dnia.<br><br>Na podstawie powy\u017cszych informacji przetransferuj dane z tabeli do pliku w formacie JSON. Plik ten b\u0119dzie wykorzystany jako \u017ar\u00f3d\u0142o danych do aplikacji webowej informuj\u0105ccej jakie \u015bmieci odbierane s\u0105 w konkretny dzie\u0144. Dodatkowo warto\u015b\u0107 \"ka\u017cdy czwartek\" zamie\u0144 na odpowiedni dzie\u0144 wynikaj\u0105cy z kalendarza na rok 2025.<\/code><\/td><\/tr><\/tbody><\/table><\/figure><p class=\"wp-block-paragraph\">Wygenerowany przez Claud\u2019a JSON zawiera\u0142 wszystkie informacje, bez \u017cadnych b\u0142\u0119d\u00f3w. Dodatkowo model zaproponowa\u0142 nazwy ikon, kt\u00f3re powinny zosta\u0107 przypisane do ka\u017cdej kategorii.<\/p><figure class=\"wp-block-table\"><table class=\"has-light-gray-background-color has-background has-fixed-layout\" style=\"border-style:none;border-width:0px\"><tbody><tr><td><code>{<br>&nbsp;&nbsp;\"categories\": {<br>&nbsp;&nbsp;&nbsp;&nbsp;\"mixed\": {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\"name\": \"Odpady Zmieszane\",<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\"icon\": \"trash-bin.png\"<br>&nbsp;&nbsp;&nbsp;&nbsp;},<\/code><\/td><\/tr><\/tbody><\/table><\/figure><p class=\"wp-block-paragraph\">Zainspirowany i by odda\u0107 ho\u0142d oryginalnemu \u017ar\u00f3d\u0142u wiedzy, skopiowa\u0142em ikonki z broszury, tak by wy\u015bwietla\u0142y si\u0119 w aplikacji.<\/p><h4 class=\"wp-block-heading\"><strong>One prompt to rule them all<\/strong><\/h4><p class=\"wp-block-paragraph\">Uzbrojony we wszystkie sk\u0142adowe zacz\u0105\u0142em pracowa\u0107 nad finalnym promptem. Zale\u017ca\u0142o mi, by Claude ju\u017c za pierwszym razem wygenerowa\u0142 dok\u0142adnie to, o co mi chodzi\u0142o.<\/p><figure class=\"wp-block-table\"><table class=\"has-light-gray-background-color has-background has-fixed-layout\" style=\"border-style:none;border-width:0px\"><tbody><tr><td><code>Wygeneruj pliki strony www spe\u0142niaj\u0105ce poni\u017csze kryteria:<br><br>1. Cel strony: dostarczy\u0107 u\u017cytkownikowi informacj\u0119, jaki rodzaj odpad\u00f3w b\u0119dzie odbierany z jego posesji w kolejnym dniu kalendarzowym.<br><br>2. Strona www w technologii PWA (progresive web app), z mo\u017cliwo\u015bci\u0105 zapisania jej na pulpicie telefonu (Ios lub Android). Zoptymalizowana do przegl\u0105dania na smartfonach (responsywna).<br><br>3. Elementy strony u\u0142o\u017cone centralnie, w kolejno\u015bci:<br><br>- Tekst: \u201cDzisiaj jest dzie\u0144:\u201d<br>- Element: aktualna data w formacie DD\/MM\/RR<br>- Tekst: \u201cJutro odbieraj\u0105:\u201d<br>- Element: ikona pokazuj\u0105ca rodzaj odpad\u00f3w<br><br>4. Je\u015bli w danym dniu odbierany jest wi\u0119cej ni\u017c jeden rodzaj odpad\u00f3w - ikony pokazuj\u0105ce ich rodzaj maj\u0105 by\u0107 umieszczone jedna pod drug\u0105.<br><br>Dodatkowe uwarunkowania techniczne:<br><br>1. Wszystkie pliki b\u0119d\u0105 umieszczone w katalogu g\u0142\u00f3wnym na serwerze.<br><br>2. Harmonogram odbior\u00f3w ma by\u0107 pobierany z pliku harmonogram.json. Za\u0142\u0105czam go pogl\u0105dowo do tej instrukcji.<br><br>3. Ikony do poszczeg\u00f3lnych rodzaj\u00f3w wg schematu i o nazwach:<br><br>- dla zmieszane - \u201czmieszane.png\u201d<br>- dla metale i tworzywa sztuczne - \u201csztuczne.png\u201d<br>- dla papier - \u201cpapier.png\u201d<br>- dla szk\u0142o - \u201cszklo.png\u201d<br>- dla bio, ogrodowe i kuchenne - \u201cbio.png\u201d<br>- dla gabaryty - \u201cgabaryty.png\u201d<br>- dla choinki - \u201cchoinki.png\u201d<br>- dla braku odbioru odpad\u00f3w - \u201cbrak.png\u201d<br><br>4. Ikony do aplikacji w plikach o nazwach:<br><br>- \u201cfavicon.png\u201d<br>- \u201cicon-192x192.png\u201d<br>- \u201cicon-512x512.png\u201d<br><br>5. Przyk\u0142ady ekran\u00f3w potrzebne do PWA w plikach o nazwach:<br><br>- \u201cscreenshot-desktop.png\u201d<br>- \u201cscreenshot-mobile.png\u201d<br><br>6. Posiadam ju\u017c serwer WWW z zainstalowanym certyfikatem SSL. W katalogu g\u0142\u00f3wnym zosta\u0142 ju\u017c umieszczony worker Appache potrzebny do PWA.<br><br>Je\u015bli powy\u017csza instrukcja jest wystarczaj\u0105ca przygotuj komplet plik\u00f3w do wrzucenia na serwer.<br><br><code>Je\u015bli<\/code> powy\u017csza instrukcja zawiera brakuj\u0105ce informacje - zadaj dodatkowe pytania bez przygotowywania kodu.<\/code><\/td><\/tr><\/tbody><\/table><\/figure><p class=\"wp-block-paragraph\">Jak widzicie w prompcie wykorzysta\u0142em wiedz\u0119, kt\u00f3r\u0105 uzyska\u0142em na etapie POC. Zrobi\u0142em to, by zminimalizowa\u0107 prawdopodobie\u0144stwo, \u017ce Calude przygotuje dodatkowe instrukcje. Przy okazji zaktualizowa\u0142em plik <em>harmonogram.json<\/em> tak, by uwzgl\u0119dnia\u0142 stosowne nazwy ikon.<\/p><p class=\"wp-block-paragraph\"><strong>Claude potwierdzi\u0142, \u017ce wszystko jest jasne i wygenerowa\u0142 potrzebne pliki. Wrzuci\u0142em je na serwer. Czeka\u0142a mnie jeszcze chwila niepewno\u015bci\u2026 i dzia\u0142a! Dok\u0142adnie tak, jak sobie wymy\u015bli\u0142em.<\/strong><\/p><p class=\"wp-block-paragraph\">Pozosta\u0142 ostatni element, czyli testy. Poniewa\u017c apka od\u015bwie\u017ca si\u0119 co 24 godziny,&nbsp;musia\u0142bym czeka\u0107 do kolejnego dnia, by sprawdzi\u0107 poprawno\u015b\u0107 wy\u015bwietlania. Dzi\u0119ki temu, \u017ce zapisa\u0142em harmonogram w pliku .json wystarczy\u0142o zasymulowa\u0107 odbi\u00f3r w dniu kolejnym i podmieni\u0107 plik na serwerze. Wszystko zadzia\u0142a\u0142o perfekcyjnie.<\/p><p class=\"has-text-align-center wp-block-paragraph\"> <img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"463\" class=\"wp-image-8044\" style=\"width: 300px;\" src=\"https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/mock.png\" alt=\"\" srcset=\"https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/mock.png 409w, https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/mock-194x300.png 194w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/p><p class=\"wp-block-paragraph\">Mo\u017cemy zatem wr\u00f3ci\u0107 pytania postawionego w tytule artyku\u0142u:<\/p><h4 class=\"wp-block-heading\"><strong>Czy mimo wszystko jest to tak proste jak si\u0119 wydaje?&nbsp;<\/strong><\/h4><p class=\"wp-block-paragraph\">Je\u015bli mamy bardzo konkretne oczekiwania wzgl\u0119dem modelu AI, to nadal warto przyst\u0105pi\u0107 do pracy z konkretnym planem. G\u0142\u00f3wnie po to, by kontrolowa\u0107 jego ka\u017cdy etap. Nie znaczy to te\u017c, \u017ce po drodze nasze za\u0142o\u017cenia nie b\u0119d\u0105 ewoluowa\u0107. Wa\u017cne jednak by zmiany dzia\u0142y si\u0119 na naszych warunkach i nie bra\u0107 ka\u017cdej propozycji AI w ciemno. <\/p><p class=\"wp-block-paragraph\">A je\u015bli nasze oczekiwania s\u0105 mniej ambitne? <strong>Ca\u0142e powy\u017csze zadanie mo\u017cna wykona\u0107 dos\u0142ownie w kilkana\u015bcie sekund. <\/strong>Wystarczy wrzuci\u0107 do Claude\u2019a tabelk\u0119 z harmonogramem i promptem:<\/p><figure class=\"wp-block-table\"><table class=\"has-light-gray-background-color has-background has-fixed-layout\" style=\"border-style:none;border-width:0px\"><tbody><tr><td><code>W za\u0142\u0105czeniu tabelka z harmonogramem wywozu \u015bmieci. Przeanalizuj go a nast\u0119pnie zaproponuj roziw\u0105zanie, kt\u00f3re pozwoli mi odpowiedzie\u0107 na pytanie: Jakie rodzaj \u015bmieci odbierany jest jutro?<\/code><\/td><\/tr><\/tbody><\/table><\/figure><p class=\"wp-block-paragraph\">Rezultat: <a href=\"https:\/\/claude.site\/artifacts\/eb73c17c-ea7d-4fb5-ac75-d3080fd72cbe\" data-type=\"link\" data-id=\"https:\/\/claude.site\/artifacts\/eb73c17c-ea7d-4fb5-ac75-d3080fd72cbe\" target=\"_blank\" rel=\"noopener\"><mark style=\"background-color:#82D65E\" class=\"has-inline-color has-contrast-color\">gotowa strona z precyzyjn\u0105 informacj\u0105<\/mark><\/a>.<\/p><p class=\"wp-block-paragraph\">Wersja last minute?<\/p><figure class=\"wp-block-table\"><table class=\"has-light-gray-background-color has-background has-fixed-layout\" style=\"border-style:none;border-width:0px\"><tbody><tr><td><code>Dosta\u0142em tak\u0105 tabelk\u0119, ale nie wiem co na niej jest. Zr\u00f3b mi z tego co\u015b co b\u0119d\u0119 m\u00f3g\u0142 wykorzysta\u0107.<\/code><\/td><\/tr><\/tbody><\/table><\/figure><p class=\"wp-block-paragraph\">Rezultat: <a href=\"https:\/\/claude.site\/artifacts\/1e688fbb-1e46-49c1-a309-96dc05aeb8d9\" data-type=\"link\" data-id=\"https:\/\/claude.site\/artifacts\/1e688fbb-1e46-49c1-a309-96dc05aeb8d9\" target=\"_blank\" rel=\"noopener\"><mark style=\"background-color:#82D65E\" class=\"has-inline-color has-contrast-color\">b\u0142\u0119dy s\u0105, ale dzia\u0142a<\/mark><\/a>.<\/p><p class=\"wp-block-paragraph\">Wersja po najmniejszej lini oporu?<\/p><figure class=\"wp-block-table\"><table class=\"has-light-gray-background-color has-background has-fixed-layout\" style=\"border-style:none;border-width:0px\"><tbody><tr><td><code>Zr\u00f3b z tego co\u015b fajnego.<\/code><\/td><\/tr><\/tbody><\/table><\/figure><p class=\"wp-block-paragraph\">Wynik? <a href=\"https:\/\/claude.site\/artifacts\/002ecbc7-8391-4173-b331-2dd6e987e382\" data-type=\"link\" data-id=\"https:\/\/claude.site\/artifacts\/002ecbc7-8391-4173-b331-2dd6e987e382\" target=\"_blank\" rel=\"noopener\"><mark style=\"background-color:#82D65E\" class=\"has-inline-color has-contrast-color\">Najlepszy ze wszystkich trzech!<\/mark><\/a><\/p><p class=\"wp-block-paragraph\">Claude za ka\u017cdym razem generuje unikalny URL z aplikacj\u0105. Oczywi\u015bcie dla finalnego produktu to ma\u0142o bezpieczne rozwi\u0105zanie, ale do weryfikacji hipotez z u\u017cytkownikami nie znajdziemy chyba nic lepszego.<\/p><h4 class=\"wp-block-heading\"><strong>Filozoficzny twist na koniec<\/strong><\/h4><p class=\"wp-block-paragraph\">Przyznam, \u017ce pisanie tego artyku\u0142u by\u0142o dla mnie bardzo ciekawym do\u015bwiadczeniem. Od entuzjazmu w stylu \u201eAle mam fajny pomys\u0142 na tutorial!\u201d po niepok\u00f3j w g\u0142owie i pytania o to \u201eJak \u017cy\u0107 panie premierze?\u201d Marta Matylda Kania w ksi\u0105\u017cce <a href=\"https:\/\/www.facebook.com\/photo.php?fbid=445194078595609&amp;id=100093150623594&amp;set=a.133987926382894\" data-type=\"link\" data-id=\"https:\/\/www.facebook.com\/photo.php?fbid=445194078595609&amp;id=100093150623594&amp;set=a.133987926382894\" target=\"_blank\" rel=\"noopener\"><mark style=\"background-color:#82D65E\" class=\"has-inline-color has-contrast-color\">Kody Kreatywno\u015bci<\/mark><\/a> opisa\u0142a rozpacz utraconego pierwsze\u0144stwa; poczucie, \u017ce AI przez wyr\u0119czanie nas we wszystkim co kreatywne, b\u0119dzie tworzy\u0107 w cz\u0142owieku pewn\u0105 pustk\u0119 i smutek. Owszem, pisanie tego artyku\u0142u (i sprawdzanie r\u00f3\u017cnych za\u0142o\u017ce\u0144) da\u0142o mi du\u017co frajdy. Ale te\u017c odnios\u0142em wra\u017cenie, \u017ce by\u0107 mo\u017ce zbli\u017ca si\u0119 moment, gdzie wielu tw\u00f3rc\u00f3w (tekstu, piosenki, ksi\u0105\u017cki, filmu) b\u0119dzie bi\u0142o si\u0119 z my\u015bl\u0105 \u2013 czy to nie jest ju\u017c ten ostatni? I czy ju\u017c nied\u0142ugo b\u0119dziemy musieli si\u0119 nauczy\u0107 motywowa\u0107 do wysi\u0142ku umys\u0142owego, tylko i wy\u0142\u0105cznie dla w\u0142asnej satysfakcji i spokoju sumienia? Tak, by nie sta\u0107 si\u0119 blobem z filmu Pixara \u201cWall-E\u201d \ud83d\ude42<\/p><p class=\"has-text-align-center wp-block-paragraph\"> <img loading=\"lazy\" decoding=\"async\" width=\"500\" height=\"211\" class=\"wp-image-8046\" style=\"width: 500px;\" src=\"https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/walle-hoverchair05.webp\" alt=\"\" srcset=\"https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/walle-hoverchair05.webp 1680w, https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/walle-hoverchair05-300x127.webp 300w, https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/walle-hoverchair05-1024x432.webp 1024w, https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/walle-hoverchair05-768x324.webp 768w, https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/walle-hoverchair05-1536x648.webp 1536w, https:\/\/haimagazine.com\/wp-content\/uploads\/2024\/12\/walle-hoverchair05-600x253.webp 600w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><br><em>\u0179r\u00f3d\u0142o: pixar.com<\/em><\/p><p class=\"wp-block-paragraph\"><em>Przy pracy nad artyku\u0142em korzysta\u0142em z p\u0142atnej wersji Claud\u2019a. Da si\u0119 ca\u0142o\u015b\u0107 ogarn\u0105\u0107 wersj\u0105 bezp\u0142atn\u0105, ale trzeba robi\u0107 przerwy na za\u0142adowanie si\u0119 darmowych token\u00f3w.<\/em><\/p><p class=\"wp-block-paragraph\">PS: Wersja dost\u0119pna obecnie na stronie jest t\u0105, kt\u00f3r\u0105 udost\u0119pni\u0142em mieszka\u0144com. O kolejnych iteracjach i o reakcjach napisz\u0119 w kolejnych artyku\u0142ach.<\/p>","protected":false},"excerpt":{"rendered":"<p>Niekt\u00f3rzy twierdz\u0105, \u017ce narz\u0119dzia AI, kt\u00f3re wspieraj\u0105 tworzenie oprogramowania osi\u0105gne\u0142y ju\u017c w pe\u0142ni profesjonalny poziom. To z kolei otwiera wr\u0119cz nieograniczone mo\u017cliwo\u015bci przed ka\u017cdym, kto chcia\u0142by samemu stworzy\u0107 w\u0142asny program. Czy to tak proste jak si\u0119 wydaje? <\/p>\n","protected":false},"author":10,"featured_media":8226,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"rank_math_lock_modified_date":false,"footnotes":""},"categories":[389,763,406],"tags":[535,534],"popular":[],"difficulty-level":[38],"ppma_author":[352],"class_list":["post-8031","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-narzedzia","category-ai_praktyka","category-tutoriale-pl","tag-aplikacja","tag-claude","difficulty-level-medium"],"acf":[],"authors":[{"term_id":352,"user_id":10,"is_guest":0,"slug":"seweryn-jakubiec","display_name":"Seweryn Jakubiec","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/9f6a221b4ee0d45f9cb264964464c87cc2036e4466dc908a6ec21be51baff707?s=96&d=mm&r=g","first_name":"Seweryn","last_name":"Jakubiec","user_url":"","job_title":"","description":"Senior Product Manager w bran\u017cy IT, obserwator \u015bwiata tech i AI, muzyk-amator, wielbiciel kot\u00f3w rasy Devon Rex"}],"_links":{"self":[{"href":"https:\/\/haimagazine.com\/pl\/wp-json\/wp\/v2\/posts\/8031","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/haimagazine.com\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/haimagazine.com\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/haimagazine.com\/pl\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/haimagazine.com\/pl\/wp-json\/wp\/v2\/comments?post=8031"}],"version-history":[{"count":11,"href":"https:\/\/haimagazine.com\/pl\/wp-json\/wp\/v2\/posts\/8031\/revisions"}],"predecessor-version":[{"id":8170,"href":"https:\/\/haimagazine.com\/pl\/wp-json\/wp\/v2\/posts\/8031\/revisions\/8170"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/haimagazine.com\/pl\/wp-json\/wp\/v2\/media\/8226"}],"wp:attachment":[{"href":"https:\/\/haimagazine.com\/pl\/wp-json\/wp\/v2\/media?parent=8031"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/haimagazine.com\/pl\/wp-json\/wp\/v2\/categories?post=8031"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/haimagazine.com\/pl\/wp-json\/wp\/v2\/tags?post=8031"},{"taxonomy":"popular","embeddable":true,"href":"https:\/\/haimagazine.com\/pl\/wp-json\/wp\/v2\/popular?post=8031"},{"taxonomy":"difficulty-level","embeddable":true,"href":"https:\/\/haimagazine.com\/pl\/wp-json\/wp\/v2\/difficulty-level?post=8031"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/haimagazine.com\/pl\/wp-json\/wp\/v2\/ppma_author?post=8031"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}