Avramov bRlog
Web dnevnik Nemanje Avramovića

Avramov bRlog

Kralj je mrtav, živeo kralj!

jun 26th, 2009 . by Avram

Noćas je, usled srčanog udara, preminuo Majkl Džekson, u svojoj 50. godini. Prosto je zadivljujuće to kako ga desetak godina niko nije skoro nigde ni pominjao, osim kada su ga pre par godina pljuvali zbog optužbi za zlostavljanje dece. A onda kad je odjednom umro, ceo internet je preplavljen vestima o njegovoj smrti, slikama, snimcima, izjavama saučešća, izveštajima, itd… (uključujući i ovaj zapis na mom blogu)

Nikad ga nisam nešto preterano gotivio, verovatno zbog toga što je unakazio svoj fizički izgled silnim plastičnim operacijama, ali moram priznati da je stvarno bio kralj pop muzike i plesa (moon walk, ah yea! :-) ), iako nikad nisam slušao takvu muziku. Ustvari, lažem, sećam se da sam pre nekih 15ak godina, kao klinac, slušao Smooth Criminal. Pa evo, da se podsetimo:

Kralj popa je mrtav, ali će kroz svoju muziku zauvek nastaviti da živi! Što reče Eniac (noćas, u statusu na FB-u), znaćeš da je neko zvezda ako ga nikad nisi slušao a znaš 20 njegovih pesama.

 

Tagovi:

Kayako LoginShare modul za DigiVendor PRO

jun 25th, 2009 . by Avram

Ukoliko koristite DigiVendor za prodaju svog softvera, a podršku korisnicima pružate preko Kayako SupportSuite-a ili eSupport-a, možda biste želeli da dozvolite pristup Kayako softveru (odnosno delu za ticket-e) samo svojim mušterijama. Kayako poseduje fin sistem za deljenje logina sa 3rd party aplikacijama nazvan LoginShare. Jednostavno, modul napisan za LoginShare se povezuje sa 3rd party softverom (ili njegovom bazom podataka), u ovom slučaju to je DigiVendor, i ukoliko pronađe korisnika sa datom e-mail adresom i šifrom – kreiraće istog korisnika u Kayako sistemu i ulogovaće ga. Obratite pažnju da ovo nije SessionShare sistem (tako nešto još ne postoji), tako da se korisnici odvojeno loguju na Kayako a odvojeno na drugu aplikaciju (DigiVendor), ali sa istim podacima.

Danas sam se zezao malo i napravio Kayako LoginShare modul za DigiVendor, za potrebe našeg CubeScripts sajta (uskoro očekujte novi  CubeScripts sajt!) koji možete preuzeti besplatno. Sva uputstva za instalaciju/aktivaciju možete pronaći u readme.txt fajlu u arhivi koju preuzmete.

Ukoliko, pak, koristite Kayako softver za podršku i neki drugi softver i želeli biste da ih integrišete, javite se pa ćemo se dogovoriti za detalje ;-)

P.S. Ovaj LoginShare modul je napravljen za DigiVendor PRO, ali gledajući njegovu strukturu baze, verujem da se može koristiti i za klasičnu verziju DigiVendora.
P.P.S. Uzmite u obzir to da DigiVendor menja korisničku šifru pri svakoj kupovini sa vašeg sajta, tako da će i Kayako šifra biti izmenjena. Moguće je izmeniti DigiVendor tako da ne menja korisničku šifru pri svakoj kupovini, ali o tome ću pisati drugi put.

 

Tagovi:

Čišćenje servera od error_log fajlova

jun 24th, 2009 . by Avram

Ako vam je PHP podešen da greške loguje u error_log fajlovima u folderu skripte (u kojoj se javila greška), posle nekog vremena imaćete prepun server error_log fajlova raznih veličina, a ja sam na svom serveru video jedan od 2 GB! Naravno, najbolje je praviti takve (PHP) skripte koje neće ispljunuti ni jedan ERROR, WARNING ili NOTICE, ali retko ko piše takve skripte. Druga opcija je da isključite logovanje grešaka u PHP-u, menjajući log_errors u PHP.ini fajlu sa On na Off, ili preko .htaccess fajla, korišćenjem direktive php_flag log_errors off
, mada ovo neće raditi na nekim serverima (koji ne dozvoljavaju menjanje PHP konfiguracije preko .htaccess fajla, kao i na onima koji “teraju” suPHP, kao što je ovaj server gde je moj sajt), ali čak i kad isključite logovanje grešaka, postojeći error_log fajlovi su i dalje tu. Malo sam Googlao, i našao jednostavno uputstvo kako rekurzivno ukloniti određene fajlove:

