Kirjoittaja Aihe: Ohjelmisto valmistajia potkitaan persauksille?  (Luettu 3074 kertaa)

Taro Turtiainen

  • Käyttäjä
  • Viestejä: 579
    • Profiili
    • Taro Turtiainen
Ohjelmisto valmistajia potkitaan persauksille?
« : 27.03.10 - klo:10.10 »
http://www.mbnet.fi/uutiset/index.asp?Uutinen=2918

En tiedä oikein miten suhtautuisin kyseiseen uutiseen. Toisaaltaan tiedetään, että näitä aukkoja on ja paljon. Vai olisiko tässä haulikolla ampumisen logiikka? Jos tekniikka on niin yksinkertainen, miksi ohjelmistojen tuottajat eivät käytä sitä. Ainakaan riittävästi?
VASEMMISTOLIITTO - RIKKAUTTA JOLLA ON ARVOA

”Ei ole olemassa todellista vapautta ilman toisinajattelun vapautta.” Rosa Luxemburg 1918

peran

  • Vieras
Vs: Ohjelmisto valmistajia potkitaan persauksille?
« Vastaus #1 : 27.03.10 - klo:10.28 »
Helppo löytää yksi aukko, mutta vaikeaa löytää kaikki aukot.

Todennäköisesti fuzzer-tekniikka auttaa löytämään satunnaisia aukkoja, mutta kaikkien aukkojen etsiminen on sika kallista ja hidasta puuhaa. Suurista ohjelmista löytyy aina aukkoja - ainakin toistaiseksi.

ajaaskel

  • Palvelimen ylläpitäjä
  • Käyttäjä
  • Viestejä: 3401
    • Profiili
Vs: Ohjelmisto valmistajia potkitaan persauksille?
« Vastaus #2 : 27.03.10 - klo:13.42 »
Netissä jotkut kertoivat ohjelmointivirheiden lisääntyneen myös sen seurauksena kun on siirrytty Pascalin käytöstä C: n käyttöön jonka tyypitys on löysempi mikä antaa vapauksia ohjelmoijalle mutta mahdollistaa samalla myös hankalien virheiden jäämisen koodiin.
Autamme ilolla ja ilmaiseksi omalla ajallamme.  Ethän vaadi, uhoa tai isottele näin saamasi palvelun johdosta.

Taro Turtiainen

  • Käyttäjä
  • Viestejä: 579
    • Profiili
    • Taro Turtiainen
Vs: Ohjelmisto valmistajia potkitaan persauksille?
« Vastaus #3 : 27.03.10 - klo:15.05 »
Netissä jotkut kertoivat ohjelmointivirheiden lisääntyneen myös sen seurauksena kun on siirrytty Pascalin käytöstä C: n käyttöön jonka tyypitys on löysempi mikä antaa vapauksia ohjelmoijalle mutta mahdollistaa samalla myös hankalien virheiden jäämisen koodiin.


Tämä lienee hyvinkin paljon mahdollista.
VASEMMISTOLIITTO - RIKKAUTTA JOLLA ON ARVOA

”Ei ole olemassa todellista vapautta ilman toisinajattelun vapautta.” Rosa Luxemburg 1918

Mistofelees

  • Käyttäjä
  • Viestejä: 663
    • Profiili
Vs: Ohjelmisto valmistajia potkitaan persauksille?
« Vastaus #4 : 31.03.10 - klo:10.11 »
Netissä jotkut kertoivat ohjelmointivirheiden lisääntyneen myös sen seurauksena kun on siirrytty Pascalin käytöstä C: n käyttöön jonka tyypitys on löysempi mikä antaa vapauksia ohjelmoijalle mutta mahdollistaa samalla myös hankalien virheiden jäämisen koodiin.


C on ihan hyvä kieli, kun rakennetaan drivereita ja käyttöjärjestelmän ydintä. Ohjelmointikielien kehityksessä ja mainonnassa on kuitenkin unohdettu täydellisesti meidät loppukäyttäjät. Meille tärkeintä ei aina ole nopea koodi, vaan nopea ja helppo ohjelman kirjoittaminen. Tähän helppouteen sisältyy myös debuggauksen helppous.

