Python ja merkkijonot

En ole aikoihin törmännyt näin paskaan ja hankalaan toteutukseen.

Kukahan tuonkin lienee suunnitellut.

Vähän väliä merkit sekaisin kateessa tai heittelee random erroreita kesken suorituksen.

Javassa oli myös jotain raivostuttavia pska ominaisuuksia, mutta ei mitään tähän verrattavaa.
25574
Äänestä

Muut lukivat myös

Vastaukset 25

Vanhimmat

Et vaan osaa.

Äänestä
  • Ei sitä moni vaan osaa Brainfuckillakaan koodata, mutta ei se tarkoita sitä, että kieli olisi jotenkin fiksu tai hyvä. Aika usein vika voi olla kuin ollakin ihan kielessä.

    Pyyttoni on ihan kiva kieli joillekin joihinkin tarkoituksiin, mutta se on aika rajusti erilainen kuin vaikka joku Java tai C# jotka ovat ihan oikeasti hyviä kieliä. Eikä tolla pyyttonilla tehdä pahemmin mitään suuria softia kuitenkaan vaikka sellaisten osina sitä käytetään.

    Ite sanoisin, että kannattaa pysyä erossa Pyyttonista jos tykkää hanskata ite hommia ja vaikka noi tyypitykset ovat omaan mieleen. Niiden kanssa saa koodin solmuun helposti ja Pyyttonissa yksi tyypillisimpiä ongelmia onkin se, että tietotyypit menevät reisille kun noi jäävät muistinvaraisiksi aika usein.

    Äänestä

  • Jepulis Jeep kirjoitti:

    Ei sitä moni vaan osaa Brainfuckillakaan koodata, mutta ei se tarkoita sitä, että kieli olisi jotenkin fiksu tai hyvä. Aika usein vika voi olla kuin ollakin ihan kielessä.

    Pyyttoni on ihan kiva kieli joillekin joihinkin tarkoituksiin, mutta se on aika rajusti erilainen kuin vaikka joku Java tai C# jotka ovat ihan oikeasti hyviä kieliä. Eikä tolla pyyttonilla tehdä pahemmin mitään suuria softia kuitenkaan vaikka sellaisten osina sitä käytetään.

    Ite sanoisin, että kannattaa pysyä erossa Pyyttonista jos tykkää hanskata ite hommia ja vaikka noi tyypitykset ovat omaan mieleen. Niiden kanssa saa koodin solmuun helposti ja Pyyttonissa yksi tyypillisimpiä ongelmia onkin se, että tietotyypit menevät reisille kun noi jäävät muistinvaraisiksi aika usein.

    Python on lähinnä kätevä silloin kun haluaa pieraista nopeasti jotain kikkaretta, opiskella ohjelmointia, tehdä jotain pluginia yms. laajennusta tai tehdä jotain protoilua. Niihin se on loistava.

    Ei sillä mitään isoja softia kannata tehdä. Silläkään ei ole väliä vaikka olisi erilainen kuin joku toinen kieli kun Schemekin on hyvin erilainen verrattuna Pythoniin tai Javaan mutta on myös hyvä kieli ohjelmoinnin opetteluun.

    Äänestä

  • m-kar kirjoitti:

    Python on lähinnä kätevä silloin kun haluaa pieraista nopeasti jotain kikkaretta, opiskella ohjelmointia, tehdä jotain pluginia yms. laajennusta tai tehdä jotain protoilua. Niihin se on loistava.

    Ei sillä mitään isoja softia kannata tehdä. Silläkään ei ole väliä vaikka olisi erilainen kuin joku toinen kieli kun Schemekin on hyvin erilainen verrattuna Pythoniin tai Javaan mutta on myös hyvä kieli ohjelmoinnin opetteluun.

    Sähän perustelet kuin pakkoruotsin kannattajat. Kannattaa opetella tota koska sitten kun oppii yhden kielen on helpompaa opetella toinen. Ihan kun ei voisi opetella suoraan sitä toista.

    Toisekseen, tyypittämättömällä kielellä ohjelmoimaan opetteleva oppii turhan usein huonoille tavoille eikä meina tajuta millään sitä miksi tyypitys onkin aika usein tosi hyvä juttu ja hieno idea. Aika pitkälle pääsee muuten muillakin kielillä protoilussa, ei se ole mikään pyyttonin yksinoikeus. Pyyttonilla koodaten säästää muutamia rivejä koodia pikkujutussa, mutta onkohan se sen arvoista... Suuriahan sanoit, ettei niitä edes sun mukaan sillä kannata tehdä.

    Äänestä

  • Jepulis Jeep kirjoitti:

    Sähän perustelet kuin pakkoruotsin kannattajat. Kannattaa opetella tota koska sitten kun oppii yhden kielen on helpompaa opetella toinen. Ihan kun ei voisi opetella suoraan sitä toista.

    Toisekseen, tyypittämättömällä kielellä ohjelmoimaan opetteleva oppii turhan usein huonoille tavoille eikä meina tajuta millään sitä miksi tyypitys onkin aika usein tosi hyvä juttu ja hieno idea. Aika pitkälle pääsee muuten muillakin kielillä protoilussa, ei se ole mikään pyyttonin yksinoikeus. Pyyttonilla koodaten säästää muutamia rivejä koodia pikkujutussa, mutta onkohan se sen arvoista... Suuriahan sanoit, ettei niitä edes sun mukaan sillä kannata tehdä.

    "Kannattaa opetella tota koska sitten kun oppii yhden kielen on helpompaa opetella toinen. Ihan kun ei voisi opetella suoraan sitä toista."

    Pythonilla on hyvä opetella ohjelmoimaan koska on aika matala se kynnys alkaa sillä ohjelmoimaan, ja se on kuitenkin hyödyllinen osata koska sillä on kätevä skriptata ohjelmia ja sillä voi pieraista helposti jotain pikkuohjelmaa joita nyt yleensä tarvitsee, kuten vaikka muuttaa dataa muodosta A muotoon B.

    Äänestä

  • m-kar kirjoitti:

    "Kannattaa opetella tota koska sitten kun oppii yhden kielen on helpompaa opetella toinen. Ihan kun ei voisi opetella suoraan sitä toista."

    Pythonilla on hyvä opetella ohjelmoimaan koska on aika matala se kynnys alkaa sillä ohjelmoimaan, ja se on kuitenkin hyödyllinen osata koska sillä on kätevä skriptata ohjelmia ja sillä voi pieraista helposti jotain pikkuohjelmaa joita nyt yleensä tarvitsee, kuten vaikka muuttaa dataa muodosta A muotoon B.

    Jos katotaan helpon näköstä kieltä niin VB.NET on myös yksinkertainen opetella, eikä pääse oppimaan ohjelmointia ihan pellossa eläen tietotyyppien kanssa. Tyypitysten ymmärtäminen on kuiteskin aika tärkeä osa näitä hommia. Lisäksi siitä on pahuksen helppoa vaihtaa C#:n puolelle kun erot ovat lähinnä syntaksissa.

    Noilla kun rykäsee datamuunnokset käytännössä yhtä nopeaan kun pyyttonilla. Lisäksi loistava alusta pidemmillekin softille. Pyyttonilla säästää sen muutaman koodirivin, ehkä. Eikä se ole ton kielen opettelun arvosta.

    Äänestä

  • Jepulis Jeep kirjoitti:

    Jos katotaan helpon näköstä kieltä niin VB.NET on myös yksinkertainen opetella, eikä pääse oppimaan ohjelmointia ihan pellossa eläen tietotyyppien kanssa. Tyypitysten ymmärtäminen on kuiteskin aika tärkeä osa näitä hommia. Lisäksi siitä on pahuksen helppoa vaihtaa C#:n puolelle kun erot ovat lähinnä syntaksissa.

    Noilla kun rykäsee datamuunnokset käytännössä yhtä nopeaan kun pyyttonilla. Lisäksi loistava alusta pidemmillekin softille. Pyyttonilla säästää sen muutaman koodirivin, ehkä. Eikä se ole ton kielen opettelun arvosta.

    "Jos katotaan helpon näköstä kieltä niin VB.NET on myös yksinkertainen opetella, eikä pääse oppimaan ohjelmointia ihan pellossa eläen tietotyyppien kanssa."

    VB.NET:n opiskelu menee hukkaan ja se on kuoleva kieli. Pythonin osaaminen ei mene hukkaan kun sillä on opiskellut hommat niin sitä voi käyttää jatkossa pienten kikkareiden tekemiseen. VB.NET:n opiskelu on lähinnä ajan hukkaa.

    Tyypitykset lähinnä tekee oppimiskynnystä turhan jyrkäksi. Toki ne on tärkeitä mutta tällä logiikalla ensimmäiseksi kieleksi pitäisi ottaa C-kieli niin ei jäisi lowlevel niin vieraaksi. Se vaan jyrkentää oppimiskäyrää. Aivan kuten vaikka joku Java missä pakotetaan suoraan osamaan mallintaminen olioilla. Siksi eivät sovi opiskeluun.

    Sattumalta se Python on valittu myös XO:n tietotekniikan opiskeluvälineeksi..

    Äänestä

  • m-kar kirjoitti:

    "Jos katotaan helpon näköstä kieltä niin VB.NET on myös yksinkertainen opetella, eikä pääse oppimaan ohjelmointia ihan pellossa eläen tietotyyppien kanssa."

    VB.NET:n opiskelu menee hukkaan ja se on kuoleva kieli. Pythonin osaaminen ei mene hukkaan kun sillä on opiskellut hommat niin sitä voi käyttää jatkossa pienten kikkareiden tekemiseen. VB.NET:n opiskelu on lähinnä ajan hukkaa.

    Tyypitykset lähinnä tekee oppimiskynnystä turhan jyrkäksi. Toki ne on tärkeitä mutta tällä logiikalla ensimmäiseksi kieleksi pitäisi ottaa C-kieli niin ei jäisi lowlevel niin vieraaksi. Se vaan jyrkentää oppimiskäyrää. Aivan kuten vaikka joku Java missä pakotetaan suoraan osamaan mallintaminen olioilla. Siksi eivät sovi opiskeluun.

    Sattumalta se Python on valittu myös XO:n tietotekniikan opiskeluvälineeksi..

    ...että VB:NET on käytännössä sama kieli kuin C# muutamalla hyvin pienellä poikkeuksella. Vain ulkoasu on erilainen. Käytännössä kun sillä osaa tehdä hommat, osaa myös C#:n puolella vaikka mitä, ihan siksi, että koodeista lähes kaiken voi muutenkin vetää vaikka suoraan koneellisesti kielestä toiseen.

    VB.NET:n mainitsin vain siksi, että sillä voi tehdä jos puolipisteet ja semmoset ovat ikäviä kattoa - jos siltä tuntuu siis. Paras tietty tehdä suoraan C#:lla jos noista kahdesta valkkaa. Pyyttoni on kiva pikkujuttuihin, mutta miksi ei opettelisi samalla vaivalla kieltä jolla voi tehdä ne suuremmatkin jutut? Meinaan, ne pienet kikkareetkin tekee ihan helposti myös C#:lla. Ei ole ongelma.

    Tyypitykset ovat ihan jees juttu oppia jottei opi pahoille tavoille. On tullut nähtyä liikaa pyyttonipoikia joille ei vain mene päähän se tyypityshomma. Eivät vain meinaa tajuta niitä kun ovat päässeet pahoille tavoille. Tosin jos ja kun tolla opetetaan, niin ei ole ihme, että nuoremmilla koodaajilla taso laskee kun jää alkeetkin kuten tietotyypit, vähän hakuseen.

    Eikä se olioilla mallintaminen ole ollenkaan paha juttu. Pahuksen hyvähän se on vaikka ei toi C# siihen pakota. Eikä muuten Javakaan jos ruuvaat sillä pikkukikkaretta tyyliin pyyttoni. Kaikki vaan samaan luokkaan, kaikki pupliikeiksi ja toivotaan, että homma pysyi hanskassa koodaajan päässä - samalla tavalla toiveella kuin pyyttonikooderin kanssa toivoskellaan.

    Äänestä

  • Jepulis Jeep kirjoitti:

    ...että VB:NET on käytännössä sama kieli kuin C# muutamalla hyvin pienellä poikkeuksella. Vain ulkoasu on erilainen. Käytännössä kun sillä osaa tehdä hommat, osaa myös C#:n puolella vaikka mitä, ihan siksi, että koodeista lähes kaiken voi muutenkin vetää vaikka suoraan koneellisesti kielestä toiseen.

    VB.NET:n mainitsin vain siksi, että sillä voi tehdä jos puolipisteet ja semmoset ovat ikäviä kattoa - jos siltä tuntuu siis. Paras tietty tehdä suoraan C#:lla jos noista kahdesta valkkaa. Pyyttoni on kiva pikkujuttuihin, mutta miksi ei opettelisi samalla vaivalla kieltä jolla voi tehdä ne suuremmatkin jutut? Meinaan, ne pienet kikkareetkin tekee ihan helposti myös C#:lla. Ei ole ongelma.

    Tyypitykset ovat ihan jees juttu oppia jottei opi pahoille tavoille. On tullut nähtyä liikaa pyyttonipoikia joille ei vain mene päähän se tyypityshomma. Eivät vain meinaa tajuta niitä kun ovat päässeet pahoille tavoille. Tosin jos ja kun tolla opetetaan, niin ei ole ihme, että nuoremmilla koodaajilla taso laskee kun jää alkeetkin kuten tietotyypit, vähän hakuseen.

    Eikä se olioilla mallintaminen ole ollenkaan paha juttu. Pahuksen hyvähän se on vaikka ei toi C# siihen pakota. Eikä muuten Javakaan jos ruuvaat sillä pikkukikkaretta tyyliin pyyttoni. Kaikki vaan samaan luokkaan, kaikki pupliikeiksi ja toivotaan, että homma pysyi hanskassa koodaajan päässä - samalla tavalla toiveella kuin pyyttonikooderin kanssa toivoskellaan.

    "...että VB:NET on käytännössä sama kieli kuin C# muutamalla hyvin pienellä poikkeuksella."

    Ja se kieli on tehty siirtymisen helpottamiseksi kuolleesta Visual Basicista -> C#. Tuokin kuolee ihan varmasti.

    Ja C#:ssa ei myöskään sovi opiskeluun. Liian vahvasti oliokieli kuten Java ja jyrkentää oppimiskäyrää.

    "VB.NET:n mainitsin vain siksi, että sillä voi tehdä jos puolipisteet ja semmoset ovat ikäviä kattoa - jos siltä tuntuu siis."

    No yhyy. Oppimisen kannalta hyvin merkityksetöntä.

    "Eivät vain meinaa tajuta niitä kun ovat päässeet pahoille tavoille."

    Näillä on jäänyt opiskelut kesken. Pythonin jälkeen toki otetaan toinen kieli sitten opiskeltavaksi missä käydään nuo asiat.

    "Tosin jos ja kun tolla opetetaan, niin ei ole ihme, että nuoremmilla koodaajilla taso laskee kun jää alkeetkin kuten tietotyypit, vähän hakuseen."

    Vanhemmat koodaajat on usein opiskelleet ensimmäisenä jotain Basiccia missä ei tyypityksiä ole myöskään mutta ei se ole oppimista estänyt. Sitä vaan opiskellaan uusi kieli kun ollaan päästy alkeisperustasolta eteenpäin.

    "Eikä se olioilla mallintaminen ole ollenkaan paha juttu."

    Ei, mutta liian vaikeata ymmärtää kaikkea sitä kun aloittanut ohjelmoinnin opiskelun. Olioilla mallintamisen ymmärtäminen vei monilla ammattiohjelmoillakin aikaa sellaiset 10v. Se ei ole opiskelun kannata hyvä asia jos sekin pitäisi suunnilleen tajuta heti suoraan.

    Äänestä

  • m-kar kirjoitti:

    "...että VB:NET on käytännössä sama kieli kuin C# muutamalla hyvin pienellä poikkeuksella."

    Ja se kieli on tehty siirtymisen helpottamiseksi kuolleesta Visual Basicista -> C#. Tuokin kuolee ihan varmasti.

    Ja C#:ssa ei myöskään sovi opiskeluun. Liian vahvasti oliokieli kuten Java ja jyrkentää oppimiskäyrää.

    "VB.NET:n mainitsin vain siksi, että sillä voi tehdä jos puolipisteet ja semmoset ovat ikäviä kattoa - jos siltä tuntuu siis."

    No yhyy. Oppimisen kannalta hyvin merkityksetöntä.

    "Eivät vain meinaa tajuta niitä kun ovat päässeet pahoille tavoille."

    Näillä on jäänyt opiskelut kesken. Pythonin jälkeen toki otetaan toinen kieli sitten opiskeltavaksi missä käydään nuo asiat.

    "Tosin jos ja kun tolla opetetaan, niin ei ole ihme, että nuoremmilla koodaajilla taso laskee kun jää alkeetkin kuten tietotyypit, vähän hakuseen."

    Vanhemmat koodaajat on usein opiskelleet ensimmäisenä jotain Basiccia missä ei tyypityksiä ole myöskään mutta ei se ole oppimista estänyt. Sitä vaan opiskellaan uusi kieli kun ollaan päästy alkeisperustasolta eteenpäin.

    "Eikä se olioilla mallintaminen ole ollenkaan paha juttu."

    Ei, mutta liian vaikeata ymmärtää kaikkea sitä kun aloittanut ohjelmoinnin opiskelun. Olioilla mallintamisen ymmärtäminen vei monilla ammattiohjelmoillakin aikaa sellaiset 10v. Se ei ole opiskelun kannata hyvä asia jos sekin pitäisi suunnilleen tajuta heti suoraan.

    Olioita tai tyypitystä ei pitäisi opetella kun ovat sun mielestäsi liian vaikeita. Mun mielestäni taas niiden opettelu on nykyään ihan perusjuttuja kun ohjelmoimaan lähdetään. Paljon pahempaa on jo aloitteleva koodaaja opettelee tekemään hommia globaaleilla ja kaiken maailman tietorakenteilla ilman olioita.

    No kait toi on Open Sourcen nykyvirtausta, että kunnon oliosuunnittelua karsastetaan ja eloittelevia koodaajia kannustetaan pois sieltä.

    C#:n ja vastaavien kuoleminen taas on ihan semmoinen mutujuttu. Aika hitaasti tuntuvat kuolevan noi kun Windowsi myy nähtävästi jatkossakin ihan hyvin. Ei ole myynti romahtanut lähellekään minkään muun tasoa. Eikä edes kaikkien muiden tasolle vaikka muut laskettaisiin yhteen. Että siitä se kuoleminen. Taitaa olla han puhtaasti sun omaa fantasiaa, vai mitä?

    Jaa vielä se, että sulle taitaa olla täysin mahdotonta ajatella, että joku haluaa oikeasti opetella vaan yhden kielen ja siirtyä jonkun vuoden koodailujen jälkeen muihin hommiin kohtalaisella kooderitaustalla. Ikävää vaan jos se yksi kieli on joku pyyttoni joka ei anna oikein näkemystä niiden suurempien softien tekoon edes jotenkin.

    Äänestä

  • Jepulis Jeep kirjoitti:

    Olioita tai tyypitystä ei pitäisi opetella kun ovat sun mielestäsi liian vaikeita. Mun mielestäni taas niiden opettelu on nykyään ihan perusjuttuja kun ohjelmoimaan lähdetään. Paljon pahempaa on jo aloitteleva koodaaja opettelee tekemään hommia globaaleilla ja kaiken maailman tietorakenteilla ilman olioita.

    No kait toi on Open Sourcen nykyvirtausta, että kunnon oliosuunnittelua karsastetaan ja eloittelevia koodaajia kannustetaan pois sieltä.

    C#:n ja vastaavien kuoleminen taas on ihan semmoinen mutujuttu. Aika hitaasti tuntuvat kuolevan noi kun Windowsi myy nähtävästi jatkossakin ihan hyvin. Ei ole myynti romahtanut lähellekään minkään muun tasoa. Eikä edes kaikkien muiden tasolle vaikka muut laskettaisiin yhteen. Että siitä se kuoleminen. Taitaa olla han puhtaasti sun omaa fantasiaa, vai mitä?

    Jaa vielä se, että sulle taitaa olla täysin mahdotonta ajatella, että joku haluaa oikeasti opetella vaan yhden kielen ja siirtyä jonkun vuoden koodailujen jälkeen muihin hommiin kohtalaisella kooderitaustalla. Ikävää vaan jos se yksi kieli on joku pyyttoni joka ei anna oikein näkemystä niiden suurempien softien tekoon edes jotenkin.

    "Olioita tai tyypitystä ei pitäisi opetella kun ovat sun mielestäsi liian vaikeita."

    Oliot ja tyypitykset PITÄÄ opiskella mutta sitten vasta kun on perusteet opeteltu. Oppimiskäyrän pitää olla loiva! Tää nyt on sama homma kuin että annetaanko kolmevuotiaalle ensiksi fillariin apupyörät vai ei.

    "C#:n ja vastaavien kuoleminen taas on ihan semmoinen mutujuttu."

    C# ei kuole, mutta VB.NET kuolee ihan varmasti. Visual Basic ON JO täysin kuollut, eli tälläisillä ei ole mitään virkaa.

    "No kait toi on Open Sourcen nykyvirtausta, että kunnon oliosuunnittelua karsastetaan ja eloittelevia koodaajia kannustetaan pois sieltä."

    Ohjelmiston lisenssillä ei ole mitään tekemistä ohjelmiston suunnittelun kanssa. Oliosuunnittelua yliarvostavat eivät edes ole päteviä ohjelmoijia koska tunnetusti sarjallinen rakenne, ja ennen kaikkea funktionaalinen rakenne koheesion kannalta selvästi parempia.

    Oliorakennetta sitten suositaan sellaisissa projekteissa missä on paljon ohjelmoijia koska surkeatkin ohjelmoijat tekevät sitten edes jotenkin ymmärrettävää rakennetta kun ne pakotetaan oliomuottiin, koska isompaan projektiin ei välttämättä saa hankittua tarpeeksi päteviä ohjelmoijia. Se ei missään nimessä tarkoita sitä, että oliorakenne olisi jotenkin erinomaisen hyvä. Ennemmin homma on niin, että jos oliorakenne on se huonoin rakenne millä vielä hommat tehdään "oikein", sillä jos siitä menee huonommaksi niin sitten on täysin varmasti rakenne rikki.

    "Jaa vielä se, että sulle taitaa olla täysin mahdotonta ajatella, että joku haluaa oikeasti opetella vaan yhden kielen ja siirtyä jonkun vuoden koodailujen jälkeen muihin hommiin kohtalaisella kooderitaustalla."

    Ei vuodessa opi ohjelmoijaksi. Se nyt on ihan täysin mahdotonta ajatella, että vuodessa jos opettelee yhtä kieltä osaisi jotain oikeasti. Ei tälläisillä ole minkäänlaista näkemystä minkään tuotantokoodin tekemiseen, suurista softista puhumattakaan.

    Äänestä

  • m-kar kirjoitti:

    "Olioita tai tyypitystä ei pitäisi opetella kun ovat sun mielestäsi liian vaikeita."

    Oliot ja tyypitykset PITÄÄ opiskella mutta sitten vasta kun on perusteet opeteltu. Oppimiskäyrän pitää olla loiva! Tää nyt on sama homma kuin että annetaanko kolmevuotiaalle ensiksi fillariin apupyörät vai ei.

    "C#:n ja vastaavien kuoleminen taas on ihan semmoinen mutujuttu."

    C# ei kuole, mutta VB.NET kuolee ihan varmasti. Visual Basic ON JO täysin kuollut, eli tälläisillä ei ole mitään virkaa.

    "No kait toi on Open Sourcen nykyvirtausta, että kunnon oliosuunnittelua karsastetaan ja eloittelevia koodaajia kannustetaan pois sieltä."

    Ohjelmiston lisenssillä ei ole mitään tekemistä ohjelmiston suunnittelun kanssa. Oliosuunnittelua yliarvostavat eivät edes ole päteviä ohjelmoijia koska tunnetusti sarjallinen rakenne, ja ennen kaikkea funktionaalinen rakenne koheesion kannalta selvästi parempia.

    Oliorakennetta sitten suositaan sellaisissa projekteissa missä on paljon ohjelmoijia koska surkeatkin ohjelmoijat tekevät sitten edes jotenkin ymmärrettävää rakennetta kun ne pakotetaan oliomuottiin, koska isompaan projektiin ei välttämättä saa hankittua tarpeeksi päteviä ohjelmoijia. Se ei missään nimessä tarkoita sitä, että oliorakenne olisi jotenkin erinomaisen hyvä. Ennemmin homma on niin, että jos oliorakenne on se huonoin rakenne millä vielä hommat tehdään "oikein", sillä jos siitä menee huonommaksi niin sitten on täysin varmasti rakenne rikki.

    "Jaa vielä se, että sulle taitaa olla täysin mahdotonta ajatella, että joku haluaa oikeasti opetella vaan yhden kielen ja siirtyä jonkun vuoden koodailujen jälkeen muihin hommiin kohtalaisella kooderitaustalla."

    Ei vuodessa opi ohjelmoijaksi. Se nyt on ihan täysin mahdotonta ajatella, että vuodessa jos opettelee yhtä kieltä osaisi jotain oikeasti. Ei tälläisillä ole minkäänlaista näkemystä minkään tuotantokoodin tekemiseen, suurista softista puhumattakaan.

    No sun mielestäs oppimiskäyrä on jyrkkä olioilla kun oot opetellut hommat ilman niitä ja pidät niitä kait jollain tavalla hankalinakin. Ei se tarkoita sitä, ettei niiden kanssa ohjelmoimaan opettelu olis jotenkin hankalaa. Ei se ole sitä. Helpompaakin jopa kun on kerrasta kunnon konseptit miten tietoa ja toiminnallisuutta paketoidaan koodissa.

    Juu ja kun VB.NET ja C# muuntuvat käytännössä suoraan ristiin keskenään, niin ai kun onkin vaikeaa vaihtaa noista kielestä toiseen? Joo, eikun C#:n pariin vaan jos siltä tuntuu. Kiinnostais muuten tietää, mikä tossa VB.NET:ssä on käytännössä kielenä sun mielestäs niin ongelmallista jos nyt kerrankin unohdetaan se siirrettävyys. Sanos nyt, mikä siinä on huonoa muuten kuin sun mielestäs siirrettävyys ja se, että sun mielestäs se kuolee justiinsa? Onkos siinä jotain erityisiä puutteita tai rakenteellisia ongelmia verrattuna C#:n?

    Oliorakenteessa on just se ideanakin, että tekijää voi vaihtaa melkeen lennossa ja tuottavyys pysyy silti parempana. Totta kai niin voi tehdä muillakin malleilla, mutta jää vaan toi tekijän vaihdon helppous koodarin koodauskurin varaan. Onkos se niin vaikeaa ymmärtää, että on mukavaa jos hommia pystyy ylläpitämään heikommankin koodaajan jälkeen ja huonompikin pystyy tekemään testaajien avulla aika ok tulosta? Ei tämäkään ala ole kuule mikään gurujen tai oikeiden osaajien yksinoikeus. Parempi on, että tullaan vaan toimeen niiden heikompien osaajien kanssa eikä keskitytä syyttelemään niitä kun homma ei toimi kun funktionaalinen rakenne laskee alleen huonon koodaajan jäljiltä.

    Sulle on siis oikeesti mahdoton ajatus, että osa porukasta opettelee sen yhden kielen ja tekee sitten sillä tuottavaa työtä. Selvä homma. Noin se vaan maailma toimii ja ikävää se on yhä jos se on pyyttoni ja hommia pitäisi tehdä pelkästään sillä isossa porukassa laajalla koodipohjalla johon pyyttonia ei sunkaan sanojes mukaan pahemmin käytetä.

    Milläs ilveellä ite hoitaisit homman jos sulla olis 20 koodaria joista 5 hyvää, 5 ok ja lopuista et osaisi sanoa ennen projektin loppua olivatko ok vai huonoja? Potkit ne pois vai? Ei se kuule työelämä toimi noin.

    Äänestä

  • Jepulis Jeep kirjoitti:

    No sun mielestäs oppimiskäyrä on jyrkkä olioilla kun oot opetellut hommat ilman niitä ja pidät niitä kait jollain tavalla hankalinakin. Ei se tarkoita sitä, ettei niiden kanssa ohjelmoimaan opettelu olis jotenkin hankalaa. Ei se ole sitä. Helpompaakin jopa kun on kerrasta kunnon konseptit miten tietoa ja toiminnallisuutta paketoidaan koodissa.

    Juu ja kun VB.NET ja C# muuntuvat käytännössä suoraan ristiin keskenään, niin ai kun onkin vaikeaa vaihtaa noista kielestä toiseen? Joo, eikun C#:n pariin vaan jos siltä tuntuu. Kiinnostais muuten tietää, mikä tossa VB.NET:ssä on käytännössä kielenä sun mielestäs niin ongelmallista jos nyt kerrankin unohdetaan se siirrettävyys. Sanos nyt, mikä siinä on huonoa muuten kuin sun mielestäs siirrettävyys ja se, että sun mielestäs se kuolee justiinsa? Onkos siinä jotain erityisiä puutteita tai rakenteellisia ongelmia verrattuna C#:n?

    Oliorakenteessa on just se ideanakin, että tekijää voi vaihtaa melkeen lennossa ja tuottavyys pysyy silti parempana. Totta kai niin voi tehdä muillakin malleilla, mutta jää vaan toi tekijän vaihdon helppous koodarin koodauskurin varaan. Onkos se niin vaikeaa ymmärtää, että on mukavaa jos hommia pystyy ylläpitämään heikommankin koodaajan jälkeen ja huonompikin pystyy tekemään testaajien avulla aika ok tulosta? Ei tämäkään ala ole kuule mikään gurujen tai oikeiden osaajien yksinoikeus. Parempi on, että tullaan vaan toimeen niiden heikompien osaajien kanssa eikä keskitytä syyttelemään niitä kun homma ei toimi kun funktionaalinen rakenne laskee alleen huonon koodaajan jäljiltä.

    Sulle on siis oikeesti mahdoton ajatus, että osa porukasta opettelee sen yhden kielen ja tekee sitten sillä tuottavaa työtä. Selvä homma. Noin se vaan maailma toimii ja ikävää se on yhä jos se on pyyttoni ja hommia pitäisi tehdä pelkästään sillä isossa porukassa laajalla koodipohjalla johon pyyttonia ei sunkaan sanojes mukaan pahemmin käytetä.

    Milläs ilveellä ite hoitaisit homman jos sulla olis 20 koodaria joista 5 hyvää, 5 ok ja lopuista et osaisi sanoa ennen projektin loppua olivatko ok vai huonoja? Potkit ne pois vai? Ei se kuule työelämä toimi noin.

    "Kiinnostais muuten tietää, mikä tossa VB.NET:ssä on käytännössä kielenä sun mielestäs niin ongelmallista jos nyt kerrankin unohdetaan se siirrettävyys."

    Sama kuin Cobolissa. Kuolevan kielen opettelu typerintä ajanhaaskausta mitä vaan voi olla.

    "Oliorakenteessa on just se ideanakin, että tekijää voi vaihtaa melkeen lennossa ja tuottavyys pysyy silti parempana."

    Koodin tekeminen on helposti vain 20% hommasta. Parempi rakenne auttaa ylläpidossa, ja kyllä se tuottavuuttakin parantaa mutta edellyttää sitä, että on osaava ohjelmoija.

    "Onkos se niin vaikeaa ymmärtää, että on mukavaa jos hommia pystyy ylläpitämään heikommankin koodaajan jälkeen ja huonompikin pystyy tekemään testaajien avulla aika ok tulosta?"

    Yritätkö ihan tarkoituksella neuvoa ihmisiä olemaan surkeita ohjelmoijia? Se on kaikkea muuta kuin tuottavaa jos ohjelmoijat on jotain "Hello World" -tasoa. Oikean ammattitaidon hankkimisessa on tärkeätä se, että osaaminen kasaantuu. Opiskelu vie aikaa ja ne resurssit pitää pyrkiä käyttämään sellaisten asioiden opiskeluun millä tekee jatkossakin jotain ja voi sitten jatkaa lisää hyödyllisten asioiden opiskelua ettei tarvitse opetella samoja asioita jatkuvasti uudestaan.

    "Sulle on siis oikeesti mahdoton ajatus, että osa porukasta opettelee sen yhden kielen ja tekee sitten sillä tuottavaa työtä."

    Miten niin "tuottavaa"? Amatöörit ei ole tuottavia. Ensiksi jos opettelisi Pythonin (tai vaikka Schemen), sitten seuraavaksi C:n ja sitten oman valinnan mukaan Java, C# tai C++ ja assemblerista alkeet niin sitten aletaan puhua riittävästä tasosta ohjelmointikielten osalta. Katsos kun on ihan tavallista, että tehdään erilaisia työtehtäviä ja vaikka kuinka yrittäisit inttää niin VB.NET:illä ei voi kaikkea softaa tehdä, eikä voi tehdä 20v kuluttua. Ammattilainen toimii niin, että ottaa oikean työkalun oikeaan hommaan ja se ohjelmointikieli on siinä aika merkityksetön. Sitä ei todellakaan aleta tekemään duunia kielellä mikä soveltuu hommaan X huonosti vaan tarvittaessa otetaan uuden ohjelmoitikielen specifikaatio kouraan, pätkä mallikoodia ja aletaan naputtamaan. Ohjelmoinnin pitää onnistua millä tahansa kielellä tarvittaessa.

    Mutta sinähän et ole puhunut tuottavasta ohjelmoinnista yhtään vaan amatöörien räpellyksistä. Python on edelleenkin ohjelmoinnin opetteluun ja sen lisäksi opetellaan tietenkin muita kieliä.

    "Milläs ilveellä ite hoitaisit homman jos sulla olis 20 koodaria joista 5 hyvää, 5 ok ja lopuista et osaisi sanoa ennen projektin loppua olivatko ok vai huonoja?"

    Lopulle kymmenelle tekisin haastattelun millä selvitän onko tyypeillä näkemystä ja jos ei ole niin potkin pois tai värvään vaan testaajaksi tarpeen mukaan. Yksi hyvä tekee kuitenkin kymmenen huonon hommat (tai korjaa kymmenen huonon jälkiä), että ylimääräinen henkilöstö olisi rahan hukkaa. Se kun kuitenkin on ohjelmoinnissa selvästi se suurin menoerä.

    Äänestä

  • Siitähän se nimenomaan tulee että ei osaa. Mutta homma on tehty haastavaksi / hankalaksi noilla jutuilla. Erityisen ärsyttävää on siis se että

    unicode string != string != bytestring.

    Eli aina kun noita syöttää parametrinä johonkin pitää pähkätä meneekö oikean tyyppistä dataa sisään. Tämähän ei siis todellakaan ole mitään uutta jos on tottunut jäykkiin kieliin kuten Javaan. Mutta luulin Pythonin olevan noiden suhteen paljon joustavampi kuin se on. Se siitä dynamic typingistä sitten, ei ollut ollenkaan niin kätevää ja kivaa kuin kuvittelin.

    Äänestä

  • m-kar kirjoitti:

    "Kannattaa opetella tota koska sitten kun oppii yhden kielen on helpompaa opetella toinen. Ihan kun ei voisi opetella suoraan sitä toista."

    Pythonilla on hyvä opetella ohjelmoimaan koska on aika matala se kynnys alkaa sillä ohjelmoimaan, ja se on kuitenkin hyödyllinen osata koska sillä on kätevä skriptata ohjelmia ja sillä voi pieraista helposti jotain pikkuohjelmaa joita nyt yleensä tarvitsee, kuten vaikka muuttaa dataa muodosta A muotoon B.

    "kuten vaikka muuttaa dataa muodosta A muotoon B. "

    Aivan. Javassa tarvitsee usein mielestäni turhan paljon turhaa rakennetta moneen asiaan. Eli pieneen softaan tarvitsee suhteellisen paljon koodia. Kun Pythonilla voi mennä suoraan asiaan. Ei ole pakollisia exception handlayksiä tms.

    Äänestä

  • m-kar kirjoitti:

    "...että VB:NET on käytännössä sama kieli kuin C# muutamalla hyvin pienellä poikkeuksella."

    Ja se kieli on tehty siirtymisen helpottamiseksi kuolleesta Visual Basicista -> C#. Tuokin kuolee ihan varmasti.

    Ja C#:ssa ei myöskään sovi opiskeluun. Liian vahvasti oliokieli kuten Java ja jyrkentää oppimiskäyrää.

    "VB.NET:n mainitsin vain siksi, että sillä voi tehdä jos puolipisteet ja semmoset ovat ikäviä kattoa - jos siltä tuntuu siis."

    No yhyy. Oppimisen kannalta hyvin merkityksetöntä.

    "Eivät vain meinaa tajuta niitä kun ovat päässeet pahoille tavoille."

    Näillä on jäänyt opiskelut kesken. Pythonin jälkeen toki otetaan toinen kieli sitten opiskeltavaksi missä käydään nuo asiat.

    "Tosin jos ja kun tolla opetetaan, niin ei ole ihme, että nuoremmilla koodaajilla taso laskee kun jää alkeetkin kuten tietotyypit, vähän hakuseen."

    Vanhemmat koodaajat on usein opiskelleet ensimmäisenä jotain Basiccia missä ei tyypityksiä ole myöskään mutta ei se ole oppimista estänyt. Sitä vaan opiskellaan uusi kieli kun ollaan päästy alkeisperustasolta eteenpäin.

    "Eikä se olioilla mallintaminen ole ollenkaan paha juttu."

    Ei, mutta liian vaikeata ymmärtää kaikkea sitä kun aloittanut ohjelmoinnin opiskelun. Olioilla mallintamisen ymmärtäminen vei monilla ammattiohjelmoillakin aikaa sellaiset 10v. Se ei ole opiskelun kannata hyvä asia jos sekin pitäisi suunnilleen tajuta heti suoraan.

    Tein tuossa yhden pienen softan jossa on reilut 400 luokkaa ja paljon perintää.

    Jos tuon olisi kirjoittanut sillisalaattina niin kukapa sitä ylläpitäisi? Nyt on sentään selvät packaget, classit jne hommat kasassa. Eikä koodia ole yhtään copy-pastettu. Eli jos on vikaa, korjautuu se vika kaikista osioista yhdellä muutoksella.

    Ilman järkevää oliomallia tuo softa voisi olla aivan järkyttävää spagettia ylläpitää.

    Äänestä

  • Kouderi kirjoitti:

    Tein tuossa yhden pienen softan jossa on reilut 400 luokkaa ja paljon perintää.

    Jos tuon olisi kirjoittanut sillisalaattina niin kukapa sitä ylläpitäisi? Nyt on sentään selvät packaget, classit jne hommat kasassa. Eikä koodia ole yhtään copy-pastettu. Eli jos on vikaa, korjautuu se vika kaikista osioista yhdellä muutoksella.

    Ilman järkevää oliomallia tuo softa voisi olla aivan järkyttävää spagettia ylläpitää.

    Kyllä oliomallinnus toimii, mutta funktionaalinen rakenne ja sarjallinen rakenne on vielä paremmin ylläpidettävissä, mikäli vain onnistuu. Aina ei onnistu ja joutuu tekemään olioina jotka on huonommin ylläpidettävissä

    Äänestä

  • m-kar kirjoitti:

    "Kiinnostais muuten tietää, mikä tossa VB.NET:ssä on käytännössä kielenä sun mielestäs niin ongelmallista jos nyt kerrankin unohdetaan se siirrettävyys."

    Sama kuin Cobolissa. Kuolevan kielen opettelu typerintä ajanhaaskausta mitä vaan voi olla.

    "Oliorakenteessa on just se ideanakin, että tekijää voi vaihtaa melkeen lennossa ja tuottavyys pysyy silti parempana."

    Koodin tekeminen on helposti vain 20% hommasta. Parempi rakenne auttaa ylläpidossa, ja kyllä se tuottavuuttakin parantaa mutta edellyttää sitä, että on osaava ohjelmoija.

    "Onkos se niin vaikeaa ymmärtää, että on mukavaa jos hommia pystyy ylläpitämään heikommankin koodaajan jälkeen ja huonompikin pystyy tekemään testaajien avulla aika ok tulosta?"

    Yritätkö ihan tarkoituksella neuvoa ihmisiä olemaan surkeita ohjelmoijia? Se on kaikkea muuta kuin tuottavaa jos ohjelmoijat on jotain "Hello World" -tasoa. Oikean ammattitaidon hankkimisessa on tärkeätä se, että osaaminen kasaantuu. Opiskelu vie aikaa ja ne resurssit pitää pyrkiä käyttämään sellaisten asioiden opiskeluun millä tekee jatkossakin jotain ja voi sitten jatkaa lisää hyödyllisten asioiden opiskelua ettei tarvitse opetella samoja asioita jatkuvasti uudestaan.

    "Sulle on siis oikeesti mahdoton ajatus, että osa porukasta opettelee sen yhden kielen ja tekee sitten sillä tuottavaa työtä."

    Miten niin "tuottavaa"? Amatöörit ei ole tuottavia. Ensiksi jos opettelisi Pythonin (tai vaikka Schemen), sitten seuraavaksi C:n ja sitten oman valinnan mukaan Java, C# tai C++ ja assemblerista alkeet niin sitten aletaan puhua riittävästä tasosta ohjelmointikielten osalta. Katsos kun on ihan tavallista, että tehdään erilaisia työtehtäviä ja vaikka kuinka yrittäisit inttää niin VB.NET:illä ei voi kaikkea softaa tehdä, eikä voi tehdä 20v kuluttua. Ammattilainen toimii niin, että ottaa oikean työkalun oikeaan hommaan ja se ohjelmointikieli on siinä aika merkityksetön. Sitä ei todellakaan aleta tekemään duunia kielellä mikä soveltuu hommaan X huonosti vaan tarvittaessa otetaan uuden ohjelmoitikielen specifikaatio kouraan, pätkä mallikoodia ja aletaan naputtamaan. Ohjelmoinnin pitää onnistua millä tahansa kielellä tarvittaessa.

    Mutta sinähän et ole puhunut tuottavasta ohjelmoinnista yhtään vaan amatöörien räpellyksistä. Python on edelleenkin ohjelmoinnin opetteluun ja sen lisäksi opetellaan tietenkin muita kieliä.

    "Milläs ilveellä ite hoitaisit homman jos sulla olis 20 koodaria joista 5 hyvää, 5 ok ja lopuista et osaisi sanoa ennen projektin loppua olivatko ok vai huonoja?"

    Lopulle kymmenelle tekisin haastattelun millä selvitän onko tyypeillä näkemystä ja jos ei ole niin potkin pois tai värvään vaan testaajaksi tarpeen mukaan. Yksi hyvä tekee kuitenkin kymmenen huonon hommat (tai korjaa kymmenen huonon jälkiä), että ylimääräinen henkilöstö olisi rahan hukkaa. Se kun kuitenkin on ohjelmoinnissa selvästi se suurin menoerä.

    Just sanoin, että koodaa sillä C#:lla koska se on hyvä kieli. Mitäs sä takerrut tohon VB.NET:n josta et keksinyt kielellisestikään mitään haukuttavaa? No et kait, kun käyttö ja syntaksi menee käytännössä yksi yhteen C#:n kanssa.

    En koita neuvoa ihmisiä tekemään huonoa koodia, mutta tunnustan sen tosiasian, että osa koodaajista on huonoja tekemään koodia ja niidenkin kanssa pitää tehdä töitä ja tulla toimeen mielellään hyvässä hengessä ja saada aikaan vielä toimivia ja laadukkaita softia. Se onnistuu ihan ok oliomallilla koska oikein johdettuna softantekoa on helppoa palotella osiksi jotka eivät voi aikanaa kovin helpolla toimia väärin. Mutta sun maailmassashan kaikki osaavat koodata täydellisesti. Tosielämässä niin ei vaan ole. On pakko saada hommat toimimaan.

    Eikä oikeista projekteista noin vaan potkita ihmisiä kortistoon. Ne tarvitaan tekemään hommia vaikka eivät olekaan loistavia. Silleen se maailma vain toimii ja softaa tehdään niillä resursseilla joita on.

    Äänestä

  • m-kar kirjoitti:

    Kyllä oliomallinnus toimii, mutta funktionaalinen rakenne ja sarjallinen rakenne on vielä paremmin ylläpidettävissä, mikäli vain onnistuu. Aina ei onnistu ja joutuu tekemään olioina jotka on huonommin ylläpidettävissä

    Juu, ihan se onnistuu olemaan ylläpidettävämpi jos porukka on tarpeeksi kurinalaista ja mukaan ei lipsahda huonompaa porukkaa ihan vahingossa. Riskit siis kasvavat ja moni valkkaakin sen takia sen oliomallin jolla noi risit ovat pienemmät.

    Millään mallilla ei tehdä täysin varmasti ylläpidettävää koodia, mutta olioilla se onnistuu tyypillisesti todennäkösemmin.

    Äänestä

  • Kouderi kirjoitti:

    Siitähän se nimenomaan tulee että ei osaa. Mutta homma on tehty haastavaksi / hankalaksi noilla jutuilla. Erityisen ärsyttävää on siis se että

    unicode string != string != bytestring.

    Eli aina kun noita syöttää parametrinä johonkin pitää pähkätä meneekö oikean tyyppistä dataa sisään. Tämähän ei siis todellakaan ole mitään uutta jos on tottunut jäykkiin kieliin kuten Javaan. Mutta luulin Pythonin olevan noiden suhteen paljon joustavampi kuin se on. Se siitä dynamic typingistä sitten, ei ollut ollenkaan niin kätevää ja kivaa kuin kuvittelin.

    Taitaa olla noissa kaikissa stringeissä vähän eroja jonka vuoksi olisi syytä varmistua siitä, että toinen sopii toiseen. Jos eroja ei olis, niin eihän ne olis eri tietotyyppejä. Pyyttonissa homma ajetaan sillä oletuksella, että datat konvertoituu vähän kun tuurilla tyypistä toiseen ja siinä se. Toi tyypityksen realiteetteihin törmääminen tapahtuu yleensä useimmille siinä vaiheessa kun homma ei enää toimikaan. Kun automaattinen tyypitys ei vaan voi toimia aina.

    Äänestä

  • Jepulis Jeep kirjoitti:

    Taitaa olla noissa kaikissa stringeissä vähän eroja jonka vuoksi olisi syytä varmistua siitä, että toinen sopii toiseen. Jos eroja ei olis, niin eihän ne olis eri tietotyyppejä. Pyyttonissa homma ajetaan sillä oletuksella, että datat konvertoituu vähän kun tuurilla tyypistä toiseen ja siinä se. Toi tyypityksen realiteetteihin törmääminen tapahtuu yleensä useimmille siinä vaiheessa kun homma ei enää toimikaan. Kun automaattinen tyypitys ei vaan voi toimia aina.

    Ei siinä ole mitään tuurin kanssa tekemistä.

    Äänestä

  • Kouderi kirjoitti:

    Siitähän se nimenomaan tulee että ei osaa. Mutta homma on tehty haastavaksi / hankalaksi noilla jutuilla. Erityisen ärsyttävää on siis se että

    unicode string != string != bytestring.

    Eli aina kun noita syöttää parametrinä johonkin pitää pähkätä meneekö oikean tyyppistä dataa sisään. Tämähän ei siis todellakaan ole mitään uutta jos on tottunut jäykkiin kieliin kuten Javaan. Mutta luulin Pythonin olevan noiden suhteen paljon joustavampi kuin se on. Se siitä dynamic typingistä sitten, ei ollut ollenkaan niin kätevää ja kivaa kuin kuvittelin.

    Pythonin kolmosversiossa kaikki stringit ovat unicode stringejä. Dataa varten on sitten olemassa bytes ja bytearray tyypit.

    2.6 on erikseen str ja unicode merkkijonot. Muunnos näiden välillä pitää TIETENKIN tehdä määritellysti käyttäen sopivaa merkistökoodausta - miten python voisi tietää mihin/mitä merkistökoodausta halutaan kulloinkin käyttää? Oletus enkoodauksena on ascii, joka ei pysty käsittelemään muita kuin 7 bittisiä merkkejä.. tämä on varmaankin yksi yleisimpiä murheenkryynejä noviisien kanssa.

    tämmönen esimerkki:
    >>> u = u'åäö'
    >>> type(u)

    konversio stringiksi - väärä tapa:
    >>> s = str(u)
    Traceback (most recent call last):
    File "", line 1, in
    UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-2: ordinal not in range(128)
    ja oikea tapa:
    s = u.encode('latin-1')
    >>> type(s)

    Äänestä

  • sssdffffs kirjoitti:

    Pythonin kolmosversiossa kaikki stringit ovat unicode stringejä. Dataa varten on sitten olemassa bytes ja bytearray tyypit.

    2.6 on erikseen str ja unicode merkkijonot. Muunnos näiden välillä pitää TIETENKIN tehdä määritellysti käyttäen sopivaa merkistökoodausta - miten python voisi tietää mihin/mitä merkistökoodausta halutaan kulloinkin käyttää? Oletus enkoodauksena on ascii, joka ei pysty käsittelemään muita kuin 7 bittisiä merkkejä.. tämä on varmaankin yksi yleisimpiä murheenkryynejä noviisien kanssa.

    tämmönen esimerkki:
    >>> u = u'åäö'
    >>> type(u)

    konversio stringiksi - väärä tapa:
    >>> s = str(u)
    Traceback (most recent call last):
    File "", line 1, in
    UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-2: ordinal not in range(128)
    ja oikea tapa:
    s = u.encode('latin-1')
    >>> type(s)

    pah, suomi24 söi tuosta osan kun luuli html tageiksi.. no eiköhän se kuitenkin suunnilleen ole selvillä jo

    Äänestä

  • 6 kirjoitti:

    Ei siinä ole mitään tuurin kanssa tekemistä.

    Meinaatko, että tyypit eivät voi mennä koskaan sekaisin ja että koodaajat ovat aina niin tarkkoja, ettei noiden hommien kanssa voi mennä koskaan mitään sekaisin?

    Jaajaa...

    Äänestä

  • sssdffffs kirjoitti:

    Pythonin kolmosversiossa kaikki stringit ovat unicode stringejä. Dataa varten on sitten olemassa bytes ja bytearray tyypit.

    2.6 on erikseen str ja unicode merkkijonot. Muunnos näiden välillä pitää TIETENKIN tehdä määritellysti käyttäen sopivaa merkistökoodausta - miten python voisi tietää mihin/mitä merkistökoodausta halutaan kulloinkin käyttää? Oletus enkoodauksena on ascii, joka ei pysty käsittelemään muita kuin 7 bittisiä merkkejä.. tämä on varmaankin yksi yleisimpiä murheenkryynejä noviisien kanssa.

    tämmönen esimerkki:
    >>> u = u'åäö'
    >>> type(u)

    konversio stringiksi - väärä tapa:
    >>> s = str(u)
    Traceback (most recent call last):
    File "", line 1, in
    UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-2: ordinal not in range(128)
    ja oikea tapa:
    s = u.encode('latin-1')
    >>> type(s)

    Hyvin selvisi, juuri tuon asian kanssa tuli takuttua melkoisesti. Mutta tein sen päätöksen että käytän 2.6:lla myös vain unicode stringejä ja tietysti silloin pitää sitten u.encode('utf-8') ja sillä selvä. Jos siis tarvitsee käpistellä normi stringinä.

    Pitänee jaksaa lukea joku opi Python 30 päivässä kirja. Siinähän noi perusteet tulee käytyä läpi.

    Äänestä

Kommentoi aloitusta


HermotMännöö kirjoitti:

En ole aikoihin törmännyt näin paskaan ja hankalaan toteutukseen.

Kukahan tuonkin lienee suunnitellut.

Vähän väliä merkit sekaisin kateessa tai heittelee random erroreita kesken suorituksen.

Javassa oli myös jotain raivostuttavia pska ominaisuuksia, mutta ei mitään tähän verrattavaa.

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu