Projektų kūrimas

interneto projektų apžvalga, sprendimai, technologijos

Projektų kūrimas

browsers-iconsKai sukuriame tinklapį, visada privalome jį pratestuoti su įvairiomis interneto naršyklėmis. Dauguma iš mūsų peržiūri gautą rezultatą tik su naujausia FireFox versija ir Su Internet Explorer 6. Dažniausiai to pakanka, tačiau pasitaiko kokių nors klaidų, kurios galimos ir kitose naršyklėse, nors ir FF ir IE6 viskas būna gerai.

Šiam tikslui Yahoo yra apibrėžusi interneto naršyklių palaikymo klasifikaciją, apie kurią trumpai papasakosiu.

Iš viso yra 3 naršyklių palaikymo klasės (lygiai):

C klasė – žemo lygio ir kokybės palaikymas. Iš esmės tai tik gryno HTML kodo pateikiamas naršyklei, be stilių ar JavaScript įgyvendintų funkcijų. Realizuojant šis klasės palaikymo lygį dažnai pasitaiko įvairių defektų.

X klasė - tai absoliučiai visų naršyklių palaikymas. Realizuojant tokį palaikymo lygmenį yra palaikomos retos arba sustabdyto palaikymo ir vystymo naršyklės – tai reiškia kad tinklapis yra atvaizduojamas teisingai net ir ant pačių rečiausių naršyklių. Toks palaikymas yra įgyvendinamas labai retai, nes dažniausiai neįmanoma nuspėti visų egzistuojančių naršyklių niuansų.

A klasė – Pati svarbiausia klasė, nes tai palaikymo lygmuo skirtas pačioms populiariausioms naršyklėms.  Šis lygmuo, pagal Yahoo statistiką yra įgyvendintas 96% tinklapių. Būtent šio lygmens mes ir rekomenduojame laikytis.

Kad būtų lengviau “sugaudyti”  kokias naršykles privalo palaikyti A-klasės palaikymas, čia pateikta naršyklių matrica, kuri parodo visas A klasės naršykles:

a-grade_browsers

Failų dalinimosi sistema: DropBox

Autorius: Petras 2009 08 12, TrečiadienisKategorijos: Frontend.lt, Projektų kūrimas, Vartotojo interfeisas

dropboxTurbūt sutiksite, kad kartas nuo karto mums visiems tenka dalintis dideliais failais su draugais, todėl naudojame įvairias jų dalinimo paslaugas (failai.in, Rapid share, etc.) Deja visos šios paslaugos nėra pakankamai patogios, o už pilną funkcionalumą dažniausiai dar reikia primokėti, todėl nusprendžiau papasakoti apie DropBox projektą.

DropBox - tai internetinė failų talpykla, kuri savo patogumu pranoksta visas kitas panašaus pobūdžio paslaugas. Didžiausias privalumas yra tai, kad nereikia sukėlinėti failų per naršyklę – tiesiog užtenka atsisiųsti DropBox programėlę, kuri jūsų kompiuteryje sukuria katalogą, į kurį įdedant failus, jie iškarto patalpinami internete.

Dar keli šios sistemos privalumai:

  • Galimybė prieiti prie savo failų iš bet kurio kompiuterio.
  • Galima turėti įvairaus privatumo lygmens katalogus: Viešą, Beveik viešą (pvz.: pasidalinimui nuotraukomis su draugais) ir visiškai privatų.
  • Darbas su direktorijomis.
  • Mini versijų valdymo sistemėlė, kurios pagalba galima valdyti failų revizijas.
  • Patogus darbas su nuotraukomis
  • Saugumas – Prisijungimui naudojamas HTTPS protokolas.
  • 2 GB nemokamos vietos serveryje
  • … ir galų galiausiai labai patogi vartotojo sąsaja – puikus pavyzdys, kaip reikia kurti tokio pobūdžio projektus.

Taigi visko tikrai nepapasakosiu, o tiesiog parekomenduosiu šią sistemėlę išbandyti patiems :)

Taip pat būtų įdomu sužinoti jūsų nuomone, taigi nepatingėkit pakomentuoti.

Sprendimas kuris gelbsti: Firebug Lite

Autorius: Petras 2009 08 4, AntradienisKategorijos: Projektų kūrimas

fb_logoTurbūt nei vienas tinklapių kūrėjas neapsieitų be Galingiausio FireFox priedo – FireBug, kuris yra pripažintas pačiu naudingiausiu įskiepiu. Gaila, tačiau FireBug kol kas galima įsidiegti tik į FireFox, o kitų naršyklių Web-developer įrankiai negali jam prilygti. Tam, kad situacija būtų nors kiek geresnė FireBug Kūrėjai sukūrė pilnai JavaScript’u parašyta FireBug Lite versiją, kurią galima įsidėti į bet kokį tinklapį ir matyti visose naršyklėse (Juk JS palaiko visos naršyklės)

Paprasčiausias būdas naudotis šiuo įrankiu yra įsikelti jo kodo nuorodą į savo Bookmark’us – Tiesiog nutempkite FireBug Lite tinklapyje pateiktą nuorodą į savo BookMarko juostą ir turėsite nuorodą, kurią paspaudus FireBug Lite atsidarys bet kuriame tinklapyje.
Gaila tačiau ši FireBug’o versija dar negali redaguoti tinklapio turinio, bet manau pradžia jau padaryta :)
Taip atrodo FireBug Lite:
fb_lite

Svetainės centravimas su CSS

Autorius: Paulius 2009 08 3, PirmadienisKategorijos: Projektų kūrimas

centered_siteDaugumą klasikinių interneto svetainių galima išskirti į dvi grupes pagal jų atvaizdavimo principą. Svetainė centruojama naršyklės lange arba ji yra prisiglaudusi prie kairiojo krašto. Žinoma, atsiranda ir kūrybingesnių žmonių sugalvojančių įmantrių atvaizdavimo būdų, bet dažniausiai naudojamas centruoto puslapio variantas.

Nusprendžiau trumpai ir aiškiai aprašyti kaip centruojama svetainė interneto naršyklėje. Viso labo tai kelios CSS kodo eilutės, tačiau net ir tokie dalykai kai kuriems žmonėms praverčia.

Norint svetainę centruoti, turime žinoti jos plotį. Vienintelis dalykas, kurio reikia iš HTML pusės, tai apsirašyti šakninį svetainės elementą, pavadinkime jį pvz.: site. Dabar CSS faile aprašome stilių site ir body žymoms.

Po Rimanto komentaro, išsiaiškinom, kad tai gali būti atlikta su dar mažiau kodo. O tam kad IE6 rodytų teisingai tiesiog turi būti nurodytas DOCTYPE. Nemanau, kad dabar yra svetainių, kuriose jis būtų praleistas. Liko tik dvi eilutės CSS.

  1. body {margin: 0;}
  2. #site {width: 998px; margin: 0 auto;}

Su paaiškinimu:

  1. body {
  2.    margin: 0; /* Numušam automatinius marginus body elementui, kitaip bus tarpas */
  3. }
  4.  
  5. #site {
  6.    width: 998px; /* Nurodom koks bus plotis, kitaip margin: 0 auto; bevertis */
  7.    margin: 0 auto; /* Pasakom, kad viršuje ir apačioje tarpo nepalikti, o atstumai tarp šonų būtų vienodi */
  8. }

Ką atliekame prieš paleidžiant svetainę?

Autorius: frontend.lt 2009 07 15, TrečiadienisKategorijos: Frontend.lt, Projektų kūrimas

go-sign_1 Kai baigiama kurti internetinė svetainė, prieš paleidžiant, reikia ją patikrinti. Frontend.lt kolektyvas nusprendė pradėti straipsnių ciklą “Ką atliekame prieš paleidžiant svetainę”. Šis straipsnis yra pirmas  ir apžvelgia pačius elementariausius dalykus, į kuriuos reikia atkreipti dėmesį prieš sukeliant svetainę į serverį ir parodant ją galutiniam vartotojui, arba projekto užsakovui.

Vartotojo interfeisas

Lankytojai į svetainę ateina naudodamiesi įvairiomis www naršyklėmis. Ne visos jos buvo kurtos laikantis standartų (ankstesnės Internet Explorer versijos), ne visos gali juos palaikyti (pvz. per maži įrenginio, kuriame veikia naršyklė, skaičiavimo pajėgumai). Visų naršyklių ir įrenginių, bei operacinių sistemų variacijų išbandyti neįmanoma, o greičiausiai ir nereikia – juk neįmanoma prisitaikyti prie visų. Mes rekomenduojame naujai paleidžiamą svetainę patikrinti su populiariausiomis naršyklėmis :

  • Naujausia Gecko varikliu paremtos naršyklės versija (Firefox)
  • Naujausia WebKit naršyklė (Google Chrome, Apple Safari)
  • Populiariausios Microsoft Internet Explorer versijos (straipsnio rašymo metu 6.0 – 8.0)
  • Naujausia Opera versija

Frontend rekomendacija: svetainę kurti, peržiūrint ją su Firefox, o su IE ją pratestuoti paskutiniame žingsnyje. Taip bus sutaupoma daug laiko nes naudojant Firefox naršyklės priedais, tokiais kaip Firebug, galima keisti išvaizdą, pačioje naršyklės aplinkoje.

  • Patikrinti, kaip svetainė atrodo su skirtingomis vaizduoklio ekrano rezoliucijomis.
  • Žvilgtelėti, kaip svetainė atrodo su mobilia naršykle – vis daugiau lankytojų naudoja mobilius įrenginius.
  • Pabandykite, kaip svetainė veikia išjungus JavaScript, Sausainėlius (Cookies), CSS. Ar įmanoma surasti pagrindinę informaciją, naviguoti svetainėje?
  • Svetainė turi galimybę siųsti elektroninius laiškus? Būtinai patikrinkite, kaip laiškai atrodo su populiariausiomis elektroninio pašto sistemomis:
    • Microsoft Outlook
    • Mozilla Thunderbird
    • Google Gmail
    • Yahoo Mail
    • Hotmail
  • Patikrinkite tokių interfeiso dalių, kaip turinio filtrai, puslapiavimo elementai, formos ir kiti funkciniai komponentai veikimą.

Svetainės turinys

  • Ar svetainės tekstai yra gramatiškai taisyklingi? Pasinaudokite klaidų taisytojais!
  • Ar neliko testinių “Lorem ipsum” puslapių arba straipsnių?
  • Ar paveikslėliai yra optimizuoti internetui, t.y. ne per dideli?
  • Ar paveikslėliai turi alt atributus, aiškiai apibūdinančius, kas pavaizduota?
  • Patikrinkite nuorodas į dokumentus.

Patogumas vartotojui

  • Sukurkite galimybe vartotojui bendrauti su svetainės kūrėju. Taip bus pranešamos klaidos, siunčiami pasiūlymai.
  • Niekada neleiskite, kad elektroninio pašto adresas svetainėje būtų paprastu tekstu.  Frontend rekomendacija: mailto nuorodą iškviesti JavaScript pagalba.
  • Patikrinkite, ar paspaudus ant logotipo pateksite į pradinį puslapį.

Veikimas, greitis

  • Testuokite svetainę su YSlow arba Page Speed. Jeigu rezultatai netenkina, pasinaudokite pateikiamais patarimais.

Technologijos

  • Ar HTML ir CSS kodas atitinka standartus? Pasinaudokite validatoriais!
  • Ar naudojate reset CSS?
  • Ar neįmanoma perkelti CSS kodo į atskiras bylas, kad kraudamiesi puslapiai gauti tik tą CSS dalį, kurios reikia jiems atvaizduoti.
  • Ar negalima perkelti JavaScript kodo į atskiras bylas?
  • Ar JavaScript elementai yra kiek įmanoma žemiau svetainės kode?
  • Jeigu svetainėje yra naudojamos technologijos, reikalaujančios įdiegti papildomas bibliotekas, pvz: Adobe Flash, Sun Java, Adobe Air, Microsoft Silverlight, ar yra pateikiamos aiškios instrukcijos, kaip atsisiųsti ir įdiegti jas savo sistemoje?

Klaidų apdorojimas

  • Ar svetainės klaidų išvedimas yra išjungtas vartotojui? Eiliniam vartotojui tikrai neįdomu, ar įvyko 500 klaida, ar nerasta funkcija, ar bloga SQL sintaksė. Jam greičiausiai įdomus tik pats klaidos faktas.
  • Ar svetainės klaidos yra registruojamos? Rekomenduojama rašyti klaidas į bylą.
  • Ar kritinės svetainės klaidos yra nedelsiant siunčiamos kūrėjui?

Saugumas

  • Ar visi iš vartotojo atėję duomenys yra išvalomi prie naudojant juos (pvz, rašant į duomenų bazę)?
  • Ar slaptažodžiai nėra saugomi paprastu tekstu?
  • Ar tinkamu dažnumu daromos svetainės atsarginės kopijos? Ar veikia atstatymas iš atsarginės kopijos?
  • Ar įvedimo laukai yra apsaugoti nuo spam robotų?

SEO

  • Patikrinkite, ar svetainės adresai yra draugiški SEO atžvilgiu (Nenaudojami dinaminiai adresai)
  • Patikrinkite, ar visi puslapiai turi prasmingas antraštes (title).
  • Pasižiūrėkite, ar nėra nuorodų, sakančių “spausk čia” ir panašiai. Jei taip, pasistenkite jas optimizuoti įdedant reikšmingesnius pavadinimus su raktažodžiais.
  • Ar turite XML žemėlapį? Ar jis “paduotas” paieškos sistemoms?
  • Ar integravote statistikos sistemą? Pavyzdžiui, Google Analytics?
  • Ar naudojate robots.txt? Jis tikrai veikia taip, kaip turėtų?
  • Ar svetainės išdėstymas nėra paremtas lentelės elementu?
  • Ar sesija, vartotojų prisijungimas arba registracija, javascript arba flash technologijomis paremta navigacija neužkerta kelio paieškos robotams aptikti naudingą turinį?
  • Naudojate nukreipimus (redirect)? Ar žinote skirtumą tarp 301 ir 302 nukreipimų?
  • Ar neliko svetainėje neveikiančių nuorodų? Ar yra priemonės stebinčios ir pranešančios apie neveikiančias nuorodas?
  • Ar nuorodos svetainėje yra tekstinės? T.y. ar navigacija svetainėje nėra pagrįsta paveikslėliais, arba Adobe Flash technologija?
  • Ar nenaudojami frame ir iframe elementai?

Google baudos – ban, penalty

Autorius: andrius 2009 06 16, AntradienisKategorijos: Projektų kūrimas

banned

Turite svetainę, paieškos sistemos atveda lankytojus, kurie neša pelną. Vieną dieną verslas sustoja. Imate ieškoti to priežasties. Randate – lankytojai neateina, nes jūsų neberanda paieškoje. Tai išmetimas (ban) iš Google, arba Google bauda (penalty). Pirmuoju atveju jūsų svetainė visiškai nerandama, antruoju, jūsų rezultatas toli – toli, kokiame 50-tame paieškos rezultatų puslapyje. Panagrinėsime kokios gali būti šio reiškinio priežastys. Pirmieji punktai yra paimti iš oficialaus Google gido, skirto užtikrinti kokybišką turinį svetainėse, tolimesni rasti kituose šaltiniuose internete.

  1. Pasikartojantis turinys (Duplicate content) – pas jus skelbiama informacija kartojasi kitur internete. Nesvarbu, ar autorius jūs, ar tiesiog “pasiskolinote” turinį iš kolegos rašančio panašia tema.
  2. Raktažodžių spamas (Keyword stuffing) – turinyje piktybiškai kartojami raktažodžiai.
  3. Paslėptas turinys, nuorodos (Hidden text and links) – turinyje yra nuorodų ir teksto, kuris nematomas svetainės lankytojui, tačiau matomas paieškos vorams.
  4. Skirtingas turinys lankytojams ir paieškos robotams (Cloaking) – Google pozicija yra tokia: svetainės yra kuriamos žmonėms, o ne paieškos robotams.
  5. Viirusai, šnipai ir kitoks kenkėjiškas kodas svetainėje (Badware) – reikia nepamiršti, kad kenkėjiškas kodas nebūtinai yra įdėtas jūsų pačių. Įmanoma, kad jūsų svetainę piktybišku kodu užkrėtė virusas jūsų kompiuteryje.
  6. Nuorodos į prastos reputacijos svetaines – pavyzdžiui, randamas kenkėjiškas kodas, yra uždraustos, arba nubaustos.
  7. “Mini tinklai” – svetainėje gausu nuorodų į giminingus (to pačio savininko) puslapius.
  8. IP dalinimasis su prastos reputacijos svetaine – kaimynus rinkis atsargiai. Rimtam projektui rekomenduojamas atskiras IP adresas.
  9. Nelegalus turinys – nerekomenduotina talpinti nelegalaus, įstatymais uždrausto turinio.
  10. Juodasis SEO (Black-hat SEO) – gerų rezultatų paieškos sistemose siekimas nelegaliais būdais.
  11. Nuorodų pirkimas arba pardavimas.
  12. Nuorodos iš prastų svetainių – patariama vengti nuorodų iš PageRank 0 svetainių.
  13. Trumpalaikė domeno registracija – jeigu jūsų domenas yra nupirktas 1 metams, Google gali įtarti, kad jį naudosite negerais tikslais.
Žymos:

Kaip išsirinkti web forumo sistemą

Autorius: Petras 2009 04 13, PirmadienisKategorijos: Projektų kūrimas, Technologijos

phpbbNeseniai teko daryti mini-tyrimą apie online forumų sistemas, taigi nusprendžiau glaustai pasidalinti surinktomis žiniomis. Manau, kad dauguma, kas skaito šį blogą, žino, kas yra Internetinis forumas, jei ne, siūlau paskaityti šį Wikipedia straipsnį.


Visų pirmiausia, verta paminėti forumų tipus. Jie yra 2:

  • Flat: Forumas, kuriame komentarai paprasti rašomi vienas po kitu – panašiai, kaip kokioje žinučių lentoje (message board)
  • Threaded: Forumas, kuriame kiekvienas komentaras yra atsakymas į kitą postą (Populiarus sprendimas, techninės pagalbos forumuose, kur daug žmonių atsako į vieną klausimą.) Toks tipas labai primena susirašinėjimą el paštu, kai tenka daug kartų naudoti “Reply” funkciją viename laiške.

Gera žinia, kad dauguma forumų sistemų paprastai palaiko abu šiuos tipus.

Šiuo metu, yra sukurta visokio sudėtingumo forumų sistemų, įvairiomis programavimo kalbomis (php, python, ruby…), tačiau čia paminėsiu tik tas kurios yra sukurtos php platformai. Čia išrinkau pačių populiariausių sistemų penketuką:

  • phpBB (Pati populiariausia sistemą, pasižyminti labai gausiu funkcionalumu. Tinka dauguma projektų ir yra atviro kodo. Specializuotuose forumuose ši sistema minima, kaip pati geriausia.)
  • vbulletin (Labai populiari ir gerai įvertinta sistema. Praktiškai lygi (gali net geresnė) nei phpBB. Vienintelė blogybė, kad sistema yra mokama (Licencijos kaina: 100$ terminuotam laikotarpiui, 180$ – neterminuotam))
  • simple machines forum (SMF) (Labai populiarus forumas. Užima 3 vietą po phpBB ir vbulletin. Labai daug kur minimas, ir naudojamas. Yra atviro kodo.)
  • Phorum (Taip pat įdomus sprendimas, gan paprastas naudoti ir neperkrautas. Turi visas reikiamas funkcijas ir daugiau, bei yra atviro kodo.)
  • invision power board (Sistema tikrai patenka į populiariausių penketuką (4-5 vietą – panašiai, kaip ir Phorum). Sistema yra mokama, tačiau labiau orientuotą į verslo klientus (yra du atskiri paketai, po 150$ standartinis ir 300$ verslui), todėl nelabai populiari, tačiau keliuose forumuose radau pareiškimus, kad tai pati geriausia tokio tipo sistema.)

Kalbant apie forumų sistemų  funkcionalumą, tai jų funkcijos praktiškai standartinės. Išrinkau kelias, į kurias reikėtų atkreipti dėmesį, renkantis sistemą:

  1. WYSIWYG redaktorius (What You See Is What You Get), kuris suteikia galimybę, į forumo komentarus rašyti formatuotą tekstą.
  2. Failų pridėjimas prie komentarų
  3. Automatinio citavimo funkcija (Quatation)
  4. Vartotojų skaidymas į grupes, vertinimas
  5. Detalaus vartotojo profilio sukūrimas
  6. Komentarai RSS/Atom formatu
  7. Įvairios apsaugos priemonės (Juodieji sąrašai, IP adreso blokavimas, etc.)

Pabaigai, noriu paminėti, kad internete gamina rasti forumų palyginimų tinklapius, kuriais naudojantis, galima išsirinkti vieną sistemą, kuri labiausiai atitinka jūsų poreikius: