Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointiputka: Suosittelemiani parannuksia

Sivun loppuun

Petja [10.03.2011 21:15:48]

#

Tässä muutamia parannuksia, jotka näkisin hyödyllisiksi Ohjelmointiputkassa:
* Olen juuri lähettänyt viestin keskustelu-osiossa. Haluaisin tehdä vielä lainauksen aiemmasta viestistä. Klikkaan Lainaa, mutta eipäs onnistu. Edellisen viestin lähettämisestä on kulunut liian lyhyt aika. On aika turhauttavaa kopioida käsin toisen viestiä, ja sitten asettaa tagit.
* Kävisikö kuva-tagin lisääminen? Liian suurien kuvien pienentäminen tuskin on mikään ongelma?
* Listojen tekemiseen soveltuva tagi. Näyttää tyhmälle tälläiset tähti-listat, kuten tämä.

Blaze [10.03.2011 21:43:39]

#

Petja kirjoitti:

* Olen juuri lähettänyt viestin keskustelu-osiossa. Haluaisin tehdä vielä lainauksen aiemmasta viestistä. Klikkaan Lainaa, mutta eipäs onnistu. Edellisen viestin lähettämisestä on kulunut liian lyhyt aika.

Näinpäin minä sen teen, ja mua ei edes koske tuo rajotus:

Petja kirjoitti:

* Listojen tekemiseen soveltuva tagi. Näyttää tyhmälle tälläiset tähti-listat, kuten tämä.

On jo:

[lip]
[lik]apina
[lik]banaani
[/lip]

Laitinen [10.03.2011 21:45:01]

#

Käsittääkseni lip-tagi toimii listojen tekemiseen, ja ohjesivu näyttäisi olevan samaa mieltä: https://www.ohjelmointiputka.net/ohje.php?tunnus­=kohjeet.

Edit. Blaze olikin nopeampi.

Metabolix [10.03.2011 21:46:06]

#

Petja kirjoitti:

Haluaisin tehdä vielä lainauksen aiemmasta viestistä.

Pitäisikö lainauslinkin tällöin viedä muokkaussivulle, vai mikä olisi hyvä ratkaisu? Onko ongelmana se, että haluat lainata useaa viestiä, vai se, että keksit jälkikäteen lainata vielä lisää? Usean viestin lainaamiseen on jossain vaiheessa tulossa parannus.

Petja kirjoitti:

Kävisikö kuva-tagin lisääminen?

Kuvat eivät minusta kuulu suoraan keskusteluun. Ne hidastaisivat tarpeettomasti sivujen latautumista, ja lisäksi ne usein katoavat netistä omia aikojaan. (Kaikkea ei ole järkevää tai edes mahdollista ladata Ohjelmointiputkan palvelimelle.) Ehkä data:-kuvia voisi harkita jonkin kokorajoituksen kanssa.

Kuvatagi sinänsä on kyllä olemassa mm. oppaita ja kilpailuja varten.

Petja kirjoitti:

Listojen tekemiseen soveltuva tagi.

Listoja voi koota mm. tageilla lip, lin, lia ja lik sekä ul, ol ja li.

Keskustelun ohjeet ovat muotoilujen osalta vielä jonkin verran puutteelliset, jossain vaiheessa pitäisi varmaankin tehdä uusi ohjesivu pelkkiä muotoiluja varten ja esitellä varsinaisissa keskustelun ohjeissa vain tärkeimmät tagit eli kooditagi ja hakasulkutagi ([[] ja []] tai [h] ja [/h] tai [haka] ja [/haka]).

Lebe80 [10.03.2011 21:53:36]

#

Ekaan lainailuun on itsellä tullut praktiikka availla kaikki lainattavat viestit ensiksi täbeihin, josta copy/pastee ne varsinaiseen vastauskenttään. Totta on, että jälkikäteen muokattavaan tekstiin on "ikävämpi" tehdä muutoksia, silti käsin kirjottelukaan ei ole vaikeaa, ja aina se "lainailu" ei ole edes tarpeellista.

Eikös tästäkin ole ollut joskus juttua. Itse en oikein näe mitään syytä, kun kuviin voi laittaa suoran urlin.

Petja kirjoitti:

Liian suurien kuvien pienentäminen tuskin on mikään ongelma?

Voisitko tarkentaa, miksi siitä ei tulisi ongelmia. Itse juuri näen että nimenomaan liian suurien kuvien pienentäminen tuo ongelmia, joita näkee juuri erilaisilla "laudoilla" sivuston hidasteluna.

Muutenkin kuvat voisivat tuoda nyt niin selkeään keskustelualueeseen sekavuutta.

* Mitä vikaa tähtilistoissa on?

https://www.ohjelmointiputka.net/ohje.php?tunnus­=kohjeet