Basic:a aikoinaan haukkui jokainen lehtitoimittaja spagettikoodista kuin rukousmyllyä kiertäen ja tuomitsi kaksin käsin GOTO-lauseen. Basic:lla oli kuitenkin helppoa kirjoittaa pieniä ohjelmia, joita tarvittiin jokapäiväisten pikku ongelmien ratkomiseen: tiedostomuunnoksia, matemaattisten funktioiden käsittelyä, laiteohjausta, datan keruuta, matemaattista grafiikkaa...
Fortran oli alkujaan kehitetty tämänkaltaiseen loppukäyttäjä-ohjelmointiin ja Basic jatkoi siitä, mihin Fortran jäi, tuoden mukaan grafiikka ja ääniominaisuudet sekä laiteohjauksen.

C toi ohjelmointiin hankalan syntaksin, työteliään testauksen sekä huonon dokumentoinnin. Pointterit ovat kivoja, jos tarvitsee niitä johonkin. Kenttäohjelmoinnissa pointterit mahdollistavat täydelliset katastrofit.
GOTO-komento, joka oli testaajan perustyökalu, oli C:ssä kokonaan pannassa.

Aikoinaan käytiin kädenvääntöä C:n ja Forth:n välillä. Itse valitsin Basic:n, johon oli olemassa pitkälle kehittyneitä ohjelmointiympäristöjä nopeaan koodin kehittämiseen. C-puolella Turbo-C oli lähimpänä, mutta kaukana sekin.

Eikä VisualBasic tai Java -tyyppinen syntaksi suinkaan helpota ohjelmointia, vaan muuttaa sen vain erilaiseksi. Mitä 'hienommaksi' syntaksi muuttuu, sitä vähemmän valtaa jätetään ohjelmoijalle. Javalla kirjoittaessa tulee yleensä mieleen COBOL, jota useimmat ohjelmoijat inhosivat.

Mielipiteeni perustuu 30 v kokemukseen ohjelmoinnista kaikilla tunnetuilla alustoilla ja jokseenkin kaikilla ohjelmointikielillä, myös muutamalla itse kehitellyllä. Myös omaan laiterakenteluun kaikilla tasoilla.

henri_aleksi

  • Käyttäjä
  • Viestejä: 319
    • Profiili
Vs: Ohjelmisto valmistajia potkitaan persauksille?
« Vastaus #5 : 31.03.10 - klo:12.13 »
Eikä VisualBasic tai Java -tyyppinen syntaksi suinkaan helpota ohjelmointia, vaan muuttaa sen vain erilaiseksi. Mitä 'hienommaksi' syntaksi muuttuu, sitä vähemmän valtaa jätetään ohjelmoijalle. Javalla kirjoittaessa tulee yleensä mieleen COBOL, jota useimmat ohjelmoijat inhosivat.

Ohjelmoitaessa korkeamman tason kielillä jota suoritetaan CLR:n päällä ohjelmoijan ei tarvitse itse huolehtia carbagen keräilystä (siis muistin vapauttamisesta jne...) jolloin alhaisen-keskitason taidot omaava ohjelmoija tekee yleensä vähemmän tuhoja.

Ehkä itse syntaksi ei helpota ohjelmointia (no, riippuu tapauksesta ja mistä siirtyy ja mihin. assembly (tai suoraan binäärin kirjoittamisesta) siirtyminen korkean tason kieliin helpottaa varsinkin jos tehdään graaffista työpöytäsovellusta), mutta uudet korkeamman tason ohjelmointikielet ja niitä varten tehdyt erilaiset frameworking (spring, castle jne...) lisäävät kuitenkin ohjelmoijan tuottavuutta huomattavasti.

Lisäksi (N)Hibernatin kaltaiset ORM-kikkareet tekee tietokantoja käyttävän ohjelman koodaamisesta jopa nautittavaa ja mahdollistavat sovelluksessa käytettävän tietokannan vaihtamisen nopeasti.
« Viimeksi muokattu: 31.03.10 - klo:12.21 kirjoittanut henri_aleksi »
"Theory is when you know something, but it doesn't work. Practice is when something works, but you don't know why.
Programmers combine theory and practice: Nothing works and they don't know why."

Taro Turtiainen

  • Käyttäjä
  • Viestejä: 579
    • Profiili
    • Taro Turtiainen
Vs: Ohjelmisto valmistajia potkitaan persauksille?
« Vastaus #6 : 31.03.10 - klo:12.17 »
Olen melkolailla samaa mieltä Mistofelees:n kanssa. Itse olen käpistellyt ohjelmoinnin parissa 80-luvun alusta juurikin noiden mainittujen ohjelmointi kielien kanssa. Basic toi ohjelmointiin lisää ominaisuuksia ja harrastajapiiri koki huomattavan laajentumisen. Tuon GOTO käskyn käyttöähän moitittiin lähinnä sen vaikean seurattavuuden johdosta pitkissä ohjelma listauksissa. Basic:ssä pyrittiin suosimaan aliohjelma kutsua GOSUB. Pascal oli mielestäni hyvä sen tarkkuudesta johtuen. Eniten olen kuitenkin ohjelmoinut "konekielellä" tai sen kuvauskielellä Assembly:llä alkaen 8085/8086 alustoista. Mutta noista vuosista on jo aikaa ja muisti alkaa hapartumaan.
VASEMMISTOLIITTO - RIKKAUTTA JOLLA ON ARVOA

”Ei ole olemassa todellista vapautta ilman toisinajattelun vapautta.” Rosa Luxemburg 1918

ajaaskel

  • Palvelimen ylläpitäjä
  • Käyttäjä
  • Viestejä: 3401
    • Profiili
Vs: Ohjelmisto valmistajia potkitaan persauksille?
« Vastaus #7 : 31.03.10 - klo:14.48 »
Hieman off-topic:
Näkyy olevan täällä väkeä joille CP/M ja MikroMikko 1 ovat tuttuja (8085)   :)   Olen itse syyllistynyt jopa pienen sovelluksen tekoon asseblerilla (!) 8085 / MikroMikko ykköselle. Suunnittelin ja rakensin nimittäin räkkikoteloon härvelin missä oli sarjaportin kautta ohjattava siniaaltopyyhkäisygeneraattori (lyhyt yhdyssana ?)  joka oli exponentiaalivahvistimen takana, saatiin äänimittauksiin sopiva signaalilähde.  Toisella puolella oli tulovahvistimen ja tasasuuntauksen jälkeen logaritmivahvistin ja A/D-muunnin jonka tuotokset ohjattiin sarjaliikennepiirin kautta MikroMikon sarjaporttiin.    Jos et vielä arvaa mikä tuo on niin se mittaa taajuusvasteen pyyhkäistyllä siniaallolla ja näyttää sen MikroMikon näytöllä desibeliasteikolla.  Ohjelma oli aluksi Assemlerilla.  Koko värkki toimi ok !     Hieman on aika ajanut tuosta jo ohi ja audiomittaustavat helpottuneet ja monipuolistuneet (FFT/DFT, pulssivaste, ym).  Kaikkea sitä on aikoinaan viritetty kun vielä oli aikaa.


Autamme ilolla ja ilmaiseksi omalla ajallamme.  Ethän vaadi, uhoa tai isottele näin saamasi palvelun johdosta.

Taro Turtiainen

  • Käyttäjä
  • Viestejä: 579
    • Profiili
    • Taro Turtiainen
Vs: Ohjelmisto valmistajia potkitaan persauksille?
« Vastaus #8 : 31.03.10 - klo:15.30 »
Hieman off-topic:
Näkyy olevan täällä väkeä joille CP/M ja MikroMikko 1 ovat tuttuja (8085)   :)   Olen itse syyllistynyt jopa pienen sovelluksen tekoon asseblerilla (!) 8085 / MikroMikko ykköselle. Suunnittelin ja rakensin nimittäin räkkikoteloon härvelin missä oli sarjaportin kautta ohjattava siniaaltopyyhkäisygeneraattori (lyhyt yhdyssana ?)  joka oli exponentiaalivahvistimen takana, saatiin äänimittauksiin sopiva signaalilähde.  Toisella puolella oli tulovahvistimen ja tasasuuntauksen jälkeen logaritmivahvistin ja A/D-muunnin jonka tuotokset ohjattiin sarjaliikennepiirin kautta MikroMikon sarjaporttiin.    Jos et vielä arvaa mikä tuo on niin se mittaa taajuusvasteen pyyhkäistyllä siniaallolla ja näyttää sen MikroMikon näytöllä desibeliasteikolla.  Ohjelma oli aluksi Assemlerilla.  Koko värkki toimi ok !     Hieman on aika ajanut tuosta jo ohi ja audiomittaustavat helpottuneet ja monipuolistuneet (FFT/DFT, pulssivaste, ym).  Kaikkea sitä on aikoinaan viritetty kun vielä oli aikaa.

