Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointiputka: Uudistunut Ohjelmointiputka

Sivun loppuun

Metabolix [10.08.2011 19:09:32]

#

Ohjelmointiputka koki juuri mittavan uudistuksen: käytännössä kaikki koodi kirjoitettiin uudestaan, jotta päästäisiin irti vanhoista bugeista ja puutteista. Uudistuksen myötä muuttuivat mm. seuraavat tekniset seikat:

Samalla tuli voimaan eräitä muita päivityksiä:

Tämä lista kattaa toki vain pääkohdat muutoksista. Toivottavasti uudistuksesta on iloa. :) Sivustolle mahdollisesti jääneistä bugeista voi ilmoittaa tässä, sähköpostitse tai palautelomakkeella.

ZuBer [10.08.2011 19:20:46]

#

Vähän ihmettelinkin, kun ei Ohjelmintiputka toiminut vähään aikaan. Hyviltä uudistukset näyttää. Ensiksi pisti silmään tuo "Sivu 1 / 1"-teksti tuolla vasemmassa ylänurkassa.

Hennkka [10.08.2011 19:32:40]

#

Kaipaisin takaisin ominaisuutta, jolla näkee, onko keskusteluun tullut uusia viestejä (eli "&v=" osoittessa). Myöskin ohjelmointiputkan logo puuttuu välilehden reunasta.

Muuten sivusto näyttää ensisilmäykseltä hinolta ja modernilta.

Edit. Putka ilmoitti virheestä ja nyt tuli neljä viestin duplikaattia.
Edit2. Tulevatkos nämä ominaisuudet jotenkin hitaasti käytöön kun nyt taas tuo &v=-juttu toimii

Metabolix [10.08.2011 19:52:19]

#

Hennkka kirjoitti:

Kaipaisin takaisin ominaisuutta, jolla näkee, onko keskusteluun tullut uusia viestejä (eli "&v=" osoittessa).

Joo, tätä on ihmetelty jo testausvaiheessa pariin kertaan, ja silti unohtui. Nyt toimii. :)

Hennkka kirjoitti:

Myöskin ohjelmointiputkan logo puuttuu välilehden reunasta.

Hyvä huomio, nyt favicon on taas paikallaan.

Hennkka kirjoitti:

Edit. Putka ilmoitti virheestä ja nyt tuli neljä viestin duplikaattia.

Ei aina mene vauhdissa muokkaus ensi yrityksellä kohdalleen. :P

ZuBer kirjoitti:

Ensiksi pisti silmään tuo "Sivu 1 / 1"

Ehkä siihen tottuu.

hernih [10.08.2011 20:06:28]

#

Tuolla on tuo hieno +/- nappula piiloittamaa tuon oikeanpalkin, mutta siitä varmaan saisi enemmän irti, jos se ei sivulatauksilla aina tule takaisin näkyviin, jos sitä haluaa pitää piilossa.

Metabolix [10.08.2011 20:43:55]

#

hernih kirjoitti:

Tuolla on tuo hieno +/- nappula piiloittamaa tuon oikeanpalkin, mutta siitä varmaan saisi enemmän irti, jos se ei sivulatauksilla aina tule takaisin näkyviin, jos sitä haluaa pitää piilossa.

Tätä ja muitakin JS-asetuksia pääsee muokkaamaan erilliseltä sivulta, jolle on toistaiseksi vain huomaamaton linkki profiiliasetusten yhteydessä. Parempaa paikkaa linkille voi toki ehdottaa, ohjesivu olisi varmaan yksi hyvä vaihtoehto.

Macro [10.08.2011 20:51:57]

#

Toisaalta voisihan tuo sivupalkinkin nappula piilottaa sen pysyvästi seuraavaan klikkaukseen asti.

Hienoja uudistuksia ovat kyllä, varsinkin tämä viestien muokkaus. Nyt näkee mitä muutkin ovat kirjoittaneet, eikä tarvitse koittaa muistella niitä.

Monilainaus on hieno juttu, mutta nyt ne nähtävästi aukeavat tuohon uuden viestin lähetyskenttään, vaikka minulla on jo aikaisemmin tässä yksi viesti. En testannut voinko lähettää toisen viestin heti putkeen, mutta ainakin tekstikenttä näkyy.

Mizou [10.08.2011 20:57:37]

#

Muotoilun apupalkki keskeneräinen? Mikäli tuosta tulee "hieno", voisi sen laittaa oletuksena päälle niin ehkä myös uudet käyttäjät käyttäisivät niitä ahkerammin (etenkin kooditagia)?

Edit:
Ja sivun vaihto olisi myös hyvä olla alhaallakin.

Macro [10.08.2011 20:59:34]

#

Kun Mizou mainitsi kooditageista, tuli mieleen että olisi hyvä jos ne voisi laittaa värjätynkin tekstin ympärille. Nyt se korvaa värjätyn, ja laittaa päälle tyhjän tagin.

Muokkaus. Jos laitan tyhjään tekstikenttään kooditagin, ja backspacella alan pyyhkimään sitä, se hyppää ensimmäisen merkin yli, eli jättää ensimmäisen hakasulun pyyhkimättä.

Lisäksi kun tekstikentässä painaa tabulaattoria, se hyppää Poistettu-ruksiin, ja sitä painamalla saan tekstikenttään aikaiseksi linkin. Olisi kiva kun tabulaattori menisi suoraan lähetysnappulaan.

The Alchemist [10.08.2011 21:11:49]

#

Mites ois jos vähän laittaisitte CSS:ää teksti-inputeille ja napeille? Tällä hetkellä sivustolla on rumat "Windows Classic" -widgetit...

Chiman [10.08.2011 21:21:12]

#

Hyvä että aiempi kevyt ja selkeä ulkoasu säilyi, sopii tälle sivustolle.

Viestien lähetysajan korostuksen (peräisin h3-tagista) poistaisin tässä ketjua katsottaessa, koska lähetysajat eivät ole viestin sisältöjä tärkeämpiä, päinvastoin.

Javascript-tiedostojen cache-aikaa (expires-header) pidentäisin. Nykyisellään se on 1 s.

vesikuusi [10.08.2011 22:20:07]

#

Chiman kirjoitti:

Hyvä että aiempi kevyt ja selkeä ulkoasu säilyi, sopii tälle sivustolle.

Nimenomaan. Pitää muistaa niitäkin, joilla on vain 2Mb/s nettisopimus :D

Latska [11.08.2011 01:07:38]

#

vesikuusi kirjoitti:

Nimenomaan. Pitää muistaa niitäkin, joilla on vain 2Mb/s nettisopimus :D

2 Mb/s on sentään nopea, jotkut ovat täysin kännykkäyhteyden varassa..

Mutta niin, mielenkiintoinen uudistus kerrassaan. Vaatii taas kerran vähän totuttelua, mutta eiköhän tästäkin hyvä saada. Näin käyttäjätasolta edelliselläkin olisi pärjätty, mutta tämä on varmaan ylläpitäjän osalta paljon parempi. Ja hyvä, että uudistukset rysäytettiin lähestulkoon kerralla ja ilmoituksen kanssa ilmoille eikä vaivihkaa kuten joissain muissa palveluissa.

EDIT: Uudistuksessa jäin kaipaamaan QB/VB-alueen uudelleennimeämistä yleispäteväksi Basic-alueeksi

Macro [11.08.2011 08:40:21]

#

Oho, ihmettelin, että mihin ne Javascript-asetukset katosivat, mutta ne menivätkin toiseen paikkaan. Mielestäni linkki oli selvempi heti profiilisivulla. Eikö se voisi olla molemmissa paikoissa?

Merri [11.08.2011 09:31:01]

#

Teknisesti ja sisällöllisesti oikein positiivisia muutoksia, mutta käytettävyydessä on vielä viilaamista. Ainakin tuo sivupalkin +/- voisi saman tien hoitaa homman kotiin ja muistaa edellisen asetetun tilansa. Ei sitä ole oikein järkeä kätkeä asetussivulle erilliseksi valintalaatikoksi, jonka vaikutusta ei edes heti näe.

Koodivinkkien asetussäädöt voisivat puolestaan olla aina koodilistauksen ohessa, esim. kätketty elementti jokaisella sivulla, joka vain sitten tulee näkyville kun asetusnappulaa painaa (esim. pudotusvalikkona tai ruudun keskelle "ikkunana"). Ja sama idea toimii muotoilun apupalkillekin.

Muutenkin toimintoja ja asetuksia on hyvä tuoda juuri sinne, missä niitä tarvitaankin ja missä niiden vaikutuksen voi saman tien nähdä. Eihän se ole yleensä kuin yksi nappula/kuvake lisää johonkin sopivaan kohtaan ja hiukksen l33ttiä koodia :)

Lebe80 [11.08.2011 09:55:38]

#

Miten vanhan chätin saa toimimaan!?


edit:
Ei vaan ihan hyvä että uudistuu! :)

Metabolix [11.08.2011 13:41:05]

#

Macro kirjoitti:

Monilainaus on hieno juttu, mutta nyt ne nähtävästi aukeavat tuohon uuden viestin lähetyskenttään, vaikka minulla on jo aikaisemmin tässä yksi viesti.

Mitä tarkoitat? Lainauksen pitäisi tulla aina ylimpään viestikenttään. Jos olet jo lähettänyt viestin, tietenkään muokkaussivu ei aukea itsestään, vaan ensin pitää klikata muokkauslinkkiä.

Mizou kirjoitti:

Muotoilun apupalkki keskeneräinen?

Testausvaiheessa päätettiin, että sitä ei näytetä oletuksena, joten en sitten panostanut asiaan sen enempää. Minusta siinä ovat kuitenkin jo nyt kaikki tärkeät toiminnot; kaiken maailman lihavoinnit ja kursivoinnit ovat harvoin todella tarpeen.

Macro kirjoitti:

Olisi hyvä jos [kooditagit] voisi laittaa värjätynkin tekstin ympärille.

Nyt voi. (Ctrl+R päivittänee JS-tiedostotkin.)

Merri kirjoitti:

Muutenkin toimintoja ja asetuksia on hyvä tuoda juuri sinne, missä niitä tarvitaankin.

Kun asetuksia säädetään harvoin (jos lainkaan), niistä pienistä nappuloista on minusta enemmän häiriötä kuin hyötyä. Mutta katsotaan, ehkä jaksan joskus tehdä tarpeeksi l33ttiä koodia.

Sivupalkin kohdalla ymmärrän huolen. Nyt palkki tallentaa asetuksen suoraan.

Lebe80 kirjoitti:

Miten vanhan chätin saa toimimaan!?

Tsätti on siirretty äm-irkkiin.

Torgo [11.08.2011 14:07:35]

#

Onko muokkaus muutettu tarkoituksella sellaiseksi, että mitä tahansa aikaisemmin kirjoittamaansa viestiä voi muokata ilman aikarajoitusta?

Grez [11.08.2011 14:17:59]

#

Ainahan se on ollut sellainen. Tosin aiemmin linkki poistui tietyn ajan jälkeen näkyvistä, mutta se ei silti estänyt muokkausta.

Merri [11.08.2011 14:38:28]

#

Metabolix kirjoitti:

Sivupalkin kohdalla ymmärrän huolen. Nyt palkki tallentaa asetuksen suoraan.

En ainakaan vielä ole huomannut eroa aiempaan, lataa uuden sivun ja palkki ei muista miten sen jätin.

Muokkauslinkin olemassaolo on oikein tervetullut uudistus, nythän voi oikeasti tehdä keskustelunaloituksia, joita päivittää. Mm. juuri nuo projektijutut on sellaisia, joissa on kiva pystyä päivittämään sitä ekaa viestiä. Samoin vanhoja koodejaan on kiva korjata, jos niissä huomaa virheitä, sille olisi ollut tarvetta muutamaan otteeseen tässä vuosien varrella. En vaan ole niin aktiivi, että olisin jaksanut sen linkin kanssa erityisen paljoa pelehtiä.

Metabolix [11.08.2011 15:00:43]

#

Merri: Chiman toivoi pidempää expire-aikaa skripteille, joten näet muutoksen automaattisesti vasta parin päivän päästä, ellet tee asialle jotain (Ctrl+R). Voisi tietysti heittää tuonne jotain turhia get-parametreja välimuistin kiertämiseksi, mutta turha tässä on sotkea, kun ei ole kriittisiä päivityksiä tulossa.

Merri [11.08.2011 16:13:43]

#

"Kun ei ole kriittisiä päivityksiä tulossa" kuulostaa juuri sellaiselta lauseelta, että sen jälkeen Murphyn laki iskee ja kovaa :D

Mutta joo, eihän nämä mitään maailmaakaatavia asioita ole. Tässä työaikana kommentoidessa ei myöskään ehdi testata/ajatella asioita niin kauhean hyvin. Pääasia että asiat edistyy ja kehittyy hiljoksiin.

Grez [11.08.2011 16:26:10]

#

Hauskaa että seuraava 1 sekuntia pidempi on "pari päivää". :D

Itse pidän yleensä jotain 15-30 minuutin vanhenemisaikaa skripteillä, jolloin niitä ei tarvitse ladata hirveän montaa kertaa yhden istunnon aikana, mutta jos tulee muutoksia niin ei tarvitse hirveän kauaa odotella.

Metabolix [11.08.2011 16:47:00]

#

Joo, ehkä meni vähän yli. :) Asetuksen piti kyllä olla käytössä jo aiemmin, mutta näköjään palvelin ei halua arvailla MIME-tyyppejä, vaan ajat piti laittaa tiedostopäätteen perusteella.

ErroR++ [11.08.2011 16:58:03]

#

Huomasin päivityksen koska sain oman koneen (säästin pari vuotta) ja sitten yritin täältä tulla hakemaan qb:n asennussivustoa. Nyt se löytyy!

Macro [12.08.2011 10:54:16]

#

Nyt uudistuksien myötä mulla on ainakin Chromella lakannut rivinvaihdot toimimasta kunnolla näissä tekstikentissä. Joskus niitä tulee ihan hyvin, mutta välillä pitää päivittää koko sivu jotta saa rivinvaihdon aikaiseksi.

Deffi [12.08.2011 11:23:30]

#

Jos ruksitan Poistettu-kohdan koodivinkkiä muokatessa, niin saan virheviestin:

Virhe!

Ei oikeutta siirtää aihetta!

Torgo [12.08.2011 11:33:30]

#

Macro kirjoitti:

Nyt uudistuksien myötä mulla on ainakin Chromella lakannut rivinvaihdot toimimasta kunnolla näissä tekstikentissä. Joskus niitä tulee ihan hyvin, mutta välillä pitää päivittää koko sivu jotta saa rivinvaihdon aikaiseksi.

Hassua. Minulla puolestaan rivinvaihdot Chromella alkoivat toimimaan vasta tämän uudistuksen myötä.

Metabolix [12.08.2011 11:35:35]

#

Deffi, nyt pitäisi toimia.

Macro, tuollaisille oudoille ongelmille ei valitettavasti voi oikein mitään, kun ne eivät edes tapahdu omalla koneella. Mikään koodi täällä ei puutu millään tavalla tavalliseen kirjoittamiseen, eikä myöskään poistettu-rastin pitäisi vaikuttaa millään tavalla viestin sisältöön. En voi kuin suositella bugiraportin lähettämistä selaimen tekijälle, jos ongelma ei vaikuta poistuvan.

Grez [12.08.2011 12:52:17]

#

Macro: Mitä käytännössä tarkoitat tuolla? Siis painat enter-painiketta, mutta mitään ei tapahdu? Itsellä ei Chromen kanssa ole missään vastaavaa ongelmaa.

User137 [12.08.2011 22:19:05]

#

Ainakaan omalla Chromella ei nyt kaadu vaikka scrollbar tulee esiin ja vaikka rämppäis sitä enterillä edestakaisin, joten kai tässä jotain on korjattu. (Windows 7)

Projektit keskustelualueena on hyvä juttu.

Ja viestien muokkauksessa ei näytä enää olevan aikarajaa?

The Alchemist [13.08.2011 07:59:06]

#

User137 kirjoitti:

Ja viestien muokkauksessa ei näytä enää olevan aikarajaa?

Ei siinä ennenkään varsinaisesti ollut; tuo muokkaa-linkki vain poistui jonkin ajan kuluttua. Oikean osoitteen "arvaamalla" viestiä kyllä pystyi silti muokkaamaan.

Olli [13.08.2011 18:21:04]

#

- Tuo sivu-teksti on ylhäällä minunkin mielestä liian suuri. Sitä voisi pienentää.

- https://www.ohjelmointiputka.net/kayttajat/js-asetukset.php sivulle tulisi lisätä teksti "muutokset tallennetaan automaattisesti"

- https://www.ohjelmointiputka.net/kayttajat/aikakayra.php graafiin kaipaisin viestimäärää vasempaan laitaan.

- r:49 form action="../ulos.php" method="post"> tuosta puuttuu < -merkki alusta.

- viestiä muokattaessa "poistettu" on huono teksti, mielummin "Poista viesti", myöskin muut tiedot otsikko on vähän outo.

- jos koodia haluaa siistiä : css-importit menevät sinne sun tänne (ei samassa linjassa), sama ensimmäisillä javascripteillä, linkkilistan ul tagi ei lopu samassa sisennyksessä jossa alkaa. Näitähän kyllä löytyy mutta haittaa ei ole peruskäyttäjälle.

Metabolix [13.08.2011 20:58:00]

#

Olli kirjoitti:

- r:49 form action="../ulos.php" method="post"> tuosta puuttuu < -merkki alusta.

Niin mistä? Sivustolla on tietääkseni tasan yksi uloskirjautumislomake, ja se on aivan kunnossa.

Olli kirjoitti:

- jos koodia haluaa siistiä

Varsinainen lähdekoodi – se, jossa on seassa PHP:tä – on kyllä hyvinkin siisti. Selaimelle lähtevät sisennykset sotkeutuvat PHP:n ansiosta, mutta eihän tänne kai ole kauniisti sisennettyjen HTML-tulosteiden takia tultukaan.

Grez [13.08.2011 22:05:27]

#

Itsekin törmäsin tuohon mistä Macro mainitsi. Eli Enterin painaminen textboxissa vain siirtää focuksen pois siitä mutta ei lisää rivinvaihtoa. Näin ei kuitenkaan käy kovin usein minulla. Käsittämätöntä. Ilmeisesti Chrome vihaa putkaa.

jlaire [13.08.2011 22:41:14]

#

Sama bugi täälläkin, käytössä Arch Linux ja Chromium 13.0.782.107. Enterin painallus viestin lopussa poisti focuksen ja viestin keskellä painallus kaatoi koko sivun. Olisi kyllä kiva keksiä miten tuon saa toistettua. Tässä tapauksessa olin kirjoittanut viestiä joitakin minuutteja, ja juuri ennen bugin ilmenemistä olin maalannut pitkän pätkän tekstiä ja poistanut sen.

Metabolix [13.08.2011 22:51:14]

#

Erittäin outo juttu, nimittäin minullakin on Arch Linux, ja Chromium 13.0.782.112 toimii aivan ongelmitta, kuten kaikki muutkin versiot viimeisen vuoden ajalta ovat toimineet. Luultavasti olisin havainnut bugin, jos se vain suinkin koneellani esiintyisi.

kpzpt [14.08.2011 00:25:11]

#

bugi, Myöskin minulla on ongelmia enterin kanssa, käytössä on uusin chrome ja linux mint 11, enterin painallus ei vaihda riviä vaan vain poistaa focuksen textareasta ? En pysty käyttämään rivin vaihtoa ollenkaan kirjoitellessa, vain yhtä mittaista tekstiä ?

Teuro [14.08.2011 16:18:00]

#

Täällä on käytössä Windows 7 ja chromen versio 13.0.782.112 eikä ongelmaa rivinvaihdossa näytä olevan.

Grez [14.08.2011 16:32:36]

#

Itsellä on joku mystinen m vielä tuossa perässä, eli 13.0.782.112 m ja tosiaan ongelma esiintyy kahdella eri koneella joissa molemmissa on 64-bittinen Windows 7, mutta hyvin harvoin. Tähän mennessä on tullut kaksi kertaa vastaan.

Teuro [14.08.2011 16:35:11]

#

Haa täällä on muuten sama m-kirjain vielä tuon rimpsun perässä ja käyttis on vielä toistaiseksi 32-bittinen.

Jaska [15.08.2011 00:02:55]

#

Löysin bugin Putkaposti 17 vastausta jättäessä. Syötin tekstikenttään luvun 7 ja perään säännöllisen lausekkeen sivulta http://slexy.org/view/s2QFWeNxZo , jolloin tuli ilmoitus

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, admin@ohjelmointiputka.net and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.

nomic [15.08.2011 00:11:10]

#

En tiedä liittyykö tämä miten aiheeseen, mutta onko SDL:n perusteiden piilottaminen ollut tarkoitus oppaiden puolella? Mielestäni ennen muutosta ne vielä näkyivät siellä, kuten myöskin ncurses-kirjaston käyttö.
Maailmaahan tuo ei kaada, kunhan ihmettelen. Uusi putka toimii mukavasti, ja pidän siitä, että ulkoasu ei räjähtänyt flässihelvetiksi miljoonien äänien kera. ;)

Mizou [15.08.2011 00:24:40]

#

nomic kirjoitti:

En tiedä liittyykö tämä miten aiheeseen, mutta onko SDL:n perusteiden piilottaminen ollut tarkoitus oppaiden puolella? Mielestäni ennen muutosta ne vielä näkyivät siellä, kuten myöskin ncurses-kirjaston käyttö.

Ne ovat siellä arkistossa.

Metabolix [15.08.2011 00:27:55]

#

Jaska kirjoitti:

Löysin bugin Putkaposti 17 vastausta jättäessä.

Nyt homman pitäisi taas toimia. Liian pitkä syöte kaatoi yhden säännöllisen lausekkeen. (Putkan omat virhesivuthan ovat paljon tyylikkäämpiä, noin ruma viesti kertoo PHP-tulkin totaalisesta kaatumisesta.)