edit:
hidas wanhus. :(>>>>

Petja [12.03.2011 19:24:52]

#

Eipä tullut huomattua, että listatkin voi tehdä.

Voisiko keskusteluissa olevat linkit mennä uuteen välilehteen?
target=_blank

sqwiik [12.03.2011 19:29:36]

#

Petja kirjoitti:

Voisiko keskusteluissa olevat linkit mennä uuteen välilehteen?
target=_blank

Tämä löytyy asetusvaihtoehtona omista profiiliasetuksista.

Metabolix [12.03.2011 20:15:48]

#

Itse asiassa tuo linkkiasetus on suunnitelmissa ehkä jopa poistaa. Kai nyt jokainen osaa avata linkin itse uuteen tabiin esimerkiksi hiiren keskinapista, ja yleensä on parempi, että kaikki linkit aukeavat ennustettavasti samalla tavalla selaimen omien asetusten mukaan.

ankzilla [12.03.2011 21:09:37]

#

Metabolix kirjoitti:

Itse asiassa tuo linkkiasetus on suunnitelmissa ehkä jopa poistaa. Kai nyt jokainen osaa avata linkin itse uuteen tabiin esimerkiksi hiiren keskinapista, ja yleensä on parempi, että kaikki linkit aukeavat ennustettavasti samalla tavalla selaimen omien asetusten mukaan.

Kannatan, olisi parempi että target="_blank":ia ei käytettäisi enään missään, koska kyllä jokainen itse tietää haluaako sivun aukaista uudessa välilehdessä.
Kyseinen attribuutti häiritsee vain.

Antti Laaksonen [12.03.2011 22:39:25]

#

Tässä on vanha keskustelu aiheesta:

https://www.ohjelmointiputka.net/keskustelu/2426-linkit-samaan-ikkunaan-kiitos-whine-warning

Ainakin tuolloin molemmat käytännöt saivat kannatusta, minkä vuoksi linkkiasetus otettiin käyttöön.

Asetusta ei olla poistamassa huvin vuoksi vaan muotoilujärjestelmän yksinkertaistamiseksi. Jos asetus on monelle tärkeä, sitä ei tietenkään poisteta.

Nyt onkin hyvä hetki ottaa kantaa asiaan: onko linkkiasetus tullut tiensä päähän, vai onko sille edelleen tarvetta?

jo123 [12.03.2011 23:07:31]

#

No se on joskus hyödyllinen jos selaa ohjelmointiputkaa vaikkapa kännykällä. Kännykässä uuden välilehden avaaminen linkistä ei ole aina yksinkertaista. Riippuen toki laitteesta.

Macro [12.03.2011 23:36:00]

#

Toki mobiililaitteille voisi laittaa linkit aukeamaan uuteen ikkunaan.

Petja [12.03.2011 23:58:49]

#

Nyt kun otettiin asia esille, voisi tehdä mobiiliversion:
http://detectmobilebrowsers.mobi/

Itse ainakin näkisin tuollaiselle käyttöä, kun näet minäkin käytän mobiili-internetiä silloin tällöin.

ankzilla [13.03.2011 00:07:41]

#

Petja kirjoitti:

Nyt kun otettiin asia esille, voisi tehdä mobiiliversion.

Tuosta postaamastasi linkistä en tiedä, mutta omasta mielestä sellainen olisi hyvä että asetuksista voisi laittaa päälle näkyykö sivupalkki vai ei, koska omalla kännykälläni sivu näkyisi ainakin paremmin.

esajeejee [13.03.2011 02:18:18]

#

data urien linkkaus ei toimi, varmaanki siks että niissei oo // ja ne ei mee servupuolella validista linkistä?

Niihin voi esimerkiks embeddaa suoraan html sivun josta kuka tahansa pääsee testaamaan esimerkki html+js koodia yhellä klikillä. Jos väärinkäytöt pelottaa niin voin vaikka ite koodata tänne jonkun joka esikatselee ne linkit selkokielisinä ennenku lähtee klikkaamaan.

Niistä voi myös helposti filtteroida pois mimetyypit, esim sallia vaan text/html data linkit.

ankzilla [13.03.2011 02:37:18]

#

esajeejee kirjoitti:

data urien linkkaus...

Aika turha sanoisin..

esajeejee [13.03.2011 02:46:20]

#

No olisko viel perusteluja? Säästää erittäin huomattavasti vaivaa kaikilta html ja js koodeissa.

Sanotaan silloinkin kun kirjottaa viestissään koodia, jos se on html+js niin tulee joku testaa linkki jota painamalla koodi käännetään data uriks joka avataan sitten uuteen tabiin ja näkee heti toimiiko ilman että tarvii venkslata kokoajan editorin ja selaimen välillä.

Petja [13.03.2011 08:10:08]

#

ankzilla kirjoitti:

esajeejee kirjoitti:

data urien linkkaus...

Aika turha sanoisin..

Minä en sanoisi..
Kun turvallisuuspuolen ensiksi hoitaa, niin hyötyäkin tälläisesta saisi. En näe tässä mitään, mikä laittaisi vastaan. Hyvä idea!

Metabolix [13.03.2011 11:42:54]

#

esajeejee kirjoitti:

data urien linkkaus ei toimi, varmaanki siks että niissei oo // ja ne ei mee servupuolella validista linkistä?

Kaikenlaiset tunnistamattomat linkit on estetty, koska moniin niistä liittyy riskejä. Ymmärrät varmaan, mitä esimerkiksi javascript:-alkuisella linkillä voi tehdä. Aivan samat ongelmat toistuvat data:-alkuisissa linkeissä, jos HTML sallitaan.

esajeejee kirjoitti:

Jos väärinkäytöt pelottaa niin voin vaikka ite koodata tänne jonkun joka esikatselee ne linkit selkokielisinä ennenku lähtee klikkaamaan.

Jos tarkoitat, että käyttäjä itse tarkistaisi avattavan sivun lähdekoodin, tämä ei missään tapauksessa riitä. Sivuston linkkien klikkailijoista suuri osa ei osaisi siitä etsiä haitallista koodia. Jos taas tarkoitat, että koodisi tunnistaisi automaattisesti haittakoodit, en usko, että kykenisit kovin luotettavaa sellaista tekemään.

esajeejee [13.03.2011 17:15:18]

#

Metabolix kirjoitti:

esajeejee kirjoitti:

Jos väärinkäytöt pelottaa niin voin vaikka ite koodata tänne jonkun joka esikatselee ne linkit selkokielisinä ennenku lähtee klikkaamaan.

Jos tarkoitat, että käyttäjä itse tarkistaisi avattavan sivun lähdekoodin, tämä ei missään tapauksessa riitä. Sivuston linkkien klikkailijoista suuri osa ei osaisi siitä etsiä haitallista koodia. Jos taas tarkoitat, että koodisi tunnistaisi automaattisesti haittakoodit, en usko, että kykenisit kovin luotettavaa sellaista tekemään.

Jos sivuston suuri osa käyttäjistä ei tunnista haitallista koodia niin miten täällä edes sallitaan php tai mysql joiden ajaminen on äärettömästi haitallisempaa kuin html+js, mikä ei kunnon selaimella pahimmillaan edes aiheuta kuin sen että tabi pitää sulkea? Yritän siis vaan tehdä pointtia, ei kiinnosta lähtee väitteleen mitä javascript voi tehdä hyvillä tai huonoilla selaimilla.

Ne linkit vois aina olla generoitu automaattisesti siitä html+jskoodista jonka viestin lähettäjä on tehny, bandwidthiakin säästyisi (ja vaivaa). Silloin sen dataurin klikkaus ei eroais turvallisuuspuolella mitenkään siitä että copypastetaan joku esimerkkikoodi, tallennetaan se ja ajetaan se.

Teuro [13.03.2011 17:22:09]

#

Missä täällä pääsee lähettämään palvelimella ajettavaa php / mysql koodia?

Koodin laittaminen esille ei ole ollenlaan ongelma, kun huolehditaan riittävästi tietoturvasta. Tuollainen systeemi olisi ehdottomasti vaarallisempi asia, kuin mainitsemiesi koodien lähettäminen. Lähdekoodilla ei ole oikeastaan mitään virkaa / se ei ole vaarallinen, jos sitä ei joko käännetä tai ajeta tulkin lävitse.

esajeejee [13.03.2011 17:31:05]

#

lainaus:

Missä täällä pääsee lähettämään palvelimella ajettavaa php / mysql koodia?

Ei mitenkään. Käyttäjä copypastee sen koodin palvelimelleen ja ajaa sen. Aivan samalla tavalla kuin js ajetaan tällä hetkellä copypasteemalla se notepadiin ja avaamalla selaimessa tai vastaavasti. Riskit on täysin samat kun data urin joka on generoitu täysin samasta koodista mitä siinä koodi tagien välissä on, ja tulos on täysin sama kuin copypastettaessa sama koodi jonnekkin ajettavaks.

lainaus:

Koodin laittaminen esille ei ole ollenlaan ongelma, kun huolehditaan riittävästi tietoturvasta.

Epäilen suuresti että täällä on mitään haitallisen mysql tai php koodin filtteriä. Esimerkiks jos heitän kooditageihin phpta ja sanon että se ratkasee sun ongelman x, mutta tekeekin jotain erittäin haitallista y. Jos et tunnistais haitallista koodia niin lopputulos olis erittäin paljon vakavampi kun mitä se olisi js html:n vastaavassa tilanteessa

Teuro [13.03.2011 17:47:56]

#

Mahdollisesti noin, mutta ongelma olisi silloin käyttäjän itse aiheuttama ja mahdollinen vahinko sattuisi paikallisesti eikä jumittaisi / tuhoaisi koko palvelinta. Eli siis ongelma olisi dramaattisesti pienempi ja koskisi oleellisesti pienempää joukkoa. Kaiken tämän lisäksi se ei tarjoa juurikaan etuja nykyiseen systeemiin. Jos käyttäjä aikoo käyttää kokeilemaansa koodia pitää se kuitenkin ladata ensin kotikoneelle ja sieltä edelleen palvelimelle.

Erään toisen käyttäjän serveri on kaiketi ainakin kahdesti tuhottu täydellisesti, tosin palvelimelle sai kaiketi lähettää lähes mitä tahansa koodia.

esajeejee [13.03.2011 18:08:47]

#

Jos nyt ongelma on ettei se muka tarjois etuja niin tässä vielä:

- Threadissa voi olla monta eri koodiräpelmää ja todennäkösesti monta niistä pitää kokeilla
- Kun tehdään vastausta koodiesimerkillä joka ei ole täysin triviaali niin ainakin itse kokeilen sen toimivuutta ja erittäin todennäkösesti se ei toimi ekalla kertaa.
- Voin olla väärässä tässä, mutta harvemmin käyttäjä suoraan kopioi esimerkki koodia ja siirtää sen käyttöön. Enemmänkin katsotaan mitä koodi tekee ja mietitään miksi se toimii niin ja kehitytään ohjemoijana eikä copypasteejana.

Minusta nämä edut on aika suuria siihen vaivaan nähden että alustavasti arvioisin jqueryllä olevan reilu tusinan riviä koodia koko toteutus. Hieman enemmän ilman kirjastoja, mutta joo.

Metabolix [13.03.2011 18:09:44]

#

esajeejee kirjoitti:

miten täällä edes sallitaan php tai mysql joiden ajaminen on äärettömästi haitallisempaa kuin html+js

Viittaatko tähän sivuun? (Edit: ilmeisesti et.) Siinä on taustalla hieman toisenlaista tekniikkaa (mm. chroot, setuid ja erillinen PHP-tulkki).

esajeejee kirjoitti:

Sen dataurin klikkaus ei eroais turvallisuuspuolella mitenkään siitä että copypastetaan joku esimerkkikoodi, tallennetaan se ja ajetaan se.

Jos joku kopioi koodin koneelleen ja ajaa sen, hänen pitäisi ymmärtää, että jotain voi tapahtua. Sen sijaan jos käyttäjä klikkaa luotettavalla sivustolla olevaa linkkiä, joka näyttää vievän toiselle sivulle samalla sivustolla, hänellä pitäisi olla oikeus olettaa, että toiminto on turvallinen.

Tajuatko, että jos koodi on selaimen näkökulmasta Ohjelmointiputkassa, sillä saa aikaan huomattavasti hankalampia asioita kuin ulkopuolisella koodilla? Chromium näköjään käsittelee data:text/html-URIn ulkopuolisena sivuna, mutta Firefoxilla näyttää onnistuvan mm. evästeiden käsittely ja moni muu ikävä asia.

Alla on esimerkki, joka kalastelee käyttäjän salasanaa, jos selain sallii. Kirjaudu ulos, klikkaa tuota linkkiä ja mene sitten kirjoittamaan salasanasi tuonne kirjautumisformiin. Salasana näytetään alertilla. Useimmat selaimet estäisivät koodin, jos se olisi käyttäjän omalla koneella; nyt se näyttää olevan Ohjelmointiputkassa, joten mm. Firefox sallii kalastelun.

Tästä kalastelemaan!

esajeejee kirjoitti:

Threadissa voi olla monta eri koodiräpelmää ja todennäkösesti monta niistä pitää kokeilla

Suurin osa keskustelun koodeista on niin vajavaisia, ettei niitä edes voi sellaisenaan testata. Ja näin on hyväkin, koska olisi typerää laittaa täysiä sivustoja kaikkine skripteineen, tyyleineen ja kuvineen osaksi keskustelua.

esajeejee [13.03.2011 18:10:56]

#

Metabolix, viittaat tohon mun vanhaan toteutukseen. Tarkotin että ne data urit generoitas suoraan siitä esimerkki koodista ohjelmallisesti, ei käyttäjän tekemänä.

Metabolix [13.03.2011 18:16:08]

#

esajeejee, ei sillä ole mitään väliä. Koodi on käyttäjän kirjoittamaa siinä missä linkkikin, eikä voi olettaa, että kaikki kävijät lukevat koodit tarkasti läpi ennen linkin klikkaamista. Ei ole suuri vaiva piilottaa tuollaista koodinpätkää täysin viattomalta näyttävään "esimerkkiin".

esajeejee [13.03.2011 18:24:23]

#

No toi kalastelujuttu ei ainakaan toimi mulla firefoxissa taikka chromessa. Varmistin vielä firefoxilla:

uncaught exception: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMNSHTMLDocument.domain]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: "JS frame :: javascript:(function(){alert(document.domain);}()) :: <TOP_LEVEL> :: line 1" data: no]

