Jak hodně spoléháte na náhodu?

Dnes jsem zjistil, že já docela dost. Potřeboval jsem v PHP vygenerovat hesla pro 65000 záznamů . Mám (měl jsem) jednoduchý generátor náhodných hesel:

function generpassword($length=45,$chars = ‘abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890’){
$numChars = strlen($chars);
$r = ”;
for ($i = 0; $i < $length; $i++) { $r .= substr($chars, rand(1, $numChars) – 1, 1);
}
return $r;
}
45 znaků, každý 124 možností. Duplicita hesel je statisticky téměř vyloučena, pokud vy se přece jenom taková událost stala, dáme to do smyčky while (1) a šmytec. Jednou se to přece vygenerovat musí.

Ale ne, nemusí.

Po vygenerování hesla číslo: 32768 data se začnou opakovat, dokonce ve stejném pořadí a už ani nelze vygenerovat nové heslo. Jasně, generátor je pseudonáhodný, to přece víme z časů programování v C. Přesto ale málokdo tuší, že je až tak snadno vypočitatelný. Sekvence se opakuje dokonce už každých 32768 znaků.

Používejte raději mt_rand. Nezradí vás :-)


<?php
function generpassword($length=45,$chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890'){
$numChars = strlen($chars);
$r = '';
for ($i = 0; $i < $length; $i++) {
$r .= substr($chars, mt_rand(1, $numChars) - 1, 1);
}
return $r;
}
?>

Máte pocit, že ta osoba, které jste zadali vytvoření svých nejbáječnějších a nejoriginálnějších stránek je nějak příliš laxní, vzhledem k tomu, jak ji královsky platíte?

Zkuste ji potrápit několika vtípky či drobnými zlomyslnůstkami, kterým se každý webdesigner rád zasměje.

1) KONTAKT

a) Potřebujete svoje stránky rychle? Nejvíce je urychlíte tím způsobem, že najdete na webu náhodně cca.10 webdesignerských firem a pošlete jim e-mail následujícího znění:

Dobrý den. Jsme firma zabývající se rozvozem pracích prášků XYZ. Do 14 dnů potřebujeme mít hotové stránky. Pokud máte zájem o tuto práci, pošlete mi do 7 dnů grafický návrh nových stránek spolu s cenovou nabídkou na uvedený můj meil.

Následujících 7 dnů můžete strávit na dovolené, zásadně neodpovídejte na e-maily, telefonický ani jiný kontakt není nutný.

b) Webdesigner má obvykle spoustu času, rád se oddává meditaci. Pokud ví, že máte důležitý hovor s manželkou, milenkou nebo čistírnou, rád vám odpustí hodinku strávenou postáváním na chodbě.

c) Webdesigner rád nadsazuje termíny. Pokud po hodině přemlouvání slíbí, že prezentaci zvládne za týden, určitě mu to trvá 2 hodiny a zbytek času tráví na Havaji s přítelkyní, poté co si obojí pořídil z Vaší zálohy.

2) Komunikace

a) Ideální čas pro zavolání je 11. hodina večerní.

b) Veškerou e-mailovou komunikaci týkající se Vašeho webu nadepisujte “Web” nebo, pokud máte sdílnou náladu, “Náš web” nebo “Internetové stránky”.

c) Webdesigner je během práce na projektu a následujícího půl roku poté povinen nainstalovat zdarma ASDL modem Vám a celé Vaší rodině, nainstalovat ve firmě novou verzi Windows a naučit Vaši sekretářku pracovat v Excelu.

3) Dokončení zakázky

a) Webdesignera nezajímá termín platby, nejen že je nehorázně bohatý, také neplatí elektřinu, vodu nebo pronájem. Ideální termín je první výročí splatnosti faktury.

b) Během posledního týdne před dokončením zakázky radikálně prohlašte, že už se vám to nějak nelíbí, jestli by to nešlo celé nějak změnit. Není třeba zacházet do podrobností. Zdůrazněte však, že fakturu nezaplatíte, dokud nebude web jak má být. Otrlejším povahám pohrozte zrušením zakázky.

c) Je spousta věcí, které by se daly na nových stránkách vylepšit. 2 dny před dokončením pošlete svému webdesignerovi 4-stránkový dokument ve Wordu se svými připomínkami. Rotující skleněný zavináč, animovaný “andrkonstrakšn” a MIDI na pozadí jsou stále in (psáno 25.7.2006, ale už pochybuji, že by se během následujících 10let názor veřejnosti nějak radikálně změnil).

Hlavně buďte v pohodě a nic si neudělejte :-)

Yahoo Widgets error

20. 6. 2006 | V kategorii webdesign | Přidejte komentář

Ještě nedávno jsem používal Konfabulator. Bohužel když jej koupilo Yahoo!, přibyla tam jedna drobná fíčurka: novou verzi nelze nainstalovat.

Co s tím?

Po instalaci smažte v

c:/Program Files/Yahoo!/WidgetEngine/Resources/

adresáře

cs, zh_CN a zh_TW

A…kouzlo…Konfabulator se vesele rozjede.

Strašné. Příšerné.

Lidi. prosím vás, mějte rozum. Nedávejte PROBOHA grafikovi dělat webové stránky. Ti lidi jsou mnohdy dobří, kreativní, zaslouží si určitě úctu a respekt. Ale webové stránky, to je o něčem jiném.

Mám předělávat jeden web, který je kompletně v CSS, validní XHTML 1.0, prostě fajn.

Kde je problém? Grafik si rozřízne layout na obrázky, otevře si Dreamweaver a…

VŠECHNO TO TAM NASKLÁDÁ POZICOVANÉ ABSOLUTNĚ.

Ono se to nějak zalomí, co se nezalomí dobře, přidá tag
, u segmentů, co se nějak vůbec nezobrazují, zkusíme nastavit z-index, nebo z position:absolute nastavíme roletku na “relative” a je navaříno. Pak k tomu přišel PHP programátor, který o kaskádových stylech ví ještě míň, a postavil na tomto “layoutu” – “publikační systém” : tedy několik sekcí, které je možné upravovat – novinky, katalog apod.. Vznikl z toho totální paskvil.

Nechci tady dělat sáhodlouhé výklady o tom, jak má vypadat správný návrh layoutu, ale vězte že to nějakou přípravu vyžaduje, minimálně spočítat sloupce a do nich teprve vkládat obsah – odstavce, obrázky apod..

Pokud o CSS netušíte ani zbla, a jen vám někdo řekl, že ten web musí být validní, udělejte to prosím v tabulkách. Někdy stačí jedna.

Ušetříte sobě a hlavně jiným spoustu problémů.

Tak jsem se při psaní jednoho skriptu trochu uklepl a omylem při zobrazení zdrojového kódu stisknul klávesu F5 pro obnovení stránky. No a… ono to funguje.

Pokud si několi(kset)krát denně nepotřebujete prohlížet, co ten váš nový PHP sktipt zase dělá za psí kusy, zřejmě vám to ani jako senzační odhlalení nepřijde. Mně to ale po zkušenostech z Internet Explorerem, kdy se třeba zdroják někdy nezobrazí vůbec (Tip: Ctrl+F5 pomůže i jemu) přišlo opravdu jako malý zázrak.

Nově otevřené okno s HTML kódem stránky tedy funguje nezávisle na původní stránce. Klávesou F5 si po změně ve skriptu stránku kdykoliv obnovíte. Fajn funkce.

« novější článkydalší články »