Mutta vastauksesihan ei voi mitenkään olla oikein, jos siinä on noita \(-kohtia, koska \( tarkoittaa sulkumerkkiä eikä luku voi sisältää sellaista.

nomic [15.08.2011 00:28:19]

#

Mizou kirjoitti:

Ne ovat siellä arkistossa.

Kiitoksia. Pitäisi joskus oppia lukemaankin noita sivuja, niin ei tulisi esitettyä hölmöjä kysymyksiä.

Pekka Karjalainen [15.08.2011 14:27:18]

#

Putkan uudistus vaikuttaa hyvin tehdyltä ja kaikin puolin oivalliselta. Esikatselutoiminto on myös kiva asia. Hyvä homma kaikin puolin.

Esikatselun mukaan ainakin kooditagin sisällä voi nykyään olla kaikenlaisia merkkejä (muistaakseni joskus näin ei ollut). Tämän ansiosta kooditageja voi käyttää myös matemaattisten lausekkeiden asetteluun jossakin määrin, jos tavalliset asettelutagit eivät johonkin tiettyyn hommaan riitä. (Voi pistää δ-merkkejä matriisiin tai muuta yhtä hassua... :-)

# itämaista viisautta
print "大器晩成"

Hennkka [15.08.2011 14:53:47]

#

Oppaiden tiedostolinkit ovat rikki. Esim. koodin kokonaisena näyttö täällä.

Metabolix [15.08.2011 14:57:41]

#

Hyvä havainto, korjasin osoitteet.

Olli [15.08.2011 18:40:56]

#

Tulostettava versio muuten voisi tarjota tulostusta suoraan.

Metabolix [15.08.2011 19:07:24]

#

Selaimen print-nappia voi painaa menemättä ollenkaan tulostettavaan versioon – lopputulos on nykyselaimilla sama. Mutta lisäsin nyt automaattiprinttauksen niitä varten, joille selaimen printtausnappi (tai vastaava näppäinyhdistelmä) on jotenkin ylivoimaisen hankala käyttää.

tkok [15.08.2011 20:20:52]

#

Yksi ehdotus olisi, no mikä: voisiko "rivinumerot" linkin viereen (koodi kehysten luoksi) tehdä nappulan, josta saa kaikki koodi-tageissa olevan tavaran piilotettua, ei tarviis scrollailla satoja rivejä tutoriaaleista copy-pastattua koodia, jos vain itse keskustelu kiinostaa tai muutenkin on lukenut jo kysyeisen koodin alkuperäiseltä sivulta.

Metabolix [15.08.2011 20:29:30]

#

Onhan niissä jo pituusrajoitusmahdollisuus (jos selain osaa). Aiemmin tästä jo keskusteltiin, ja päätös oli, että laatikon vieressä olevat valinnat koskevat yhtä laatikkoa kerrallaan. Jos haluat sen pysyvästi päälle, laita JS-asetuksista.

Torgo [16.08.2011 09:29:22]

#

Metabolix kirjoitti:

Selaimen print-nappia voi painaa menemättä ollenkaan tulostettavaan versioon – lopputulos on nykyselaimilla sama. Mutta lisäsin nyt automaattiprinttauksen niitä varten, joille selaimen printtausnappi (tai vastaava näppäinyhdistelmä) on jotenkin ylivoimaisen hankala käyttää.

Henkilökohtainen mielipiteeni on että erillinen "tulostettava versio" linkki on hankalempi käyttää kuin selaimen oma tulostus. Ei koko linkistä ole mielestäni muuta kuin haittaa sivun käyttöliittymän ja ulkoasun kannalta.

P.S. Minulla tämä uusittu putka toimii edelleen moitteetta Chromella sekä Windows 7:ssa, Vistassa, että Ubuntussa. Vanha putka siis kaatuili jatkuvasti noilla kaikilla versioilla. Tässä vielä Ubuntusta versiotiedot.

Chromium	12.0.742.112 (Developer Build 90304) Ubuntu 10.04
WebKit	534.30 (trunk@84325)
V8	3.2.10.21
Flash	10.3 r183
User Agent	Mozilla/5.0 (X11; Linux i686) AppleWebKit/534.30 (KHTML, like Gecko) Ubuntu/10.04 Chromium/12.0.742.112 Chrome/12.0.742.112 Safari/534.30

Antti Laaksonen [16.08.2011 11:03:00]

#

Kaikki käyttäjät eivät osaa odottaa, että selaimen tavallinen tulostustoiminto tulostaisi sivun järkevästi muotoiltuna. Siksi erillinen linkki tulostukseen on mielestäni paikallaan.

kllp [16.08.2011 12:10:21]

#

Olisi hyvä, jos kaikki php-haasteen tehtävät olisivat näkyvilla. Näin niitä voisi miettiä myös muilla kielillä.

Lebe80 [16.08.2011 12:16:35]

#

kallee kirjoitti:

Olisi hyvä, jos kaikki php-haasteen tehtävät olisivat näkyvilla. Näin niitä voisi miettiä myös muilla kielillä.

Veikkaan, että tällöin niistä häviäsi juuri se yksi pointti, eli haasteiden avaaminen.

Metabolix [16.08.2011 12:56:22]

#

Tehtäviä voi jo nyt ratkoa millä tahansa kielellä, kunhan säätää palvelimensa sopivasti ja tarvittaessa tekee PHP:llä pienen välipalikan.

Esimerkiksi seuraavalla PHP-koodilla saa välitettyä syötteen omalle ohjelmalle komentoriviparametreina ja ohjelman tulosteen vastaukseksi:

<?php
// a=1&b=2&id=1  =>  ajokomento a 1 b 2 id 1
// esim. python ratkaisu.py a 1 b 2 id 1
$cmd = "ajokomento";

foreach ($_REQUEST as $nimi => $arvo) {
  $cmd .= " ". escapeshellarg($nimi). " ". escapeshellarg($arvo);
}
passthru($cmd);

ErroR++ [16.08.2011 16:34:52]

#

Onko "Merkkigrafiikkapelien ohjelmointi QuickBasicilla" -opas kadonnut??
Ja vb :n opas!

Antti Laaksonen [16.08.2011 16:38:59]

#

Suurin osa "kadonneista" oppaista on arkistossa:

https://www.ohjelmointiputka.net/oppaat/arkisto.php

Yleensä syynä arkistoon siirtoon on oppaan vanhentunut sisältö.

kllp [16.08.2011 16:39:24]

#

"Vanhentuneet ja epäolennaiset oppaat löytyvät arkistosta" https://www.ohjelmointiputka.net/oppaat/arkisto.php

ErroR++ [16.08.2011 16:42:20]

#

Kiitos!

ankzilla [16.08.2011 19:58:48]

#

Voisko tolta Uudet viestit-sivulta saada pois noi linkit aihealueisiin ku oon ite tottunu selaa noita linkkejä tabil? :)

combo [16.08.2011 23:03:36]

#

Olisiko mahdollista että keskustelun sivunumerot olisivat myös alareunassa ennen vastaus -elementtiä? Sitten säästyisi turhalta scrollaukselta.

Pekka Karjalainen [17.08.2011 08:09:53]

#

Tällekin sivulle sopisi keskustelujen kaltainen esikatselutoiminto.

https://www.ohjelmointiputka.net/koodivinkit/lisaa.php

Viime vuonna näkyy julkaistun kolme koodivinkkiä, ja tälle vuodelle on kertynyt tähän mennessä yksi. Toivottavasti tahti tästä vähän taas nousee ylläpidon toivomalla tavalla (ks. eka viesti). Ehkä joku ovela motivointitekniikka auttaisi, vaikka en kyllä keksi, millainen se voisi olla.

Liittyyköhän väheneminen mitenkään siihen, että uudet koodivinkit aikanaan poistettiin sivupalkista? Toivottavasti ei.

Metabolix [17.08.2011 16:00:04]

#

combo kirjoitti:

Olisiko mahdollista että keskustelun sivunumerot olisivat myös alareunassa ennen vastaus -elementtiä? Sitten säästyisi turhalta scrollaukselta.

Niille ei löytynyt järkevää ja tyylikästä paikkaa sieltä. Onneksi home-nappi säästää skrollaukselta.

Pekka Karjalainen kirjoitti:

Liittyyköhän [koodivinkkien] väheneminen mitenkään siihen, että uudet koodivinkit aikanaan poistettiin sivupalkista?

Jotenkin muistelen, että uudet vinkit poistettiin palkista, kun niitä ei enää tullut. Tilanteeseen ehkä vaikuttaa alkuajoista tiukentunut laadunvalvonta (luultavasti hyvä asia, eihän buginen vinkki ole kovin hyödyllinen) ja se, että monet helpot vinkkiaiheet on jo moneen kertaan käsitelty.

Macro [17.08.2011 16:38:14]

#

Nyt kun olen Ubuntun onnellinen käyttäjä, en ole kokenut itse ainakaan tarvetta alareunan sivunumeroille. Hiiren rullan sivunäppäimiin onnistui helposti Home- ja End-näppäinten määritteleminen. Todennäköisesti se onnistuu Windowsilla ja muillakin, Windowsilla varmaan hiiren ohjelmiston kanssa.

tkok [17.08.2011 17:13:15]

#

Macro kirjoitti:

Nyt kun olen Ubuntun onnellinen käyttäjä, en ole kokenut itse ainakaan tarvetta alareunan sivunumeroille. Hiiren rullan sivunäppäimiin onnistui helposti Home- ja End-näppäinten määritteleminen. Todennäköisesti se onnistuu Windowsilla ja muillakin, Windowsilla varmaan hiiren ohjelmiston kanssa.

Joo, laitetaan sivunumeroiden tilalle linkki ohjeisiin miten tuo tehdään. On hyvä ottaa UI-suunittelun lähtökohdaksi se, että joillakin saattaa olla hiiri, josta löytyy funktionäppäimiä, joihin voi ehkä laittaa ne tarvittavat nappulat yhtä foorumi-sivustoa varten. Ylipäänsä hiiren löytymistä voi odottaa varsinkin mobiilikäyttäjiltä.

viestissä sarkasmia

Macro [17.08.2011 17:32:15]

#

En sanonut, että kaikilla olisi niin ja ettei niistä sivunumeroista ole hyötyä. Sanoin, että

lainaus:

en ole kokenut itse ainakaan tarvetta alareunan sivunumeroille

Pekka Karjalainen [17.08.2011 19:57:10]

#

Metabolix kirjoitti:

Jotenkin muistelen, että uudet vinkit poistettiin palkista, kun niitä ei enää tullut. Tilanteeseen ehkä vaikuttaa alkuajoista tiukentunut laadunvalvonta (luultavasti hyvä asia, eihän buginen vinkki ole kovin hyödyllinen) ja se, että monet helpot vinkkiaiheet on jo moneen kertaan käsitelty.

Tietenkin bugista huomauttaminen ja siitä keskustelu, sekä sen korjaaminen voisivat olla hyvin opettavaista toimintaa, jos se vain kelpaisi kaikille osallisille. Tämän kannalta koodivinkin arvioimisesta ja sen hyväksymisestä voisi tehdä julkista, jotta kiinnostuneet voisivat osallistua keskusteluun vinkkien laadusta ja ehkä rohjeta ehdottamaan korjauksia ja parannuksia. En tiedä olisiko asioiden liian suoraan sanominen sitten ikävää ja vaivalloista jostakusta.

Metabolix kirjoitti:

Vinkkien tyylinkin on tarkoitus muuttua. Jatkossa koodivinkkialueelle toivotaan myös lyhyitä kuvauksia yksinkertaisista toiminnoista kuten tiedoston koon selvittämisestä, salasanan tiivisteen laskemisesta tai jonkin hyödyllisen luokan käytöstä. Parhaimmillaan vinkit muodostaisivat koodikirjaston, joka täyttäisi raon oppaiden ja dokumentaation välillä. Luonnollisesti vinkkien tulee yhä olla laadukkaita: toimivia, siistejä ja hyvin kommentoituja.

Ymmärsin tämän aloitusviestistä otetun kohdan niin, että useammille vinkeille olisi nyt tilaa, niitä jopa hieman toivottaisiin. Kuitenkin, jos kerran helpot aiheet on jo käsitelty, eihän niitä kannata uudelleen tarjota. Liene paras, että seuraan sivusta miten koodivinkkejä ilmestyy jatkossa, ennen kuin mietin olisiko omista ajatuksista sinne lisäksi.

Metabolix [18.08.2011 01:54:17]

#

Pekka Karjalainen kirjoitti:

Kuitenkin, jos kerran helpot aiheet on jo käsitelty, eihän niitä kannata uudelleen tarjota.

Tarkoitin "helpolla aiheella" sellaista, josta on ennen saattanut tehdä vinkin vain kopioimalla omasta projektistaan (tai pahimmillaan netistä) pätkän koodia ja heittämällä otsikon päälle. Nyt tilanteen on tarkoitus muuttua.

Oppaita ja dokumentaatiota täydentäviä laatuvinkkejä on vasta kourallinen, joten sillä suunnalla työsarkaa ainakin riittää. Toivottavasti lähiaikoina saadaan näytille pari uutta vinkkiä malliksi siitä, millaisista asioista nyt voisi kirjoittaa. Vinkin ei tarvitse olla mutkikas, vaan siinä voidaan käsitellä vaikka jokin hyödyllinen standardikirjaston luokka tai joukko tärkeitä funktioita, jos asiaa ei löydy tarpeeksi kattavasti oppaasta.

Monet vanhat vinkit ovat heikkolaatuisia tai vaikeaselkoisia. Niistä aidosti hyödylliset pitäisi toteuttaa paremmin ja julkaista riittävän taustatarinan kera. Esimerkiksi PHP:lle on monta upload-vinkkiä, joista useimmissa on jotain pahasti vialla; vasta äskettäin tein vinkin, jossa käsitellään asiaa kattavasti ja toteutetaan yleiskäyttöisiä funktioita sotkuisen nettisivun sijaan. Monessa muussa aiheessa tarvittaisiin samanlaista siivousta.

Vinkeissä tärkeää on kattava pohjustus aiheesta ja helposti sovellettava koodi. Monissa vanhoissa vinkeissä selostus on niukka tai olematon ja koodina on kokonainen ohjelma tai vastaava, josta on hankala poimia todella olennaisia osia.

Pekka Karjalainen kirjoitti:

Koodivinkin arvioimisesta ja sen hyväksymisestä voisi tehdä julkista, jotta kiinnostuneet voisivat osallistua keskusteluun vinkkien laadusta ja ehkä rohjeta ehdottamaan korjauksia ja parannuksia.

Tätä voidaan harkita, mutta toistaiseksi tarvetta ei ole ollut. Hylättävistä koodivinkeistä annetaan kyllä nykyäänkin palautetta, ja jos tekijä korjaa koodinsa, vinkki voidaan yhä julkaista. Usein vain käy niin, että tekijä ei huomautuksesta huolimatta korjaa vinkkiään, vaikka muutos olisi melko yksinkertainenkin. Joskus taas on myös kirjoittajan etu, ettei vinkki näe päivänvaloa. :)

squid [18.08.2011 07:37:17]

#

Keskustelussa voisi viestiketjun lopussa olla "Seuraava sivu" -linkki, niin saisi kivasti jatkettua viestien lukemista.

Antti Laaksonen [18.08.2011 13:28:53]

#

Hyviä koodivinkkejä voi olla monenlaisia. Esimerkiksi hienon pelin tai demon lähdekoodi voi olla kiinnostava, vaikka koodista ei olisi tarkoitus ymmärtää kaikkea.

Nyt on hyvä tilaisuus kertoa, millaisia koodivinkkejä sinä haluaisit nähdä tulevaisuudessa Ohjelmointiputkassa.

Clacier [18.08.2011 19:59:58]

#

squid kirjoitti:

Keskustelussa voisi viestiketjun lopussa olla "Seuraava sivu" -linkki, niin saisi kivasti jatkettua viestien lukemista.

Olin tulossa kirjoittamaan samaa.

Metabolix [18.08.2011 20:47:03]

#

Nyt sivunumerot ovat alareunassakin tyylikkäästi hr-palkin alla.

vesikuusi [18.08.2011 21:02:06]

#

Antti Laaksonen kirjoitti:

Nyt on hyvä tilaisuus kertoa, millaisia koodivinkkejä sinä haluaisit nähdä tulevaisuudessa Ohjelmointiputkassa.

Kyllä tuo Metabolixin ehdotus tiedostokoon hankkimisesta kuulostaisi hyvältä. Löytyyhän niitä netistä, esim. tellg(), mutta se vaihtaa yksikköä tiedostokoon mukaan :( Mutta semmoinen siirrettävä ja yksinkertainen tapa selvittää tiedostokoko (aina samassa yksikössä, ja joku muu kuin stat, koska se ei ainakaan minulla toimi) puhtaalla C++:lla olisi minusta mielenkiintoinen koodivinkki. Jos sellainen ylipäätänsä on mahdollinen :D Muutenkin juuri semmoiset koodivinkit, joita on helppo soveltaa, niin kuin Meatbolix sanoi, olisivat kivoja :)

Torgo [19.08.2011 13:29:55]

#

vesikuusi kirjoitti:

Kyllä tuo Metabolixin ehdotus tiedostokoon hankkimisesta kuulostaisi hyvältä.

En nyt jaksa mitään vinkkiä alkaa vääntämään, mutta jos joku muu jaksaa niin näitä saa käyttää vapaasti.

Linux/Unix

du -b <filename>

C

#include <stdio.h>
#include <string.h>

int main(int argn, char** argc) {
	char filename[255];
	FILE *pfile;

	// Tarkistetaan komentoriviparametrit.
	if(argn != 2) {
		printf("Usage: %s <filename>\n", argc[0]);
		return 0;
	}

	// Avataan tiedosto luettavaksi binäärimuodossa.
	strncpy(filename, argc[1], 255);  // Turhahko, mutta selkeämpi käyttää nimelle omaa muuttujaa.
	pfile = fopen(filename, "rb");
	if(!pfile) {
		printf("Unable to open %s\n", filename);
		return 0;
	}

	// Kelataan tiedoston loppuun ja katsotaan missä kohtaa ollaan suhteessa alkuun.
	fseek(pfile, 0, SEEK_END);
	printf("File: %s, Size: %ld bytes\n", filename, ftell(pfile));

	// Lopuksi suljetaan tiedosto.
	fclose(pfile);
	return 0;
}

Lebe80 [19.08.2011 14:48:45]

#

Kun vanhaa viestiä muokkaa, niin Chromella alkaa kaatuilemaan ikkuna, kuten muutkin käyttäjät ovat valittaneet. Eli siis sama vanha vika, kuin muillakin putkalaisilla.

Muilla sivustoilla kyseinen vika ei ole esiintynyt.

Metabolix [19.08.2011 15:05:43]

#

Hohoo, sain itsekin Chromiumin kaatumaan! Katsotaan, selviääkö asia.

Ja selvisihän se, eikä mennyt edes kauan. Seuraava HTML-koodi riittää bugin toteutumiseen:

<style>div + * { }</style>
<textarea rows="3" cols="10">A
</textarea>

Kaatuminen tulee siis, kun painaa A-kirjaimen perässä enteriä. Olennaiset osat ovat rivinvaihto tekstikentän lopussa ja CSS-tyylissä sisarusvalitsin (joko + tai ~) ja *, vaikka CSS-tyyli ei edes liittyisi tekstikenttään.

Kuka lähettää bugiraportin? :D

Work-around: trimmataan rivinvaihdot tekstikentän lopusta. Kertokaa, jos vielä kaatuu. Yhä jäi avoimeksi vanhan Putkan kaatuminen, koska siellä ei ollut tuollaista CSS-tyyliä ja tekstikentän sisältökin oli näköjään trimmattu.

Clacier [19.08.2011 17:05:04]

#

Metabolix kirjoitti:

Kuka lähettää bugiraportin? :D

Lähetetty. (Mod. edit: http://code.google.com/p/chromium/issues/detail?id=93505)

jcd3nton [20.08.2011 00:20:13]

#

Torgo kirjoitti:

Linux/Unix

du -b <filename>

Linux ei ole Unix. Myoskaan GNU ei ole Unix ;-)

Torgo kirjoitti:

..
	char filename[255];
	strncpy(filename, argc[1], 255);  // Turhahko, mutta selkeämpi käyttää nimelle omaa muuttujaa.
	pfile = fopen(filename, "rb");
..

Toivottavasti aloittelijat eivat ota tasta koodista mallia.

vesikuusi [20.08.2011 03:08:36]

#

Torgo, sanoinkin "puhtaalla C++:lla" :) Edellyttäen tietenkin, että se on mahdollista :D

os [20.08.2011 11:22:18]

#

Täytyypä itsekin testata uutta systeemiä...

vesikuusi kirjoitti:

Torgo, sanoinkin "puhtaalla C++:lla" :) Edellyttäen tietenkin, että se on mahdollista :D

Onnistuu esim. näin:

std::ifstream file( "file.name" );
file.seekg( 0, std::ios_base::end );
int size_in_bytes = file.tellg();

jcd3nton kirjoitti:

Torgo kirjoitti:

..
	char filename[255];
	strncpy(filename, argc[1], 255);  // Turhahko, mutta selkeämpi käyttää nimelle omaa muuttujaa.
	pfile = fopen(filename, "rb");
..

Toivottavasti aloittelijat eivat ota tasta koodista mallia.

Niin, miksei vain

const char *filename = argc[1];

?

Triton [20.08.2011 12:57:55]

#

En tiedä onko asiasta ollut aikaisemmin jo keskustelua, mutta minulla ei millään selaimella toimi koko Muokkaa-toiminto. "Muokkaa"-linkki tosin muuttuu "Takaisin"-linkiksi, mutta varsinaiseen tekstialueeseen ei ilmesty muokattavan viestin sisältöä...

Macro [20.08.2011 13:10:35]

#

Huomasin sen itsekkin toisessa keskustelussa, eilen se kumminkin toimi.

Metabolix [20.08.2011 13:17:45]

#

Skriptit muuttuivat yöllä. Tarkistakaahan selaintenne välimuistiasetukset, tiedostojen pitäisi olla voimassa vain tunti. (Ehkä pitää kuitenkin laittaa tuonne GET-kikkailuja välimuistin kiertämiseksi, kun eivät koodaritkaan osaa refreshiä painaa. ^^)

Lebe80 [20.08.2011 19:24:32]

#

Metabolix kirjoitti:

Skriptit muuttuivat yöllä. Tarkistakaahan selaintenne välimuistiasetukset, tiedostojen pitäisi olla voimassa vain tunti. (Ehkä pitää kuitenkin laittaa tuonne GET-kikkailuja välimuistin kiertämiseksi, kun eivät koodaritkaan osaa refreshiä painaa. ^^)

Toisaalta, ei sitä "osaakaan" refreshata, jos tiedostot muuttuvat ilmoittamatta. Silti, yleisestihän ylläpitäjien pitäisi pitää huoli siittä, että "tiedostopolut" muuttuisivat aina kun niiden sisältöä muutetaan. Oli kyseessä sitten get-parametrin muutos tai koko tiedostonimi.

Torgo [20.08.2011 19:28:24]

#

jcd3nton kirjoitti:

Linux ei ole Unix. Myoskaan GNU ei ole Unix ;-)

Niin? Muuttaako se jotenkin sitä, että molemmissa on käytössä komento nimeltä du, jolla saa näkyviin tiedoston koon?

jcd3nton kirjoitti:

Toivottavasti aloittelijat eivat ota tasta koodista mallia.

Haluatko kenties täsmentää tätä rakentavaa kritiikkiäsi?

os kirjoitti:

Niin, miksei vain

const char *filename = argc[1];

Lyhyesti vastattuna:

Torgo kirjoitti:

En nyt jaksa mitään vinkkiä alkaa vääntämään

Pidemmästi vastattuna, koodi on copy/pastettu sellaisesta koodistani missä esittämääsi vaihtoehtoa ei voi käyttää ja muutettu juuri sen verran että se toteuttaa vaaditun toiminnon ja lisätty kommentteja. Tässä tapauksessa esittämäsi vaihtoehto on parempi, mutta lopputuloksen kannalta merkityksetön. Kuten sanoin, niin sitä saa vapaasti käyttää, jos aikoo siitä vinkin tehdä. Mikä tarkoittaa myös sitä että sen saa muokata sopivammaksi.

Metabolix kirjoitti:

Work-around: trimmataan rivinvaihdot tekstikentän lopusta. Kertokaa, jos vielä kaatuu. Yhä jäi avoimeksi vanhan Putkan kaatuminen, koska siellä ei ollut tuollaista CSS-tyyliä ja tekstikentän sisältökin oli näköjään trimmattu.

Vanhassa putkassa kaatuminen tapahtui minulla (lähes) aina enteriä painettaessa. Tämä uusi toimii edelleen moitteetta myös muokkausten osalta.

Metabolix [20.08.2011 19:41:24]

#

lainaus:

Niin? Muuttaako se jotenkin sitä, että molemmissa on käytössä komento nimeltä du, jolla saa näkyviin tiedoston koon?

du ei vain paljon C++-koodaria lohduta, kun hakusessa on porttautuva keino.

C-koodisi (tai vastaava C++) taas tuottanee ainakin 32-bittisessä Windowsissa vääriä tuloksia maagisen kahden gigan rajan jälkeen. Kun kerran kyseessä on niin yleinen ja tunnettu temppu, olisiko jopa niin, että juuri tämän ongelman takia kaivattiin vinkkiä?

Lebe80 kirjoitti:

Silti, yleisestihän ylläpitäjien pitäisi pitää huoli siittä, että "tiedostopolut" muuttuisivat aina kun niiden sisältöä muutetaan.

Yleisestihän kun on olemassa asetus, jolla voi ilmoittaa tiedoston vanhenemisajan, sen asetuksen pitäisi toimia sillä tavalla, että selaimet ymmärtäisivät tiedoston vanhenemisen jälkeen hakea sen uudestaan.

Grez [20.08.2011 19:50:37]

#

Torgo kirjoitti:

Tässä tapauksessa esittämäsi vaihtoehto on parempi, mutta lopputuloksen kannalta merkityksetön.

En ole samaa mieltä. Versiosi ei toimi jos tiedostonimen (polkuineen) pituus on suurempi kuin maagiset 254 merkkiä. Eli se on toiminnallisestikin erilainen. Vaikka ko. rajoitus ei hirveän usein tulisi vastaan, niin silti se on aivan turha.

Lisäksi koodistasi ei kannata ottaa mallia koska:
- Tuhlaat muistia aivan turhaan
- Tuhlaat prosessoriaikaa aivan turhaan

Ja jos vielä sellaisenaan kopioit paikasta, jossa os:n ehdotus ei toimi kuten väitit, niin kommentti ei vastaa siellä todellisuutta

Torgo [20.08.2011 20:24:42]

#

Metabolix kirjoitti:

C-koodisi (tai vastaava C++) taas tuottanee ainakin 32-bittisessä Windowsissa vääriä tuloksia maagisen kahden gigan rajan jälkeen. Kun kerran kyseessä on niin yleinen ja tunnettu temppu, olisiko jopa niin, että juuri tämän ongelman takia kaivattiin vinkkiä?

Totta. Pääsi unohtumaan tuo rajoitus, kun nuo rajat ei käytännössä itsellä tule vastaan.

Grez kirjoitti:

En ole samaa mieltä. Versiosi ei toimi jos tiedostonimen (polkuineen) pituus on suurempi kuin maagiset 254 merkkiä. Eli se on toiminnallisestikin erilainen. Vaikka ko. rajoitus ei hirveän usein tulisi vastaan, niin silti se on aivan turha.

Lisäksi koodistasi ei kannata ottaa mallia koska:
- Tuhlaat muistia aivan turhaan
- Tuhlaat prosessoriaikaa aivan turhaan

Ja jos vielä sellaisenaan kopioit paikasta, jossa os:n ehdotus ei toimi kuten väitit, niin kommentti ei vastaa siellä todellisuutta

Kuten aiemmin sanoin: kommentit lisätty jälkikäteen. Se ei toimi siellä sen takia, että tiedostonimeä ei lueta argc:stä, vaan muuttuvasta syötepuskurista. Nimi on kopioitava sieltä talteen, koska ei ole kiva jos nimi yhtäkkiä yllättäen muuttuu. Sieltä tulee myös tuo puskurin koon rajoituskin. Pointti edelleen on se, että tuossa oli pelkkä aihio koodivinkille. Jos joku haluaa työstää sen lopulliseksi, niin saa vapaat kädet.

Grez [20.08.2011 20:29:00]

#

Torgo kirjoitti:

Pointti edelleen on se, että tuossa oli pelkkä aihio koodivinkille.

Pointti edelleen on se, että kommentti "Toivottavasti aloittelijat eivat ota tasta koodista mallia." oli ihan perusteltu. Sillä, mikä koodin syntytarina on, ei ole itse asialle vähäisintäkään merkitystä.

Mä en ymmärrä, että miksi sitä pitää yrittää selittää paremmaksi väitteillä, jotka ei selvästi pidä paikkaansa, joten päätin sitten kommentoida asiaa.

Torgo [20.08.2011 20:56:11]

#

Grez kirjoitti:

Pointti edelleen on se, että kommentti "Toivottavasti aloittelijat eivat ota tasta koodista mallia." oli ihan perusteltu. Sillä, mikä koodin syntytarina on, ei ole itse asialle vähäisintäkään merkitystä.

Ja minun pointtini oli se, että aloittelija ei opi yhtään sen enempää kommentista "Toivottavasti aloittelijat eivat ota tasta koodista mallia.". Jos esittää sellaisen kommentin, niin vähintään voisi esittää asiaan parannusta. Os näin teki ja sinä kerroit mikä mielestäsi koodissa on pielessä. Molemmat olette oikeassa. Metabolix puolestaan löysi bugin itse tiedostokoon laskemisesta, joka oli se olennainen osa. Nämä kaikki ovat hyödillisiä kommentteja. Kommentti tyyliin "sun koodis on huonoa" taas ei palvele ketään.

Grez kirjoitti:

Mä en ymmärrä, että miksi sitä pitää yrittää selittää paremmaksi väitteillä, jotka ei selvästi pidä paikkaansa, joten päätin sitten kommentoida asiaa.

Heh. No tuskinpa se koodi siitä mihinkään paranee muuten kuin muuttamalla itse koodia. Se mitä yritin selittää on, että se miten tuo tiedostonimi haetaan ei vaikuta mitenkään tuohon itse aiheeseen eli tiedostokoon laskentaan. Mielestäni jo tuossa aiemmin sanoin, että Os:n esittämä tapa on parempi.

vesikuusi [20.08.2011 23:42:31]

#

os, mainitsin jo, että tellg vaihtaa yksikköä tiedostokoon mukaan ja siksi en tykkää siitä :D offtopic yes..

Metabolix [20.08.2011 23:44:08]

#

vesikuusi kirjoitti:

os, mainitsin jo, että tellg vaihtaa yksikköä tiedostokoon mukaan ja siksi en tykkää siitä :D offtopic yes..

Missä tilanteessa se "vaihtaa yksikköä"? Voitko esittää jonkin koodin ja tiedostot, joilla näin tapahtuu?

vesikuusi [20.08.2011 23:45:28]

#

juu eli, kun tiedostokoko on vaikka 100 tavua, se palauttaa 100, jos 1000, se palauttaa 1.

E: muistaakseni. jotenkin näin kumminkin..

Metabolix [20.08.2011 23:47:09]

#

Ei riitä. Näytä jokin oikea koodi ja oikeat tiedostot, joilla noin muka tapahtuu. Kukaan muu ei ole tuollaista tilannetta kohdannut, joten joudut perustelemaan näkemyksesi erittäin pätevästi.

vesikuusi [20.08.2011 23:56:44]

#

hahha, olin joskus näköjään sotkenut jotain :D kyllä se yksikkö nyt pysyy samana. pahoitteluni.

jcd3nton [21.08.2011 00:59:43]

#

Torgo kirjoitti:

jcd3nton kirjoitti:

Linux ei ole Unix. Myoskaan GNU ei ole Unix ;-)

Niin? Muuttaako se jotenkin sitä, että molemmissa on käytössä komento nimeltä du, jolla saa näkyviin tiedoston koon?

Unixin du ei tunne lippua -b. Kyseessa on mita todennakoisimmin GNU:n oma ekstensio. Muutenkin du on vaara tyokalu tehtavaan, silla sen ei ole tarkoitus kertoa tiedoston sisallon kokoa, vaan tiedoston levylle tallentamiseen kaytettyjen blockien maaran. Blockien vuoksi tiedostot yleensa vievat levylla enemman tilaa kuin mita sen varsinainen koko on.

Tiedoston koon selvittamiseen loytyy mm. ls -l ja wc -c.

lainaus:

jcd3nton kirjoitti:

Toivottavasti aloittelijat eivat ota tasta koodista mallia.

Haluatko kenties täsmentää tätä rakentavaa kritiikkiäsi?

Viestini oli tarkoitus olla hienovarainen vihjaus, jolla kiinnitan huomiosi koodissa olevaan bugiin. Kuvittelin, etta tyokseen C:ta ohjelmoiva ihminen viitsisi korjata tallaisen, jottei siita koidu muille harmia.

Parempi lienee sanoa nyt eksplisiittisesti, jotta viesti menee varmasti kaikille jakeluun: strncpy ei NUL-terminoi merkkijonoa jos se on liian pitka. Ohjelma voi siis hyvin todennakoisesti lukea puskurin yli ja kaatua -- tai pahemmassa tapauksessa lukea puskurin yli ja sen seurauksena vuotaa tietoa, jonka ei tulisi paasta julki.

Kannattaa mielummin kayttaa strlcpy:ta, jos todellakin on pakko kopioida C-tyylinen merkkijono ennalta allokoituun puskuriin (toisin kuin tassa tapauksessa oli tarpeen; os:n ratkaisu on kaikin puolin jarkevampi). Strncpy:n kanssa joudut varmistamaan nollatavun lisayksen itse.

Joku muu jo huomautti toisesta ongelmasta, joka oli tuo mielivaltainen polun pituuden rajoittaminen. Lisaksi em. koodin kaltaisissa tapauksissa kannattaa suosiolla kayttaa sizeofia, niin ei samaa taikalukua tarvitse kahdesta (tai useammasta!) paikasta korjata kun sita muutetaan.

Jos vaivaudut kopioimaan, kommentoimaan, ja postaamaan koodia foorumile, niin eiko kannattaisi samalla vaivautua karsimaan turhat (ja bugiset!) rivit pois? Kannattaa pitaa mielessa, etta foorumi kuhisee aloittelijoita, jotka eivat valttamatta ymmarra mika koodissasi on turhaa (ja miten se poistetaan), saati sitten virheesta tieda mitaan. Opetetaan asiat alun pitaen oikein..

Blaze [21.08.2011 01:42:47]

#

Ja mainittakoon se toinen vika, jonka itse huomasin ensin: ei kai niitä main-funktion parametrien nimiä oo erikseen standardoitu missään, mutta erittäin vakiintuneet nimet on argc ja argv ("argument count" ja "argument vector", ite miellän sen usein valueksi), tässä järjestyksessä. Jos on pakottava tarve käyttää jotain muita nimiä, niin älä nyt käytä ainakaan noita väärässä järjestyksessä. Todella hämäävää kun yhtäkkiä parametrien määrästä otetaan joku indeksi.

Clacier [21.08.2011 10:40:27]

#

Itseä vähän häiritsee, kun esim. profiilista katsoo käyttäjän uusimpia viestejä ja painaa jotain aihetta, linkki ei vie suoraan viestiin.

Tahallaan otettu pois..?

jlaire [21.08.2011 14:34:13]

#

1) Menen profiilin muokkaussivulle.
2) Muutan joitain tietoja.
2.1) Kotisivuosoite on valmiiksi "http://"; annan sen olla.
3) Klikkaan "Päivitä tiedot".
4) Saan tyylikkään puhekuplan, joka sanoo "Please enter a URL.".
5) Joudun tyhjentämään kotisivuosoitekentän, jotta muutosten tallennus onnistuu.

A) Joko "http://" pitäisi tulkita tyhjäksi, tai
B) sen ei pitäisi olla oletusarvo.
C) ???
D) Profit!

(Chromium kaatui kahdesti tämän viestin kirjoituksen aikana, ensimmäinen kerran backspacen painallukseen. Päivitin kyllä Ctrl-Shift-R:llä, mutta ei sekään aina ihan kaikkea lataa uudestaan.)

Metabolix [21.08.2011 14:59:19]

#

Clacier: Lisäsin linkkiin puuttuvat osat.

jlaire: Korjasin kotisivukentän. Puhekuplahan ei ole omaa tekoa vaan selaimen ominaisuus – näköjään HTML5-tuki kehittyy. Virittelin myös aiempaan kaatumiseen liittyvän CSS-koodin kokonaan pois, toivottavasti auttaa. (Kauheaa purkkaa sitä joutuukin selainbugien takia tekemään.)

vesikuusi: Tein kokoasiasta kunnollisen koodivinkin.

jlaire [21.08.2011 15:21:36]

#

Aijaa, ihmettelinkin kun teksti oli englanniksi enkä millään löytänyt sitä koodista.

Hieno juttu kyllä että tuo kaatuminen selvitettiin!

kllp [21.08.2011 19:30:02]

#

Pikalinkkeihin voisi laittaa "uudet viestit" kohdan takaisin. Ainakin itse koin sen käteväksi.

Grez [21.08.2011 19:31:44]

#

Itsekin tuskailin samaa, kunnes huomasin, että tuo alimman lootan "Uudet viestit" otsikko on linkki uusiin viesteihin. Eiköhän tuohon totu.

Metabolix [21.08.2011 19:32:11]

#

Sivupalkkia täytyy hieman karsia ja järjestellä, jottei se venyisi liian pitkäksi. Uudet viestit -linkki löytyy nykyään palkin lopusta uusimman viestin yläpuolelta, kuten Grez jo huomasi – hyötykäyttöä otsikoillekin.

Antti Laaksonen [22.08.2011 17:16:03]

#

Putkapostin uusi tehtävälista on nyt koekäytössä:

https://www.ohjelmointiputka.net/postit/lista.php

Listasta pystyy katsomaan kirjautuneena, mitä tehtäviä on vielä tekemättä ja mistä puuttuu paras vastaus.

Olli [24.08.2011 17:58:44]

#

Sivunumerot sekä alhaalla että ylhäällä hyvä uudistus.
Profiilisivun kenttien pituutta pitäisi lisätä. Ne on tällähetkellä aivan liian lyhyitä. Sopiva ehkä 40-50 merkkiä.

Torgo [24.08.2011 23:43:48]

#

Antti Laaksonen kirjoitti:

Listasta pystyy katsomaan kirjautuneena, mitä tehtäviä on vielä tekemättä ja mistä puuttuu paras vastaus.

Loistavaa. Minusta olisi parempi jos pelkän ruksin sijasta näkisi oman tuloksensa, mutta roima parannus entiseen näinkin.

Metabolix [24.08.2011 23:46:21]

#

Torgo kirjoitti:

Minusta olisi parempi jos pelkän ruksin sijasta näkisi oman tuloksensa,

Lista näyttää tähden, jos ratkaisu on nykyinen ennätys. Minusta varsinaisen tuloksen näkemisestä ei monissa tehtävissä ole mitään iloa, koska se voi olla hyvinkin hämärä luku.

Torgo [26.08.2011 10:10:23]

#

Metabolix kirjoitti:

Minusta varsinaisen tuloksen näkemisestä ei monissa tehtävissä ole mitään iloa, koska se voi olla hyvinkin hämärä luku.

Tuokin on kyllä totta. Parhaan tuloksen näyttäminen siinä vieressäkään ei välttämättä vielä anna riittävää lisäinfoa. Sen sijaan tuo tulostaulussa käytetty pisteytys nollasta sataan voisi olla parempi. Ainakin minusta se olisi informatiivisempi, kuin pelkät vaihtoehdot: a) ei tulosta, (0) b) jokin tulos (1-99), c) paras tulos (100)

Antti Laaksonen [26.08.2011 19:04:58]

#

Nyt käytössä on uusittu lista, jossa tehtävän suosio ja oman ratkaisun hyvyys esitetään graafisesti.

0 tähteä tarkoittaa puuttuvaa ratkaisua, 5 tähteä tarkoittaa ennätystulosta ja muut tähtimäärät ovat tältä väliltä samaan tapaan kuin tulostaulussa.

ErroR++ [27.08.2011 09:47:24]

#

Google Chromella vielä vähän aikaa sitten rivinvaihdot kaatuili.
Nyt ei enää kaatuile!

-tossu- [27.08.2011 17:59:32]

#

Huomasin juuri, ettei koodivinkkien hakusanat ja -asetukset -valikko toimi Operassa. Mitään ei tapahdu, vaikka avaa tästä -tekstiä painaa.

Metabolix [27.08.2011 18:50:00]

#

Oletko aivan varma? Minulla se toimii Operalla kaikista parhaiten. Löydätkö jostain esimerkiksi jonkin virheilmoituksen?

-tossu- [27.08.2011 23:18:52]

#

Metabolix kirjoitti:

Oletko aivan varma? Minulla se toimii Operalla kaikista parhaiten. Löydätkö jostain esimerkiksi jonkin virheilmoituksen?

Olen minä aika varma käyttämästäni selaimesta ja siitä, ettei mitään tapahdu. :)
Virhekonsoliin tulee tekstiä painettaessa seuraava ilmotus:

Event thread: click
Uncaught exception: ReferenceError: Undefined variable: Effect
Error thrown at line 22, column 2 in <anonymous function: muuta>(legend, esille, nopeasti) in https://www.ohjelmointiputka.net/js/tyokalut.js?t=20110827191533:
    if (nopeasti || !Effect)
called from line 47, column 2 in <anonymous function: muuta_cb>(legend) in https://www.ohjelmointiputka.net/js/tyokalut.js?t=20110827191533:
    this.muuta(legend, !legend.next().visible());
called from line 391, column 6 in <anonymous function>() in http://ajax.googleapis.com/ajax/libs/prototype/1.7/prototype.js:
    return __method.apply(context, a);
called via Function.prototype.apply() from unknown location in <anonymous function: _methodized>() in http://ajax.googleapis.com/ajax/libs/prototype/1.7/prototype.js:
    /* no source available */
called from line 5598, column 10 in <anonymous function: responder>(event) in http://ajax.googleapis.com/ajax/libs/prototype/1.7/prototype.js:
    handler.call(element, event);

Metabolix [27.08.2011 23:56:35]

#

Nähtävästi scriptaculous.js (tai jokin sen moduuli) ei sinulla lataudu. Hyvin luultavasti vika on tavalla tai toisella sinun päässäsi, koska script-tagi on kunnossa eikä Putka voi asiaan sen enempää vaikuttaa. Jos asia ei mene itsestään ohi, suosittelen selaimen korjaamista.

Muutin nyt kuitenkin tarkistukset niin, että koodi toimii myös ilman hienoja efektejä.

-tossu- [28.08.2011 00:16:17]

#

Jostain syystä Operan NoAds esti joidenkin scriptaculousin tiedostojen lataamisen. Outoa, sillä ajax.googleapis.com on sallittujen domainien listalla, ja prototype.js sekä scriptaculous.js latautuvat ongelmitta.

Koska Putkassa ei ole häiritseviä mainoksia, otin NoAdsin pois käytöstä Putkan osalta. Nyt valikko toimii hyvin.

peg [28.08.2011 08:47:35]

#

RSS syötteestä puuttuu aikaleima, jonka takia ohjelmointiputkan syötteet rss readerissa menevät alimmaiseksi eli kaikkein vanhimmiksi.
Alla esimerkki joka toimii useissa readereissa, tosin pelkkä pubdatekin
on ihan hyvä, mutta samalla vaivalla koodiin lisää dc:datenkin.

         <pubDate>Sat, 27 Aug 2011 22:07:22 </pubDate>
         <dc:date>2011-08-27T22:07:22+03:00</dc:date>

Metabolix [28.08.2011 13:22:34]