Pokrenite PuTTY, ili neki drugi SSH klijent, zakačite se na server i, pod pretpostavkom da su vam svi nalozi u /home direktorijumu, izvršite sledeću komandu (kao root):

  1. find /home -name \error_log -ok rm {} \;

I spremite se za polučasovno potvrđivanje brisanja error_log fajlova pritiskom na taster Y :-) A u slučaju da ne želite da potvrđujete brisanje svakog fajla ponaosob, koristite ovu komandu (mada, ne bih ja verovao tome, ko zna šta će da obriše :-D ):

  1. find /home -name \error_log -exec rm {} \;

 

Tagovi:

Power Mad

maj 20th, 2009 . by Avram

Danas u Beograd dolazi Džozef Bajden, potpredsednik SAD. Iako je on lično bio za bombardovanje Srbije, odnosno tadašnje SR Jugoslavije i , koliko znam, nikad nije bio nešto preterano naklonjen Srbiji, ova pesma koju sam pripremio nije namenjena lično njemu već čitavoj američkoj spoljnjoj politici, a on, tj. njegov dolazak, je samo povod za ovaj unos na blogu.

Military show is Blastin’ off to Kosovo.
Military show with lightning speed.
Sensitivity? Oh, just a rusty nail in the corporate show.
How many stabs before we bleed?

Those Pinocchios chattering out in stereo,
boy Pinnocchio and his golden deed.
Masculinity? Oh, galvanized in the world wide show
as we fertilise the seed.

Power mad, I didn’t chop the tree down dad
I only try to do what’s right.
Power man, the best friend that you ever had
unless of course you choose to fight.

Power mad, driving out of the shadows,
he never tires when he plays.
Power mad, he’s a streak in the night time
speculating how he’ll take on the world some day.

Originality? Oh, just a rusty nail in a Broadway show.
How many stabs before we succeed?

Power mad, I didn’t drop my pants down dad,
I know my left hand from my right.
Power man, the best friend that you ever had
unless of course you lose the fight.

[preuzmite mp3]

 

Tagovi:

Google blokirao www.avramovic.info

maj 17th, 2009 . by Avram

Jutros videh u Inboxu da sam dobio šest istovetnih poruka od noreply@google.com sa naslovom “Malware notification regarding avramovic.info”. Sve su stigle u 02:08. Prvo sam pomislio da je neki spam/scam, međutim, kad sam proverio – nije.

Evo sadržaja mejla:

Dear site owner or webmaster of avramovic.info,

We recently discovered that some of your pages can cause users to be infected with malicious software. We have begun showing a warning page to users who visit these pages by clicking a search result on Google.com.

Below are some example URLs on your site which can cause users to be infected (space inserted to prevent accidental clicking in case your mail client auto-links URLs):

http://www.avramovic .info/cv.pdf
http://www.avramovic .info/contact

Here is a link to a sample warning page:
http://www.google.com/interstitial?url=http%3A//www.avramovic.info/cv.pdf

We strongly encourage you to investigate this immediately to protect your visitors. Although some sites intentionally distribute malicious software, in many cases the webmaster is unaware because:

1) the site was compromised
2) the site doesn’t monitor for malicious user-contributed content
3) the site displays content from an ad network that has a malicious advertiser

If your site was compromised, it’s important to not only remove the malicious (and usually hidden) content from your pages, but to also identify and fix the vulnerability. We suggest contacting your hosting provider if you are unsure of how to proceed. StopBadware also has a resource page for securing compromised sites:
http://www.stopbadware.org/home/security

Once you’ve secured your site, you can request that the warning be removed by visiting
http://www.google.com/support/webmasters/bin/answer.py?answer=45432
and requesting a review. If your site is no longer harmful to users, we will remove the warning.

Sincerely,
Google Search Quality Team

Kada sam na Google-u otkucao “avramovic.info” imao sam šta i da vidim – “This site may harm your computer.” Kada kliknem na rezultat, Google pokazuje upozorenje i ne dozvoljava klijentu da ode na moj sajt.

google-result

Kada probam direktno da odem na sajt – Firefox izbacuje slično upozorenje:

firefox-warning

Pogledao sam source kod (iz browsera) glavne stranice svog sajta i našao kriptovani JavaScript kod na samom početku stranice, pre <HTML> taga. Zatim sam pogledao fajlove na serveru, prvo header i footer Wordpress teme koju koristim na sajtu i nisam našао ništa, da bih u index.php fajlu samog Wordpress-a naišao na php kod koji generiše gore linkovani JS kod i ubacuje ga na stranicu. Odmah sam ga, naravno, uklonio, i zatražio ponovni review sajta iz Google Webmaster Tools-a, kako je i savetovano. Sada čekam na izbacivanje sajta sa blackliste.

Nemam pojma otkud taj kod u index.php fajlu. Proverio sam neke foldere i fajlove koji su ranjivi i preko kojih je ranije upao backdoor na ovaj blog, ali nigde nisam našao ništa sumnjivo. .htaccess fajlovi nisu menjani, nema novih/sumnjivih/izmenjenih php fajlova, osim ovog index.php fajla koji je ubacivao maliciozni JS na sve stranice sajta. Ostaje jedino mogućnost da je malware na nekom drugom sajtu koji se hostuje na istom serveru i da je on uspeo da izmeni index.php fajl na mom sajtu. Zato sam sad stavio chmod 444 na index.php, što bi trebalo da svim korisnicima na serveru dozvoli samo čitanje ovog fajla, ne i pisanje u njega.

 

Tagovi:

Dve godine

april 28th, 2009 . by Avram

Eh… danas je dve godine od kad je moj brat Filip nastradao. Što se mojih emocija tiče, ništa novo u odnosu na prošlu godinu, s tim da sam za ove dve godine emotivno prošao dosta toga, od duboke i dugotrajne depresije do trenutaka kada sam se sasvim dobro osećao. Zapostavio sam bio i obaveze i prijatelje; gomilu prijatelja sam odgurnuo od sebe bez nekog posebnog razloga – jednostavno sam želeo da budem sam. Nikada ni sa kim nisam pričao o svojim mislima i osećanjima, niti sa nekim od prijatelja, a ni sa nekim stručnim licem, a možda bi trebalo, ali ja sam uvek u fazonu da reči nikako ne mogu da isprave ono što se desilo (i ne samo reči, nego ništa ne može to da ispravi) tako da ne želim (odnosno do danas nisam želeo) ni sa kim da pričam o bilo čemu vezanom za to. Ipak, da ne bude sve tako mračno, moram priznati da od kako je stiglo proleće i ja sam znatno bolje raspoložen, vratio sam se školi i nekim aktivnostima koje sam već odavno skroz zapostavio, a koje čine da bar na trenutak zaboravim…

I za kraj, Filipe, samo za tebe:

 

Tagovi:

Četiri godine bloga

april 24th, 2009 . by Avram

Ni sam ne bih znao da se upravo danas navršava četiri godine od prvog unosa na Avramovom bRlogu, da nisam juče slučajno naleteo na Urketov Wordpress plugin Time Machine (hvala Deda), koji u sidebaru prikazuje zapise koji su objavljeni na današnji dan, odnosno istog datuma, ali prethodnih godina. Priznajem da sam juče bio pomalo razočaran kad sam instalirao plugin i video da na jučerašnji dan ni jedne u prethodne četiri godine nisam ništa pisao, ali evo već jutros se obradovah kad videh dva unosa objavljena na današnji dan.

Od tad je prošlo dosta vremena, svašta se izdešavalo i bilo je perioda kad sam češće i kad sam ređe pisao (trenutno stanje je takvo da retko pišem), ali bitno je da se piše, jer dok se piše ima i ljudi koji će to da čitaju ;-)

Želeo bih da pozdravim sve ljude koji prate ovaj blog kao i one koji su ga barem u nekom vremenskom periodu pratili, i nadam se da ćemo se još dugo čitati. Hvala vam svima!

 

Tagovi:

Uradi sam: Difjuzer za blic

april 4th, 2009 . by Avram

Iskusniji fotografi verovatno već znaju za ovaj trik, dok profesionalni fotografi verovatno i nemaju potrebe za ovako nečim, ali nađoh ovo negde pa da objavim na blogu. Naime, svetlost blica ponekad može da bude gruba, odnosno prejaka, tako da slike (portreta) mogu da ispadnu neprirodne zbog prevelike osvetljenosti. Sada ću opisati kako možete napraviti difjuzer koji će raspršiti i umekšati svetlost blica, a vaš fotoaparat će automatski prilagoditi ekspoziciju kako bi nadoknadio smanjenu jačinu blica. Sam proces izrade traje kraće nego pisanje ovog unosa na blogu.

Ono što vam je potrebno:

  • fotoaparat sa iskačućim blicem
  • bela plastična kutija za film (ovo možete naći u bilo kojoj fotografskoj radnji)
  • skalpel ili žilet (budite ekstremno pažljivi ako koristite žilet)
  • lenjir
  • nešto za crtanje linija po kojim ćete seći kutiju (ja sam koristio običnu iglu)

difjuzer-001

Izbacite blic na vašem fotoaparatu i izmerite mu dužinu i širinu dok je izbačen. Na mom fotoaparatu su dimenzije iznosile 35×10 mm. Zatim uzmite kutiju od filma, skinite poklopac i (prvo obeležite pa onda) isecite pravougaonik na kutiji, s tim što bi na izmerenu dužinu trebalo da dodate nekih 5 mm zbog poklopca. Dakle, ja sam isekao pravougaonik 40×10 mm. Sečenje kutije može biti malo nezgodno zato što se posle prvog reza ista počinje kriviti jer je poklopac skinut. Samo polako i uspećete u tome. Kada završite navucite kutiju na blic i vratite poklopac. Voila – to je to, difjuzer je gotov.

difjuzer-004 dsc00131

E sad, ja nisam neki preterano lep model, ali čak se i na meni vidi da su boje prirodnije kada se koristi difjuzer:

difjuzer-002difjuzer-003

Uživajte u prirodnijim fotkama ;-)

 

Tagovi:

Izvor u šumi

april 2nd, 2009 . by Avram

Danas sam posle 7-8 godina odlučio da odem do izvora (česme) u obližnjoj šumi. Do izvora se vrlo lako stiže jednim putem, preko nekih velikih kamenih stepenica, ali ja sam hteo da vidim da li mogu da dođem do njega ako idem kroz šumu. Odnosno nisam baš išao kozijim stazicama koje vode pored potoka (koji, opet, ide od izvora), mada sam i te stazice kao klinac poznavao kao sopstveni džep – ovaj put sam odlučio da idem šumskim putevima kuda seljaci (ne u pogrdnom kontekstu) prolaze kad idu do svojih njiva ili čega već.

Posle 7-8 minuta hoda od kad sam napustio naselje naišao sam do prve raskrsnice, odnosno račvanje puta na dve strane, gde, po sećanju, treba da se skrene levo, kako sam i uradio. Ubrzo zatim sam shvatio da sam pogrešio, ali ne u izboru puta, već u tome što sam krenuo u šumu u patikama – sve je kaljavo i puno vode. Jedino gde može da se prođe je po ivici puta, a tu ima raznog žbunja koje neretko ima i trnje :S No dobro, što se kaže – kad sam počeo da jedem govna, onda ću ih jesti do kraja :-)

Nastavio sam istim putem još nekih desetak minuta, ali posle toga, na moje iznenađenje, naišao sam na kraj puta. Odnosno kraj širokog puta, dok je sa leve strane jedan uski putić vodio na neko poljanče. Već sam razmišljao o tome da se vratim nazad, ali sam krenuo tim uskim putićem da vidim šta ima tamo, kad imam šta i da vidim – pored te čistine prolazio je drugi put. Izašao sam na njega i krenuo desno, jer sam znao da se levom stranom vraćam u naselje. A ovaj put je bio još gori od prethodnog – prava močvara. Ko me terao da uopšte krećem? :-/ Posle samo par minuta naišao sam na nekog starijeg čoveka koji je čuvao ovce i posle par neuspelih pokušaja da mu privučem pažnju, napokon me je video. Pitao sam ga kako da dođem do česme, a on mi je rekao da samo nastavim pravo, što sam i uradio. Posle nekih desetak minuta hoda po močvarnom predelu ugledao sam česmu.

izvor-002

Malo sam se igrao sa fotoaparatom (duga/kratka ekspozicija) pa evo i tih fotkica. Nažalost, može se videti da i ovde u prirodi nije sve tako čisto (pikavci u vodi), mada je voda pogodna za piće i čistija je od većine voda koje možete naći u Mladenovcu.

izvor-008

Uh, tek sad vidim na ovoj slici sa dugom ekspozicijom kako su dobro ispale ove kapljice što odskakuju od vode. Maestralno. Mada, ni kratka ekspozicija nije loša – bukvalno sam uhvatio trenutak i zamrznuo ga. Ah, izgleda da napokon spoznajem lepotu fotografije (-:

I za kraj još dve fotke, na prvoj je slika šumskog putića kojim sam došao do izvora, a na drugoj – stepenice ka civilizaciji:

Toliko sam oduševljen današnjim putešestvijem da sam odlučio da bar još par puta odem u ovu šumicu u skorije vreme, a ako se iscimam možda organizujem i neko kampovanje tamo. Zvuči ludo, znam :-D

 

Tagovi:

Tweethreads

april 1st, 2009 . by Avram

Ne, ovo nije još jedna prvoaprilska šala naših (a i svetskih) blogera koji šatro prestaju da pišu, ovo je samo jedan normalan (mada je to diskutabilno) članak napisan prvog aprila (-:

Pre izvesnog vremena počeh malo intenzivnije da “twitterujem“, i prva stvar koja mi je zasmetala je činjenica da ne mogu na lak način da ispratim konverzacije između ljudi koje pratim. Naime, da biste ispratili konverzaciju morate da nađete poslednji status u konverzaciji i onda da klikćete na linkove “in reply to” do početka konverzacije. Em što smara kliktanje, em što čitate konverzaciju od pozadi. Da bih sebe spasio smaranja, a i čitanja unazad, sastavio sam skriptu koja je na osnovu ID-a poslednjeg statusa dovlačila isti, parsirala ga i vadila ID prethodnog (”in reply to”) statusa, a zatim bi ponovila proces dovlačenja statusa, i tako sve dokle god “in reply to” polje ne stoji prazno – što znači da je to prvi status u diskusiji. Uz jQuery život programera je mnogo lakši, pa ga ni ja nisam zaobišao u ovoj skripti tako da je na kraju sve bilo gotovo za svega par sati (ne tako aktivnog) rada. Kada sam skriptu pokazao ljudima uglavnom sam dobio pozitivne reakcije, a čak mi je i Predrag Stojadinović poklonio domen www.tweethreads.com – na kom se upravo i vrti moja najnovija kreacija. Pa, izvolite pogledati. I da, čisto da se ne zaboravi, a možda je bitno zbog istorije (:-P), konverzacija sa kojom je počelo sve, odnosno testiranje moje skripte je zauvek sačuvana i možete je pogledati ovde. Nadam se da se @urosevic i @vranac neće ljutiti što ovako javno objavljujem njihovu diskusiju? Ali dobro, dobili su po link ka Twitter profilima pa možda dobiju nekog novog followers-a ;-)

Takođe sam napravio i bookmarklet (i testirao ga na Firefoxu i Internet Exploreru) za čitanje čitave diskusije direktno sa stranice statusa (možete ga naći ako kliknete na “Tools” u footer-u sajta), a u pripremi je i Greasemonkey skripta za Firefox korisnike, ali mi pisanje istih ne ide baš najbolje, pa ako ima neki JS ekspert voljan da pomogne, neka se javi (ili nek’ ćuti zauvek :-D ).

P.S. E da, moj fotoaparat, Canon S1 IS, koji je otkazao poslušnost još avgusta prošle godine, a koji sam tek pre dve nedelje odneo u servis, danas je napokon ponovo kod mene, potpuno ispravan. U pitanju je bio CCD senzor za koji važi produžena Canon-ova garancija, jer je cela serija senzora bila falična, tako da me nije koštalo ništa. Jea! I da, pošto vidim da se svi lože na videocast-ove ovijeh dana (da Peđa, ti ;-D), nemojte se iznenaditi ako i ja snimim nešto uskoro!

 

Tagovi:

« Previous Entries