Tuohon aikaan meitä kutsuttiin "Hakkereiksi"
VASEMMISTOLIITTO - RIKKAUTTA JOLLA ON ARVOA

”Ei ole olemassa todellista vapautta ilman toisinajattelun vapautta.” Rosa Luxemburg 1918

Mistofelees

  • Käyttäjä
  • Viestejä: 663
    • Profiili
Vs: Ohjelmisto valmistajia potkitaan persauksille?
« Vastaus #9 : 01.04.10 - klo:09.23 »
Hieman off-topic:
Näkyy olevan täällä väkeä joille CP/M ja MikroMikko 1 ovat tuttuja (8085)   :)  
Tuohon aikaan meitä kutsuttiin "Hakkereiksi"

Itsellä yksi bravuuri oli röntgenkaksikidespektrometrin ohjausjärjestelmä. Kahdeksan askelmoottoria, pulssilaskuri, jänniteohjaukset, hälytykset, greaafinen scrollattava spektrinäyttö, jolle mahtui 1024 vierekkäistä kanavaa. Koko 16 kB ohjelmisto suoraan assemblerilla kirjoitettuna. Edes macroja tai relokatoituvaa koodia ei ollut käytettävissä, joten osoitteet laskettiin käsin. Koneena VIC-20. Tällä hetkellä pystyisin saamaan saman toiminnallisuuden yhdellä PIC16F84-prosessorilla.

Siinä välissä tuli rakenneltua piirturipaperin lukujärjestelmä ja monenlaista apuohjelmaa.

Toinen bravuuri oli QBasic:lla rakennettu käyttäjänopastusjärjestelmä, jolla pystyttiin valitsemaan haluttu kuvaustapa ja saatiin sille ohjeet.
Rakenne oli 16-haarainen hakupuu. Mukana grafiikkaa, ohjetekstejä, editori, tietokantajärjestelmä, ulkoiset liittymä-rajapinnat kaikkiin nodeihin, ohjausliittymät näppikselle, hiirelle, touchpad:lle, tökittävälle screenille, mittauspöydälle, joystickille.
Hakupuun koko oli n. 5000 nodea. Kaikki ohjelman tekstit oli ulkoistettu omaksi tietokannakseen kielen vaihtoa ajatellen.
Ohjelman sisällä oli ajoaikana  2 kpl 128kB merkkijonomuuttujaa, vaikka MS lupasi merkkijonon max kooksi 64 kB.
Näytöksi kelpasi CGA, VGA, Hercules, EGA, VGA...

kehittelyssä antoi paljon vauhtia Ted Nelsonin Helsingissä pitämä seminaari hänen visiostaan maailman kattavasta tietokonejärjestelmästä, jonka kautta kuka tahansa pystyisi hakemaan mistä tahansa asiasta mistä tahansa maailmasta. -Tämä siis paljon ennen, kuin oli olemassa mitään Internettiä. MSWindowsia (ver 1.1) pidettiin täysin hölmömä ideana. Graafisien käyttöliittymien puolella GEM oli vielä pinnalla.
QB:lle asetettu binäärin 64 kB kokorajoitus tuli käytettyä jokseenkin viimeistä byteä myöten.

Vaatimuksena ooli, että ohjelma toimi missä tahansa PC:ssä hitaimmasta 4.77MHz 8088-koneesta sen ajan nopeimpiin Penoihin asti..
Koko ohjelmiston asennuspaketti  tietokantoineen mahtui yhdelle 1.2MB lerpulle. Lisälerpuilla oli saatavissa 'valokuva'grafiikkaa.

Sivutuotteena syntyi ohjelma, joka käänsi Suomea Englanniksi.

Meitä ei kutsuttu nörteiksei eikä hakkereiksi. Ei myöskään kutsuttu firman juhliin, eikä johdon etelänmatkoille. Tuotekehityspalavereihinkin mentiin takaovesta, koska 'ne on niitä kun vaan leikkii tietokoneella'.
Verottaja sensijaan kutsui puhutteluun, kun yritin saada kotikoneen vähennyksiin. -"Eihän tietokoneilla tehdä muuta, kuin vain pelataan pelejä".