Chromella:

Unsafe JavaScript attempt to access frame with URL https://www.ohjelmointiputka.net/ from frame with URL

Koitinpa vielä klikata samassa ikkunassa (Firefoxissa) jolloin domaini ei vaihdu, mikä on selvästi firefox bugi.(Chromessa se on molemmissa tapauksissa tyhjä) Jos avaat uuteen tabiin niin toimii firefoxilla kunnolla eli domaini on tyhjä tai error.

En edes käsittäis ton hyötyä avata samaan tabiin.

lainaus:

Suurin osa keskustelun koodeista on niin vajavaisia, ettei niitä edes voi sellaisenaan testata. Ja näin on hyväkin, koska olisi typerää laittaa täysiä sivustoja kaikkine skripteineen, tyyleineen ja kuvineen osaksi keskustelua.

Ainakin chromessa riittää pelkkä script tagi html sivuun jolloin body head jne tulevat automaattisesti. Kaikki esimerkki html js koodit mitä ainakin mä oon tänne pistäny olis toiminu dataurista suoraan lisäämällä <script> tagit, ei paljoa pidentäis koodia.

Tosin jos esimerkki on vaan joku yksittäinen vihje miten joku kandee toteuttaa niin sitten oot oikeessa. Siihenkin pitäs esim lisää vaan alert.