#

Nyt on pubDate, vieläpä validi sellainen, toisin kuin esimerkissäsi. Ei liene mitään todellista syytä lisätä samaa asiaa toiseen kertaan eri tagilla.

peg [29.08.2011 06:55:15]

#

Metabolix kirjoitti:

Nyt on pubDate, vieläpä validi sellainen, toisin kuin esimerkissäsi. Ei liene mitään todellista syytä lisätä samaa asiaa toiseen kertaan eri tagilla.

Jotkut RSS lukijat eivät osaa käyttää pubDatea jolloin dc:datea tarvitaan, mutta kuinka haluatte.

tsuriga [30.08.2011 00:22:24]

#

Jännästi sivu sanoi "Kirjautuneena: tsuriga" kun yritin vahingossa lähettää tyhjää viestiä kirjautumistietojen kera, mutta seuraavalla sivulatauksella en taas ollutkaan sisällä.

Metabolix [30.08.2011 00:40:49]

#

tsuriga kirjoitti:

Jännästi sivu sanoi "Kirjautuneena: tsuriga" kun yritin vahingossa lähettää tyhjää viestiä kirjautumistietojen kera, mutta seuraavalla sivulatauksella en taas ollutkaan sisällä.

Nyt tuokin uusi ominaisuus on poistettu.

Torgo [30.08.2011 20:45:45]

#

Haku ei oikein tunnu toimivan. Jos haen esim. sanalla "Putkaposti", niin saan reilusti osumia. Jos taas haen jollain tietyllä putkaposti nimellä, kuten "Eliittihakkerit" tai "Kiertopeli", niin saan ilmoituksen "Antamillasi ehdoilla ei löytynyt oppaita, koodivinkkejä eikä keskusteluja.". Siitäkin huolimatta että kyseiset topicit löytyvät tuolla ensimmäisellä hakusanalla. Itse asiassa useimpien kokeilemieni hakusanojen kohdalla tulee joko tuo ilmoitus tai muuten vaan puutteellinen lista.

Metabolix [30.08.2011 20:54:52]

#

Haku ei tosiaan huomioinut aiheen otsikkoa – nyt huomioi. Olethan huomannut, että hakuehdot yhdistetään ANDilla eikä ORilla? Tämä varmaan vaikuttaa paljon listan "puutteellisuuteen".

Tumppu [30.08.2011 21:01:59]

#

Onkohan sisäänkirjautuneiden näyttäjää viritetty, kun nytkin näytti että minunlisäks 20 on sisäänkirjautuneena. Enpä muista olisinko ennen nähnyt noin monta käyttäjää samaan aikaan kirjautuneena. Hienoa putka!!

Metabolix [30.08.2011 21:28:22]

#

Käytössä on 10 minuutin aikaikkuna, kuten ennenkin. Tosin keskusteluiden JS-päivitys saattaa aiemmasta poiketen pitää listalla sellaisiakin henkilöitä, jotka viihtyvät yli 10 minuuttia samalla sivulla. Tähän mennessä ennätys on tiettävästi 41 käyttäjää tammikuussa 2007, mutta eiköhän tuostakin vielä päästä ohi. Uudistuksen jälkeiset ennätykset on kirjattu tarkemmin.

Tumppu [30.08.2011 21:47:44]

#

Jaah, no valehtelin sitten. Onhan tuossa tullut oltua 1/29:stä :D

RQ [31.08.2011 09:49:00]

#

Aiheeseen mitenkään liittymättä, mistä johtuu että Opera aina uudelleenkäynnistyksen jälkeen näyttää kaikki linkit sen värisinä, ettei niissä oltaisi ikinä käyty? Ärsyttävää, kun ei tiedä mihin aiheeseen on tullut uusia viestejä, ja mitkä ovat jo vanhoja. Mistäköhän tämä ongelma vois johtua, ja miten sen saisi korjattua? Tätä nyt jatkunut jo useamman kuukauden.

Lebe80 [31.08.2011 09:50:35]

#

Wow! Putka saanut myös ajaxilla päivittyvät keskusteluketjut!

+1

Macro [02.09.2011 12:37:17]

#

Totta, +1 Ajax-päivityksistä.

Profiilisivulla voisi näkyä myös ratkaistujen Putkapostien määrä prosenteissa tai kappaleittain.

ErroR++ [03.09.2011 19:34:42]

#

Lebe80 kirjoitti:

Wow! Putka saanut myös ajaxilla päivittyvät keskusteluketjut!

Totta. Jos vielä saisi sen sivupalkin uusimman keskustelun päivittymään niin olisi hienoa! Ja olisi myös kivaa, että jos muokkaan viestiä, niin se päivittyisi sivupalkissa.

Macro [04.09.2011 18:30:05]

#

Voisiko hakutoimintoon saada jonkun sorttaustoiminnon, jotta uusimmat keskustelut ja koodivinkit saisi päällimmäiseksi?

Metabolix [04.09.2011 19:36:14]

#

Keskusteluthan ovat jo aikajärjestyksessä. Koodivinkkien (ja oppaiden) lähetysajalla ei pitäisi nähdäkseni olla mitään merkitystä, kunhan nuo sisällöltäänkin vanhentuneet vinkit jaksetaan jossain välissä siivota piiloon.

Macro [04.09.2011 21:25:56]

#

Tossa kun kirjotin tota viestiä, niin ei ollut kyllä aikajärjestyksessä. Hakusana "moi" näytti sekaisin 2002- ja 2004-vuosien keskusteluja. Nyt ne näyttäisivät olevan oikein, hyvä juttu.

Metabolix [04.09.2011 21:40:46]

#

Olet varmaan katsonut vahingossa niitä koodivinkkejä, siellä näyttäisi olevan tuollaisia vuosilukuja. :)

Macro [04.09.2011 21:49:20]

#

Voi olla. No hyvä kumminkin, että asia on kunnossa!

Merri [04.09.2011 22:52:30]

#

https://www.ohjelmointiputka.net/koodivinkit/vinkki.php?id=25254

Tuolla Tompan kommentissa oleva koodinpätkä näyttää menevän rikki parserissa.

jlaire [05.09.2011 07:24:47]

#

Virhe on kommentissa eikä parserissa, tägin oikea nimi on koodiphp eikä php.

Metabolix [05.09.2011 13:37:26]

#

Korjasin nyt kyseisen viestin kuitenkin.

The Alchemist [05.09.2011 19:30:21]

#

Kirjoitusalue tuntuu bugaavan. Yritin tuossa muutaman kerran muokata viestiäni, niin tekstiä maalatessa tekstikenttä meni muokkaustilasta pois ja vaikka tuohon muokkaa-linkin tilalle jäi "takaisin". Selaimena Firefox 6.0.1.

Macro [16.09.2011 22:52:15]

#

Minusta olisi ihan hyvä, että itse pystyisi editoimaan myös aiheen otsikkoa. Joskus sinnekkin tulee kirjoitusvirhe, ja haluaisi korjata sen. Vähentäisi moderaattoreidenkin työtä.

Metabolix [16.09.2011 22:54:56]

#

The Alchemist kirjoitti:

Kirjoitusalue tuntuu bugaavan.

Works for me, kuten on tapana sanoa. Putkan koodissa ei ole nähdäkseni mitään selitystä tuollaiselle käytökselle.

Macro kirjoitti:

Minusta olisi ihan hyvä, että itse pystyisi editoimaan myös aiheen otsikkoa.

Minusta sille ei ole mitään tarvetta. Mutta katsotaan asiaa joskus.

ErroR++ [17.09.2011 16:06:20]

#

Kirjoitin koodivinkin, jossa oli php -koodia ja kun lähetin sen niin php -koodissa oli vain kommentit jäljellä! Aivan kuin koodi olisi suoritettu.

Metabolix [17.09.2011 16:33:16]

#

PHP-väritys jätti tosiaan tietyissä tapauksissa viimeisen PHP-osuuden pois. Korjattu.

ErroR++ kirjoitti:

Aivan kuin koodi olisi suoritettu.

Silloinhan sivulla pitäisi näkyä koodisi tuloste, eikö? Eipä tainnut näkyä. Ja muutenkin on vaikea keksiä, miten värityksen yhteydessä onnistuisi vahingossa koodin ajaminen. Lisäksi "kommenttisi" on PHP-koodin ulkopuolella.

hernih [17.09.2011 20:50:08]

#

Tuli mieleen,että kun noita kooditagien sisään kirjoitettujen koodirivien pituus on suurempi kuin sisällön leveys niin siihen tulee alas tuo skrolli,jolloin etenkin pitkien koodien lukeminen on suhteellisen hankalaa.

Tuossahan voisi vaikka mouseover eventissä nakata tuon leveyden niin että se leviäisi koko leveydelleen.

ErroR++ [19.09.2011 16:55:22]

#

Sen koodivinkin yritin myöhemmin poistaa. Ei se vain onnistunut. Ja siitähän olisi tietysti tulostunut jotain "Parse error".

jukkah [26.09.2011 15:34:58]

#

<?php
while(true) {
    $a .= $b;
}
?>

Tämä kaataa PHP-haasteen tarkistussivun. Se ei kerro liian pitkästä tulostuksesta, vaan sivun lähdekoodin loppu näyttää tältä latauksen loputtua:

<p><ul><li>TESTI 1 ...

Grez [26.09.2011 15:43:17]

#

jukkah kirjoitti:

Se ei kerro liian pitkästä tulostuksesta

Eihän tuo esimerkkisivu tulosta mitään. Sen testisivun pitäisi varmaan kertoa liian pitkästä vastausajasta (timeout).

jlaire [27.09.2011 00:56:45]

#

The Alchemist kirjoitti:

Yritin tuossa muutaman kerran muokata viestiäni, niin tekstiä maalatessa tekstikenttä meni muokkaustilasta pois ja vaikka tuohon muokkaa-linkin tilalle jäi "takaisin". Selaimena Firefox 6.0.1.

Tämä on tapahtunut minulle muutaman kerran, viimeksi juuri äsken. Muokkaustekstikenttä katosi ihan omia aikojaan, en muista olinko maalamassa tai muuten hiiren kimpussa. Selaimena uusin Chrome.

Edit: Hahaa, kahdesti tämän viestin kanssa. Olisiko tämä selitys?

1) Muokkaan viestiä ja lähetän.
2) Klikkaan nopeasti uudestaan "Muokkaa".
3) Ajax-päivitys tuo kohdassa (1) tekemäni muutokset, korvaa viestin niillä ja sotkee asiat.

Edit 2: Laitoin DOM-breakpointin viestiin ja jep, ajaxpaivitys päivittää sen uuteen kun toinen muokkaus on kesken.

jukkah [27.09.2011 09:30:10]

#

Grez kirjoitti:

Eihän tuo esimerkkisivu tulosta mitään.

Kyllä se tulostaa.

Notice: Undefined variable: b in /home/webhost/pingo/public_html/testi.php on line 3

Notice: Undefined variable: a in /home/webhost/pingo/public_html/testi.php on line 3

Notice: Undefined variable: b in /home/webhost/pingo/public_html/testi.php on line 3

Notice: Undefined variable: b in /home/webhost/pingo/public_html/testi.php on line 3

Notice: Undefined variable: b in /home/webhost/pingo/public_html/testi.php on line 3

Tuota sitten jatkuu loputtomiin. Riippuu tietenkin palvelimen konffauksesta, tulostaako se Notice-ilmoituksia. Jos rivi 3 alkaa @-merkillä, koodi ei tulosta virheilmoitusta.

Grez kirjoitti:

Sen testisivun pitäisi varmaan kertoa liian pitkästä vastausajasta (timeout).

Timeout tulee vastaan yli kymmenen sekunnin jälkeen, mutta sivu kaatuu jo muutaman sekunnin kuluttua.

Ennen sivuston päivittämistä testisivun esittämässä virhetilanteessa tark.php kaatui muistinloppumisvirheeseen

Fatal error: Allowed memory size of X bytes exhausted (tried to allocate Y bytes)... in /phph/tark.php on line z

Metabolix [27.09.2011 15:08:30]

#

Nyt PHP-haaste lukee tulostetta vain kohtuullisen määrän, jolloin ylimääräinen tulostus ei haittaa ja ratkaisu voidaan hylätä nopeammin. Muokkauksen bugikin tuli toivottavasti korjattua.

Grez [28.09.2011 01:39:02]

#

Nyt kun viestiä muokkaa ja klikkaa "Lähetä"-nappia niin muokkaus kyllä tallentuu mutta sen jälkeen Firefoxilla tulee "olet avamaassa tiedostoa laheta.php, Avaa ohjelmalla / tallenna nimellä" -dialogi ja esim. Chromella tulee muokkaamisesta ajax-response näkyville sellaisenaan. Toki sekin on pienempi paha kuin tuo aikaisempi, jossa viestin muokkaaminen katoaa bittiavaruuteen sivun päivittäessä itsensä.

groovyb [28.09.2011 07:28:44]

#

Komppaan Greziä, sama lähetä.php haluaa tallentua myös androidin vakioselaimella, mikä sitte nimeltään onkaan.

Macro [28.09.2011 14:57:38]

#

Jep, mullakin Chromella tulee tuommoinen teksti näkyviin. Muokattu versio kumminkin päivittyi sivulle.

Merri [30.09.2011 11:09:25]

#

Jostain syystä mokkulakäytössä viestien AJAX-muokkaustoiminto jumittaa paljon herkemmin kuin perinteinen erillinen muokkaussivu. Jälkimmäinen lataa heti, edellinen voi jumittaa minuutin ennen kuin se muokkauskenttä vihdoin ilmestyy. Tiedä sitten syytä.

AkeMake [05.10.2011 21:30:41]

#

Kun menen muokkaamaan profiiliani kotisivuosoite-kentässä lukee automaattisesti käyttäjätunnukseni. Kun sitten päivitän tietoni, sivu herjaa, että pitäisi antaa url-osoite. Se automaattisesti ilmestynyt käyttäjätunnus pitää ottaa pois kotisivuosoite-kentästä, jotta tiedot voi päivittää. Mietin vain, että mitähän se käyttäjätunnus edes tekee siinä url-osoitteelle varatussa kentässä.

Metabolix [05.10.2011 22:23:37]

#

AkeMake: No sitä en tosiaan tiedä, kun sellaista ei varmasti sinne tulosteta. Oletko ihan varma, ettei selaimesi automaattitäydennys jollain tavalla sekoile? Mikä selain on kyseessä? Oletko kokeillut muita selaimia?

Merri: Erikoista. Mikä selain? Huomaatko vaikka Firebugin Net-tabissa mitään erityistä ongelmaan liittyen? Oletko huomannut vastaavaa vikaa muualla?

Grez, groovyb, Macro: Ei kai vikaa enää ole?

Grez [05.10.2011 22:52:14]

#

Ei ole.

AkeMake [05.10.2011 23:05:50]

#

Automaattitäydennyshän siinä tosiaan koettaa olla viisaampi kuin onkaan. Chrome on käytössä eikä Safarin hiukan huonompi täydennys tehnyt samaa virhettä. Onko olemassa mitään mahdollisuutta korjata tuota niin, ettei Chromen liian älykäs automaattitäydennys töpeksi ja, ettei tarvitsisi ottaa automaattitäydennystä pois käytöstä?

Huomasinpa että kun kirjautuu ulos profiilin muokkaus-sivulla, sivu heittää virhettä, koska "profiilia voi muokata ainoastaan, jos on kirjautunut Ohjelmointiputkaan". Olisi parempi, että tällaisilta 'kriittisiltä' sivuilta uloskirjauduttaessa sivu ohjaisi vaikka etusivulle.

Merri [05.10.2011 23:28:07]

#

Metabolix: koetan joku päivä muistaessani tehdä kokeiluja enemmän. Voi kestää kun en kuitenkaan ihan joka päivä löydä höpötettävää ja mokkulakäyttö on lähes sataprosenttisesti työpaikan kahvitauoilta käsin :)

Grez [05.10.2011 23:28:55]

#

AkeMake kirjoitti:

Onko olemassa mitään mahdollisuutta korjata tuota niin, ettei Chromen liian älykäs automaattitäydennys töpeksi ja, ettei tarvitsisi ottaa automaattitäydennystä pois käytöstä?

Sinunhan se pitäisi korjata. Kentän nimi on www ja otsikko on kotisivuosoite, eli jollekin sivulle olet syöttänyt nimimerkkiäsi tuollaisiin kenttiin. Kokeile sanoa sille Chromelle, että haluat poistaa ko. tiedon sen täyttömuistista.

Metabolix [05.10.2011 23:41:29]

#

AkeMake, hyvä ehdotus, nyt profiilin muokkauksesta ja eräiltä muiltakin suojatuilta lentää etusivulle. Jos vastaavia tilanteita löytyy vielä jostain, niistä voi mielellään ilmoittaa.

Merri, ei mitään kiirettä tietenkään. :) Jos hitaus on pahasti vaivaksi, hätäratkaisuna mokkulistit voivat toki ottaa JS:n pois käytöstä...

User137 [05.10.2011 23:43:27]

#

Hyvä ominaisuus tekstiboksin päälle olis nappi kooditageille. Ehkä lihavointi ja kursivointi, ei kuitenkaan ole tarkotus täyttää liialla.

Metabolix [05.10.2011 23:46:30]

#

User137, nämähän saa käyttöön JS-asetuksista (mm. profiiliasetusten yhteydestä). Antti kuitenkin päätti, että nappeja ei oletuksena näytetä – lisäävät kuulemma sekavuutta. Ehkä voisi silti jossain vaiheessa kehitellä tehdä pienen linkin, josta ne saisi helpommin esiin... Katsotaan.

AkeMake [06.10.2011 00:22:57]

#

Grez kirjoitti:

Sinunhan se pitäisi korjata. Kentän nimi on www ja otsikko on kotisivuosoite, eli jollekin sivulle olet syöttänyt nimimerkkiäsi tuollaisiin kenttiin. Kokeile sanoa sille Chromelle, että haluat poistaa ko. tiedon sen täyttömuistista.

No niinhän se pitäisi Chromen asetuksista säätää. Huomasin kyllä, että kentän nimi oli www, mutta en voi tajuta millä sivustolla käytettäisiin käyttäjätunnusta kysyvässä kentässä nimenä www. Koetin Chromen asetuksista etsiä tapaa, jolla voisin poistaa tuollaisen yhden tietyn kentän täyttöä, mutta sellaista ei millään tunnu löytyvän. Chromen automaattista täyttöä koskevassa osiossa ei tuollaista ollut ja manuaalista, jonne tuolta pääsi, ei apua myöskään löytynyt. Olisiko joillain Chrome-käyttäjillä tietoa mistä tuon voisi tehdä?

Grez [06.10.2011 01:56:58]

#

En mä saa edes chromea ehdottelemaan mulle mitään useamman kentän täyttöä putkan profiilinmuokkaussivulla, eikä mun mielestä noissa chromen autofilleissä ole kuin osoitetiedot ja luottokorttitiedot, joten www-osoitetta ei edes teoriassa pitäisi voida täyttää niillä. Onkohan sulla joku lisäosa asennettuna tms?

Jos se taas tulee www-osoitekenttää syötettäessä ehdotuksena, niin ei muuta kuin hiirellä päälle niin että ylimääräinen kenttä näkyy korostettuna ja painat delete-nappulaa.

AkeMake [06.10.2011 09:00:35]

#

Ei ole mitään lisäosia, ja se kenttä täyttyy suoraan profiilinmuokkaussivulle mentäessä, eikä vasta www-osoitekenttää syötettäessä. Chrome laittoi minulla suoraan kotisivuosoite-kenttään käyttäjätunnuksen ja salasana-kenttään salasanan, joten tuon automaattisen täytön luulisi löytyvän tallennettujen salasanojen luota. Asetuksiin on kuitenkin merkitty jokaisen salasanan ja tunnuksen lisäksi sivusto, johon salasana sopii, joten luulisi, ettei toisella sivustolla täytetty kenttä vaikuta Ohjelmointiputkan kenttiin. Kävin tästä huolimatta tutkimassa läpi kaikki ne sivustot, joissa käytän tuota kotisivu-kenttään ilmestyvää käyttäjätunnusta, eikä yhdenkään tunnuksen kentän nimenä ollut www; mikä olisikin ollut omituista. Lisää vinkkejä?

Edit. Poistin Chromen muistista nämä putkan tunnukseni, jolloin ongelmaa ei enää esiinny. Jotenkin Chrome siis onnistuu kuvittelemaan tuota www-kenttää tunnukselle kuuluvana kenttänä ja heittää siihen tämän putkan tunnuksen. Any idea mistä voisi johtua?

Merri [06.10.2011 09:47:15]

#

Metabolix kirjoitti:

User137, nämähän saa käyttöön JS-asetuksista (mm. profiiliasetusten yhteydestä). Antti kuitenkin päätti, että nappeja ei oletuksena näytetä – lisäävät kuulemma sekavuutta. Ehkä voisi silti jossain vaiheessa kehitellä tehdä pienen linkin, josta ne saisi helpommin esiin... Katsotaan.

Yksi tapa hoitaa asia olisi laittaa nappulat ilmestymään vain kun tekstikenttä on aktiivisena (tai ylipäätään jokin sopivan isäntäelementin lapsielementti) tai kun hiiri on sopivalla alueella. Tämäntapaista "piilottelua" on alkanut näkyä monella suositullakin sivustoilla, mm. YouTube ja Facebook, joten ei olisi ainakaan mikään uusi asia opetella. Sopivan yksinkertaisella tyylittelyllä nappulat eivät olisi edes häiritseviä. Tuossa tekstilaatikon vasemmalla puolella on hyvää tyhjää tilaa pystysuuntaiselle palkille :)


Muoks!
Tällä hetkellä AJAX-härveli toimii hyvin, tosin yhteyden laatu on myös poikkeuksellisen hyvä. Kokeilen jossain välissä vähän heikommalla yhteydellä. Toisaalta vaihdoin myös ohjelmistoa, joka luo yhteyden (nyt käytössä MDMA, aiemmin Mobile Partner).


Sivun alkuun

Vastaus

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

Tietoa sivustosta