HTML in CSS

Poznate HTTP?

ponedeljek, 23. julij 2007 tovarna Ford proda prvi avto (1903)

Nekaj dni nazaj mi je kar sapo zaprlo. Preden pridemo do razloga za to zapiranje sape, pa moram še razložiti nekaj ozadja.

Že nekaj časa sodelujem na enem od slovenskih webmaster message boardov in sem vedno znova presenečen nad tem, kdo vse se ukvarja z izdelavo spletnih mest in celo spletnih aplikacij. Ljudje, ki sprašujejo na prej omenjenem message boardu takšne neumnosti, da ti je takoj jasno, da jim ni jasno povsem nič in jim zaradi tega tudi zelo težko odgovorim na vprašanje, za njih bi skoraj moral prirediti cel tečaj.

Ob spremljanju vsega tega sem dobil snov za razmišljanje. Okej, ne obvladajo HTMLja, ampak se opravičujejo s tem, da tega znanja tako ali tako ne potrebujejo, saj imajo WYSIWYG urejevalnike, ki to počnejo namesto njih. Ali pa še to ne, saj imamo povsod po spletu dostop do brezplačnih predlog, ki so že pripravljene za uporabo. Enostavno, namestimo Mambo, Joomlo, Wordpress ali kaj podobnega, zadevo oblečemo v brezplačno srajčko in že nas vsi hvalijo, kako lepo in super in oh in sploh spletišče smo naredili. Ker imajo te predloge tudi že priložen CSS, tudi poznavanje le-tega ni potrebno.

No, ko se vseeno nekaj zalomi, bomo pa že vprašali na kakšnem message boardu, saj tam "strički iz interneta" 24 ur na dan čakajo na to, da lahko odgovarjajo na neumna vprašanja. Ko "striček iz interneta", v našem primeru jaz, popizdi, da, preden jim odgovorim, naj si gredo najprej prebrat nekaj o HTMLju, da bodo sploh razumeli odgovor, pa seveda znorijo tudi oni, kaj se grem, a ne morem normalno odgovorit na njihovo vprašanje? Ne, ne morem, pa tudi če bi želel, ni izvedljivo, pa tudi časa nimam, da bi priredil cel online tečaj HTMLja.

No, po vsem tem obojestranskem teženju se mi je zastavilo vprašanje, če sploh mogoče kdo od njih ve, po kakšnem protokolu se vse te vsebine pretakajo po internetu, zato sem poskušal sprožit debato o tem, koliko bi nek spletni razvijalec moral vedeti o HTTP, za začetek pustim TCP/IP pri miru, da jih še bolj ne zmedem.

Kaj se je zgodilo? Nič, eden si je celo šel nekaj prebrat na wikipedio, eden pa je priznal, da za HTTP v življenju niti slišal še ni, in vprašal, če so mogoče z njim kakšni problemi, verjetno zato, ker ga zanima, če bi se ga mogoče moral izogibati? :) V tem trenutku smo tudi končno prišli do obljubljenega zapiranja sape.

Ker vem, da tale moj blog bere tudi nekaj ljudi, ki HTTP zelo dobro poznajo, bi vas prosil, če lahko tukaj odpremo kakšno konstruktivno debato o tem. Tema pogovora je torej: Ali bi morali spletni razvijalci poznati osnove HTTP ali se pač motim?

Začnimo!

1.
bbb
23. julij 2007, 11:05

Poznavanje http protokola razen osnov ni pomembno, saj delamo na višjem nivoju :)
Tudi avtomehanik ne pozna kemične strukture olja, pa ga vseeno natoči v motor.

2.
23. julij 2007, 11:45

Jaaa, bom jest, bom jest odgovoru (iz glave, brez Wikipedije): HTTP je "hyper tekst transfer protokol" in skrbi, da svetovni splet kot ga poznamo deluje tako kot deluje (to vem iz glave).

Spoznaš ga po črkaš HTTP, da zaradi njega delujejo vse spletne strani, ki jih poznaš, gledaš, odpiraš, zapiraš, ... ti MORA biti jasno, zato ker se vsak, prav vsak URL začne z "http://" in je jasno da brez tega ne bi moglo delat NIČ, kar je povezano s svetovnim spletom ...