Metabolix [13.03.2011 18:34:44]

#

"Olisit avannut eri tabiin" ja "Selvästi Firefoxin bugi" eivät paljon lohduta sitä käyttäjää, joka klikkaa tuollaisen suoraan auki ja menettää salasanansa.

Turha tästä on enempää vääntää. Ominaisuutta ei näillä näkymin tule, siinä ei itku auta. Hyödyt ovat riittämättömät ongelmiin nähden. Keskusteluissa on aika vähän sellaisia HTML- tai JS-koodeja, jotka käsittävät tasan yhden koodilistauksen, jossa olisi alusta loppuun aivan kaikki tarvittava ilman yhtään viittausta esim. kuviin tai PHP-skripteihin. Ja jos kyseessä on JS-koodi, johon "pitäs lisää vaan alert", voit itsekin miettiä, onko se kokeilemisen arvoinen vai onko kuitenkin kätevämpää vain kirjoittaa kommenttina koodiin, mitä siihen alerttiin tulisi.

esajeejee [13.03.2011 18:47:06]

#

lainaus:

"Olisit avannut eri tabiin" ja "Selvästi Firefoxin bugi" eivät paljon lohduta sitä käyttäjää, joka klikkaa tuollaisen suoraan auki ja menettää salasanansa.

En todellakaan viitannut tähän vaan target=_blankiin. Miksei täällä muuten tehdä HTTP keksejä (ainakin login keksit olis jees olla niin) joihin ei pääse javascriptillä käsiks?

lainaus:

Hyödyt ovat riittämättömät ongelmiin nähden.

Olen esittänyt aika paljon ratkasuita noihin ongelmiin, joten luulen että et taida olla niin innostunut koko ideasta muutenkaan, silloinkaan kun mitään ongelmia ei olis. Turha mun on hakata päätä seinään tässä.

Metabolix [13.03.2011 19:04:47]

#

Jos kerran noin kovasti uskot ajatukseen, niin koodaa sitten systeemi, joka toimii kaikilla selaimilla turvallisesti, tunnistaa testattavaksi sopivat koodit ja tekee tarvittavan muunnoksen. Katsotaan asiaa sitten uudelleen, jos tuotoksesi on tarpeeksi vakuuttava.

efteri [13.03.2011 19:49:32]

#

Mielestäni aiheiden katselusivuille voisi lisätä linkin: "takaisin ylös", vaikkapa tuon "Ohjeet viestien kirjoitukseen" tekstin viereen.

Petja [13.03.2011 20:20:39]

#

Painat vain home-näppäintä.
Kannettavissa (joissa ei täydellistä näppäimistöä) fn-yhdistelmällä.

efteri [13.03.2011 20:35:22]

#

Ja macbook-kannettavissa tuo on cmd + ylös, mutta olisi tuo linkki silti ihan hyvä olla :)

Metabolix [13.03.2011 20:37:46]

#

Mitä niin kiinnostavaa siellä ylhäällä on, ja onko tosiaan niin iso vaiva käyttää näppäimistöä tai ottaa kiinni vierityspalkista ja kiskaista kerran?

esajeejee [13.03.2011 20:47:04]

#

Metabolix kirjoitti:

Jos kerran noin kovasti uskot ajatukseen, niin koodaa sitten systeemi, joka toimii kaikilla selaimilla turvallisesti, tunnistaa testattavaksi sopivat koodit ja tekee tarvittavan muunnoksen. Katsotaan asiaa sitten uudelleen, jos tuotoksesi on tarpeeksi vakuuttava.

Selvä, mutta tosta koodin testauksesta... eikös se ole esimerkin antajan tehtävä tehdä koodi joka ajautuu? Tarkoitus ois siis saada sama lopputulos mikä tulis copypasteemallakin, ei mitään tekoälyä joka parantaa ihmisten koodia.

Testauksena vaikka tämä threadi https://www.ohjelmointiputka.net/keskustelu/22297-formin-lähetys

Erittäin karu koodiprototyyppi joka toimii ainakin hyvin chromessa (muilla ei saata olla natiivia byclassname tai base64 encode):

javascript:(function(){
var b = +prompt("Monesko Viesti? (0 indeksoitu)", 0);
var a = document.getElementsByClassName( "viesti" );
a = a && a.length && a[b] && a[b].getElementsByClassName( "koodi-html" );
var code = a && a.length && a[0] ? a[0].textContent ? a[0].textContent : a[0].innerText : null;

	if( !code || !btoa) { alert("Ei löydy"); return; }

	if( confirm( "Haluatko siirtyä tänne?\n\n"+code ) ) {
	open( "data:text/html;base64,"+btoa(code) );
	}
}())

