<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>Barbara Makovec – blog</title>
    <link>https://makovec.si/blog</link>
    <description>dve muhi na en Mak</description>
    <language>sl</language>
    <lastBuildDate>Fri, 24 Apr 2026 14:23:09 +0000</lastBuildDate>
  <item>
    <title>Otvoritev Leftclick hakerspacea na PLACu</title>
    <link>https://makovec.si/blog</link>
    <description><![CDATA[<!-- vsebina -->
<div class="vsebina">

	<div class="post">
	<h3>Otvoritev Leftclick hakerspacea na PLACu</h3>
	<p>Po IŠRM pikniku smo šli s prijatelji na PLAC, Participativno ljubljansko avtonomno cono. Kulski third space, ki je v prostorih bivše menze. Šli smo na otvoritev novega hackerspejsa "Leftclick", kjer je bilo dosti znanih obrazov iz FMF! Dejanski plac je precej velik, in ima sketchy stopnišča in scary sobice. Organizacija in idejna zasnova mi je nadvse všeč, in se mi zdi, da ponuja manj omejevalen prostor za ustvarjanje kot npr mladinski centri Mladi zmaji, pa tudi folk tam je bolj alternativen. Sam hackerspace je zgolj neka soba v kleti, kjer imajo arhaične telefone iz poljske (ki so delujoči, in lahko z njimi pokličeš v zgornje nadstropje)! Na placu je tudi knjižnica (z obvezno anticapitalist literaturo), pa delavnica in popravljalnica koles, itd. Zelo dober vajb!</p>
	<p class="datum">]]></description>
    <pubDate>Thu, 23 Apr 2026 00:00:00 +0000</pubDate>
    <guid isPermaLink="false">makovec-2026-04-23-83a9c7d5</guid>
  </item>
  <item>
    <title>IŠRM piknik</title>
    <link>https://makovec.si/blog</link>
    <description><![CDATA[</p>
	</div>

	<div class="post">
	<h3>IŠRM piknik</h3>
	<p>S sošolci smo popoldan organizirali piknik ob Savi! Jurij je prinesel svoj žar in pekel okusne čevapčiče, igrali smo odbojko na mivki in se pogovarjali kam gre kdo naprej na faks. Kar malo mi je žal, da je teh 3 let že konec, ker so moji kolegi res kul! Fino se je bilo malo podružiti, sploh ker imamo v 3. letniku toliko različnih izbirnih predmetov, da se komaj kaj vidimo. Skratka, super organizacija in super hrana!</p>
	<p class="datum">]]></description>
    <pubDate>Thu, 23 Apr 2026 00:00:00 +0000</pubDate>
    <guid isPermaLink="false">makovec-2026-04-23-574a52f5</guid>
  </item>
  <item>
    <title>Planinska orientacija - Borovnica</title>
    <link>https://makovec.si/blog</link>
    <description><![CDATA[</p>
	</div>	

	<div class="post">
	<h3>Planinska orientacija - Borovnica</h3>
	<p>S prijatelji smo orientacijsko sezono otvorili s cca 15km motoviljenja po okoliških hribih. Na orientaciji namreč dobiš v roke zemljevid z označenimi kontrolnimi točkami (ki izgledajo kot oranžne prizme na sliki), ki jih moraš potem najti v nekem dovoljenem času (pri nas max 280min) - če čas prekoračiš, si diskvalificiran. Kljub temu, da nismo našli vseh točk, smo s 260 minutami skoraj prekoračili dovoljeni čas!</p>
	<p>Sprva smo želeli imenovati našo skupino "geji", ampak se je organizatorjem zdelo popolnoma nesprejemljivo in žaljivo (smiselno, saj je bilo zgolj pol naše ekipe resničnih gejev), tako da smo potem pristali na imenu $\Sigma$ (Sigma). Bleh, matematiki</p>
	<p>Nekatere kontrolne točke so "žive", kar pomeni, da so poleg oranžne prizme tam tudi "živi" ljudje, ki ti zastavljajo uganke v zameno za točke. To je bil v našem primeru Žan (neuniformiranec desno na sliki). Po našem izvirnem imenu ($\Sigma$) je takoj spoznal da smo matematiki-adjacent! "Hmmm, a si ti potem tista Barbara, ki ima blog?" me je vprašal Žan. Bila sem čisto šokirana - ljudje, ki jih ne poznam vejo za moj blog?? In me prepoznajo v resničnem življenju?? Is this what being a niche internet microcelebrity feels like?? Vprašala sem ga, od kod ve za moj blog. "Ja, na eni spletni strani od <a href="https://sijanec.eu/">antona luke šijanca</a> sem našel link ..." Anton, ki je bil tudi z nami v ekipi, se je takoj javil, češ "Ja, haha, to sem pa jaz". Ostali člani ekipe (npr. <a href="https://srcnik.si"/>maj</a>) so tako resno začeli razmišljati, da bi tudi oni morali steppat-up svoj game.</p>
	<p>Seveda ni šlo vse gladko - večkrat smo se izgubili, našli neštetko KT ki sploh niso bile vrisane v naš zemljevid, isti del poti prehodili večkrat ker "zdaj smo pa res na tem križišču", a nam je na koncu po nekem čudežu še vseeno uspelo pravočasno priti na cilj. Od 5 ekip v naši kategoriji (ki naj bi bila ekvivalentna osnovnošolski), smo bili 4. (peta ekipa Špancev pa je bila zaradi prekoračitve časa diskvalificirana). Torej ja, bili smo zadnji, ampak smo se imeli zelo fino!</p>
	<p>Uvrstitev smo praznovali s pojedino v edini Borovniški gostilni, ki ima študentske bone! Tinkara je bila čisto iz sebe, ko so nam juho kar prinesli (in to na podkrožniku!), namesto da bi si jo morali iti iskat sami, ter da "juha in solata sploh nista v enaki skledi?!". Skratka, premium postrežba, in <a href="/files/public/orient4.jpg">izmučeni planinci</a></p>
	<div class="image-grid">
		<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/orient1.jpg" alt=""></div>
		<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/orient2.jpg" alt=""></div>
		<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/orient3.jpg" alt=""></div>
	</div>
	<p class="datum">]]></description>
    <pubDate>Sun, 19 Apr 2026 00:00:00 +0000</pubDate>
    <guid isPermaLink="false">makovec-2026-04-19-b92ab4b1</guid>
  </item>
  <item>
    <title>Razbijanje Hillove šifre s frekvenčno analizo</title>
    <link>https://makovec.si/blog</link>
    <description><![CDATA[</p>
	</div>

	<div class="post">
	<h3>Razbijanje Hillove šifre s frekvenčno analizo</h3>
	<p>Kaj sploh je Hillova šifra? Recimo, da imamo besedo "KUL" - če črke pretvorimo v številke ($A \to 0, B \to 1 \dots$ jo lahko zapišemo kot $\begin{bmatrix} 10 &amp; 20 &amp; 11 \end{bmatrix}$. Recimo, da uporabimo skrivni ključ "FSDKHLGPA", ki potem izgleda kot matrika $\begin{bmatrix} 5 &amp; 18 &amp; 3 \\ 10 &amp; 7 &amp; 11\\ 6 &amp; 15 &amp; 0 \end{bmatrix}$. Šifrirano besedilo od "KUL" dobimo kot: $\begin{bmatrix} 5 &amp; 18 &amp; 3 \\ 10 &amp; 7 &amp; 11\\ 6 &amp; 15 &amp; 0 \end{bmatrix} \begin{bmatrix}10 \\ 20 \\ 11\end{bmatrix} = \begin{bmatrix}443 \\ 361 \\ 360\end{bmatrix} = \begin{bmatrix} 1 \\ 23 \\ 24\end{bmatrix} (\mod 26) = \begin{bmatrix}B \\ W \\ X \end{bmatrix}$.</p>
	<p>Imamo tekst, za katerega vemo, da je zašifriran s Hillovo šifro s ključem velikosti 3, torej matrika velikosti 9. Če celamo v polju $\mathbb{Z}_{26}$ imamo torej $26^9$ možnosti za ugibanje ključa, kar je preveč za moj ubogi računalnik.</p>
	<p>Kandidate za ključ moramo torej najti na pametnejši način, kot z ugibanjem. Opazimo, da ko imamo enkrat 3 (veljavne) pare (nešifriran tekst, njegova šifra), solžine 3, lahko s preprostim obračanjem matrik izračunamo skrivni ključ, od tam naprej pa dešifriramo izvorno sporočilo. Toda kako lahko "uganemo" te 3 pravilne pare? Vzamemo 20 najbolj pogostih trigramov (zaporedje 3 črk) v našem tekstu in 20 najbolj pogostih trigramov, ki se pojavljajo v vseh slovenskih tekstih. Na vse možne načine jih sestavimo v možne pare, ter jih pogrupiramo v skupne po 3, tako da tvorijo kandidate za ključe ($3\times3$ matrike). Tako imamo eno plaintext $3\times3$ matriko $P$ in eno cyphertext $3\times3$ matriko C. To deluje, saj cyphertext dobimo z enačbo: $$C = K \cdot P \ ,$$ od koder lahko dobimo kandidata za ključ po enačbi $$C \cdot P^{-1} = K$$ </p>
	<p>Ko imamo tako nekaj kandidatov za ključ, dešifriramo izvorni cyphertext. Tako dobimo nekaj tisoč "možnih" rešitev, med katerimi se najbrž skriva prava, ampak jo bomo na peš zelo težko našli. Iskanja igle v senu se lotimo s pomočjo dejanske vrednosti pogostosti posameznega trigrama v povprečnem slovenskem tekstu.</p>
	<p>Ideja je, da bo tisti dešifriran tekst (izmed mnogih), ki je zares pravilno odšifriran (torej smo uporabili pravilen ključ, in ven dobili nekaj smiselnega) vseboval normalne besede, s tem pa tudi pogoste trigrame (torej pogostejše trigrame v resničnem življenju) v primerjavi z ostalimi dešifriranimi besedili.</p>
	<p>S tehniko "sliding window" velikosti 3 sem se sprehodila čez vsakega dešifriranega kandidata in za vsak košček pogledala, kako pogost je v povprečnih slovenskih besedilih, ter verjetnost prištela skupnemu seštevku za tega kandidata. Na koncu sem preverila, kateri kandidat ima najvišji seštevek, in ga označila kot pravega. </p>
	<p>Bonus odstavek, če ga uspete dešifrirati: <a href="/files/public/skrivnost.txt">skrivnost</a></p>	
	
	<p class="datum">]]></description>
    <pubDate>Fri, 03 Apr 2026 00:00:00 +0000</pubDate>
    <guid isPermaLink="false">makovec-2026-04-03-eab8d785</guid>
  </item>
  <item>
    <title>Denis&amp;Denis koncert</title>
    <link>https://makovec.si/blog</link>
    <description><![CDATA[</p>
	</div>

	<div class="post">
	<h3>Denis&amp;Denis koncert</h3>
	<p>"Poslednji program tvog kompjutera" je naslov zadnje turneje dua Denis&amp;Denis. In očitno imata nastopanja res že vrh glave, saj je Marina skoraj po vsaki pesmi začela "ja... midva sva že ful stara in ful utrujena, tako da NO WAY DA WE KEEP DOING THIS to je to sorry not sorry. Kar je zares insane je, da sta stara že 70 let, in sta (s pomočjo nekaj črtic) uspela narediti dvourni koncert!</p>
	<p>Venue, <i>Export Brdo</i>, je, podobno kot zveni, industrijska hala, v kateri so pač malo napeljali kable, obesili 2 zvočnika, in se oklicali za music venue. Akustika je bila precej slaba, Marina pa se je ves čas jezila na nesposobne tehnike. "Spet mi sije luč v oči! Kako naj tako nastopam!" ali pa "Okej, zdaj bomo zaigrali eno romantično pesem ... a lahko že switchamo iz te policijsko modre na kaj nežnejšega? No, dajmo!" (tehniki je niso u�poštevali). Da ne govorimo o vizualizacijah! Nekatere so bile kar kulske (npr linux koda, kot na sliki 2), nekatere pa so pomoje tehniki zajebali, ker so bili videi nje iz mladosti, kako skače in se vrti po odru na x2 speed, medtem ko je ona v živo pela neke jokcaste pesmi. Vse skupaj je bilo že kar komično.</p>
	<p>Marina je imela skratka amazing girlboss vajb. "Davore!!! (drugi denis) Opet stojiš na kablu!!!!" (ker pač export Brdo ne premore skritih kablov - tudi jaz sem bila tekom koncerta 5cm višja, ker sem stala na kablih, položenih po tleh). Zafrkavanja Davora seveda še ni bilo konec. Medtem ko je bila ona ful živahna (tbh je mela boljše dance move in več energije kot večina publike), je imel Davore, po njenem mnenju "bolj statično vlogo" za sintesajzerjem. Ko je to rekla je Davore, da bi dokazal svojo mladostnost, odtekel 1 krog po odru.</p>
	<p>Kljub temu, da sem bila tam še preden so se sploh odprla vrata (in sem tako v množici stala cca 1h brez predskupine), sem se all in all imela precej fino :)</p>
	<div class="image-grid">
		<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/denisdenis1.jpg" alt=""></div>
		<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/denisdenis2.jpg" alt=""></div>
		<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/denisdenis4.jpg" alt=""></div>
	</div>
	<p class="datum">]]></description>
    <pubDate>Sun, 29 Mar 2026 00:00:00 +0000</pubDate>
    <guid isPermaLink="false">makovec-2026-03-29-72ae4314</guid>
  </item>
  <item>
    <title>DCTF konferenca &amp; tekmovanje</title>
    <link>https://makovec.si/blog</link>
    <description><![CDATA[</p>
	</div>

	<div class="post">
	<h3>DCTF konferenca &amp; tekmovanje</h3>
	<p>S <a href="https://progklub.si">programerskim klubom</a> smo se udeležili dvodnevne cybersecurity konference, ki je potekala 21. in 22. marca na FRI. Prvi dan smo poslušali ogromno zanimivih predavanj, najbolj pozitivno me je presenetila tista, ki je na začetku zvenela najbolj dolgočasno - "Compliance of electronic products in the EU". Tip iz FE je v resnici govoril o tem, kateri varnostni elementi manjkajo izdelkom, ki jih kupiš na Aliexpressu in kako to pomeni, da bodo prej ali slej eksplodirali. Še eno kulsko predavanje je o vdiranju v stare računalniške igre.</p>
	<p>Ves čas tekom tekmovanja smo imeli na voljo vse mogoče okuse club mateja, so here is my ranking: ice tea > pommegranate > winter edition > cola > navaden club mate</p>
	<p>Drugi dan konference je predstavljalo tekmovanje - ker je bilo kar nekaj challengev primernih za začetnike, je bilo reševanje precej zabavno! Rešila sem eno nalogo z Ghidra decompilerjem in eno res lahko nalogico iz kriptografije (ki pa sem jo zaradi znanja frekvenčne analize ... ful zakomplicirala. Na koncu sem se lotila še reševanja ene kriptografske naloge iz lambda računa, za katero pa mi je zmanjkalo časa.</p>
	<p>Ker je tekmovanje itak trajalo cel dan, in se nismo borili za najvišja mesta, sem šla vmes še volit!</p>
	<div class="image-grid">
		<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/transparent169.png" alt=""></div>
		<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/dctf2.JPG" alt=""></div>
		<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/transparent169.png" alt=""></div>
	</div>
	<p class="datum">]]></description>
    <pubDate>Sat, 21 Mar 2026 00:00:00 +0000</pubDate>
    <guid isPermaLink="false">makovec-2026-03-21-d7ee7595</guid>
  </item>
  <item>
    <title>Cybersecurity konferenca Bsides</title>
    <link>https://makovec.si/blog</link>
    <description><![CDATA[</p>
	</div>

	<div class="post">
	<h3>Cybersecurity konferenca Bsides</h3>
	<p>This is where I blog from! Računalniški muzej, kjer je potekala letošnja Bsides konferenca, ima računalnike, ki so iz istih časov kot dizajn moje spletne strani. :) Poslušala sem veliko zanimivih talkov, npr. "Hunting for logic bugs", kjer smo videli en luškan nabor vulnerabilityjev - izkaže se, da za skoraj vsako stvar obstaja infinite money glitch, če le gledaš dovolj pozorno! Zanimiv mi je bil tudi talk hrvaškega računalničarja <a href="kost">kost</a>, ki je napisal nekaj programčkov za ugibanje gesel, ki so prilagojeni "morfološko bogatim" jezikom, npr slovenščini in ostalim slovanskim jezikom, kjer sklanjanje in variacija končnic močno razširijo množico mođnih gesel.</p>
	<p>Ob koncu smo za posladek poslušali modela iz SI-CERTa, ki se je pritoževal nad ljudmi, ki padajo na phishing scame. Eden izmed emailov, ki so ga dobili na center:</p>
	<p><i>"Pozdravljeni, od kralja Abdulazisza iz Savdske Arabije sem dobila pismo, ki vam ga prepošiljam. Poslal mi je 2 milijona usd, kot pomoč v sklopu G20 projektov. Na banki CapitalOne business, eni največjih bank v Ameriki (kotira med prvih 10), so mi odprli račun in nakazali sredstva. Komuniciram s človekom Bill Hendrix s te banke iz uradnega email naslova. Interpol je prenos sredstev preprečil. Tudi ta mail vam pošiljam. Zdaj moji najbljižji rabijo potrditev - ali je stvar resnična ali ne. Jaz mislim, da ni dvoma, da je stvar resnična. Potrdite še vi. Lep pozdrav, "</i></p>
	<p>Po temeljitev odgovoru z njihove strani, da je ta email RES fake, in da je to RES samo scam, so nato prejeli ta odgovor:</p>
	<p><i>"Pozdravljeni, hvala  za vaš hiter odgovor, ampak a se lahko stvari še malo posvetite? Prvič, email naslov kraljevega predloga je imel v email naslovu G20, pošta z banke je iz uradnega naslova capital one banke, znane ameriške banke. In zdaj sem dobila celo potrdilo, da je stvar treba nesti na FURS, da oni izdajo neko potrdilo in se šele potem sprostijo sredstva. Tudi na online računu, ki ga imam odprtega pri CapitalOne banki, je nakazilo uradno bilo od Kralja Savdske Arabije. Jaz mislim, da si banka tega ne bi izmislila. Vsaj ne taka banka. Prosim vas, če še dodatno malo pogledate, tudi sporočilo od Interpola je bilo jasno z uradnega njihovega naslova, morda zavrtite številko v Lyon in preverite, kaj je na stvari? Jaz bi rada le jasno potrditev, večina takih stvari je lažnih, ampak tale očitno ni. Ali predlagate, da vprašam na FURS? Lep pozdrav,"</i></p>
	<p>Na koncu smo šli še na "afterparty", torej na pijačo in prigrizke skupaj z ostalimi udeleženci, kjer sem spoznala kul računalničarja iz Dunaja!</p>
	<div class="image-grid">
		<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/bsds0.jpg" alt=""></div>
		<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/bsds2.jpg" alt=""></div>
		<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/bsds1.jpg" alt=""></div>
	</div>
	<p class="datum">]]></description>
    <pubDate>Fri, 13 Mar 2026 00:00:00 +0000</pubDate>
    <guid isPermaLink="false">makovec-2026-03-13-e541b78a</guid>
  </item>
  <item>
    <title>Ružno pače opet vrača se v rokenrol Slovenske Konjice!</title>
    <link>https://makovec.si/blog</link>
    <description><![CDATA[</p>
	</div>

	<div class="post">
	<h3>Ružno pače opet vrača se v <strike>rokenrol</strike> Slovenske Konjice!</h3>
	<p>S prijatelji smo šli na koncert od Ružno pače!!! Pa ne v galohalo, ker nismo mainstream - v polnem avtu smo se podali na skoraj dvourno vožnjo do Slovenskih Konjic, kar je zgolj pol ure stran od rojstnega kraja Ružija (Žalec!?). Ko smo se pripeljali do Zoje, nam je sporočila, da smo se nekako znašli na mestu, ko moramo skupaj z Ružijem posneti tiktok za klub študentov, ki je organiziral event. Great, končno lahko uporabimo vse svoje znanje, ki smo ga pridobili z gledanjem nišnih filmov v kinoteki (več o tem v razdelku kultura)! Na prizorišču smo zagledali Ružija, ki je izgledal kar malce žalostno, skupaj s svojim nahrbtničkom na ramah je bil skoraj neprepoznaven. S prijatelji smo naročili eno rundo piva, vmes pa se je na radiu začel vrteti Ruži - or so we thought! V resni ci smo doživeli privat koncert <it>(tonsko vajo)</it>, s tiktokom pa ni bilo na koncu nič, saj je Ruži pobegnil na večerjo.</p>
	<p>Po prvem porazu tega večera smo se vrnili nazaj k Zoji, kjer smo dobili tour 14(!) ležišč za utrujene žurerje. Imeli smo se fino, malo smo klepetali &amp; pili sok, dokler se ni zaslišal zvonec, in skozi vrata je vdrlo 7 glasnih FRIjevcev. Strašno. Maj jih je postrojil v vrsto, da so se lahko predstavili in povedali, katero je njihovo najljubše drevo. Po icebreakerjih smo se vsi skupaj (peš) odpravili Ružiju nasproti. Ker so (fake fans) frijevci že zapolnili guest listo, smo si karte morali kupiti sami :( Z Manjo sva celo morali pokazati osebno! (nisem še dovolj stara, da bi bilo to flattering) Med čakanjem, da se dogajanje začne, se je Maj ful pobondal z Ružijem (ampak ni dobil nobene slike - fail št 2). Najprej je imel Nomark svoj set (kot predskupina), nato pa smo skupaj z Ružijem (ki je sicer pel v hrvaščini, govoril pa v štajerščini) rokenrolali pozno v noč.</p>
	<p> Po koncu koncerta se je Nika opogumila in vprašala Ružija, če bi šel z nami na after. Na njeno presenečenje je bil za, in ji je dal svoj privat instagram! "Noro!! In, kakšen je ta instagram!?" smo jo navdušeno vprašali, ko je prišla nazaj. "Uhh, nekaj na xx ... pa nek a je še vmes ... nisem si zapomnila". Ruži nam je spet pobegnil (tokrat povsem po naši krivdi). Ker smo bili pravzaprav že precej utrujeni (cope), smo odpešačili nazaj proti Zoji, zjutraj pa po zajtrku na vožnjo proti Ljubljani. Obvezno smo se vmes ustavili še na Trojanah!</p>
	<div class="image-grid">
		<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/ruznopace4.jpg" alt=""></div>
		<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/ruznopace5.jpg" alt=""></div>
		<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/ruznopace3.jpg" alt=""></div>
	</div>
	<p class="datum">]]></description>
    <pubDate>Mon, 02 Mar 2026 00:00:00 +0000</pubDate>
    <guid isPermaLink="false">makovec-2026-03-02-c76ca7af</guid>
  </item>
  <item>
    <title>Danes sem praznovala 21. rojstni dan, hkrati pa smo imeli tudi moving-in party! Zadnja slika je 3D s…</title>
    <link>https://makovec.si/blog</link>
    <description><![CDATA[</p>
	</div>


	<div class="post">
	<p>Danes sem praznovala 21. rojstni dan, hkrati pa smo imeli tudi moving-in party! Zadnja slika je 3D sken moje nove kuhinje. Tatjana je spekla AMAZING cheesecake, za razvedrilo pa smo igrali VEM družabno igro, ki jo je Ziherl dobil po tem ko je na rtv izgubil proti 60letnicam.</p>
	<div class="image-grid">
	<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/rd21-2.jpg" alt=""></div>
	<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/rd21-1.jpg" alt=""></div>
	<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/rd21-3.jpg" alt=""></div>
	</div>
	<p class="datum">]]></description>
    <pubDate>Sat, 31 Jan 2026 00:00:00 +0000</pubDate>
    <guid isPermaLink="false">makovec-2026-01-31-511f98ff</guid>
  </item>
  <item>
    <title>Napovedovanje premikanja jate rib z uporabo grafovskih nevronskih mrež</title>
    <link>https://makovec.si/blog</link>
    <description><![CDATA[</p>
	</div>


	<div class="post">
	<h3>Napovedovanje premikanja jate rib z uporabo grafovskih nevronskih mrež</h3>
	<p>Jate ptic in rib, roji žuželk, velike gruče ljudi - vse tvorijo čudovito skupinsko 
obnašanje, kjer se obnašajo kot celota. Simulacija in napovedovanje takšnega obnašanja nam 
omogoča, da lahko napovemo obnašanje množic v prostoru z določenimi potmi (npr štadion). 
Problema se lotimo z grafovskimi nevronskimi mrežamo <it>(angl. GNN - graph neural networks)</it>. Ideja je, da je obnašanje posameznika odvisno od ostalih članov jate, še posebej od tistih, ki so v neposredni bližini, in od gibanja posameznika v kratkem intervalu prej.</p>
	<div class="image-grid-2">
	<div style="text-align: center;">
	<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/output.gif" alt=""></div>
	</div>
	</div>
	<p>Posamezno ribo predstavimo z vozliščem, ki ima kot atribute pozicijo v 2D prostoru in vektor hitrosti, povezave v grafu pa predstavljajo potencialne interakcije med ribami. Napovedati želimo atribute vozlišč ob naslednjem času - problem je očitno odvisen tako od časovnih in prostorskih interakcij, zato smo sestavili <it>spatiotemporal GNN-Transformer</it>. Z GATom smo zajeli prostorske interakcije na vsakem frameu (gibanje ribe je odvisno od hitrosti in poravnanosti njenih sosedov), ki nam za vsako ribo da njen embedding. Za zajem časovne komponente smo uporabili transformer, ki nam pove, kako se embedding vsake ribe spreminja v zadnjih $T$ framih. Na koncu majhen prediction head vrne napoved za $(x,y)$ premik vsake ribe.</p>
	<div class="image-grid">
	<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/blogribe1.png" alt=""></div>
	<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/blogribe2.png" alt=""></div>
	<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/blogribe3.png" alt=""></div>
	</div>
	<p>Model smo testirali na 3 različnih konstrukcijah grafov.</p>
	<ul>
	    <li><bf>kNN</bf> - vsaka riba je povezana s $k$ najbližjimi sosedi
	    <li><bf>kNN + mostovi</bf> - kNN grafi lahko včasih razpadejo na nepovezane komponente (nastaneta 2 ločeni jati rib). V tem primeru ne moremo prenesti informacije med komponentami (message passing odpove). Komponente zato povežemo z mostovi med centroidi (označeni krogi na sliki), in takšne povezave posebej označimo.
	    <li><bf>poln graf</bf> - vsaka riba je povezana z vsako. To sicer zajame globalne interakcije, ampak je drago ($\mathcal{O}(n)$ povezav) in lahko povzroči povprečenje obnašanja (over-smoothing).
	</ul>
	<p>Ključen problem v napovedovanju poti je t.i. "exposure bias" - če treniramo zgolj za 1 korak vnaprej, se morda v tistem koraku zmotimo za malo, a se ta napaka akumulira skozi naslednje korake, in po 5 korakih napovemo povsem napačen premik, kljub temu, da smo korak za korakom napovedovali "precej OK". Da se temu izognemo, treniramo z nekim drseči oknom.</p>
	<p class="datum">]]></description>
    <pubDate>Fri, 30 Jan 2026 00:00:00 +0000</pubDate>
    <guid isPermaLink="false">makovec-2026-01-30-aa3fea3d</guid>
  </item>
  <item>
    <title>Kaj so GNN (grafovske nevronske mreže)?</title>
    <link>https://makovec.si/blog</link>
    <description><![CDATA[</p>	
	</div>

	<div class="post">
	<h3>Kaj so GNN (grafovske nevronske mreže)?</h3>
	<p>Pogosto podatkov nimamo v urejeni obliki kot je mreža (slike) ali pa zaporedje (tekst). Reprezentacijo vozlišč se priučimo z iterativno agragacijo okolice, pri čemer vsako vozlišče posodobi svoj embedding glede na trenutni embedding &amp; embeddinge vozlišč v neki okolici. To, da pri izračunu uporabimo samo okolico vozlišča pomeni, da so GNN invariantne za permutacije vozlišč ter nam omogoča delo z variabilnimi velikostmi jat. To lahko zašišemo v matrični formuli z dvema "trainable" linearnima transformacijama $W^{(l)}$ in $B^{(l)}$: $$\mathbf{h}_v^{(0)} = x_v$$ $$\mathbf{h}_v^{(l+1)} = \sigma \left( \mathbf{W}^{(l)} \sum_{u \in \text{sosedi}(v)} \frac{\mathbf{h}_u^{(l)}}{|\text{sosedi}(v)|} + \mathbf{B}^{(l)}\mathbf{h}^{(l)}_v \right), \quad \forall k \in \{0, \dots , K-1 \}$$ $$\mathbf{z}_v = \mathbf{h}_v^{(K)}$$</p>
	<div class="image-grid-2">
	<div style="text-align: center;">
	<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/gnn.png" alt=""></div>
	</div>
	</div>
	<p>Osnovne GNN obravnavajo vse sosede enako, toda v jatah rib so bolj pomembne tiste, ki so tik zraven nas. Vpliv sosedov je torej odvisen od oddaljenosti, orientacije in hitrosti ribe. GAT (Graph Attention Network) reši ta problem, saj se za vhodna sporočila iz ostalih vozlišč priuči pomembnost uteži (attention coeficient). Mi ga izračunamo med pari vozlišč (rib) iz njihovih pozicij in hitrosti, ter ga normaliziramo po sosedih z uporabo softmaxa. S tem dosežemo, da ribe blizu skupaj in tiste, ki plavajo v podobno smer, bolj vplivajo druga na drugo. Formula kako posodobimo embedding $\mathbf{h}_v^{(l)}$ ribe $v$ na layerju $l$ znotraj GATa: $$\textbf{h}_v^{(l)}=\sigma \left( \sum_{u\in \text{sosedi}(v)} \alpha_{vu}\textbf{W}^{(l)}\textbf{h}_u^{(l-1)}\right)$$ Attention coefficient med vozliščema (ribama) $A$ in $B$ izračunamo kot $$e_{AB} = a\left( \textbf{W}^{(l)}\textbf{h}_A^{(l-1)}, \ \textbf{W}^{(l)}\textbf{h}_B^{(l-1)}\right)$$, kjer je $a$ neka točkovalna funkcija (ki se jo naučimo znotraj tega attention mehanizma).</p>
	<p>BONUS: Drugi del našega modela je transformer. Podobno kot transformerji gledajo npr zaporedje besed v povedi in poskušajo uganiti naslednjo, mi modeliramo odnose z zaporedjem. Pri tem uporabljamo self-attention mehanizem, pri čemer vsak element v zaporedju pogleda vse ostale in se nauči, kako pomembni so zanj (podobno kot se pri stavku nauči, na katero besedo se npr nanaša nek zaimek ali pridevnik). Temporal (časovni) transformer obravnava zaporedne time frame (časovne korake) kot zaporedje, kar omogoča našemu modelu da se nauči, kako prejšnja stanja jate rib vplivajo na prihodnje obnašanje.</p>
	<p class="datum">]]></description>
    <pubDate>Fri, 30 Jan 2026 00:00:00 +0000</pubDate>
    <guid isPermaLink="false">makovec-2026-01-30-3c9f8731</guid>
  </item>
  <item>
    <title>Srečno novo leto vam želi makovec pika si.</title>
    <link>https://makovec.si/blog</link>
    <description><![CDATA[</p>
	</div>

	<div class="post">
	<p>Srečno novo leto vam želi makovec pika si.</p>
	<div class="image-grid">
	<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/novoleto26-1.jpg" alt=""></div>
	<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/novoleto26-2.jpg" alt=""></div>
	<div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/novoleto26-3.jpg" alt=""></div>
	</div>
	<p class="datum">]]></description>
    <pubDate>Thu, 01 Jan 2026 00:00:00 +0000</pubDate>
    <guid isPermaLink="false">makovec-2026-01-01-d78296b1</guid>
  </item>
  <item>
    <title>Ada hackaton</title>
    <link>https://makovec.si/blog</link>
    <description><![CDATA[</p>
	</div>	

	<div class="post">
		<h3>Ada hackaton</h3>
		<p>Za vikend je klub Ada, programerski klub za bejbe, organiziral hackaton, ki sva se ga udeležili s kolegico Elo. Skupaj s še enim išrmjevcem smo se lotili izziva, da naredi nek pripomoček za slepe in slabovidne (pitch si lahko preberete <a href="/files/public/TagIT.pdf">tukaj</a>). Najprej smo imeli pogovor z Milo, dijakinjo, ki je slepa in obiskuje konzervatorij. Povedala nam je, da je imela lani (v 9. razredu) 100 dokumentov zgolj pri matematiki (zapiske si dela v $\LaTeX$ btw), računalnik pa uporablja skupaj s posebno <a href="https://allyant.com/blog/what-is-a-braille-keyboard-types/">bralno vrstico</a>, ker je to zanjo hitreje od poslušanja vseh zapiskov.</p>
		<p>Zamislili smo si urejevalnik besedil, ki vsak odstavek (in tudi manjše dele besedila) opremi s "tagi", ki omogočajo hitro iskanje po zapiskih, podobno kot videči lahko na hitro preletimo strani in poiščemo npr. enačbe, okrožene z rdečim okvirčkom. Na ta način lahko slepi z nekaj kliki na tipkovnici učinkovito in predvsem hitro navigirajo po svojih zapiskih. Interface je zelo preprost, zato da reader, ki ga imajo že nameščenega, nima težav z branjem vrstic. Sicer nismo uspeli prepričati sponzorjev v naši kategoriji, smo pa osvojili community award (glas ljudstva) izmed vseh projektov.</p>

		<p>Pojedla sem ogromno zastonj hrane, spila neznanske količine premium kave iz Jura avtomata in se nasploh imela zelo fino. Najbolj optimalno counter: 3</p>
		<p>Naokoli so ves čas hodili trije dobri možje, "mentorji", in delili uporabne nasvete. Ko smo jih vprašali, kako bi najlažje naredili nek simple markdown editor, mi je model s chatgptjem generiral python kodo:</p>
		<code>f = open("demofile.txt")<br>print(f.read()) </code>
		<p>in mi jo kot princ na belem konju poslal na Discord. (UPDATE: Iz najnih dmov je izbrisal tisti code snippet!) "Pa saj python znaš uporablajti, ane?" Ko sem mu odgovorila, da pač znam programirati, mi je odvrnil "no, daj, pa poglejva. Torej, odpri cmd in notri vpiši P-Y-T-H-O-N, python". Po tem, ko sv skupaj uspela odpreti python, mi je seveda čestital, in me prepustil sami sebi, brez da bi mi dal kakršnokoli uporabno informacijo. "Ah, kako zelo luškana ekipa ste", je še večkrat poudaril.</p>
		<p>Na našem girlies hackatonu pa so bili tudi f*ntje. Nekateri so bili precej kul (npr. Janez, ki je spisal velik del kode pri našem projeku), nekateri pa so se zelo potrudili da safe space ni bil več to, kar je bil. Ekipa 4 moških je tako prezentacijo začela z bojnim krikom v mikrofon, in nadaljevala z zasmehovanjem neke uradnice, ki dela v Excelu (zato da so nam prodali svojega <i>ai</i> finančnega kariernega pomočnika). Strašno.</p>
	
<div class="image-grid">
    <div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/h001.png" alt=""></div>
    <div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/h02.png" alt=""></div>
    <div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/hackaton04.jpg" alt=""></div>
</div>
<p class="datum">]]></description>
    <pubDate>Sun, 23 Nov 2025 00:00:00 +0000</pubDate>
    <guid isPermaLink="false">makovec-2025-11-23-c93814a8</guid>
  </item>
  <item>
    <title>Podobno kot imamo pri jeziku lahko dvoumnosti (npr. "Bauer prihaja iz Nizozemske" lahko pomeni da Ba…</title>
    <link>https://makovec.si/blog</link>
    <description><![CDATA[</p>
	</div>

<div class="post">
	<p>Podobno kot imamo pri jeziku lahko dvoumnosti (npr. "Bauer prihaja iz Nizozemske" lahko pomeni da Bauer živi na Nizozemskem, ali pa se vrača iz konference na Nizozemskem brez da bi mi prinesel bombončke), jih imamo lahko tudi pri računalnikih. Prevajalnik kodo razbije na žetone in zgradi sintaktično drevo, pri tem pa lahko naleti na težave z dvoumnostjo sintakse! V C++03 parserju je $\texttt{&amp;gt;&amp;gt;}$ operator za zamik v desno, zato pri gnezdenju templateov zahteva presledek!</p>
	<code>std::vector&amp;lt;std::vector&amp;lt;int&amp;gt; &amp;gt; vec;</code>
	<p>C++11 je seveda popravil specifikacijo parserja tako da imamo lahko več &amp;gt; ki pomenijo zaključek seznama templateov. Namesto da bi "$\texttt{&amp;gt;&amp;gt;}$" obravnavali kot 1 token, ga v primeru da smo v gnezdenju obravnavamo kot 2 ločena "&amp;gt;" tokena.</p>

	<p class="datum">]]></description>
    <pubDate>Wed, 19 Nov 2025 00:00:00 +0000</pubDate>
    <guid isPermaLink="false">makovec-2025-11-19-09ea0438</guid>
  </item>
  <item>
    <title>Groverjev algoritem - kvantni algoritem za iskanje rešitev v $\mathcal{O}(\sqrt{n})$ času</title>
    <link>https://makovec.si/blog</link>
    <description><![CDATA[</p>
</div>
<div class="post">
	<h3>Groverjev algoritem - kvantni algoritem za iskanje rešitev v $\mathcal{O}(\sqrt{n})$ času</h3>
	<p>Prejšnji teden sem imelana faksu predstavitev o algoritmu, blogpost pa naj služi kot handout prisotnim, ali pa zanimivo branje vsem bralcem bloga, zato je napisano malce bolj poljudno.</p>
	<p>Predstavljajmo si, da imamo neko sporočilo, ki pa je skrito tako, da ga lahko preberemo le, če poznamo skrivni ključ, ki pa je številk med $1$ in bilijon ($10^{12}$). V navadnem svetu bi za to, da najdemo ta skrivni ključ, povprečno potrebovali najprej preizkusiti $N/2$ različnih številk, v najslabšem primeru pa kar vseh $N$. Izkaže se, da z uporabo Groverjevega algoritma lahko "skrivni ključ" najdemo v zgolj $\sqrt{n}$ korakih! V našem primeru bi to pomenilo, da bi morali preveriti "samo" 800 000 možnosti.</p>
	<p>Ključno je, da je skrivni ključ težko ugotoviti, precej enostavno pa je preveriti, če je res pravi (npr. odkodiramo sporočilo). Vse možne rešitve si predstavljamo kot $N$-dimenzionalni prostor, kjer so rešitve bazni vektorji. Eden izmed teh vektorjev je nša rešitev (skrivni ključ), ki jo iščemo, ki pa je seveda še ne znamo. Vektor, ki predstavlja rešitev, je v resnici superpozicija vseh možnih rešitev. Algoritem se z vsako iteracijo približuje vektorju rešitev, po določenem številu iteracij (ki ga bomo kasneje izpeljali), pa se mi, opazovalci, odločimo "prebrati" vrednost vektorja (ki je bil do sedaj nekakšna črna škatla). Dobljeno vrednost si lahko predstavljamo kot nek seznam verjetnosti, kjer sopravilne rešitve bolj verjetne (in enako verjetne med seboj), napačne pa zelo malo verjetne. Ko torej preberemo vrednost dobljenega vektorja, bomo (najverjetneje) dobili eno izmed rešitev. Ali je to zares pravilna rešitev lahko zlahka preverimo tako, da poskusimo "uporabiti" ta ključ. V redkih primerih, ko se zaradi elementov naključja zgodi, da morda dobimo napačno rešitev, Groverjev algoritem preprosto poženemo še enkrat. Izkaže se, da je časovna zahtevnost tudi ob upoštevanju morebitne napačne rešitve (in s tem ponovnega zaganjanja) še vedno boljša.</p>
	<p>Pri geometrijski izpeljavi algoritma definiramo Groverjevo iteracijo - predstavljamo si 2D koordinatni sistem, pri čemer je na $x$ osi vektor $|E\rangle = \sum_{x}|x\rangle / \sqrt{N}$, ki predstavlja enakomerno superpozicijo vseh možnih rešite, <i>skoraj</i> pravokotno nanj pa je vektor $|s\rangle$, ki predstavlja superpozicijo pravilnih reštev. Vektorja nikoli ne bosta povsem pravokotna, saj je doprinos $|s\rangle$ k vektorju $|E\rangle$ vedno $1/ \sqrt{N}$. Če označimo ta kot z $\Delta$ opazimo, da je $\sin(\Delta) = 1/ \sqrt{N}$ in zato $\Delta = \arcsin(1/\sqrt{N} \approx 1/\sqrt{N}$ (gl. skico).   </p>
	<p>$\langle a | b \rangle$ si lahko predstavljamo kot skalarni produkt $a$ in $b$ (torej geometrijsko kot dol�ino projekcije enega vektorja na drugega. Vemo, da lahko nek vektor $\psi = \langle \varphi | \psi\rangle | \varphi\rangle + (|\psi\rangle - \langle \varphi | \psi\rangle | \varphi\rangle)$ zrcalimo čez nek drug vektor $\varphi$, in pri tem dobimo $\psi_{zrc} = 2\langle \varphi | \psi \rangle | \varphi \rangle - \psi\rangle$. Izpeljava je zgolj preprosta geometrija (in nikakršna kvantna mehanika!) To formulo bomo uporabljali za zrcaljenje nekega vektorja $\psi$ čez $|s\rangle$ in $|E\rangle$. Da to res lahko storimo (kljub temu, da rešitve dejansko še ne poznamo) bomo pokazali kasneje.</p>
<p class="datum">]]></description>
    <pubDate>Mon, 03 Nov 2025 00:00:00 +0000</pubDate>
    <guid isPermaLink="false">makovec-2025-11-03-b022e7d4</guid>
  </item>
  <item>
    <title>Predavanja za modeliranje računalniških omrežij je danes profesor začel z "ah, očitno se spet ni zgo…</title>
    <link>https://makovec.si/blog</link>
    <description><![CDATA[</p>
</div>

<div class="post">
	<p>Predavanja za modeliranje računalniških omrežij je danes profesor začel z "ah, očitno se spet ni zgodil noben tehnični incident!". Zadnjič je dejal, da dandanes vse stvari tako dobro delujejo, da nam nima ničesar za povedat, "še tisti nesrečni droni, ki mečejo bomb ... delujejo idealno". Little did he know, da se je ravno takrat zgodil major AWS izpad! In uganite, čigav server <i>deluje</i>? ;)</p>
	<code> 11:22:23 up 11 days, 13:17,  3 users,  load average: 1.51, 1.82, 1.67</code>
	<p>Če v zadnjih nekaj dneh niste mogli dostopati do bloga, je bilo to po moji krivdi. V čast mi je, da ste nekateri sprva pomislili, da morda zgolj vam ne delajo stvari, ampak kot smo videli zgoraj, se zgodi tudi najboljšim /s</p>
	<p class="datum">]]></description>
    <pubDate>Mon, 20 Oct 2025 00:00:00 +0000</pubDate>
    <guid isPermaLink="false">makovec-2025-10-20-8fde8d5b</guid>
  </item>
  <item>
    <title>Danes smo šli s prijatelji na izlet v Zatolmin izključno z 1 ciljem - videti edino secesijsko cerkev…</title>
    <link>https://makovec.si/blog</link>
    <description><![CDATA[</p>
</div>
<div class="post">

<p>Danes smo šli s prijatelji na izlet v Zatolmin izključno z 1 ciljem - videti edino secesijsko cerkev v Sloveniji. Šli smo z avtom, večji del poti pa so predstavljali hudi ovinki, ki smo jih zvozili precej <i>športno</i>. V tolminskem merkatorju smo naročili a-la-carte sendviče, nato pa se peš odpravili proti vrhu, saj se nam je zdelo 2 evra preveč za avtobus. Cerkvica, ki je bolj spomeni kot pa verski objekt, je za ogled odprta do 17ih. Čisto utrujeni smo prisopihali na vrh ob 16:55, nato pa se drenjali ob vhodu, da bi videli kar se da veliko, brez da bi plačali tistih nekaj evrov vstopnine. Super izlet in družba :)</p>
<div class="image-grid">
    <div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/secesija.jpg" alt=""></div>
    <div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/pohodniki.jpg" alt=""></div>
    <div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/pohodniki2.jpg" alt=""></div>
</div>
<p class="datum">]]></description>
    <pubDate>Sat, 13 Sep 2025 00:00:00 +0000</pubDate>
    <guid isPermaLink="false">makovec-2025-09-13-1e76739b</guid>
  </item>
  <item>
    <title>Po izpitnem obdobju smo imele bejbike get-together, kjer smo imele na dnevnem redu pomembne teme, ko…</title>
    <link>https://makovec.si/blog</link>
    <description><![CDATA[</p>
</div>

<div class="post">
	<p>Po izpitnem obdobju smo imele bejbike get-together, kjer smo imele na dnevnem redu pomembne teme, kot je npr. vprašanje "Ali bi me podprli v bar fightu, tudi če bi se motila??" Nina je spekla AMAZING kruh, pa seveda <i>domače hand made</i> churrose in mini malinove pite, zraven pa še cochie board in šampanjec (ne ker bi bili buži, ampak ker je bil znižan v merkatorju). </p>

<div class="image-grid">
    <div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/voting1.jpg" alt=""></div>
    <div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/voting2.jpg" alt=""></div>
    <div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/voting3.jpg" alt=""></div>
</div>
	<p class="datum">]]></description>
    <pubDate>Fri, 12 Sep 2025 00:00:00 +0000</pubDate>
    <guid isPermaLink="false">makovec-2025-09-12-513a02b8</guid>
  </item>
  <item>
    <title>Kulska in cursed stvar na internetu: link oz. guide kako pisati kodo na naslenjem upmju ;)</title>
    <link>https://makovec.si/blog</link>
    <description><![CDATA[</p>
</div>

<div class="post">
	<p>Kulska in cursed stvar na internetu: <a href="https://www.ioccc.org/">link</a> oz. guide kako pisati kodo na naslenjem upmju ;) </p>
	<p class="datum">]]></description>
    <pubDate>Wed, 10 Sep 2025 00:00:00 +0000</pubDate>
    <guid isPermaLink="false">makovec-2025-09-10-3db877fc</guid>
  </item>
  <item>
    <title>Danes praznuje rojstni dan moja super prijateljica Nina! Ker pravi, da je nikoli ne omenjam na blogu…</title>
    <link>https://makovec.si/blog</link>
    <description><![CDATA[</p>
</div>

<div class="post">
<p>Danes praznuje rojstni dan moja super prijateljica Nina! Ker pravi, da je nikoli ne omenjam na blogu (kljub temu, da mi vestno odgovarja na emaile), ji zato ob tej posebni priložnosti (namreč na <i>resnično</i> obletnico njenega rojstva) posvečam kar cel post! Želim ti, da lepo praznuješ in upam, da se kmalu vidiva! Spodaj je nekaj slikic Nine in Klare - malo zato, ker imam bolj malo slik ene brez druge, malo pa tudi zato, ker ne vem, katera je katera and at this point i'm too afraid to ask. </p>
<div class="image-grid">
    <div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/nina1.jpg" alt=""></div>
    <div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/nina2.jpg" alt=""></div>
    <div style="margin:0.5em 0;"><img src="https://makovec.si/files/public/nina3.jpg" alt=""></div>
</div>
<p class="datum">]]></description>
    <pubDate>Wed, 03 Sep 2025 00:00:00 +0000</pubDate>
    <guid isPermaLink="false">makovec-2025-09-03-f363dfcc</guid>
  </item>
  </channel>
</rss>