Dvidešimt antra diena – kondicionierius

Oro kondicionierius yra toks prietaisas, kuris, kaip praktika rodo, turi labai daug minusų. Visų pirmą jis labai sausiną orą. Akys tampa jautrios, džiūva ir miglojas. Taip pat ir nosis ir visa kvėpavimo sistema. Taip pat juo nustatyta oro temperatūra patalpoje būna stipriai kitokia nei laukia. Ir pavyzdžiui sėdint ofise ir nekaistant su +- 20 laipsniu temperatūra į lauką, kuriame pavėsyje yra 27, o saulėje koks 30++ galima imti ir peršalti, ar bent jau gauti šilumos smūgi. Kaip man ir nutiko :( Sėdžiu, gerklę skauda, kosėju.. Oras sausas, nosis ir snargliuojas ir džiūva vienu metu. Labai prastas variantas :(

Dvidešimt pirma diena – distinct

Šiandien buvo smagi diena, darbas ėjosi puikiai :) Nors ofise jautėsi laisvesnė atmosfera aš dirbau iš peties.

Nuo  vakar popietes konstravau tokia nebloga SQL-T procedūrą, kuri gražintu arba viena informaciją arba kitą. Na tai yra arba klausimai arba tų klausimų atsakymai. Buvo galima viską sukišti į vieną rezultatą, bet po to reiktų vėl atskirinėti su php, o dvigubo darbo daryti neapsimoka, juolab, kad atskirti atsakymus nuo klausimų ne taip jau lengva :)

Ėmiau viską, sukonstravau, įdėjau ir puslapiavimą, viskas sukosi kaip reikiant.  Nors testuojant su tam tikrais duomenis mačiau duomenų pasikartojimą, bet bandžiau save įtikinti, jog tai tiesiog testo sudarymo klaida. Bet pasirodo nė velnio :D

Pjausčiau savo funkciją išilgai ir stačiai, bet vis nesupratau, kas prideda pasikartojančius duomenis. Atrodo mistika. Na bet paskui viską apgalvojęs ir pabandęs su dideliu kiekiu duomenų palikau funkciją DISTINCT, kuri šiaip yra labai reikli resursams, bet kai duomenų nėra kalnai veikia visai greitai :)

Vakarop įgavęs antra kvėpavimą radau dar keletą bug’ų (vabalų) ėmiau ir puse ištaisiau, kita pusė liko rytdienai :)

Dvitešimta diena – oi

Atėjau ryte į darbą, viską susijungiau, dar taip tingas ima, dirbti rimtai nesinori, aplinkiniai ir dar nelabai ką daro. Sėdžiu, truputi googlinu nelabai į temą. Klausau radijo. Ir jaučiu kažkas šalia stovi. Pažiūriu, o gi bosas ir dar kažką sako! Greitai nusiimu ausines ir rodau ką esu jau apdaręs… ir paklausiu keblių klausimų. Pasirodo tik man jie keblus :)

Kai viską parodė ir paaiškino ėmiau suktis kaip vijurkas nors dirbti vis dar tingėjos :)

O gi MSSQL neturi vienos labai labai labai svarios ir be galo naudingos funkcijos, kuri ir MySQL ir OracleDB yra..  Tai LIMIT funkcija. Su kuria galima gauti rezultatų tiek keik reikia ir pradedant nuo tos eilutės kurios reikia.  Šito tikrai nesitikėjau. Didelis akmuo į SQL-T daržą, labai didelis!

O šito velnio realizacija padaroma per 3 žingsnius:

  1. Sukuriama laikina lentelė, ji žymima #pavadinimas, ji atmintyje būna tol, kol baigiama procedūra, jei ji sukuriama procedūroje. O jei ne tai iki sesijos galo.
  2. Gaunamas visas rezultatas iš procedūros arba iš paprasto select’o pridedant count(*)’ą, skaičiuojama kiekviena eilutė.
  3. Iš laikinos lentelės išpjaunama su between operatoriumi reikiamos eilutės.

Keista keista keista…

Devyniolikta diena – tas nelemtas kondicionierius

Kaip ir kiekvienas penktadienis diena buvo trumpesnė :) Dar prisidėjo ir tai, jog vakar dieną ofise sušalau, po to išėjęs į lauka sukaitau.. op ir peršalimas :(

Vietomis, kai dar jaučiausi gerai sql-t procedūras rašyti ėjosi tiesiog puikiai :) buvo labai smagu, jog pavyko realizuoti kelių lentelių sujungimą ir  naujų sudėtingą rezultato gavimą :)

Bet deja visa ko pasekoje teko gerti koldreksą ir slėptis po antklode :(

Aštuonuolikta diena – iefix, mozfix, operafix?

Pasinaudojęs jquery browser komponentu greitai prirašiau galybes įvairių bugfix’ų vienai ar kitai naršyklei :)

Bet dėl vieno vieno reikalo sukau galva visą ryta. Pasirodo IE6 nelabai supranta tokio dalyko kaip document.formosvardas.submit() funkcijos :/ Teko galvoti kaip viską ištaisyti ir kuo greičiau, nes jau praktika persirito į pabaigos pusę, o darbai darbai dar laukia. Teko nemažai pasiknisti, kol pagaliau sugalvojau, jog galima įmesti paprasčiausią input hidden elementą, kuris tiesiog paspaudus ant vieno iš submit mygtukų pakeistų reikšmę į man reikiama ir viskas tuo gražiai išsisprendė, nors pats kelias deja nebuvo gražus. Bet dabar jau bus aišku kaip kitą karta daryti :)

O po piet iškilo problema su div’ų div’e aukščiu, keista. Rodos tik pakeičiau iš link’o į button’ą o vaizdas div’e pasikėlė per 10px ir niekaip nelipa žemyn…. Bet po smagaus googlinimo ir galvos kasimo radau paprastą išeiti, keletas margin’ų, pakeisti positionai’ai ir dar šiek tiek tarp naršyklino hacko :)

Šiašiolikta diena – toliau taisom tarpnaršyklinius neatitikimus

Keista, jog jų pasidarė tiek daug. Dar keisčiau, kad padarius paprastam html’inam faile lentelę ne iš lentelės, o iš div’ų ir span’ų ir daugybės css viskas atrodo ir elgiasi taip kaip ir noriu. Bet perkėlus į šabloną vėl viskas išsikraipo, tai būdinga IE :) bet pora eilučių su jquery ir viskas ištaisyta :)

Dar vienas įdomus dalykas. FF2* kodą interpretuoja kiek kitaip nei FF3*. Visi elementai su pabaigomis, kodas gražus ir be klaidų, tikrinau w3c validatoriuje. Bet va FF3* ima ir kodą interpretuoja kiek kitaip. Kadangi FF3* arčiau standartų nei FF2* tai tenka taisyti ir ieškoti sprendimo. O jis paprastas, nenaudoti width:100% apibrėžiant išorinį div’ą, kuris apgaubia vidurį. Įdomu :)

Beje ačiū nežinau.lt, už tai jog parodė puikia programą, IETeste. Šia puikia programa galima iškarto peržvelgti kaip atrodys puslapis su IE5.5, IE6, IE7 ir IE8Beta :) Tai ko senai trūko :)

Penktiolikta diena – penktadienis ir lieka penktadieniu

Penktadienis kaip įprastai yra diena, kai visi galvoja apie savaitgalį ir darbas nutolsta kažkur toli ir atrodo visai nesvarbus. Na bent daugeliui. Dėl kai kurių priežasčių nusprendžiau padirbėti ilgiau. 4:20 valandą ofisas jau buvo beveik tuščias, liko tik du rodos vyriausi programuotojai geriantis arbatą.

O man darbas ėjosi gerai, susipažinau daugiau su jquery JavaScript šablonu, dabar atrodo jis daug patogesnis nei Prototype.js, kurį naudojau ankščiau :) Keletas eilučių ir formos tikrinimas atliktas. Tik gaila, jog su skirtinos naršyklės truputi tą kitaip interpretuoja, tad teko nemažai padaryti pakeitimų tiek IE tiek FF tiek Operai. Bet kuo toliau tuo lengviau viskas išsisprendžia :)

Penktadienis buvo gera diena :)

Keturiolikta diena – kodėl skirtini standartai negerai

Šiandien buvo viena iš geresnių dienų, viskas ėjosi beveik idealiai. Jei ne vienas dalykas – skirtingos rašyklės skirtingai keletą svarbių dalykų interpretuoja.

Pirmas pav.: Dizainas iš lentelių, vidury per šabloną dedu savo kodą, jis paremtas div’as ir span’ais su daugybę stiliaus taisyklių (css).

Firefox (v2,0,014), naršyklė kurią naudoju pagrinde. Viską atvaizduoja kaip noriu, viskas gražu ir puiku.

Firefox (v3R1), ką dedu į div’us nerodo tam tikruose puslapiuose.

Opera (v-einamoji) visas turinys kabo per vidurį išcentruotas vertikaliai. Na beveik viskas gerai, nors vaizdas geriausiai atrodo FF20014.

IE (v6), ką dedu į div’us nerodo, lyg nebūtų…

Kitas pavyzdys – JavaScript su jquery.

FF (v2,0,014) – viskas ok, kitaip ir negali būti :)

Firefox (v3R1) – atrodo ok, ne viską eina išbandyti, nes ne viskas matosi.

Opera (v-einamoji) – veikia ne viskas, kas turėtu veikti.

IE (v6) – pagal idėja turėtų veikti, bet nebandžiau, nes nieko nesimato :D

Čia 4 beveik populiariausios naršyklės. O dar IE7, Safari ir kt?

Baisus tas webdeveloper’io gyvenimas :>

Trylikta diena – viena eilutė ir 3 val ją atrandant

Šiandien buvo smagi diena.

Nuo pat ryto ėmiausi darbo ir viskas ėjosi puikiai iki tol kol reikėjo iš vienos formos pasiųsti masyvą elementų. Nors nusišauk neveikia.. Išbandau kitur, su pakraščiausiu html’iniu failiuku – viskas ok. Bet kur reikia ten neina.

Vietoj masyvo grąžina „Array“ žodį (string’ą). Daryk ką nori..

Knisausi po visą karkasą, ieškojau, kas gali tokį pokštą daryt. Niekaip niekur.

Paklausiau kolegos, ieškojom kartu ir… galiausiai po 40min radom kame blogio šaknys :)

Ogi vienoje eilutėje, kuri keičia iš vienokių kabučių į kitas ir atvirkščiai. Tik tiek.

Bet kodėl tai turi įtaką masyvui iš formos? Šito niekaip nesuprantu…