Eli jos meet ja ajat ton tossa threadissa, niin mitä kokeilin viestit 1 ja 7 (sun viesti) muutti ihan hyvin koodiks joka avautu uudessa tabissa. En sano että oikea toteutus olis lähellekkään tätä (esim toi ottaa vaan ekan html koodin jostain viestistä) mutta siis vaan demoks.

Antti Laaksonen [13.03.2011 20:56:49]

#

efteri kirjoitti:

Mielestäni aiheiden katselusivuille voisi lisätä linkin: "takaisin ylös", vaikkapa tuon "Ohjeet viestien kirjoitukseen" tekstin viereen.

Nyt tämä ominaisuus on käytössäsi.

Metabolix [13.03.2011 21:16:08]

#

esajeejee kirjoitti:

eikös se ole esimerkin antajan tehtävä tehdä koodi joka ajautuu?

Kiva keskustella, kun et edes lue kunnolla, mitä sinulle kirjoitetaan. Toistan vielä: suurin osa sivustolla tarjotuista koodeista on useassa listauksessa tai muuten puutteellisia. Mainitsemasi keskustelu on oikein hyvä esimerkki: onko kiva "testata" koodiani, joka sisältää tasan yhden nappulan, josta ei edes tapahdu mitään? Suurin osa keskustelun koodeista on juuri tuollaisia: niitä ei voi "testata", koska ne eivät yksin tee mitään tai edes muodosta järkevää kokonaisuutta. Tuossa minun viestini tapauksessa koodista puuttuu mm. ympäröivä form-elementti, JS-funktiot ja JS-funktioiden tarvitsemat muut inputit.

Olisi typerää laittaa jokaisen HTML-koodilaatikon viereen testauslinkki, jos käytännössä koodeista vain pari prosenttia on oikeasti testattavissa ja lopuista tulee jokin omituinen, rikkinäinen lopputulos, josta parhaimmillaan ei ole mitään hyötyä ja joka pahimmillaan aiheuttaa vakavaa hämmennystä aloittelijalle, joka ei ymmärrä, miksei esikatselu toimi.

Jotkut myös pitävät omilla palvelimillaan kattavampia versioita tänne laittamistaan lyhyistä HTML-koodeista, ja tämä on minusta järkevä käytäntö: foorumilla selitetään periaatteet ja annetaan mahdollisimman tiivis versio koodista, ja jossain muualla on mallisivu siitä, miltä toteutus näyttää käytännössä suuremmalla datamäärällä. Omalla palvelimella olevaa versiota voi vieläpä huoletta korjailla ja parannella jälkikäteen.

Grez [13.03.2011 21:32:46]

#

Antti Laaksonen kirjoitti:

Nyt tämä ominaisuus on käytössäsi.

Siis onko ko. ominaisuus vain Efterin käytössä? Ei sillä että itse haluaisin. Ei näy itsellä ja mietin, että aika hyvää palvelua jos käyttäjäkohtaisesti tehdään ominaisuuksia :D

Antti Laaksonen [13.03.2011 21:36:16]

#

Kyllä, ominaisuus on vain efterin käytössä. Jos joku muukin haluaa, minulle voi ilmoittaa.

Käyttäjäkohtaiset ominaisuudet ovat minusta ihan kiva ratkaisu, jos ominaisuuden pystyy toteuttamaan hyvin nopeasti.

esajeejee [13.03.2011 21:48:45]

#

Metabolix, eihän sen nyt tarvi olla kaikki tai ei mitään? Esimerkit joita ei voi käyttää noin voi jättää merkkaamatta ajettavaks. Threadin esimerkit voi myös tagata grouppeihin jotka voi ajaa yhdisteenä jne.

efteri [13.03.2011 21:53:01]

#

Metabolix kirjoitti:

Mitä niin kiinnostavaa siellä ylhäällä on, ja onko tosiaan niin iso vaiva käyttää näppäimistöä tai ottaa kiinni vierityspalkista ja kiskaista kerran?

Paljonkin, esimerkiksi navigointi ja kun sivuja tulee selailtua monen moisilla laitteilla ei näitä pikanäppäimiä aina muista tai löydä mikäli niitä edes on olemassa.

Antti Laaksonen kirjoitti:

Nyt tämä ominaisuus on käytössäsi.

Kiitos :)

eq [14.03.2011 03:11:42]

#

esajeejee kirjoitti:

Metabolix, eihän sen nyt tarvi olla kaikki tai ei mitään? Esimerkit joita ei voi käyttää noin voi jättää merkkaamatta ajettavaks. Threadin esimerkit voi myös tagata grouppeihin jotka voi ajaa yhdisteenä jne.

Hälytyskellojen pitäisi kyllä siinä vaiheessa soida kun idea menee jo esittelytasolla vaikeaksi ("jne.")

Knoppi: selvitä mikä osuus Ohjelmointiputkan keskusteluista ylipäänsä on HTML/JavaScript-aiheista JA mikä osuus näistä keskusteluista hyötyisi uudesta ominaisuudesta. Huomioithan, että kaikki tapaukset, joissa esimerkki "tekisi jotain" eivät välttämättä ole ns. hyödyllisiä tapauksia.

Jaska [14.03.2011 12:19:40]

#

Musta olisi ainakin aloittelijoideen kannalta hyödyllistä, jos tageja pystyisi klikkaamaan jostain painikkeesta samaan tapaan kuin vaikkapa Wikipedian editointisivulla. Näin ollen muotoilu nopeutuisi ainakin mulla kun ei tarkkeisi muistaa, oliko se lopputagi /tagi vai \tagi.

Metabolix kirjoitti:

Kai nyt jokainen osaa avata linkin itse uuteen tabiin esimerkiksi hiiren keskinapista

Mulla ei ole Macbookissani hiiren kaksoisnappia. Saan toki uuden välilehden Chromessa "+"-napista ja siirtyä siinä ohjesivulle, mutta se on vähän kömpelöä.

Blaze [14.03.2011 12:41:23]

#

Jaska kirjoitti:

kun ei tarkkeisi muistaa, oliko se lopputagi /tagi vai \tagi.

Kai nyt jokaisella on HTML sen verran selkäytimessä, että se / tulee automaattisesti?

Jaska kirjoitti:

Mulla ei ole Macbookissani hiiren kaksoisnappia.

Kaikenlaisesta roskasta sitä ihmiset maksaaki rahaa.

No, paina sitten ctrl tai shift pohjassa sitä linkkiä.

Hennkka [14.03.2011 16:24:04]