Sicer pa, Vini, ... ne obremenjuj slovenskih spletnih strokovnjakov s tako trivialnimi vprašanji, oni že vedo kaj je PHP, CMS, AJAX, 2.0, ne rabjo pa vedet kaj je HTTP, kaj šele TCP/IP, ah, da o zgodovini / razvoju spleta ne govorimo. TELNET je najbrž kakšna firma pred internetnim buubleom ...

3.
23. julij 2007, 11:53

Ja, bbb, se popolnoma strinjam, ampak do kod misliš, da bi moral nekdo poznat HTTP? Verjetno nekaj osnovnih headerjev, recimo Content-Type, Set-Cookie, še kaj? Mogoče še request header Host, da mu je jasen sistem apachejevih virtualnih hostov? Že pretiravam? Mogoče bi moral tudi vedeti, kje v HTTP response se nahajajo headerji in zakaj mu PHP teži Cannot modify header information - headers already set...? Bi moral vedeti razliko med GET in POST requesti ali je dovolj, da misli, da sta to pač samo dva različna načina submitanja form in da je POST "boljši", saj se ne vidi podatkov v query stringu?

Mogoče sem res še stara šola, ko smo doma še vse razstavili, da smo ugotovili kako zadeva deluje, pa smo to prenesli tudi na internet. Spomnim se, kako sem se nekoč davno čisto iz firbca telnetal na port 6667 IRC strežnika in se poskušal na roke igrati IRC clienta. To sem ponovil tudi z web strežniki, spet iz firbca, tokrat seveda na port 80 :)

Imam občutek, da mi je tovrstna zvedavost izdatno pomagala pri razumevanju vsega skupaj, zato nekako ne razumem, zakaj se nekdo, ki se ukvarja s spletom, ne bi tudi poglobil v vsaj nekaj nizkonivojskih zadev, čisto zaradi tega, da bi razumel, zakaj se zadeve obnašajo tako kot se.

4.
23. julij 2007, 11:59

Davorin, o naštevanju kratic v CVjih ali ponudbah sem že govoril :) Se ti ne zdi, da bi se ful fensi slišalo, če bi lahko poleg vseh XHTML, CSS, CMS, AJAX, DOM, JS, ... dodali še HTTP in TCP/IP v svoj CV? :) Mogoče pa ne, ker slednji nista ravno buzzworda in ne bi impresionirali nikogar :)

5.
bbb
23. julij 2007, 13:03

Glih o tem govorim, da ti ni treba vedeti ali je get post, ali je cookie ali je session ampak delaš na višjem nivoju.
Drugeče smo pa tudi mi morali na faxu napisati enostaven web strežnik v c++ ;)

6.
23. julij 2007, 13:20

bbb, saj jaz tudi delam na višjem nivoju, ne setiram cookiejev s header() funkcijo, ne motovilim z nekimi low-level prijemi za session management, ampak kar lepo uporabljam PHPjeve session funkcije in tako naprej. Se mi pa še vedno zdi, da lažje razumem in uporabljam vse te višjenivojske zadeve, če mi je vsaj malo jasno, kaj se dogaja zadaj. Lažje razmišljam v pravi smeri, ko iščem ustrezno višjenivojsko rešitev. Lažje razumem pomen in namen funkcij. In tako naprej...

7.
operativc
23. julij 2007, 14:38

Hja, eni delate na višjem nivoju, eni pa pol dolgo v noč popravljamo za vami . Tko k arhitekt nekaj nariše, inženir pa potem do jutra popravla, ker arhitekt ne ve, da se kovina polet ratzegne.

8.
23. julij 2007, 16:05

operativc, zanimiva primerjava! hvala! :)

9.
23. julij 2007, 16:08

Alo majstori!

Mislim, da zivimo v casu, ko hocemo vse "instant". Ravno tako je tudi s temi "rookie" proizvajalci spletnih strani.
Visji nivo, nizji nivo - vseeno. Cloveku se pac zatakne in postavi vprasanje v okviru svojega znanja, ki je lahko butasto (sam nisem pristas rekla, da "Glupih vprasanj ni, so samo glupi odgovori").

Splet je v svojem bistvu odprta zadeva in mislim, da je to kul. Nemogoce je torej, da bi dosegli predpis, kaj vse mora nekdo znati preden se loti postavljati spletno stran.

"Ucitelj pride, ko je ucenec pripravljen."
Prijazni stricki z Interneta torej lahko pomagate in obicajno to tudi storite, ko vam nekdo postavi pametno vprasanje. Ce nekdo sprasuje gluposti, se pogosto zgodi, da ga na forumih mocno popljuvajo (obicajno to niso prijazni stricki z interneta, ampak tisti malo mlajsi, ki imajo recimo "zelen pas") in sprasevalec slej ko prej rajsi kar pobegne. Po svoje je to kul, saj kdo drug s podobnim nivojem znanja tak "dissalog" prebere in ze vnaprej izgubi voljo smetiti po vsebinah, ki mu niso namenjene.

Kaj je storiti strickom?
Ce se vam ljubi nekoga pouciti, potem to storite, sicer ga ignorirajte, saj tako ali tako ne bo poslusal. Ce mu nasvet "preberi si to in to" ni kul, ker hoce, da nekdo zanj opravi delo in mu da "instant" navodilo, pa spet, pa se enkrat, pa,... potem pac ni pripravljen. Pika.

Mogoce bi lahko clanstvo webmaster boardov malo bolj "nadzirali". Ce se ne motim se pravi znalci med seboj vec ali manj poznate in ko bo nekdo ready, bo znal priti do vas in si zagotoviti dostop do bolj zahtevnih vsebin. Dotlej pa naj pac upa, da se mu bo nasmehnila sreca in bo ujel pozornost prijaznega stricka, ki je ravno prisel z osvezujocega hladnega piva, caka svojo lepso polovico, da pride izpod tusa in ubija cas s prebiranjem "zanimivih" vprasanj.

10.
Ale[
23. julij 2007, 21:59

Je tale Ales kar glavca.
Mora bit nekaj v imenu ;)

Da se jaz dodam nekaj besed kot dopolnilo vasim.

Zdi se mi namrec, da se na spletu vse prepogosto dogaja, da se napake odpravljajo namesto preprecujejo.
To se pojavi predvsem zaradi tega slabega predznanja oziroma znanja.

Zal moram potrdit, da sem tudi sam pogostokrat v skupini, ki (svoje) napake odpravlja. S taksnim tempom, kot se dandanes premikajo stvari, je tezko poznati vse "skrivnosti" podrocja na katerem delas.

Vse to se nam pa dogaja zaradi lovljenja casa, ki ga "vedno primanjkuje" - stvari, ki jo bevska ze vsak pes v vasi.

Clovek si se v redu ne pogleda osnov, pa je ze prisiljen delati na visjem nivoju, saj mu tako nareka cas, druzba, smernice, ...

Mogoce sem malce zasel s teme HTTP, vendar mislim, da je komentar pod pravo temo.

11.
24. julij 2007, 07:33

Vini, v svoj CV sem dodal HTTP, čeprav ne vem nič o GET in POST jajcih (zato imamo na svetu programerje, da vedo), ... se mi zdi fensi. Če bo kdo vprašal, bom rekel: "Aaaaa, viš, mulc, nimaš pojma. Na HTTP-ju cel svetovni splet stoji." On bo izpadel lolek, jest pa bolek ;)

Sicer si si pa že sam odgovoril. 6x7!

12.
25. julij 2007, 16:51

ne... najboljse da nimas pojma - tako ne bo nihce nevoscljiv tvojemu znanju, bos priljubljen med sodelavci, ker bos isti butl kot oni in se zaposlitevbos hiter dobu... kakorkoli.. majn ko obvladas tisto za kar pravis da obvladas - boljse ti bo slo;)

13.
8. september 2007, 23:36

kako je pa URL (še to lahko dodate v svoj VC) do tega webmaster foruma ker bi še jst kdaj kej neumnega vprašu oz. kej iber pametnega povedu?

14.
Robby
25. september 2007, 22:48

Go Vini, Go Vini, Go Vini, Go Vini, Go Vini, Go Vini, Go Vini...

15.
27. september 2007, 16:14

Tako jaz prepricujem moje sodelavce, da je fino, da ves kaj je byte-order, kaj so biti in kako izgleda stack. Kaj je pointer in kaj je array. Ceprav programiras v .Net okolju in ti o tem dejansko ne bi bilo treba nic vedeti...

... vse dokler ti stvari delujejo. Takrat, ko nekaj crkne, pa nastane problem.

Vedno je bilo tako in vedno bo.

16.
heniu$
10. november 2008, 21:03

žalostno ampak resnično :)