fejlesztés - 2007 - 71 megfelelő bejegyzés.

Mutass mindent

Jelöld be, hogy főbb mely kategóriákat akarod olvasni, vagy ha csak egyet: kattints a nevére.


Haszprus

Kommentkezelési újítások

©   Haszprus   |   fejlesztés

Nem nagy cucc, de ha már Mefi rákérdezett az üzenőfalon, akkor beszámolok róla.

A friss témák menüje kicsit megváltozott: színeződnek a dolgok aszerint, hogy hozzászóltál-e az adott topichoz, és hogy te voltál-e az adott topicban az utolsó.

Ha nem szólsz hozzá egy topichoz, azt nem szeretjük, ezért optikailag büntetünk és lelki terrort alkalmazunk:

Ellenben ha hozzászólsz, azt szeretjük és megköszönjük:

Mindehhez be kell jelentkezned.

Haszprus

Mátrix

©   Haszprus   |   fejlesztés mátrix

Azt találtam ki, hogy a munkahelyi bejegyzések a mátrix címke alatt fognak futni, legalábbis egy darabig. (A címke eddig is létezett, csak más néven, és nem volt publikus. Bizonyos címkéket ugyanis nem lát mindenki.)

Haszprus

Mission one completed (XML parser optimalizáció)

©   Haszprus   |   fejlesztés mátrix php xml

A cégnél az első feladatom egy olyan script optimalizálása volt, amely 12-től 30 vagy akár még több MB-ig terjedő XML állományok alapján hajt végre nagyságrendileg 100-500e egymással összefüggő SQL insertet (értsd: mély és széles xml-fa).

Az eredeti progi egy 30 megás XML-lel kb. 2 perc 40 másodpercnyi munkát adott az apache.exe-nek (ennyit foglalt a prociból tehát az apache), miközben a memóriahasználat az alapjáratú 27 MB-ról felment 558 MB-ra. A program teljes futási ideje 383 másodperc volt.

Elég sok időt eltöltöttem azzal, hogy egyrészt a program logikáját megértsem, másrészt utána nézzek, hogy vajon van-e valami hatékonyabb XML parser. Miután nem találtam a használt megoldásnál jobbat (tekintve hogy az se a teljes dokumentumfát tárolta a memóriában), már majdnem ott kötöttem ki, hogy ezt bizony nem lehet (vagy én nem tudom) optimalizálni (bár persze kételkedtem), ehelyett kicsit kitesztelgettem, hogy hogyan is működik a php-ben a változók és objektumok megsemmisítése (ld. __destruct), és a megfelelő stratégiai helyen mért csapás eredményeként a program most nem növeli az apache alapjáratú memóriafoglalását egy megával sem (Érdekes módon az unset nem segített.)

Azaz az én verzióm a 30 megás XML-lel ugyanúgy 2 perc 40 másodpercig tekeri az apache.exe-t, azonban összesen csak 358 másodpercig fut (fél perc nyeremény itt, miközben sebességre még nem is optimalizáltam), és ami a lényeg, hogy 27-ről nem 558 MB-ra nyomja fel az apache memóriahasználatát, hanem mindössze 29-re. Nem kell mondani, hogy ez mennyire előnyös egy olyan környezetben, ahol más dolgok is futnak (ti. ez egy webszerver).

Amikor nekiálltam a dolognak, egy nagyságrendi változást akartam volna elérni, aztán ahogy beleástam magam, megelégedtem volna akár egy memóriafelezéssel is, végül már majdnem teljesen feladtam, de arra álmomban sem gondoltam, hogy sikerül a memóriahasználatot úgy ahogy van megszűntetni Ettől igen jó kedvem lett

Rulz.

Haszprus

133 komment - thx!

©   Haszprus   |   fejlesztés

133 komment! Pörgős hetünk volt. Igaz, ez nem mind látható, de azért sokminden ment publikusan is Risztekpa mindenkibe! Ja és köszönöm is a kommenteket, a héten több olyan bejegyzés is volt, ahol értékes hozzászólások érkeztek, és sokat segítettetek! Thx!

Hiszek abban, hogy itt egy elég frankó olvasóközönség alakult ki, amire/akikre nyugodtan büszke lehetek.

Haszprus

Képajánló

©   Haszprus   |   adatbányászat bme fejlesztés haszprus

Bizonyos esetekben egész jól műxik. Időm nem volt alaposan kitesztelni meg ilyenek. Most ez nekem két kreditért oké volt, ennyi. Ha érdekel, itt megnézheted [update 2024-03-02: csak megnézhetted], hogy személy szerint neked mit ajánl.

Nagyjából azt érdemes figyelni, hogy az eddig letöltött képeid függvényében vajon úgy érzed-e, hogy nagyjából releváns képeket ajánl, tehát hasonló jellegűeket. Például ha tűzijátékos fotókat néztél, akkor jóeséllyel látsz további tűzijátékosokat. Ha külföldi fotókat néztél, jóeséllyel látsz további külföldi fotókat. Legalábbis ez volt a kiindulási alapfeltevésem, aztán egyáltalán nem biztos, hogy a gyakorlat ezt a feltevésemet igazolja. Ugyanis a képeket nem hasonlóság alapján ajánlja, hanem hozzád hasonló ízlésű felhasználók képnézegetési szokásai alapján. Azaz az ajánlott képek nem feltétlen kapcsolódnak egymáshoz. De azért megfigyelhető egy-két dolog, amibe most nem megyek bele…

Ha csak két képet látsz, az azt jelenti, hogy nem tud ajánlani neked a rendszer semmit. Valószínűleg nem tudja hogy ki vagy (pl. mert törlöd a cookie-kat), vagy még nem töltöttél le képet. Bizonyos bugok is vannak a userazonosítás körül, amiket még nem debugoltam (és egy darabig nem is fogom, mert nem érek rá).

  • Képajánló a Haszprus überblogon

2024. már. 02. 14:03 kivezettem ezt a funkciót. Magyarul töröltem.

Haszprus

Referer hack

©   Haszprus   |   fejlesztés javascript php

Ma az adminfelületen a logok közé benézve a következő ablak villant fel:

Gondoltam biztos valamelyik firefox extension bugzik. De nem. Valaki egy lapletöltésnél user agentnek azt bírta megadni, hogy

<script>alert(1)</script>

Ofkorsz a user agentek biztonságosan kerülnek az adatbázisba egy $db->safe_string() konverzión keresztül, mert nehogymár valaki ott kezdjen sql-t injektálni, de arra még nem gondoltam, hogy valaki html-t vagy js-t fog becsempészni így az oldalra. Trükkös.

Tamás

Szerdai kvíz #1

©   Tamás   |   fejlesztés php

Kvízjáték: mit jelent az alábbi PHP hibaüzenet és hogyan lehet kiváltani?

Parse error: syntax error, unexpected T_DEC,
expecting T_PAAMAYIM_NEKUDOTAYIM

Google nem ér.

Haszprus

Objektum-orientált JavaScript

©   Haszprus   |   fejlesztés javascript

Eddig az objektum-orientált javascript valahogy kimaradt az életemből. Nem nehéz megindokolni igazából, a helyzet az, hogy a weben előforduló feladatok többsége nem igényel oo js-t, és valahogy nincs agyonreklámozva hogy a js az tulajdonképpen egy oo nyelv. Pedig az. Szóval meg is írtam az első saját js objektumomat egy tutorial alapján, marha nehéz volt, mit ne mondjak, le is publikálom ennek örömére.

Haszprus

PHP/JS/AJAX fejlesztésgyorsító cuccok

©   Haszprus   |   ajax fejlesztés javascript php

Először arra gondoltam, létrehozok egy bejegyzést a Propelnek, de kezdetnek inkább csak egy ilyen általánosat… ki milyen külső cuccokat használ php alapú webfejlesztéshez? Nem projektspecifikus cuccokra gondolok (pl. free webgaléria, stb), hanem általánosan használható, beépíthető dolgokra (mint pl. adatbáziskezelő réteg, template rendszer).

Én elsősorban a bloggal szórakoztatom magam, és itt nem az a cél hogy gyorsan fejlődjenek a dolgok, hanem hogy magam fejlesszek ki mindent. Hobbiból. Ennek megfelelően eddig nem is nagyon vettem be külső fejlesztéseket a projektbe, egy éve bekerült egy Smarty (ami nem jött be végülis), és most nemrég a prototype.js, igaz ez nem php, hanem js/ajax. Na ilyesmikre gondoltam. Nyomassad, miket használsz, mire jó, stb.

Haszprus

Kereső revamp - user szerinti szűkítés

©   Haszprus   |   fejlesztés

Egyelőre csak a kommentekre műxik. Szintaxisa: a keresőmezőbe beírod a többi szó mellé azt, hogy user:x,y,z, ahol x,y,z azoknak a felhasználóknak a neve (vagy névrészlete), akiknek a kommentjeiben turkálni akarsz. Persze elég csak egyet is megadni.

Három példa

  1. welcome user:montana azokat a kommenteket keresi amiben szerepel a welcome szó, és montana írta.
  2. ajax user:adamo,tamás,boci azokat a kommenteket keresi, amiben szerepel az ajax szó, és a szerző adamo, vagy tamás, vagy boci. (igazából ha lenne olyan szerző is, hogy adamoooo, vagy aaaadamoooo, akkor is megtalálná, mert szótöredéket keres a névben)
  3. ajax user:am kommentek, amiben szerepel az ajax szó, a feladó nevében pedig az am szórész.

Update 09:38: nemcsak hozzászólásra működik már, hanem bejegyzésekre is, pár sort kellett átvariálni. iRock!

Update 17:16: linkbárra is.

Haszprus

Kereső revamp

©   Haszprus   |   ajax fejlesztés

Közeleg az utóbbi idők legnagyobb projektjének vége, hamarosan itt az új ajaxos kereső. (Egyelőre csak néhány kiválasztott látja. Te látod? Nem, de szeretnéd?) De nemcsak ajaxos, hanem egy csomó mindent tud is.

  • ajax
  • animált
  • nem tartalmazandó szavak listája (pl. keresőkifejezés: sony -alacsony)
  • pontos kifejezések (pl. sony, így azokat fogja megtalálni ahol a szó sonyval kezdődik, nem valahol a közepén van. de idézőjelek közt ha több szóra keresel, akkor azokat egy stringként fogja kezelni.)
  • linkbárban is keres
  • felhasználók közt is keres, mégpedig részleges névegyezésre is. a sortolás* pedig elég advanked, azok kerülnek előre akiket valszeg keresel illetve akik valamilyen értelemben fontosak…
  • a kedvencnek jelölt bejegyzéseket előre veszi a találati listában (Update nov. 09.)
  • szerző szerinti szűkítés (pl. sony user:mainframe) (Update nov. 10.)

* rendezés, nem pedig sorok tologatása!

Development tasks

  • High priority:
    • a replaceContent jegyezze meg az oldalon levő formok adatait, pl. írás alatt levő kommenteket
    • rövid leírás a kereső használatáról, szabályokról, and/or/user:, stb.
    • adjon visszajelzést a keresőkifejezés feldolgozásáról (hogy mik történnek a keresőszavakkal, pl. a user:... mit csinál, a szavak mindegyikét tartalmaznia kell a találatnak, stb.)
  • Low priority:
    • search history (ajax-szal szépen a menübe rakosgassa hogy mikre keresett a user)
    • kommenteknél is a keresőszavak kiemelése a találatokban
    • tanuljon abból hogy a userek melyik keresési eredmény felé mozdultak tovább
    • suggestions mint google-nél
    • lapozó?
Haszprus

Bejegyzések megjelölése

©   Haszprus   |   fejlesztés

Erről lassan már másfél hónapja akartam írni: lett egy ilyen a bejegyzések oldalán közvetlen a szövegek alatt, ha be vagytok jelentkezve, hogy Bejegyzés megjelölése. Ezzel fel lehet venni a blogon a saját kedvenceid közé az adott bejegyzést. Használatára egy példa lehet, ha olvasol egy filmértékelést nálunk, aminek hatására meg akarod nézni a filmet majd egyszer valamikor, és megjelölöd a bejegyzést, mintha egy webshopon betennéd a kosárba/kívánságlistába…

Haszprus

AJAX - második merülés

©   Haszprus   |   ajax fejlesztés

Lesz heavy ajax usage, betoltam a blog alá a prototype.js-t, atomjó. Elsőnek a privmsg live search valósult meg (tudom hogy eddig is volt valami experimentális próbálkozás de ez most jobb), mégpedig nem akárhogy, mert átraktam OO-ra a privmsg-eket is, javarészt. Bár pár function még árván maradt, de kapacitás függvényében meg lesz oldva.

Amit véghez szeretnék vinni a jövőben, az a blog alapos belső felfrissítése (full oo kód, következetesebb változónevek, megjelenítés minél alaposabb elválasztása, minél általánosabban használható osztályok stb.), és ajaxos feature-ök. A régi feature várólistát javarészt kidobtam a kukába. Most hogy fél mega fölött van a projekt php forráskódja, az elavult kódrészeket muszáj még jobban ráncba szedni, ami még nem oo, azt átrakni arra. Nem mintha így nem tudnék új designt felhúzni a blogra, csak úgy érzem, most ezzel tudok szintet ugrani.

Haszprus

Új RSS url-ek

©   Haszprus   |   barátok blog fejlesztés google haszprus rss

A site átstrukturálásának részeként új helyre kerültek az RSS feedek, tessék frissíteni az olvasókat. Ezen kívül ha valaki külön szerzőt figyelt meg, akkor nézze meg hogy nem módosult-e a kedvenc szerzőjének az id-je, ugyanis jópáran újat kaptak a felszabaduló alacsonyabb id-knek (és egyéb félautomata id-átrendezéseknek) köszönhetően (többek közt: Tamás: 7, Orca: 22, Montana: 27, The GuNN: 28).

Az RSS letöltéseket nem szoktam logolni mert túl nagy többletforgalom szerintem, és sok értelme nincs, most egy órája logolom, érdekes dolgok derülnek ki belőle. Ez alatt az egy óra alatt 26 egyedi ip-ről kapott a blog rss-letöltést, namost egyedi ip-nek számít például a google reader vagy a netvibes rss fetchere is. Szerencsére ezek user agentben megadják, hogy hány előfizető húzódik meg az egyetlen letöltésük mögött, google readerből 30-an olvassák a fő bejegyzésfeedet, netvibesról pedig 39-en (ezen őszintén meglepődtem). Ez legkevesebb 95 előfizetőt jelent, de ez csak egy egy egyórás megfigyelés (nyilván akik nem webes readert használnak, azok közül nem mindenki volt online az egy óra alatt és az se biztos hogy ha online volt is, futott az olvasója, vagy elég gyakran frissít, stb stb).

Vajon milyen metodikát használnak például a feedburnernél az előfizetők számának megállapítására? (Tekintve hogy egy új ip nem feltétlen jelent új előfizetőt, és azonos ip nem feltétlen jelent egyetlen előfizetőt, ld. lan).

Haszprus

Felhasználóbarátabb blogot

©   Haszprus   |   fejlesztés olvasói levelek

Kaptam visszajelzést egy kevésbé kocka ismerősömtől, hogy a blog egy kissé kaotikus.

Ennek megvan a maga oka, éspedig:

  1. Az alap: blogokat egy szűk kocka réteg olvas. A kockák kiigazodnak könnyen a felhasználói felületeken.
  2. Az én blogomat a szokásos blogolvasó kockáknál is kockábbak olvassák, a témákból és az ismerősi körömből adódóan (bme műinfó, fejlesztés)
  3. Aki blogot olvas, az általában többet is, ilyen módon a nálam látható oldalelrendezés, navigáció, funkcionalitás megszokott lehet, esetleg pár dolog máshol van, de ezeket könnyen felfedezi a gyakorlott felhasználó.
  4. Aki egy blogot olvas, az visszatérő látogató, és mint ilyen, van ideje megismerni a site-ot, ergo a site-on power userként lehet rá tekinteni, nem pedig newbie-ként. Ennek következménye, hogy bizonyos feature-öket eleve úgy tervezek meg, hogy az a power userek igényeihez igazodjon (pl. az archív oldalak gazdag szűkítési lehetőségeit).

Fentiekből következően a tipikus olvasónak a blog átlátása valószínűleg nem okoz különösebb problémát. (Bizonyára nem véletlenül kapok csupa pozitív visszajelzést.) De mi van, ha ki akarjuk szolgálni azokat a látogatóinkat is, akik esetleg most csöppennek a blogok világába, vagy pl. a google-ről kerülnek ide, és azt se tudják, mi az a blog?

A kérdés most hozzátok szól: mi az ami szerintetek az überblogon nem a legfelhasználóbarátabb? Elég ha csak rámutattok, de ha van ötletetek a jobbátételre, azt is érdeklődve hallgatom. Előre is köszönöm! (Ha valamiről úgy gondoljátok hogy az kiemelkedően jó úgy, ahogy van, az is jöhet.)

Végül pedig a legfrissebb feedback:

Ah, végre egy hely, ahol a régi kommentek is átíródnak erre a névre.
(Nálunk sincs így.)
Haszprus

People tagging

©   Haszprus   |   fejlesztés seo

Most, hogy szabad címkézés van a blogon, lehetne a bejegyzéseket tagelni aszerint hogy kiket érint… (Ilyesmi egyébként van pl. Boci naplójában) Mondjuk ebben annyi az apró bökkenő, hogy én legtöbbször még a bejegyzésekben sem említek neveket privacy okokból. Pedig nem lenne rossz, mert pár év távlatából már nem mindig tudom hogy pl. egy népgyülekezeten kik voltak ott (ez mondjuk félig-meddig megoldott mert az adminban lehet privát megjegyzést tenni minden bejegyzéshez), sőt, az kurvajó lenne ha tagek szerint megnézhetném hogy kivel milyen jelentősebb dolgokat csináltam az évek során.

Lehetne olyat, hogy ezeket a címkéket csak trusted userek lássák, vagy pl. nemtrusted userek számára valami kóddal helyettesítődnének az emberek, pl. a monogramjukkal, vagy egyszerűen sorszámokkal.

Nem, nem vagyok hülye, és ez tényleg jó lenne. Én a blogomat most már nagyon valószínűnek tartom hogy kibaszott hosszú ideig fogom még írni, legfeljebb megritkulnak a bejegyzések (ez egyébként nemcsak feltételezés, hanem cél is) és/vagy átmegy trustedbe az anyagok nagyrésze.

Amúgy az adminban át kéne alakítani valahogy a címkerendszert, mert ez a kilométeres legördülő menü kezd nem nyerő lenni, ugyanakkor a gépeléssel beírandó címkék se lennének jók. Az elején azt hittem, hogy csak 1-2 plusz címkét vezetek be, de később rájöttem hogy SEO szempontból marha jó a címkézés, hiszen létre tudnak jönni így olyan archív oldalak az adott kategóriák számára, ami valószínűleg az adott szóra keresve elég nagy értékkel bír a Google PageRankje szerint, főleg hogy csomó helyről vezet rá link (ugye az összes bejegyzésből amely az adott címke alá van besorolva). Címkefelhő kéne? Bizonyos mennyiség fölött az se jó, ráadásul abban nem lehet billentyűzettel adott prefixhez ugrani például. (Mondjuk felhő helyett egy szimpla lista is lehetne.)

Haszprus

Négy éves a blog

©   Haszprus   |   ajax blog design első fejlesztés haszprus javascript rss sql

Bezony.

Ezenkívül volt egy csomó olyan dolog, amiknek a felszínen nem sok látszata van, a háttérben viszont igencsak, ezért technikai/webdev érdeklődésűeknek javaslom a history felkeresését, mert ezekről csak ott ejtettem néhány szót.

Bár nem a bloghoz tartozik, de ezen időszak alatt megküldtem a Haszprus Private Galleryt egy igen durván cache-elő javascripttel és egyéb js-es feature-ökkel, úgy mint pl. onthefly szerző szerinti szűkítés, képek lapújratöltés nélküli megjelölése.

Végül pedig néhány screenshot a tervezett 3.0-s designról, amire nem tértünk át.

Haszprus

Olvasói levelek 2007.09.17.

©   Haszprus   |   barátok fejlesztés google idézet olvasói levelek

Három feedbacket kaptok a mai napra, két személytől.

hmm, ez tenyleg szepen van optimalizalva. [...] menj el website optimizernek

A fenti idézet a Private Gallery cache-elt lapozórendszerére vonatkozik, a második fele pedig az indafotó lassúságára tett kritikáim kapcsán született.

A schönherz spot archívum-ra kerestem Googlen, és baszki a te blogod jött be 6. találatnak Oldalak Google-re optimalizálásából kéne élned sztem

Ez ugye egy egész másfajta optimalizálás.

Baszkideqrvaszépképeidvannakbeszarás

Itt pedig ezekről a képekről van szó.

Na ennyit mára a feedbackekről, legközelebbi adásunk pontosan random időpontban várható.

Haszprus

draw_table_from_array()

©   Haszprus   |   css fejlesztés howto php sql

Gyakran előjövő probléma, hogy a látogatónak szeretnénk megadni a lehetőséget a táblázataink rendezhetőségére. Erre nyújt megoldást a draw_table_from_array függvényem, amelyet egy munkám során hoztam létre. Nemcsak egyforma (teljesen css-ből formázott) megjelenést nyújt a táblázatoknak, de erőfeszítés nélkül lehetővé teszi, hogy bármely oszlop szerint rendezzük őket. Egy-egy tábla előállításához a kód pusztán ennyi, az sql lekérdezéstől a felhasználó által rendezhető tábla megjelenítéséig:

Az eredmény:


A dolog működése élőben is kipróbálható [itt egy link volt, közben meghalt].

Haszprus

Archive menu revamp

©   Haszprus   |   css english fejlesztés

As you can see, it spares a lot of space and it doesn't screw up the page layout when opened. This menu structure has been achieved by using a two level unordered list (standard semantic blind friendly xhtml) and some pretty heavy css usage. The underlying php script needed only a tiny tweak, 'cause the month list was already generated by a generic function.

What you can't see on this image is that, in my opinion, it's really ergonomic. You can point to the month of your choice really fast (because the list is clean and short, there is absolutely no clutter), and the whole hide-and-show thing works just like someone would expect.

Sorry for my English, I'm just practising.

Haszprus

Thumbnailes képnézegető

©   Haszprus   |   css design fejlesztés javascript php

Az a blogra pakolt lightweight galéria még mindig lightweight de egyre durvább lesz… Most már tud onthefly, oldalújratöltés nélkül album nézetet is. Ilyet:

Nomeg billentyűzetről jobbra-balra lapozgatni, ha valaki nem lenne naprakész a kommentekből.

Az a helyzet hogy teljesen lightweight módon megoldottam egy atombrutál full-featured highly advanced client-side cached galériát, amihez se külön db nem kell, se adminfelület, se semmi, full automatikusan onthefly ráépül a bejegyzésekre. 37 sor php (!), 60 sor html, 121+64 sor javascript (és 139 sor css). Az egész cucc 10 KB. Csak viszonyítás képpen a Haszprus Private Gallery 110 KB, amiből az adminfelület 26 KB - ez utóbbi ugye itt nem is kell.

Ki lehet próbálni (akárhol az ablakban katt, előjön az album nézet), ráadásul egy olyan képgalérián, ami egy egyelőre nem is publikált bejegyzésből táplálkozik (így a bejegyzésre mutató link nem fog működni (számotokra)… ez nem bug).

Örülnék, ha adnátok valami feedbacket, hogy mégis milyen lett.

ie-ben az album nézet nem jelenik meg de pillanatnyilag lesz*rom. a jó hír hogy valszeg ez elég könnyen javítható, csak rá kéne nézni hogy pontosan mi a hézag.
Update szep. 03. 01:11: na megy.

Haszprus

Képlapozó - blog 2.9

©   Haszprus   |   blog css design első fejlesztés javascript php update version history

Íme az überblog legújabb, highly advanced feature-e, a képlapozó.

Semmiféle adatbázis-módosítás nem kellett hozzá, egyszerűen kideríti hogy a képet melyik bejegyzésből linkelték (mégpedig erőforráskímélően, de még lehet rajta fejleszteni), megnézi hogy a bejegyzésben mely képek veszik körbe őt (azaz melyik kép van előtte és utána (ezen is lehet gyorsítani)), belinkeli azokat, sőt belinkeli magát a bejegyzést is, így megkönnyítvén a navigációt. Ha jók lesztek akkor előbb-utóbb talán megcsinálom javascriptesen széjjelcache-elve is, mint a private galleryt, 0 sec késleltetéssel, lapújratöltés nélkülire.

Ha az egeret az előző/következő link fölé viszed, kapsz egy kis thumbnailt is arról, hogy mégis milyen képre jutsz a linkre kattintva. Mindez nem feltétlen lóg rá egyébként a képre, alapvetően 1280*1024-re illetve afölé van kitalálva mindez, ahol rálógás nincs, sőt az egész kép kifér.

Azt kell mondjam, ez kurvajó lett. Elégedetten dőlök hátra. Vegyük észre hogy ez egy lightweight galleryt akaszt a blogra, amely így 2.9-es stádiumba léphet.

A dolog működését megtekintheted például itt, vagy nyilván bármelyik bejegyzésnél, ahol van mik között lapozgatni.

Update aug. 23. 18:18: lett 0 sec delayes lapozás, cache-eléssel, oldalújratöltés nélkül. Tudnivalók:

  • Első képletöltéskor nincs cache-elés, megelőzendő a fölösleges cache-elést. Ez leghasznosabb olyankor, amikor a júzer külön fülekre megnyitogatja a képeket egyesével, ilyenkor a cache-rendszer nem okoz fölösleges többletforgalmat.
  • Abba az irányba cache-el, amerre a néző lapoz.
Haszprus

Topicfigyelő rss

©   Haszprus   |   fejlesztés rss xml

[Olvasói kérésre] csináltam egy olyan RSS feedet, amelyik értesít, ha válasz érkezik egy hozzászólásodra. Igazából ez csak egy topicfigyelő. Kicsit konkrétabban, azokat a hozzászólásokat szedi be a feedbe, amelyek olyan bejegyzésekhez érkeznek, amikhez hozzászóltál.

Elérése: blog.haszprus.hu/rss/kommentek/?follow=x, ahol x a user id-d, az én esetemben pl. 1. A user id-det megtalálod az adatlapodon, de ez a link már kapásból elő van készítve az oldal rss-listájában is, amennyiben be vagy jelentkezve. (Firefoxnál a címsáv jobb szélén rss ikonra klikk…)

A címke ismérvei a web 2.0-ban a következők:

  1. egy objektumot többel is felruházhatunk (szemben a kategóriákkal)
  2. a felhasználó egyszerűen hozhat létre újat

Ebből kisül, hogy a blogon eddig is félig-meddig címkézés volt, mert bár én kategória szót használok (mert szvsz az értelmesebb), a bejegyzések mégis tartozhatnak több kategória alá.

Na mostantól viszont az adminfelületen egyszerűen lehet új kategóriákat (ha úgy tetszik címkéket) is létrehozni, amivel vélhetően élni is fogunk. Azonban ezek nem lesznek egyenértékűek a régi alapkategóriákkal, melyekből nagyjából 20 van. Azokból kötelező lesz választani legalább egyet minden bejegyzéshez, az újakból nem. Az archívum is a régiek alapján fog listázódni továbbra is. Az új címkéket elsősorban arra kívánom használni hogy a nagyon egybetartozó bejegyzéseket valamilyen módon összefogjam. Ez megtörténik egyrészt a bejegyzés címe alatti kategórialinkeléssel, másrészt a menüben található intelligens bejegyzésajánlóval (ami tovább okosodott az új feature-nek megfelelően).

Jah és most már nem muszáj évre sem szűkíteni az archívumot.

Ebben a szellemben az első néhány címkénk (vagy minikategóriánk): tűzijáték, skandinávia, hollandia, apple. Utóbbi csak a trend kedvéért. Majd lesz több is, de okosan, nem pedig hülyén. Ezzel elértük a blog 2.8-at.

Haszprus

Nagy Skandináv körutazás

©   Haszprus   |   fejlesztés fotózás külföld skandinávia

Szóval ezen vettem részt, jó volt, készült 1600 kép, és egyelőre még nem tudom, hogy miként publikáljak belőlük.

Technikai részletek: van nekem például egy Haszprus Private Gallery nevű site-om, amit félig-meddig átírtam úgy, hogy publikusan is tudjon üzemelni. Ez tud javascriptes képcache-elést meg minden jóságot, elég advanced cucc, cserébe nincs integrálva a bloggal, de tervbe van véve. Ezt akár gyorsan le is fejleszthetném. A harmadik lehetőség, hogy a szokásos módon felpakolászom a képeimet szimplán a blogra.

Ugyanakkor azt is el kéne döntenem, hogy csoportosítom-e valamilyen módon a képeket, és ha igen akkor hogyan, valamint fűzök-e hozzájuk szöveget.

Nyilván csoportosítás nélkül például elég necces lenne 200 képet felrakni, pedig szvsz biztos van ennyi, ami érdekesnek nevezhető.

Csoportosíthatnám helyszínek szerint, illetve aszerint is, hogy mik az ismeretterjesztő/beszámoló/turistafotó jellegű képek, és mik azok, ahol valami apró érdekességet ragadtam meg, ami igazából nem jellemzi a látottakat, pusztán maga a kép jó.

No amíg ezekről döntök és feldolgozom a raw képeket (brutál munka), pár link, hogy ne unatkozzatok, csak előbb lőjétek be a monitort úgy, hogy az alábbi szürkeskála valamennyi árnyalatát meg tudjátok különböztetni A-tól Z-ig:

Haszprus

HPG PE

©   Haszprus   |   fejlesztés fotózás

A képek ettől függetlenül nem biztos hogy ebbe, vagy csak ebbe fognak felkerülni, mint ahogy az is teljes homály hogy esetünkben a soon vajon mit jelent.

Haszprus

Spamfiltert csak jól

©   Haszprus   |   fejlesztés

IRCQuote fight! In the ring:

Haszprus
Ezt [a kommentet] rakd be plz. Spamnek hiszi a motorod.
(privacy power)betettem, thx. a ebony ele meg moge kerult egy-egy * a szolistaban, igy gond nelkul illeszkedett a lebonyolit szora
Haszprus
Nem ez a baj hanem hogy egyszerűen rossz a spamfiltered. Mert nem súlyozza a kommenteket, amennyire tudom. Egy spamszűrő mindig súlyozza a szövegeket, nem pedig egyetlen szempont alapján rögtönítélő bíróságot játszik.
Amint pontozni kezded a kommenteket, számos lehetőség tárul eléd. A legújabb újításom amilyen egyszerű olyan remek: magyar ékezetes betűt tartalmazó komment aligha lehet spam, nálam a $spamfactor-t csökkenti eggyel.

Amit mondani akarok, hogy több (2) blogon ütköztem bele az elmúlt időkben rosszul megvalósított spamszűrőkbe (nem mintha ennél több blogon kommentelnék rendszeresen). Egyetlen szempont alapján rögtönítélő spamszűrőt ne csináljatok sosem, mindig mérlegeljétek hogy az adott komment vajon spam vagy csak valaki leírja a hamis Rolexekről a véleményét. És ez igenis azt jelenti hogy kell valamilyen jóságot mérő eljárás is, azaz hiába szerepel a Rolex szó a kommentben, ha például olyan szavak vannak mellette, mint pl. hanem, ellenben, stb, akkor az valószínűleg egy magyar nyelvű ember véleménye lesz, ami nem spam.

Montana

Üdv! (Montana a fedélzeten)

©   Montana   |   fejlesztés hollandia life történelem

Sziasztok! Én lennék a legújabb társszerző. Először is szeretném megköszönni mindazoknak, akik bíztattak és támogattak , de főleg Haszprusnak, hogy ideenged. Egy pár szót magamról: BME műszaki infó, most éppen bizonytalan időre jegelve, Fernuni Hagen, infó félgőzzel. Fórum-, blog- és csokifüggő vagyok, szívesen főzőcskézek, szeretek kirándulni és utazni. Tőlem nem fogtok olyan szép fényképeket látni, mint a többiektől, legfeljebb szemléltetés céljából, ha nagyon muszáj. Nem fogtok szakmai témáról olvasni, hadd ne részletezzem, hogy miért. Filmekről se, hacsak nincs számottevő érdeklődés az Oroszlánkirály 5 vagy a Gagyi romantikus vígjáték 32 iránt. És hogy örüljetek, smink- és randitippek, horoszkóp és divat témákról se. Jó, de akkor miről?!

Mint az a kommentjeimből is kiderült, egy ideje Hollandiában élek, így adja magát, hogy az itteni dolgokról írjak időnként egy-egy posztot. Nem ígérem, hogy rendszeresen, azt se, hogy érdekesen, de azért igyekszem. Most jelzem, nem fogom minden alkalommal körülírni, hogy a legtöbb holland ilyen, persze akadnak kivételek, úgyhogy nem akarok általánosítani. De, általánosítok és kész, egyszerűen a hollandok. Szóval, mi jut eszedbe, ha Hollandiára gondolsz? Sajt, szélmalom, bicikli. (És persze fű ) Nagyjából ezek körül fognak forogni az írásaim.

Haszprus

Olvasóközönségek uniója

©   Haszprus   |   biznisz fejlesztés

Néha lehetne csinálni olyat, más oldalakkal kooperálva, hogy két blog is ír ugyanarról a témáról, de megállapodnak, és csak az egyiknél lehet hozzászólni, a másik pedig megkéri az olvasóit hogy a túloldalon kommentálják a témát. Költség: egy-egy bejegyzésnél a kommentek elvesztése. Ez gyakorlatilag zéró költség. Haszon: esetlegesen új olvasók szerzése.

Tulajdonképpen kívánatos lenne ezt igen gyakran több bloggal karöltve is előadni, a profit bizonyosan nem maradna el. (Vagy ki tudja, de szerintem érdemes lehet megpróbálni.)

Haszprus

Blogok ura - A király visszatér

©   Haszprus   |   fejlesztés

Ismét itt az Überblog. Főleg azoknak szól ez, akik rss-t is járatnak, a többiek valszeg enélkül is észlelnék a dolgot midőn ezt a lapot látják a dns error helyett.

Ja, költözött a szerverpark, azért nem voltunk elérhetőek csütörtök délutántól.

Haszprus

Adatbányászati alapok

©   Haszprus   |   adatbányászat fejlesztés php

Ki akarjuk bányászni egy időjárásjelentő oldalról hogy hány fok van, hány fok lesz, stb.

/**
 * $source szovegbol kibanyassza a 
 * $id id-ju div erteket es 
 * $type tipusra castolva visszaadja
 */
function get_value_by_div_id($source, $id, $type) {
   $matches = array();
   $regexp = "<div.*?id\=\"$id\".*?>(.*?)<\/div>";
   preg_match("/$regexp/s", $source, $matches);
   settype($matches[1], $type);
   return $matches[1];
}

Így pl.

$source = '... <div id="current_temps">26&amp;amp;deg;C</div>... <div id="current_rfval">28&amp;amp;deg;C</div>...'; $t = get_value_by_div_id($source, "current_temps", 'int'); $e = get_value_by_div_id($source, "current_rfval", 'int'); echo "Hőmérséklet $t fok (érzésre $e)";

A kimeneten:

Hőmérséklet: 26 fok (érzésre 28 fok).

Haszprus

Szenny, mocsár, fertő

©   Haszprus   |   fejlesztés

Szerintem szégyen egy blogra nézve ha a kommentjeit fellapozva rendszeres anyázást és személyeskedést tapasztalhat benne az ember (különösképpen ha más egyebet pedig nem), hiszen minősíti a látogatóközönséget (főképpen minősíti a gazdáját ha ebbe még be is száll, vagy csak szimplán megtűr egy ilyen szeméttelepet (azaz mindent a látogatottságért)). Persze szégyen a kommentek szerzőjére nézve is, de ez most kevésbé fontos. Ennek megfelelően az elmúlt napokban kemény moderációt alkalmaztunk (~20 törölt komment), és a továbbiakban sem szándékozom megtűrni az ilyesmit.

És noha privátban befutott olyan kérés hogy legyen userekre alkalmazható ignore list, ilyen nem lesz, éspedig többek közt azért, mert lehetetlenné tenné az érintett kommentfolyamok értelmezését.

Haszprus

Időzített tesztbejegyzés

©   Haszprus   |   fejlesztés

Most már ilyen is van. Ez elvileg kb. 16:55 körül jelenik meg. GUI egyelőre nincs hozzá, db-ben kell a b_pub-ot 2-re beállítani, és megadni b_datum b_ido-nek egy időpontot amikor a bejegyzés várólistába kerülhet. Onnantól a szokásos várólista-szabályok érvényesek rá (pl. éjjel nem jelenhet meg, stb).

Update aug. 29. 13:51: ez a bejegyzés mostantól publikus.

Haszprus

A Züberblog a mefiblogon

©   Haszprus   |   fejlesztés

Az überblog a sajtóban, konkrétan mefinél:

Igen, Haszprus blogjáról lesz most itten szó. Emlékszem, mikor először rátaláltam (ez nagyjából másfél éve lehetett, nem tudom pontosan), éppen valami vizsgaidőszak-in-progress üzenettel az egész blog le volt zárva a nem regisztrált felhasználóknak. Na mondhatom ez kellően fel is csapta a csőrömet, hát mi az, hogy valahonnan kizárják a nem regisztrált olvasót?!

Aztán megnyílt a blog, én meg regisztráltam. Később jött aztán a nagy kommentverseny. Mert ugye Haszprusnál van egy dumagépek funkció, valamint vannak ugye a hét dumagépei. Ez akkoriban még elég egyedinek számított, aztán jött az, hogy mindenki ilyet akart, bezony, még én is, bár nekem el van dugva (ide, ni).

Haszprus blogjában leginkább a technikát lehet szeretni, mert bejegyzés az elég ritkán van, és ha van, az sem mindig Haszprustól, és gyakran webfejlesztés, vagy hasonló technikai témában. Ráadásul, nincs olyan blogfunkció, ami az Überblogon ne lenne fellelhető.

Haszprus

Überblog sessionkezelés

©   Haszprus   |   fejlesztés

A kezdetek óta úgy kezeli az überblog a sessionöket, hogy ha valamely másik böngészőből vagy számítógépről lépsz be, akkor a korábbi bejelentkezéseid elvesznek. Azaz pl. ha otthonról szoktál bejelentkezni de bejelentkezel netcaféból is, akkor ez utóbbi kilöki az otthoni sessionödet, amikor pedig otthon és újra bejelentkezel, az kilöki a netcafés sessiont.

Ennek megvan az előnye, gondolom egyértelmű a fenti példából (nem maradsz hosszú ideig bejelentkezve a netcaféban). Ugyanakkor hátrány is lehet hogy a sessionök elvesznek. Ez mostantól ki van küszöbölve, cserébe viszont netcaféból távozáskor jelentkezzetek ki…

Ezzel kapcsolatban még finomítás várható.

Haszprus

iWIW biztonsági fejlesztések / auto login

©   Haszprus   |   fejlesztés hwsw iwiw
Május 16-tól számos, a rendszer biztonságát javító fejlesztést aktiválni fogunk.
1. megszűnik az automatikus bejelentkezés funkció
[...]

A legközelebbi biztonsági fejlesztés keretein belül meg az egész iwiw megszűnik gondolom.

De most ez mér jó baszki, aki nyilvánosan hozzáférhető számítógépen becsekkolja az automatikus bejelentkezést, az haljon meg, a többieknek viszont rém kellemetlen. Komolyan ez a legnagyobb rémálom amit el tudok képzelni, hogy egy oldalon állandóan be kell jelentkezni.

Update 13:36: megoldás a problémára: adriankoooo iwiw autologin scriptje (seo: iwiw automatikus bejelentkezés, iwiw auto login, iwiw autologin greasemonkey script)

Haszprus

CSS trükkök: attribútum selectorok

©   Haszprus   |   css fejlesztés

Nem igazán nevezném trükknek, de gyakorlatilag sehol sem láttam még alkalmazni, márpedig a Firefox 2 pl. már érti. A többit meg magasról. (Vigyázat: mindig az oldal gazdájának egyéni döntése, hogy a többi böngészőt magasról-e, e tekintetben legfeljebb irányelvek adhatók különféle indoklásokkal ellátva.)

Szóval pl. van egy pix_section classunk, amely a benne helyet foglaló képeknek 1 pixeles fekete keretet ad. Ok. Van emellett egy right classunk, amely bármely blokkszintű elemet jobbra floatol. Ok. Szeretnénk, ha a képeink jobb oldalon jelennének meg fekete kerettel. Nyilván:

<div class='pix_section right'>...</div>

Csak az a baj, hogy a baloldalon folyó szöveg hozzá fog érni a képeinkhez rossz esetben, hiszen paddinget senki se állított be. És nem akarunk se a righthoz, se a pix_sectionhöz paddinget. Hozzunk létre egy padding classt? Létrehozhatunk, de van másik megoldás is:

div[class='pix_section right'] { padding-left: 10px; }

Ez css selector azokat a diveket választja ki, amelyeknek class paramétere 'pix_section right'. Zsír. Megoldottuk a paddinget anélkül, hogy erre vonatkozó utalást kellett volna a html-be írnunk.

A témáról bővebben a W3C CSS dokumentációjában.

Ps. ígértem, hogy a sortörésre mutatok egy másik megoldást. Íme:

*[class~='keprendezo'] + * { clear: both }

A * bármely elemre illeszkedik, a [class~='keprendezo'] azokra, amelyeknek legalább egyik classuk keprendező. Az A+B szintaktika pedig egy olyan B elemre illeszkedik, amely előtt egy A áll, azaz jelen esetben minden elemre, amelyet egy képrendező előz meg.

Haszprus

Régi bejegyzések vs kommentek

©   Haszprus   |   fejlesztés

Wordpresshez van egy olyan plugin, ami letiltja a kommenteket x időnél régebbi bejegyzéshez, kommentspam csökkentési célzattal. Ez szerintem egy atombéna megoldás a problémára, de lehet hogy én más célból be fogom vetni.

Kevés téma van ugyanis, amihez mondjuk egy év elteltével még mindig érdekelne hogy ki milyen kommentet fűz hozzá.

… Na kész is. Az egyéves limit még változhat bármerre. Annyit még beletettem, hogy ha van friss komment amire lehet reagálni (azaz pl. a 365. napon vki hozzászól), akkor a legutolsó kommentre még egy hétig lehessen reagálni. (Szóval akár örökkön is nyitva lehet bármely topic, ha max egy hetente hozzászólnak.)

Haszprus

CSS trükkök: sortörés

©   Haszprus   |   css fejlesztés howto

Adott egy csomó float left-es elemünk, pl. thumbnailek egymás után. Szeretnénk, ha a float left ellenére az ezek után következő szöveg (vagy akármi) nem folyna rá a thumbnailjeinkre.

Többféle hagyományos megoldás létezik, ezek közül néhány:

<br clear='all' /> <br style='clear: both' /> <div style='clear: both'></div>

Fontos látni, hogy mindegyiknél arra van szükség, hogy a szöveg írásakor tudatában legyen az író, hogy az előtte levő izére rá fog folyni az ő szövege, és ezért beszúrja a fenti kódok vmelyikét. Ez elég szopó, hiszen a formázást minél inkább szeretnénk a tartalomtól elszeparálni.

Van egy másik megoldás is. Ha a float leftes elemeink pl. egy 'keprendezo' classú divben vannak, akkor a következő stílus segítségével a keprendezo után automatikusan sortörés lesz:

.keprendezo:after { display: block; clear: both; content: ''; }

Ekkor a képrendezőt követő paragrafusnak nem kell tudnia róla, hogy ráfolyna a képrendezőre, a képrendező ugyanis beszúr maga után egy sortörő blokkot. Is nice. I like.

Egy másik alternatív megoldás ugyanezen problémára CSS attribútum selectorok bejegyzésben.

Haszprus

Basic programming skills 1 - hét napjai közti különbség

©   Haszprus   |   fejlesztés howto labvez php

Adottak a hét napjai (H, K, Sze, Cs, P, Szo, V), valamint egy adattábla, benne minden rekordhoz két nap. Számítsuk ki, hogy a két nap között hány-hány nap van. (Pl. hétfőtől péntekig, majd péntektől hétfőig eltelő napok száma.)

A nem javasolt megoldás: veszünk egy külső switch case szerkezetet, amelynél az eseteket az első napok szerint alakítjuk. Hét eset. Majd ezek mindegyikében egy újabb switch case, aszerint, hogy a második nap mi. 72 = 49 eset.

switch ($elsonap) {
 case 'H': 
   switch ($masodiknap)
     case 'K':   echo '1 ill 6 nap van koztuk'; break;
     case 'Sze': echo '2 ill 5 nap van koztuk'; break;
     ...
 case 'K':
   switch ($masodiknap)
     case 'H':   echo '6 ill 1 nap van koztuk'; break;
     case 'Sze': echo '1 ill 6 nap van koztuk'; break;
     ...
 ...
}

Ez tényleg nem túl jó, egyrészt a 49 elágazás miatt, másrészt mert ha mondjuk angolul is ki akarjuk írni az eredményeket akkor már 2*49 elágazásunk lesz. Egy fokkal jobb megoldás, ha a napokhoz számokat társítunk, majd ezeket kivonogatjuk egymásból mod 7:

switch ($nap) {
 case 'H': $n = 1;
 case 'K': $n = 2;
 ...
}

Csakhogy ezt a társítást lehet switch case nélkül is, és ezúttal egy végleges, immáron meglehetősen rövid és komplett megoldás:

function eltelt_napok($napchar1, $napchar2) {
 $napok = array('H' => 1, 'K' => 2, 'Sze' => 3, ...);
 $nap1 = $napok[$napchar1];
 $nap2 = $napok[$napchar2];
 $diff1 = mod(max($nap1, $nap2) - min($nap1, $nap2), 7);
 $diff2 = mod(min($nap1, $nap2) - max($nap1, $nap2), 7);
 return array($diff1, $diff2);
}

A mod fv természetesen megvalósítandó vmi tetszőleges módon. Lehet hogy a php-ben van is rá vmi, én hirtelen nem találtam, úgyhogy:

function mod($n, $q) {
   $n %= $q;
   if ($n < 0)
      $n += $q;
   return $n;
}

Update 17:13: sőt a mod fv is elhagyható, ld. tbela kommentje.

Haszprus

style=3: teh preview

©   Haszprus   |   css fejlesztés

Rágjátok.

style=3

(A html ugyanaz, csak a css-t cseréltem le. Van benne 1-2 bug / dolog amit még nem oldottam meg, és az aloldalak nincsenek megformázva. Firefox 2.0-val megy Windowson 1280x1024-ben, ettől eltérő konfigurációk esetén passz. Ez egyáltalán nem végleges, csak gondoltam kirakom és begyűjtök pár véleményt.)

Haszprus

Korrekt subjecteket a népnek

©   Haszprus   |   bme fejlesztés howto hwsw

Mi lenne ha az info****@sch.bme.hu -ra csak korrektül kitöltött subjecttel lehetne levelet küldeni? Értem ez alatt a kötelező .*\[.*\].* (vagy ha úgy tetszik *[*]*) formázású subjecteket.

Nemkorrekt subjectű leveleket listatagok esetén visszapattintja, nemlistatagok (pl. tanárok) esetén pedig: mint eddig (azaz pl. küldi a listatulajnak, stb).

Alaptantárgyakra közismertek a rövidítések (ld. pl. wikin a tárgyak rövidítéseinek listája), egyéb levelekre meg lehetne pl. használni az [egyeb] subject-prefixet.

Ez egy ötlet, egy kidolgozatlan felvetés, ami sztem egyrészt működőképes lehetne, másrészt sokak életét könnyítené meg. (elsősorban a masszívan filterezőkét)

Már amennyiben technikailag egyáltalán megoldható.

Haszprus

Rekord

©   Haszprus   |   fejlesztés

Mint említettem, pénteken közelében voltunk a látogatottsági rekordnak. A rekord jan 4-én született, 739 visit, pénteken pedig 720 volt.

Tegnap (vasárnap) végül tényleg megdőlt, 755-ig kúszott fel.

Hogy ez minek köszönhető, az elég triviális (számomra). Szóval üdvözlök mindenkit a fedélzeten, ahol vélhetően tovább növekszik a bme-sek koncentrációja

Haszprus

Aggregált log

©   Haszprus   |   fejlesztés

Na, most már van nekünk szépséges aggregált logunk, mely az eddigi egy logtábla helyett kapásból négyben terjeszkedik, és a 33 megás tábla minden lényegi adatát tartalmazza 4 megában. De ez önmagában még semmi, az igazán szép az, hogy az eddigi logtábla a folyamatosan növekvő látogatottság függvényében egyre gyorsabban bővült új rekordokkal, az új logtáblák egyike pedig nagyjából független lesz a látogatottságtól (egy másik pedig teljesen, a harmadik és negyedik pedig csak ideiglenes adattárolásra szolgál a gyors adatrögzítés érdekében).

Haszprus

Mi a kulcs?

©   Haszprus   |   fejlesztés

(adatok: statgép)

Ha csak annyi, hogy ők szélesebb rétegeket érintő dolgokról írnak, akkor az nem érdekel, illetve ezzel tisztában vagyok, és ezen nem akarok változtatni. De van-e még más kulcs amitől jobbak a mutatóik?

Több komment más blogokon? Shamaltot asszem nem szoktam látni kommentelni másoknál, Mefit igen, de ez könnyen származhat abból hogy mi az olvasott blogjaink metszete. Tképpen én azt hiszem csak Mefinél meg Shamaltnál szoktam kommentelni, náluk sem túl sokat, egyéb blogokon meg még elenyészőbb mennyiségben. Az utóbbi időben b3cknél is, de ezzel kifújt a rendszeresen kommentált blogok listája asszem. (Hogy mi számít rendszeresnek abba ne menjünk bele, idetehetnék még egy-két blognevet akár, hiszen ha valahova néhány hetente bekommentelek, az is lehet 'rendszeres'… Most nem erről beszélünk.)

A respekt-lista? Na igen, más bloggerek sokkal könnyebben kommentálnak hozzánk, ha azt látják, hogy barátságosan közelítünk feléjük. Ezt magamon is megfigyeltem.

Shamalt statjában a szeptemberi kiugrást mi okozta. Volt egy Miss Blog(o)szféra verseny, nomeg azt megelőzően a fosblog - ezek nyilván sok új érdeklődőt hoztak a konyhára, és ha nem tévedek akkor jónéhányat sikerült is megtartani.

De Mefi látogatottsága az utóbbi hónapokban mitől ugrott ekkorát? És mi a módja a látogató-/komment-maximalizálásnak a tartalom megváltoztatása nélkül (ill. azon kívül)?

Haszprus

Mesterséges intelligencia - blog 2.7

©   Haszprus   |   blog fejlesztés haszprus version history

A Haszprus Überblogon a továbbiakban a kommentelők intelligensebbnek és igényesebbnek tűnnek, mint amilyenek valójában. Szavak helyesírását egyelőre nem javítjuk, de eltűnnek a félsornyi felkiáltójelek, a csupa kisbetűs szövegek mondatai nagy kezdőbetűt kapnak, az írásjelek után szóköz kerül, a tagmondatok közé megfelelően pozicionált vessző, meg még pár apróság.

Például:

Tesztalanyunk kommentjébe (v.ö.: állatorvosi ló) vesszők és szóközök kerültek, a felkiáltójelek pedig megritkultak.

Legyetek tehát bármilyen hülyék, az überblogon intelligensnek fogtok tűnni. Kommentre fel!

Ja és ez amúgy akkora feature hogy át is lépünk vele a 2.7-es verzióba, utoljára úgyis áprilisban váltottunk.

Tamás

Google Webmaster Tools

©   Tamás   |   fejlesztés hwsw

Most fedeztem fel a címben említett eszközt. Ez amolyan Google backstage a saját site-odra vonatkozóan, már ha hitelt érdemlően bizonyítani tudod, hogy a site hozzád tartozik. Ilyesféle információkat lehet kinyerni belőle:

  • Mikor indexelte utoljára a Googlebot az oldalakat
  • Hány oldalt, hány kilobyte-nyi adatot és mennyi idő alatt tölt le az oldaladról (maximum, átlag, minimum)
  • www-s vagy www nélküli címeket jelenítsen meg a találati listában (állítható is, hogy melyiket szeresse)
  • A domain alatt lévő oldalak PageRank-eloszlása, a legmagasabb PageRank-kel rendelkező oldal minden hónapban
  • Milyen keresőszavakra dobta ki az oldalad a találati listába, és átlagosan hányadik helyen
  • Milyen keresőszavak esetén kattintanak rá az oldaladra a találati listában
  • Leggyakrabban használt szavak a weboldalaidon és a rád linkelő weboldalakon a linkek szövegeiben
  • Talált-e a Googlebot elérhetetlen oldalakat, hibás linkeket a domain bejárása közben

Mindemellett állítható, hogy a Googlebot milyen sebességgel járja be a site-ot (ez a terhelés csökkentésénél lehet hasznos, csak nyilván ebben az esetben ritkábban is fog ránézni a site-ra). A szolgáltatás eléréséhez be kell írnod a weboldalad címét, majd igazolnod kell, hogy az oldal tényleg a tied. Ezt kétféleképpen teheted meg: vagy egy, a Google által megadott META tag-et kell elhelyezned valahova, vagy egy általuk megadott nevű fájlt kell feltöltened a weboldal gyökérkönyvtárába.

Haszprus

Private Gallery: javascript edition

©   Haszprus   |   fejlesztés

Bezony, áthelyeztem a private gallery képnézegetőjét javascript alapokra. Emeletes csúcskirály lett. Kár hogy nem széleskörűen publikus a cucc. Össze-vissza van cache-elve, de teljesen jól, megfelelő sorrendben, a cache nem megy az aktuális kép megjelenítési sebességének a rovására, nem villog, nem rázkódik össze-vissza az oldal az átméretezésektől, a felhasználónak kb. olyan mintha vinyóról olvasná a képeket, tehát zéró késleltetéssel lehet lapozni, sőt még crossbrozer is (legalábbis ffx2 & ie7 tekintetében). Atom. Elégedett vagyok.

Haszprus

Főoldal szűkítése szerzők szerint

©   Haszprus   |   12e barátok fejlesztés haszprus seo

Ha esetleg valakit nem érdekel minden szerző bejegyzése, akkor a főoldalt le tudja szűkíteni egy vagy több szerző bejegyzéseire.

A szűkített főoldal címe így néz ki: https://blog.haszprus.hu/&author=x, ahol x helyére a szerző id-je jön.

Az id-k pedig:
1 Haszprus (2024. feb. 25. 10:58 rám mostantól nem lehet szűkíteni seo megfontolásokból, duplicate content...)
42 Mainframe
7 Tamás
83 ScoobyZoli
28 The GuNN
17 WiZARD
22 Orca

Több id-re is szűkíthetsz, pl. az összes szerzőt kombináló url: https://blog.haszprus.hu/&author=1;42;7;83;28;17;22

Egy esetben azonban hibát dob a főoldal, éspedig ha több napnyi bejegyzést akarsz megjeleníteni, mint ahány napon az adott szerző publikált. Ezt a hibát egyelőre nem szándékozom megoldani. (Workaround: max annyi napot állítasz be, ahányon a szerző publikált.)

Ha a lapletöltési logban (vagy a kommentek közt) úgy látom, hogy van igény erre a feature-re, akkor lehet hogy ezt a hibát kijavítom. (Ez egy állandó többletterhelést róna a szerverre, alapból ezért nem teszem.) Ja és ha komoly igény mutatkozik akkor lehet hogy url helyett a beállításokba is beköltözik a dolog.

Update nov. 01. 08:03: a problémát javítottam valamikor a hetekben.

2024. feb. 25. 10:50 id-k helyett már nevek vannak

Haszprus

Botszűrés

©   Haszprus   |   fejlesztés

A sok lapot letöltő ip-ket naponta felülvizsgálja az új logmanager osztály, feljegyzi őket egy fájlba okosan, és a továbbiakban nem logolja őket. Így lesz mindig szép és tiszta logfájlunk függetlenül az oldalunkat pásztázó keresők számától. (Eddig is szűrtem őket de egyre másra jelennek meg az új ip-k én meg halálosan untam kézileg adogatni őket a listába.)

Ez csak az első fázis, a logmanager majd sokminden mást is csinál, mert pillanatnyilag kb. 50+30 MB-ot emészt fel a blogon az utóbbi 2 hónap spam ill. lapletöltési logja, ami azért ugye érezhetően nem állapot.

Haszprus

Mikor érdemes postolni?

©   Haszprus   |   fejlesztés

Azt mindenki tudja hogy éjjel kevesebb a látogató, a csúcsidőről már eltérő találgatások léteznek, egyesek szerint munkakezdéskor van, mások szerint este. Nos nálunk este van (bár nyáron déltől 22-ig nincs számottevő eltérés), mégpedig az alábbi eloszlás szerint:

A kérdés az, hogy ha már itt van nekünk egy ilyen bejegyzésidőzítő rendszer, vajon érdemes-e annak figyelembe vennie, hogy mikor van a legtöbb egyedi látogató a blogon? Érdemes lehet, hiszen ilyenkor a legnagyobb a valószínűsége, hogy a felhasználók interakcióba tudnak egymással kerülni, azaz ha 5-10 perc múlva visszanéz az adott bejegyzéshez, jóeséllyel már kap is egy választ a hozzászólására, például. Így pörgőbb eszmecserék alakulhatnak ki.

Kockázatok és mellékhatások

1.) Nem tartom elképzelhetetlennek, hogy az ilyen módon koncentrált aktivitás nem lesz-e negatív kihatással a nap egyéb részeire. Mert itt minden folyamat öngerjesztő: ha több a hozzászólás, akkor még többen szólnak hozzá, ha kevesebb, akkor pedig még kevesebben. Valószínűsíthető tehát, hogy a csúcsidőn kívüli időszakokban még lejjebb esne az aktivitás. Talán igen, talán nem, ezt így nehéz a székből ülve megjósolni.

2.) Ha időben egyszerre vannak jelen a userek, könnyebben létrejön az offtopikolás.

A magam részéről a fentiekből tanulva módosítottam néhány paramétert a várólista szabályain, reménykedjünk hogy pozitív hatásai lesznek.

Haszprus

JavaScript

©   Haszprus   |   ajax egyedül fejlesztés javascript

Érdekes módon nem nagyon alkalmazzák a weblapok a js nyújtotta előnyöket. És most egyáltalán nem az ajaxra gondolok, sőt, van hogy amit ajaxszal oldanak meg, azt egyszerű kliens oldali js-sel még gyorsabbá lehetne tenni, akar a halál kommunikálni a szerverrel, azok a fránya csomagok elég lassan terjednek.

Haszprus

Neptun lol

©   Haszprus   |   fejlesztés

Rendezem a vizsgán résztvevők névsorát jelentkezési időpont szerint. Hát a 10 órát nem előrébb rakja mint a 2-9 órát? Jaj de fáj ez nekem. Szerintem tutifrankón a neptunfejlesztőknek ez az első 'programming experience'-e vagy ilyesmi. Le se merem írni legszörnyűbb elképzelésemet, miszerint esetleg text típusú mezőben tárolják az időpontokat. Miféle sql szerver rakná előbbre a 10 órát a 2-9 óránál? Vajon komolyan textben vannak az időpontok?

Haszprus

Moderációs irányelvek

©   Haszprus   |   fejlesztés

Az überblogon a moderációs elvekbe ütközik egy komment, ha…

  1. …valamely szoftver, zene, film, stb. beszerzési lehetőségeit firtatja.
  2. …szalonképtelen fogalmazást tartalmaz.
  3. …meghívót kér valamilyen site-ra.
  4. …duplán lett beküldve.
  5. …fájdalmas butaságot tartalmaz.

Regisztrálatlan hozzászóló esetén több mint valószínű a fenti hibákba eső kommentek törlése. Regisztrált, törzsvendég, pláne trusted user esetén természetesen a fenti moderációs irányelvek alkalmazása visszafogottabb.

A moderációs elvektől bármikor eltérhetünk és bármikor megváltoztathatjuk őket anélkül hogy ebbe a listába felvezetnénk a változást. Az itt felsoroltak nem teszik ki a moderációs elvek teljes és/vagy pontos listáját. Az automata (szoftveres) moderáción kívül minden komment egyedi elbírálás alá esik. Regisztrált felhasználók privmsg-ben értesítést kapnak a kommentjük törléséről. A moderáció erősen szubjektív, a fenti lista tájékoztató jellegű.

Minden komment automata (szoftveres) moderáción esik át rögtön beküldéskor. Ez aszerint dönt a komment…

  1. …visszaállíthatatlan törléséről…
  2. …visszaállítható törléséről…
  3. …várólistába helyezéséről…
  4. …publikálásáról…

…hogy…

  1. …káromkodásokat tartalmaz-e
  2. …spamgyanús-e
  3. …káromkodások ellenére értelmes kommentnek tűnik-e (vannak szavak melyek érvelési folyamatra utalnak)
  4. …a feladója…
    1. …regisztrálatlan
    2. …regisztrált
    3. …megbízható (trusted=1)
    4. …megbízhatatlan (trusted=-1)