gotAPI.com - Reference Lookup Service
2006-07-25
Atsibodo naudotis Adobe Flash 8 dokumentacija, kuri man nepatogi, tad nutariau susirasti internete patogesnę ActionScript dokumentaciją. Man būtų tikusi ir ta pati dokumentacija, kad tik būtų lengviau surasti tai, ko noriu.
Mano paieškos rezultatas – gotAPI.com. gotAPI leidžia patogiai ir greitai naviguoti ActionScript, HTML, JavaScript, PHP, Perl, RubyOnRails, Prototype, J2EE dokumentacijoje. Tinklapis naudojasi standartiniais dokumentacijos puslapiais (w3.org, w3schools.com, php.net, …), tačiau jo pagalba patogiau surasti norimą funkciją ar klasę nei naudojantis originaliais šaltiniais.
Kaip išmokti komentuoti kodą
2006-06-12
Gali perskaityti daug straipsnių ar knygų apie tai, kaip komentuoti rašomą kodą. Kiekvienas autorius pasiūlys kur, kada ir kokius koemntarus rašyti.
Yra ir kitas būdas. Pažiūrėk į prieš pusę metų ar metus rašytą savo kodą. Pamatysi, kur ir kokių komentarų reikėtų. Pažiūrėk į kitų rašytą kodą. Nesunkiai pasakysi, kokie komentarai praverstų.
Google irgi klysta
2006-06-01
Šiandien gavau pakvietimą naudotis Google Analytics. Registruojantis du kartus paprašė nurodyti šalį. Vieną kartą kaip laiko zonai nurodyti, kitą kartą kaip šalį, iš kur esu. Antrąjį kartą bent galėjo pagal nutylėjimą nustatyti Lietuvą. Čia tik maža usability klaidelė.
Rimtesnę klaidą Google padarė su Page Creatoriumi. Spameriams užtenka įvykdyti Google užklausą "inurl:googlepages.com" ir susirinkti adresus, kurie atitinka gmail adresus. Tai galima netgi labai lengvai automatizuoti ir surinkti nemažą kiekį egzistuojančių gmail adresų.
iconv ir mb_convert_encoding
2006-04-05
PHP turi iconv ir mb_convert_encoding funkcijas, kurios daro tą patį – perkoduoja simbolių eilutę.
Prabenchmarkinus man tas funkcijas ant dviejų sistemų (win ir linux) jų vykdymo greitis panašus, tačiau iconv, 5 – 15% greitesnė. Benchmarko kodas:
<?php
$string = 'labas, kas pas jus yra gero? Ąžuolų turite?';
$loop_count = 100;
require_once('Benchmark-1.2.6/Profiler.php');
$profiler = new Benchmark_Profiler();
$profiler->start();
$profiler->enterSection('mb_convert_encoding');
for ($i = 0; $i < $loop_count; $i++) {
$result = mb_convert_encoding($data, 'UTF-8', 'ISO-8859-13'); // windows-1257 to utf-8
}
$profiler->leaveSection('mb_convert_encoding');
$profiler->enterSection('iconv');
for ($i = 0; $i < $loop_count; $i++) {
$result = iconv('ISO-8859-13', 'UTF-8', $data);
}
$profiler->leaveSection('iconv');
$profiler->stop();
$profiler->display();
?>
Kokius el. pašto adresus naudoja lietuviai?
2006-03-28
Pasidarė įdomu, kokius el. pašto adresus naudoja lietuviai. Galima spėlioti kokie adresai populiariausi, bet geriau leiskime šnekėti skaičiams. Statistika paimta iš vieno mano projekto.
| adreso tipas | kiekis |
|---|---|
| one.lt | 30 % |
| yahoo.com | 18 % |
| gmail.com | 15 % |
| delfi grupė | 6 % |
| takas.lt | 2.5 % |
Šituos skaičiukus padėjo gauti kelios MySQL užklausos.
Pirmoji SQL užklausa padeda gauti el. pašo adresų host dalį ir naudotojų su tokiu adresu skaičių.
SELECT SUBSTRING(email FROM POSITION('@' IN email) + 1) AS host, COUNT(*) AS count
FROM users
GROUP by host
ORDER BY count DESC
Jeigu jūsų MySQL versija 4.1 ar naujesnė ir palaiko subselectus, tai galite gauti ir procentus.
SELECT SUBSTRING(email FROM(POSITION('@' IN email) + 1)) AS host,
COUNT(*) AS count,
COUNT(*) * 100 / (SELECT COUNT(*) FROM users) AS percent
FROM users
GROUP BY host
ORDER BY count DESC
Kai kurios pašto sistemos palaiko keletą adresų (tarkime Delfi Webmail paslauga). Tokiu atveju pravers tokia užklausa. Reikės tik PHP arba phpMyAdmin pagalba susižinoti įrašų skaičių.
SELECT SUBSTRING(email FROM POSITION('@' IN email) + 1) AS host
FROM users
HAVING host IN ('delfi.lt', 'centras.lt', 'email.lt', 'mail.lt', 'xxx.lt', 'bamba.lt')
Būtų įdomu sužinoti ir jūsų lankytojų naudojamų el. pašto adresų statistiką – rašykite komentaruose.
Pateikiamos užklausos išbandytos ant MySQL 4.1. Jeigu jos neveiks, gali tekti naudoti kitas SUBSTRING formas ar simbolio paieškos eilutėje funkcijas. Įdomu, kad MySQL turi begalę būdų atlikti SUBSTRING ar fragmento paiešką nurodytoje eilutėje.
HTML formato laiškų siuntimas
2006-03-24
Jeigu užsiimi interneto tinklapių programavimu, tai anksčiau ar vėliau tenka rašyti naujienų siuntimą elektroniniu paštu. Aišku, kiekvienas save gerbiantis lietuvis nori siųsti gražius elektroninius laiškus su paveiksliukais ir viskuo, kas tik įmanoma. Man paprastai iš pirmo karto nepavyksta padaryti gražaus HTML laiško šablono, kuris būtų gerai rodomas pas visus (na gerai, pas daugelį). Tikri programuotojai neišradinėja dviračio, o apie HTML laiškų siuntimą skaito MailChimp Email Design Guide.
Tiems, kas naudoja PHP ir pirmą kartą darys HTML laiškų siuntimą, rekomenduoju nesivarginti skaitant mail() funkcijos dokumentaciją, o naudoti PHPMailer.
Apie tai, kaip masiškai siųsti laiškus, rašo Spraitas straipsnyje El. laiškai iš PHP.
MySql UTF-8 palaikymas ant Railsų
2006-03-22
Jeigu pradėjote dirbti su RubyOnRails ir turite problemų su UTF-8 palaikymu bei naudojate MySql DBVS app/controllers/application.rb faile esančioje ApplicationController klasėje įrašykite
before_filter :configure_charsets
def configure_charsets
@headers["Content-Type"] = “text/html; charset=utf-8″
suppress(ActiveRecord::StatementInvalid) do
ActiveRecord::Base.connection.execute ‘SET NAMES UTF8′
end
end