Du må være registrert og logget inn for å kunne legge ut innlegg på freak.no
X
LOGG INN
... eller du kan registrere deg nå
Dette nettstedet er avhengig av annonseinntekter for å holde driften og videre utvikling igang. Vi liker ikke reklame heller, men alternativene er ikke mange. Vær snill å vurder å slå av annonseblokkering, eller å abonnere på en reklamefri utgave av nettstedet.
  32 3468
Har noen gutter i huset som brått ble interessert i å lage egne programmer. For å vise dem hvordan det funket, måtte jeg da finne en C64-emulator, og vise dem hvordan jeg selv skrev basic-programmer på 80-tallet. Jeg drev også mye med det vi dengang kalte maskinkode...

Jeg er så godt som blank på alle språk som brukes i dag. Hvilke språk tror dere jeg best mulig kan hjelpe dem i gang med? Jeg kikket så vidt på Python, og det så jo ganske likt ut som oldtidens basic. Andre forslag? - jeg skal bare sette dem i gang og gi dem tips, har ikke selv tid til å sitte timevis hver dag De ønsker å lage små spill, starten som "Gjett tallet", ping-pong med to streker og en ball, mm.
High Magus
10100's Avatar
Viss de er helt blanke anbefaler dem å prøve seg på noe (som jeg mener) enkelt f.eks Python, Java. Viss de vil ha raske resultatar kan de lære seg Actionscript 3 og laste ned Adobe professional CS6 fra bukte, eller kjøpe viss de har ca 10.000 liggende

Begynner guide til Java (på norsk) http://www.iu.hio.no/~kjetilg/uvstof...progintro.html
Hva er alderen på disse guttene?
Sitat av 10100 Vis innlegg
Viss de er helt blanke anbefaler dem å prøve seg på noe (som jeg mener) enkelt f.eks Python, Java. Viss de vil ha raske resultatar kan de lære seg Actionscript 3 og laste ned Adobe professional CS6 fra bukte, eller kjøpe viss de har ca 10.000 liggende

Begynner guide til Java (på norsk) http://www.iu.hio.no/~kjetilg/uvstof...progintro.html
Vis hele sitatet...
Er ikke python og java kjent for å være egnet for mer erfarne programmerere?
Etter det lille jeg har lest om programmering er c++ et bra nybegynner språk man kan få mye nytte ut av.
Sist endret av Azarat; 17. juni 2012 kl. 15:37.
Parkettetterligning
Er c++ enklere enn python? Aldri hørt noe om. Python er veldig lett men kan være litt tregt når det kommer til resultatene. Vil de ha noe enkelt er python ganske greit
Sitat av trappetryne Vis innlegg
Er c++ enklere enn python? Aldri hørt noe om. Python er veldig lett men kan være litt tregt når det kommer til resultatene. Vil de ha noe enkelt er python ganske greit
Vis hele sitatet...
Ah, leste nettopp litt om python og det skal visst være litt enklere. Java derimot....
Sitat av Azarat Vis innlegg
Er ikke python og java kjent for å være egnet for mer erfarne programmerere?
Vis hele sitatet...
Nå vet jeg ikke med Java, men Python er språket som blir oftest anbefalt til begynnere.

Jeg programmerer Python som første språk selv og anbefaler det på det sterkeste til alle som har lyst å prøve programmering. Du kan evt skaffe deg boka av Zed Shaw Lean Python the Hard Way
Lese på Python sin tutorial på dems egen side: http://docs.python.org/tutorial/index.html
Eller sjekke ut google sin python class serie: http://www.youtube.com/watch?v=tKTZoB2Vjuk

Sitat av trappetryne Vis innlegg
Er c++ enklere enn python? Aldri hørt noe om. Python er veldig lett men kan være litt tregt når det kommer til resultatene. Vil de ha noe enkelt er python ganske greit
Vis hele sitatet...
Python er ikke "tregt" ved mindre du skal kjøre noe veldig intensivt. Noe jeg tviler på nybegynnere skal gjøre.
Python er desidert enklere enn C++, og trenger du å få Python kjappere kan du skrive C og "koble" det til Python for bedre ytelse.
Mange synes at Python er et greit programmeringsspråk å starte med. Selv begynte jeg med C++, og vil vel si at det gikk ganske greit. Når man starter med C++ får man dog ikke så veldig spennende resultater med en gang, og det tar litt tid før du kan begynne å lage ting som spill og lignende. Det tar også lang tid å få satt seg ordentlig inn i det, men slik er det vel strengt tatt med nesten alle programmeringsspråk.
Sist endret av Stupebrett; 17. juni 2012 kl. 15:48.
I failed unit tests
Freddy_fred5's Avatar
Personlig mening;
Sortert etter vanskelighetsgrad (lett->vanskelig)

Python, Ruby, C++, Java.

Anbefaler sterkt Python for nybegynnere.
hinsidige's Avatar
Trådstarter
Sitat av moret Vis innlegg
Hva er alderen på disse guttene?
Vis hele sitatet...
De nærmer seg tenårene. De har intellektet i orden, svært gode i matte og forståelse av logiske sammenhenger, så jeg anser dem som modne. Når de i tillegg har fått interessen av dette på egen hånd, blir jeg svært glad. Kompisene deres spiller bare dagen lang...
I failed unit tests
Freddy_fred5's Avatar
http://www.codecademy.com/#!/exercises/0 (JavaScript)
Denne her er vel grei å forstå, men den er dog på engelsk.

Har guttene grei forståelse av engelsk eller trenger dem det på norsk?
hinsidige's Avatar
Trådstarter
Det må bli norsk i første omgang...

Noen gamlinger her som kan svare litt på mitt opprinnelige spm? Hvilket språk ligner mest på C64-basic?

dvs slik språk som dette (for det var jeg sjef på for 25 år siden):
0 c=1
10 a = int (rnd (0) *9)
20 print "Trykk på et tall mellom 0 og 9"
30 get b
40 if b=0 then 30
50 c=c+1
60 if b=a then goto 100
70 if a>b then print "Du tippet "b", og det var for lavt... Klyse!"
80 if a<b then print "Du tippet "b", og det var for høyt... Idiot!"
90 b=0 : goto 30
100 If c<3 then print "Du er et geni! Du brukte bare "c" forsøk" : end
110 print "Du er eleding. Du brukte "c "forsøk"
Sist endret av hinsidige; 17. juni 2012 kl. 16:56.
Sitat av hinsidige Vis innlegg
Det må bli norsk i første omgang...

Noen gamlinger her som kan svare litt på mitt opprinnelige spm? Hvilket språk ligner mest på C64-basic?

dvs slik språk som dette (for det var jeg sjef på for 25 år siden):
0 c=1
10 a = int (rnd (0) *9)
20 print "Trykk på et tall mellom 0 og 9"
30 get b
40 if b=0 then 30
50 c=c+1
60 if b=a then goto 100
70 if a>b then print "Du tippet "b", og det var for lavt... Klyse!"
80 if a<b then print "Du tippet "b", og det var for høyt... Idiot!"
90 b=0 : goto 30
100 If c<3 then print "Du er et geni! Du brukte bare "c" forsøk" : end
110 print "Du er eleding. Du brukte "c "forsøk"
Vis hele sitatet...
Jeg vil nå si at Ruby er ganske likt.
High Magus
10100's Avatar
Sitat av Azarat Vis innlegg
Er ikke python og java kjent for å være egnet for mer erfarne programmerere?
Etter det lille jeg har lest om programmering er c++ et bra nybegynner språk man kan få mye nytte ut av.
Vis hele sitatet...
Vet ikke om du la merke til "(min mening)". Når jeg begynte å programmere så jeg på mange forskjellige språk. Da syntes jeg Java var lettest.
Er de interesserte i webutvikling? Begynte selv med HTML og CSS da jeg var 8-9 år gammel og gikk videre med SQL og PHP litt senere. Python prøvde jeg meg på, men ga fort opp å lære all syntaks (Python har enklest syntaks, C++ er mye mer komplisert). Anbefal Python!

Er nå 17 år gammel og angrer noe jævlig på at jeg ikke ble nerd og fortsatte med programmeringen!
Sist endret av Spirituell; 17. juni 2012 kl. 17:15. Grunn: leif
Sitat av Spirituell Vis innlegg
Er de interesserte i webutvikling? Begynte selv med HTML og CSS da jeg var 8-9 år gammel og gikk videre med SQL og PHP litt senere. Python prøvde jeg meg på, men ga fort opp å lære all syntaks (Python har enklest syntaks, C++ er mye mer komplisert). Anbefal Python!

Er nå 17 år gammel og angrer noe jævlig på at jeg ikke ble nerd og fortsatte med programmeringen!
Vis hele sitatet...
Er aldri for sent å begynne.
Sitat av Foxboron Vis innlegg
Er aldri for sent å begynne.
Vis hele sitatet...
er et konkurransemenneske, gidder ikke bli middelmådig på noe hehe
hinsidige's Avatar
Trådstarter
Da hopper vi i det, det blir Python:

Jeg får vel laste ned noe greier her?
http://www.python.org/getit/

Hva mer trenger jeg? Noen tips til et norsk guide med begynner-info?
For python på norsk er dette den beste siden jeg har funnet. (obs, jeg kan jo noe programmering fra før)

Dette er ikke norsk, men fortsatt gull:
http://www.khanacademy.org/science/computer-science/
Sist endret av moret; 17. juni 2012 kl. 17:58.
hinsidige's Avatar
Trådstarter
Khanacademy kjenner jeg til fra matte-faget. Glimrende oppbygd, spør du meg. Håper den er like bra ndg programmering... Den kan jeg utforske for min egen del. Takk for tipset!
Dersom de starter på blanke ark ville jeg satt dem i gang med C++. Det gir tilgang til lavnivå koding, der de må være strukturerte og passe på datatyper ol. De får lite gratis, men vil lære ting fra bunnen av.

Kan du C++, vil transaksjonen til java og andre språk være enklere. Selv begynte jeg med PHP, er nå en habil java koder, men sliter fortsatt med å ta C++'en .. noe som irriterer meg grønn.
La de prøve iOS SDK og lage apps til iPhone/iPad selv om selve koding ikke ligner C64/Ruby
Sitat av Java Vis innlegg
Dersom de starter på blanke ark ville jeg satt dem i gang med C++. Det gir tilgang til lavnivå koding, der de må være strukturerte og passe på datatyper ol. De får lite gratis, men vil lære ting fra bunnen av.

Kan du C++, vil transaksjonen til java og andre språk være enklere. Selv begynte jeg med PHP, er nå en habil java koder, men sliter fortsatt med å ta C++'en .. noe som irriterer meg grønn.
Vis hele sitatet...
Problemet er at C++ er et relativt tungt og kompleks språk. Så ved mindre du faktisk sitter timer med det daglig eller har en veldig høy motivasjon, så vill ikke ungene hans klare å lære seg det. Så i slike tilfeller er det faktisk til en grad bedre å utelukke C++ fordi det skaper bare mer hindringer enn fremgang.
Dere kan se litt på det siste fra google: blockly. Der kan man lage programmer med å koble sammen logikk-blokker. Virker som en ganske sweet måte å lære seg programmering.
Hey,
C64, maskinkode. Mao demoscenen. Eller crack?
Hvilken gruppe?
Selv var jeg med i "the ancient temple". Kan ikke fatte det om du fremdeles husker maskinkode. Selv har jeg ettertrykkelig glemt det. Med støvler på. Jeg prøvde nettopp
hinsidige's Avatar
Trådstarter
Kampspurv,

For det meste demoer, lite cracking, men manipulerte koden på mange spill for å få evig liv f.eks...
Lagde spill med sprites, fikk virkelig utviklet fantasien med slikt!

Var med i flere grupper, men ikke noen landskjente.
husker da litt av hvordan kodingen så ut...interrupten på EA31 var jo en slager...
LDA #$01
STA $3000
LDX #$09
RTS

osv...

OK, nå har jeg laget mitt første spill siden Microsoft lanserte Windows 95...

Det ble et gambling-prg som kan være substitutt for spilleavhengige.

Jeg har skrevet alt selv, bare kikket på en utskrift av "gjett-tallet-spill" skrevet av Cromoglic...

Jeg har noen spm...

Hva kan jeg gjøre for å unngå error hvis noen taster inn bokstaver el?
Hva er egentlig forskjellen på = og ==? Jeg skjønte at i IF-setninger må man ha ==, hva er vitsen?

Kode

beholdning = 1000

print "Du har 1000 kroner i starten..."

loop = 1

svindel = 0

while loop ==1:
    sats = input("hvor mye vil du satse?")
    print "Du vil satse kroner:"
    print sats
    if sats > beholdning:
        print "Du har ikke raad til dette. Sats et lavere belop. Du har fortsatt kr."
        print beholdning
        svindel = 1

    if sats < 1:
        print "Du kan ikke spekulere paa denne maaten. Skjerp deg! Du har fortsatt kr."
        print beholdning
        svindel =1

    if svindel == 0:
        import random
        gevinst = random.randint(0, 1)
        if gevinst == 0:
            beholdning = beholdning - sats
            print "HAHA - du tapte. Din nye saldo er kr."
            print beholdning
            if beholdning == 0:
                print "Du er blakk!"
                exit()
        if gevinst == 1:
            beholdning = beholdning + sats
            print "Det var gutten sin! - du vant. Din nye saldo er kr."
            print beholdning

    svindel = 0
Sitat av hinsidige Vis innlegg
Hva kan jeg gjøre for å unngå error hvis noen taster inn bokstaver el?
Vis hele sitatet...
Kjør en løkke hvor du spør etter input helt til svaret er et tall.
Eksempel:

Kode

while True:
    answer = raw_input("Enter a number:")
    try:
        int_answer = int(answer)
        break
    Except ValueError:
        print "'%s' is not a number." % answer
print "%d is a number"
Sitat av hinsidige Vis innlegg
Hva er egentlig forskjellen på = og ==? Jeg skjønte at i IF-setninger må man ha ==, hva er vitsen?
Vis hele sitatet...
Basically betyr "=" at man setter en verdi til en variabel, mens "==" betyr at man tester om verdien av variabelen er det samme. Altså for å gjøre det tydelig om man setter en verdi - eller om man tester verdien.

I python har man dette mest fordi det er standarden og gjør det lettere for folk å se forskjellen på når folk setter en verdi, og når noen tester verdien; men i andre språk som f.eks. C og C# kan man både sette verdi og sette verdien i en setning; da blir forskjellen plutselig viktig. Da kan man f.eks. gjøre ting som:

Kode

if( (x = get_some_input()) == null )
    print_error();
else
    do_some_stuff_with_input(x);
Her ville man da hente ut data fra funksjonen og lagre i en variabel, for så å sjekke om den er null - og hvis ikke gjøre noe med variabelen.
Sist endret av etse; 18. juni 2012 kl. 00:45.
Sitat av hinsidige Vis innlegg
...
Vis hele sitatet...
Anbefaler å lese PEP8. Hold også alle import i toppen av koden.

Også et lite tips er:

Kode

if gevinst == 1:
    pass

#er det samme som

if gevinst:
    pass


if gevisnt == 0:
    pass

#er det samme som

if not gevinst:
    pass



1 == True
0 == False

#er det samme
while True:
while 1:

#og

while False:
while 0:
Kjør en løkke hvor du spør etter input helt til svaret er et tall.
Vis hele sitatet...
Litt trøtt este
Det er en par feil som kan rettes opp,kan jo skape litt problemer viss noen som er nye i python prøver og kjøre koden.

Kode

while True:
    answer = raw_input("Enter a number:")
    try:
        int_answer = int(answer)
        break
    except ValueError: #small e
        print "'%s' is not a number." % answer
print "%d is a number" % answer #Forget % answer
Alternative med ny string formatting.

Kode

while True:
    try:
        answer = int(raw_input("Enter a number: "))
        break
    except ValueError:
        print "{} is not a number".format(answer)
print "{} is a number".format(answer)
Noen gamlinger her som kan svare litt på mitt opprinnelige spm? Hvilket språk ligner mest på C64-basic?
Vis hele sitatet...
De fleste språk har gått bort fra goto,som er erstattet med for/while løkker.
Goto kan virke som en god ide,men det(kan vil) ødlegge programflyten.
Allerede i 1968 skrev Edsger Dijkstra "GoTo Statement Considered Harmful"
http://imgs.xkcd.com/comics/goto.png

Det er også språk som ikke bruker for/while løkker,kalt "Functional programming" språk som Haskell, Erlang, F#, eller
en Lisp Dialect.
Se på Haskell og få vridd hjernen,det er en helt annen måte og løse/tenke programmring på.

Viss jeg skriver om til noe av det sammme i python.
Her gjør while løkken jobben og det hoppes ikke rundt i koden med goto.

Kode

import random

print "Welcome to 'Guess my Number game!"
secret_number = random.randint(1,100)
guess,tries = 0,1
while guess != secret_number:
    guess = int(raw_input("Take a guess: "))
    if guess > secret_number:
        print ("Lower...")
    elif guess < secret_number:
        print ("Higher...")
    tries += 1
print 'You guessed it! The number was %s in %s tries' % (guess,tries)
Jeg har skrevet alt selv, bare kikket på en utskrift av "gjett-tallet-spill" skrevet av Cromoglic...
Vis hele sitatet...
Det er nok flere ting og prike på her,men skal ikke ta det nå.
Et tips nå er alt skrevet i global space.
Når koden begynner og bli en 15-20 linjer lang må man begynne og tenke på og strukturere koden bedere.
Det betyr at man må se på funksjoner/klasser.
hinsidige's Avatar
Trådstarter
Takk for tips, alle sammen!

Savner å kunne skrive
poke 53280,0 og poke 53281,0
i starten av programmet.

Blir litt forvirret av at ting printes nede og dialogboksene popper opp på midten. Hva med fullscreen der alt skjer med feite typer? Det fenger nok lillebror i huset bedre. Kommer jeg til dette - eller bør jeg introdusere gutta for et annet språk da?
▼ ... over en uke senere ... ▼
Hva med DarkBasic PRO? BASIC syntax med DirectX9 kjerne.
Trenger ingen init av windows, message pump, og det kjedelige.
Jeg vet ikke hvordan barna dine reagerer på det, men du har jo varianter som Python Turtle som inneholder et fullverdig shell samtidig som du kan kontrollere en skilpadde rundt på skjermen for å visualisere loops, matematikk og former. Når basic-forståelsen er inne er det forholdsvis simpelt å lage en "plattformer" i PyGame med bokser som glir rundt på bakken. Mulig du må hjelpe dem med hjelpefunksjonene rundt, men det er relativt gøy å se små bitmaps man har tegnet selv gli rundt på skjermen når man trykker på piltastene. Utenom initialiseringen og frame-oppdateringen så er det forholdsvis rett-fram å lage spill, og det finnes mange ferdige spill av varierende kvalitet som man kan "hacke" litt på. Det er ofte gøy å kunne se på kildekoden, forstå den litt og endre slik at man har 100 liv og kan hoppe dobbelt så høyt for eksempel!
Sitat av Spirituell Vis innlegg
er et konkurransemenneske, gidder ikke bli middelmådig på noe hehe
Vis hele sitatet...
Om du starter nå trenger du ikke bli middelmådig. Kjenner mange som ikke begynte å programmere før i 20 årene som nå er veldig flinke.