#

Antti Laaksonen kirjoitti:

Käyttäjäkohtaiset ominaisuudet ovat minusta ihan kiva ratkaisu, jos ominaisuuden pystyy toteuttamaan hyvin nopeasti.

Ihan mielenkiinnosta vain, niin kuinka nuo käyttäjäkohtaiset ominaisuudet on luotu? Onko ne IP, eväste vai tunnus kohtaisia ja onko nyt vain jossain taulussa uusi sarake "lnk_ylos"?

Antti Laaksonen [14.03.2011 17:50:55]

#

Hennkka kirjoitti:

Ihan mielenkiinnosta vain, niin kuinka nuo käyttäjäkohtaiset ominaisuudet on luotu? Onko ne IP, eväste vai tunnus kohtaisia ja onko nyt vain jossain taulussa uusi sarake "lnk_ylos"?

Koodissa on if-lause, joka tulostaa sivun yläosaan vievän linkin, jos käyttäjätunnus on "efteri".

Grez [14.03.2011 21:08:24]

#

Sinänsä muuten jännää, että esim iPadissa olisi huomattavasti enemmän hyötyä linkistä jolla voisi skrollata loppuun. Yleensä alkuun ei edes ole mitään tarvetta skrollata vaan viestin luettuaan pääsee takaisin back-painikkeella. Lisäksi Apple on nerokkuudessaan tehnyt alkuun skrollauksen toimimaan painamalla yläpalkkia, mutta loppuun skroollamiseen ei ole nopeaa keinoa.

Miksei muuten tuo viestilistan viimeisen viestin vieressä oleva linkki vie viimeiseen viestiin? Nythän tuossa listalla on kaksi saman tekevää linkkiä 1-sivuisille ketjuille. ...tosi jännä... Linkissä on kyllä # ja viestin numero ankkuriviittaus lopussa mutta se uudelleenohjaa &sivu=1 osoitteeseen jolloin ankkuri katoaa.

Metabolix [14.03.2011 21:36:21]

#

Grez kirjoitti:

Se uudelleenohjaa &sivu=1 osoitteeseen jolloin ankkuri katoaa.

Kyllä se näyttää säilyvän ainakin Firefoxissa, Chromiumissa ja Operassa. Mitä käytät?

Lebe80 [14.03.2011 21:46:58]

#

Itselläkin Windows Vista ja Chrome 10.0.648.133, ei ankkuria vaan uudelleen ohjautuu &sivu=1 -osoitteeseen.

Grez [14.03.2011 21:51:22]

#

Metabolix kirjoitti:

Kyllä se näyttää säilyvän ainakin Firefoxissa, Chromiumissa ja Operassa. Mitä käytät?

No Ipadissa taitaa vähemmän yllättäen olla Safari. Mutta sama ongelma on ainakin IE:ssä. Ja näköjään Safari ei säilytä sitä myöskään Windowsilla.

Chromella säilyy alueen viestien listassa olevan -> linkin ankkuri, mutta esim. uudet keskustelut -listalla oleva &v=numero ei säily. Aikaisemmin sekin mielestäni meni suoraan viimeiseen viestiin.

Itsekin kokeilin nyt 5 selainta: IE, Safari, FF, Opera ja Chrome.

Kaksi ekaa ei säilytä #loppu redirectissä ja viimeiset kolme säilyttää. Eli jälleen kiva ero selainten välillä. Käsittääkseni vielä Chromella ja Safarilla on jotain sukulaisuussuhdetta. Tosin Safari on vanha versio ja IE:kin 8. Kumpikohan mahtaa olla speksien mukaista.

Metabolix [14.03.2011 22:26:34]

#

#-osa ei välity HTTP-pyynnössä, joten mikään speksi ei välttämättä ota kantaa asiaan. Minusta loogista olisi juuri tuon takia säilyttää #-osa, koska palvelin ei ole voinut huomioida sitä uudelleenohjausvaiheessa.

Keksin jo ongelmaan parikin ratkaisua, mutta en juuri nyt jouda niitä toteuttamaan.

Lumpio- [15.03.2011 16:11:15]

#

Antti Laaksonen kirjoitti:

Koodissa on if-lause, joka tulostaa sivun yläosaan vievän linkin, jos käyttäjätunnus on "efteri".

mitä minä luen mies

eq [15.03.2011 17:20:30]

#

Lumpio- kirjoitti:

Antti Laaksonen kirjoitti:

Koodissa on if-lause, joka tulostaa sivun yläosaan vievän linkin, jos käyttäjätunnus on "efteri".

mitä minä luen mies

Ei luulisi tulevan enää tässä vaiheessa yllätyksenä :) (en sano tätä negatiivisessa mielessä, enkä oikeasti edes tiedä 'putkan toteutuksesta mitään, mutta: custom on custom.)

Antti Laaksonen [15.03.2011 22:40:50]

#

Lumpio- kirjoitti:

Antti Laaksonen kirjoitti:

Koodissa on if-lause, joka tulostaa sivun yläosaan vievän linkin, jos käyttäjätunnus on "efteri".

mitä minä luen mies

Miten se sitten olisi pitänyt tehdä?

Lumpio- [15.03.2011 23:09:59]

#

Antti Laaksonen kirjoitti:

Miten se sitten olisi pitänyt tehdä?

Ensin meinasin kysyä että kysytkö nyt aivan tosissasi mutta ehkä en edes vaivaudu. Joko:

1) Jättää linkki kokonaan tekemättä koska sille ei näyttänyt olevan suurta kysyntää (en ole itse nähnyt kenenkään klikkaavan niitä)
2) Laittaa linkki pysyvästi näkyviin. Yksi linkki lisää ei haittaa ketään.
3) Jos on aivan, aivan pakko tehdä siitä optionaalinen, niin siitä voi tehdä profiiliasetuksen. Tämäkin olisi jo turhaa säätöä, sanon mä.

Jos haluat, voin vielä postata pari esimerkkiä TDWTF:stä, joissa kerrotaan kuinka ihanaa luettavaa on softa jota on satunnaisesti "kustomoitu" eri asiakkaille juurikin tekemälläsi tavalla.

Antti Laaksonen [15.03.2011 23:19:21]

#

Toteutin ominaisuuden "Extreme Programming" -tyyliin: mahdollisimman yksinkertainen koodi, joka hoitaa homman ja kaikki ovat tyytyväisiä (paitsi sinä).

Ominaisuuden toteuttamiseen meni nyt noin kaksi minuuttia. Jos olisin alkanut miettiä syytä, miksi ominaisuutta ei tulisi toteuttaa, jopa siihen olisi mennyt enemmän aikaa.

groovyb [18.03.2011 12:03:47]

#

En käsitä miksi jaksetaan käyttää aikaa sivuston parjaamiseen, joka on tehty vain ohjelmoijien avuksi.

Ei purra sitä kättä joka ruokkii :)

Muutenkin, jonkun aktiivisen sivuston ylläpito vapaaehtoistyönä on muutenkin jo niin rasittavaa ja aikaavievää, että en henkilökohtaisesti jaksaisi vapaa-aikaani käyttää siihen. Saatika jos joutuisi vielä pilkunnussinnan kohteeksi pikkuasioissa.

Propsit niille jotka sitä vuodesta toiseen jaksaa ;)

Lebe80 [18.03.2011 12:47:53]

#

groovyb kirjoitti:

....
Propsit niille jotka sitä vuodesta toiseen jaksaa ;)

Lebe80 tykkää tästä.

Samaa mieltä, hienoa että tämmöinen sivu jaksaa pysyä pystyssä.

Petja [18.03.2011 15:27:22]

#

Petja kirjoitti:

* Kävisikö kuva-tagin lisääminen? Liian suurien kuvien pienentäminen tuskin on mikään ongelma?

Omaan aiheeseeni vielä lisäten.
CSS:ssä on olemassa max-width ja max-height, joilla voidaan rajoittaa kuvan kokoa. Tämä ei toki pienennä kuvia todellisuudessa, mutta vie vähemmän tilaa (ei tarvitse selata loputtomasti alaspäin). Kuvaa napsauttamalla voisi avautua uuteen välilehteen/ikkunaan kuva kokonaisuudessaan. Lainauksissa kuva voisi muuttua muotoon [Kuva]... ihan vain tilan säästämiseksi.

ankzilla [18.03.2011 17:02:28]

#

Petja kirjoitti:

Petja kirjoitti:

* Kävisikö kuva-tagin lisääminen? Liian suurien kuvien pienentäminen tuskin on mikään ongelma?

Omaan aiheeseeni vielä lisäten.
CSS:ssä on olemassa max-width ja max-height, joilla voidaan rajoittaa kuvan kokoa. Tämä ei toki pienennä kuvia todellisuudessa, mutta vie vähemmän tilaa (ei tarvitse selata loputtomasti alaspäin).

Kuvan koon rajoitus on pienin murhe, mutta sellainen olisi näppärä että PHP nopsasti kävisi tsekkaamassa kuvan koon tulostusvaiheessa jollain näppärällä funktiolla. Jos kuva olisi isompi kuin x tavua, näytettäisiin vain linkki kuvaan.
Toteutuksesta en tiedä, onko edes mahdollista käydä vieraalta palvelimelta katsomassa kuvan koko ilman itse kuvan latausta.

Chiman [18.03.2011 18:10:11]

#

Ei kiitos kuvatageille. Kuvat toimivat linkkeinä tarpeeksi hyvin.

Uudelle käyttäjälle voisi olla pakollisena kooditagin käyttötesti, joka pitää läpäistä ennen kuin voi lähettää viestejä. Viesti kirjoitetaan vain kerran mutta luetaan vähintään kymmeniä kertoja, joten pientä viitseliäisyyttä sopii odottaa viestin selkeyden eteen.

Hyvä sivusto, pitkää ikää!

efteri [18.03.2011 18:31:07]

#

Chiman kirjoitti:

Uudelle käyttäjälle voisi olla pakollisena kooditagin käyttötesti...

Tai vaihtoehtoisesti tämän kirjoituskentän ylle voisi laittaa kooditagit palkin niin ei tarvitsisi "rangaista" käyttäjiä siitä, että he ovat uusia :>

Jokotai [19.03.2011 12:04:01]

#

MMNNNDOO$77Z7III7Z????O?I7IZI$7DMMMMMMMM
MMMMMNOZ7$77III78O?+$?OI$Z+88??IDMMMMMMM
MMMMNZNZ7IZI$88DD8OZZ8DDD8+8O$+?INMMMMMM
MMMMONZZ8IZODDDNNNDDNNNNDIDD8O+++INNMMMM
MMM8MMNZD7$DNDDDDDDDDDDND8NDDO+++$?NNNMM
MMMMMNMNNDDDN8OO7D88888+=~$DD8OZOZNNNONN
MMMMMNMNDDDDDD88O$Z+=?OOOO888D88DONMMMMM
MMMMMMMMNDN87O$==~~~~~~===I+OO8NDNOMMMMM
MMMMMNNNDDDO$===~~~~:::::~~7=O8DMNDNNMMM
NNNNNNNMDD87+===+77I+I?~~?=~$O8DNDMMNMMM
NDDDDNNNDDOZ++$=,.....:II~~~?$ZDDONNMMMM
N8?=I8DDND87$==~=:::,,:::::~ZOOODDNNNNNM
D87~~?8NNNN8OZ=~~77$$7?:::=OOO8DDDDNNNNN
DD8OZZDDDDD8OIZ=~~:::::~=$OOOODDDDDDDDNN
ND888O8DDDD8=7Z$$$~~~7ZZOOZZZ8DDDDDDDDDD
DD88OZ8DD88?~?Z++ZZZZZO$=ZZ$~O888888DDDD
8DD8$$88DDO+=ZZD8D88DDDDD88O,7O88888888D
888D88DD8+Z7~OOOZZZZZZZZ8O+O.=O888888888
888DDD8OOOO~ZOZZZ$$$$$$I$ZI$:=88888888O8

Ascii taide toimii hyvin kuvien tilalla, jos niitä on pakko kerran käyttää. Ohessa esimerkkinä "kuva" joka linkkaa googleen.

(Mod. huom: tasalevyinen fontti edistää ASCII-grafiikan tulkintaa huomattavasti.)

groovyb [19.03.2011 16:15:04]

#

mitä tuo kuva esittää?

ankzilla [19.03.2011 16:44:33]

#

groovyb kirjoitti:

mitä tuo kuva esittää?

Selvästi dinosaurusta, jolla lentää pökäle.

Jokotai [19.03.2011 17:04:59]

#

kiihdyttäjä-miestä

Beuling [19.03.2011 18:06:04]

#

Ei liity tähän mitenkään, mutta miten tuollainen tehdään?

Jokotai [19.03.2011 18:38:37]

#

[linkki "http//www.linksutettava.fi"]taide[/linkki]

Käytin tätä kuvan muuttamisessa asciiksi.

Lebe80 [20.03.2011 00:32:49]

#

Jokotai: jos ihan rehellisiä ollaan, niin siinä ajassa kun muunnat kuvia ascii-muotoon olisit lisännyt keskusteluun jo useammankin kuvan linkin. Linkki todennäköisesti muutenkin on paljon selkeämpi kaikille kuin joku hämärä kuva, josta kukaan ei ymmärrä mitään, ja mikä vie ihan turhaan tilaa keskustelusta.


Vertaa ascii-kuvaasi ja vaikka tätä:

"hei, minulla on ongelma, se on tämän näköinen:"
http://goo.gl/puW9m


edit:
En myöskään tajua, miksi Petja välttämättä haluaa kuvatoiminnon, joka todennäköisesti tulisi jossain vaiheessa vain ampumaan foorumin jumiin. Ulkoisilta palvelimilta ladattaessa on aina otettava huomioon se, ettei se toinen palvelin välttämättä ole mikään maailman nopein. Tällöin kuvien lataus pitäisi toteuttaa niin, ettei (näen jo silmissäni) kymmenet-sadat kuvat yhdellä sivulla hidastaisi sivun latausta.

esajeejee [20.03.2011 00:47:15]

#

lainaus:

Toteutuksesta en tiedä, onko edes mahdollista käydä vieraalta palvelimelta katsomassa kuvan koko ilman itse kuvan latausta.

Itellä on toiminu ihan hyvin, koodi on siis pätkä viestien parseuksesta jossa kuvien urlit on otettu jo talteen. Get headers on todella nopea.

Mitä tämä siis tekee:
- Kattoo että palvelin jolla kuva on vastaa nopeasti
- Kattoo että linkki linkkaa kuvaan suoraan
- Kattoo että koko on oikea

stream_context_get_default( array( 'http' => array( 'timeout' => 2 ) ) );

foreach( $images[1] as $image ) {
$getheaders = @get_headers( $image, 1 );

	if ( !$getheaders || !$getheaders['Content-Type'] || stripos( $getheaders['Content-Type'], "image" ) === false ) {
	exit( json_encode( array ( "error" => utf8_encode( "Kommentissa on kuvia joiden lähde on kyseenalainen: ".$image ) ) ) );
	}
	if ( !$getheaders['Content-Length'] || (int)$getheaders['Content-Length'] > IMAGE_MAX_SIZE ) {
	exit( json_encode( array ( "error" => utf8_encode( "Kommentissa on kuvia joiden koko on liian suuri: ".$image ) ) ) );
	}
}

Petja [20.03.2011 07:50:10]

#

Lebe80 kirjoitti:

En myöskään tajua, miksi Petja välttämättä haluaa kuvatoiminnon, joka todennäköisesti tulisi jossain vaiheessa vain ampumaan foorumin jumiin. Ulkoisilta palvelimilta ladattaessa on aina otettava huomioon se, ettei se toinen palvelin välttämättä ole mikään maailman nopein.

Ei se minun ole pakko saada.
Ehdotin vain yleisenä kehitysideana.

Jokotai [20.03.2011 10:38:00]

#

Lebe80: Juu, empä minäkään siihen kannusta, mutta jos on IHAN PAKKO käyttää. Lisäksi sen voi linkittää siihen kuvaan.

groovyb [21.03.2011 15:20:02]

#

noh, itse jätän lukematta kyllä viestin jos se sisältää asciipiirustuksia.
(Pois lukien vaikka esimerkkiä nethack tyylisestä tasosta etc.)

Niillä nyt ei tee oikeasti yhtään mitään. Ennemmin linkkaa vaikka kuvan kuin tuhertaa ruudulle.

Ensinnäkin, sellaista pakkoa ei helpolla tule että on pakko saada formille kuva sellaisesta minkä ylipäätänsä pystyy asciilla tekemään. Sillä kun ei mitään niin monimutkaista saada niin pieneen että kukaan jaksaa sitä tulkita ja oikeasti olisi mitään vastaavaa hyötyä.

Petja [23.03.2011 18:30:42]

#

Voisiko muuten olla koodisql-tagi?
Voisi olla phpMyAdmin tyylinen syntaksiväritys.

Grez [23.03.2011 18:33:51]

#

Vielä parempi olisi MS SQL Server Management Studio tyylinen väritys


Toisaalta, jos tarkoitus ei ole tehdä eri murteille eri tageja, niin varmaankin kanta-agnostinen väritys olisi paras. En sitten tiedä miten se onnistuisi parhaiten kun yhdet kannat haluaa `erikoiset nimet`, toiset [erikoiset nimet] ja kolmannet "erikoiset nimet"

Metabolix [23.03.2011 20:54:29]

#

Petja kirjoitti:

Voisiko muuten olla koodisql-tagi?

Voisi olla. Olisit saanut kysymykseesi vastauksen myös testaamalla.

Kovin mutkikkaasta SQL-värityksestä ei ole hyötyä, koska jo muutamasta avainsanasta näkee kyselyn olennaiset rajakohdat ja SQL:n seassa voi olla kaikenlaista ylimääräistä kuten PDO-rajapinnan parametrien paikkoja, jotka voisivat sekoittaa mutkikkaamman värittäjän. (Nuo yhdenlaiset [oudot nimet] pitääkin vielä lisätä.)

Petja [23.03.2011 21:08:12]

#

Enpä huomannut tagin olemassaoloa. Tuokin oli tuonne alas piilotettu, viestien kirjoituksen ohjesivulla. Olisi vaan kaikki tuossa taulukossa.

Minusta olisi kyllä mielekkäämpää olla väritys, mutta mikäli sitä vastustetaan tai sitä ei todellakaan nähdä missään määrin tarpeelliseksi, niin ei sitten.

Metabolix [23.03.2011 21:50:19]

#

Petja kirjoitti:

Olisi vaan kaikki tuossa taulukossa.

Miksi? Niitä kaikkia käytetään täsmälleen samalla tavalla, joten yksikin malli riittäisi aivan hyvin. Liiat mallit vievät vain turhaan tilaa ja hidastavat sivun lukemista.


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta