Kościste zalety LLM

https://xpil.eu/WyRUb

Z punktu widzenia gościa, który żyje z pisania kodu, LLM wydają się być zagrożeniem dla kariery: teraz to byle kto może sobie zażyczyć dowolnego kodu w dowolnym języku i dostanie go w trymiga, bez nauki, bez wysiłku, bez myślenia w zasadzie.

Jest w tym trochę prawdy (rzeczywistość jest na szczęście - póki co - nieco bardziej złożona), ale ja dziś nie o tym.

LLM mają jedną ogromną zaletę: pozwalają na szybkie, masowe prototypowanie "głupich" pomysłów tanim kosztem, dzięki czemu można hurtowo wpadać na różne pomysły i od razu je testować minimalnym nakładem czasu i wysiłku. A nuż niektóre z tych pomysłów "zaskoczą"?

No więc wpadłem niedawno na pomysł, żeby zamiast statycznego nagłówka widżetu, który pokazuje listę losowych wpisów (na samym dole strony), wstawić tam wylosowanych pięć kostek do gry. Sprawa o tyle prosta, że UTF już od dawna zawiera potrzebne znaki (⚀, ⚁, ⚂, ⚃, ⚄, ⚅) - wystarczy zatem wylosować pięć kostek i wstawić je w tytuł widżetu. Co prawda trzeba w tym celu znać podstawy JS, który jest dla mnie póki co totalną chińszczyzną (jakoś nigdy nie miałem potrzeby opanowania JS, choć znam całkiem przyzwoicie całą rodzinę języków C, ogarniam też jako tako OOP) - i tu w sukurs przychodzi LLM. Sesja pi x oko dziesięciominutowa poskutkowała wyprodukowaniem krótkiego skryptu JS (plus odrobina CSS), którego efekt widać na dole po prawej:

Od dzisiaj więc zamiast nudnego napisu "Maszyna losująca", lista losowych wpisów okraszona jest pięcioma kośćmi do gry losowanymi przy każdym odświeżeniu strony.

Ha.

Dla zainteresowanych, tu jest kod JS:

<script>
document.addEventListener("DOMContentLoaded", function() {
    var diceFaces = ["\u2680", "\u2681", "\u2682", "\u2683", "\u2684", "\u2685"];
    var randomDiceFaces = "";
    for (var i = 0; i < 5; i++) {
        randomDiceFaces += diceFaces[Math.floor(Math.random() * diceFaces.length)];
    }

    var widgetTitles = document.querySelectorAll('h2');
    widgetTitles.forEach(function(title) {
        if (title.textContent.includes("aszyna")) {
            title.textContent = randomDiceFaces;
			title.className += " dice-title";
        }
    });
});
</script>

... a tutaj pasujący doń CSS:

.dice-title {
    font-size: 200%;
}

Ten ostatni jest opcjonalny - w moim przypadku bez dwukrotnego podciągnięcia zoom-a efekt był słabo widoczny, co jest efektem albo zbyt małych fontów, albo po prostu oczęta mi się już psują i potrzebuję okularów 🙂

https://xpil.eu/WyRUb

1 Comment

  1. Fajne. Obiło mi się nieco o tym, że w CSS można wszystko, więc spędziłem dobry kwadrans na zrobieniu wersji bez JS. Bez sukcesu, choć niby SCSS ma jakiś random i są przykłady.AI nie pomogło, tzn. coś zwracało, ale nic się nie wyświetlało. No ale frontend to nie moje klimaty…

Leave a Comment

Komentarze mile widziane.

Jeżeli chcesz do komentarza wstawić kod, użyj składni:
[code]
tutaj wstaw swój kod
[/code]

Jeżeli zrobisz literówkę lub zmienisz zdanie, możesz edytować komentarz po jego zatwierdzeniu.