Gå til innhold

steingrim

Medlemmer
  • Innlegg

    774
  • Ble med

  • Besøkte siden sist

Innlegg skrevet av steingrim

  1. Dersom du vil forberede deg på Java, kan du enkelt å greit bruke w3schools:)

    w3schools har mye om Javascript, men ingenting om Java.

     

    Navnet og krøllparantesene er omtrent det eneste Java og Javascript (som egentlig heter ECMAScript) har felles.

  2. For å presisere litt, teknologivalg er gjerne allerede tatt før utvikleren kommer inn i bildet.

    Jeg synes ofte det er helt omvendt: det er som regel utviklerne som gjør teknologivalgene. Feks der jeg jobber: i en stor finansbedrift i Norge, teknologivalgene kommer fra "gulvet", feks at IBM og Websphere skal ut på hue og ræva og vi har fått inn open-source og Jetty i stedet.

  3. Gitt at "funksjon" er en metode i samme klasse og deklarert i @interface eller deklarert lenger opp i @implementation enn kall-punktet:

     

    - (IBAction)buttonclick:(id)sender 
    {
       [self funksjon];
    }
    

     

    Eller hvis du skal ha med argumenter:

     

    - (void) minMetode:(NSString*)enString ogEnStringTil:(NSString*)enStringTil 
    {
    }
    
    - (IBAction)buttonClick:(id)sender
    {
       [self minMetode:@"foo" ogEnStringTil:@"bar"];
    }
    

     

    Dette er ganske grunnleggende Objective-C, jeg vil kanskje anbefale en grunnleggende bok før du setter i gang med iPhone-programmering :)

  4. 1 mrd er latterlig mye penger ja, men å regne i hvor mange utviklere man får for den summen blir helt feil (du har forresten veldig billige utviklere).

     

    Det er ikke programmeringen som er vanskelig i et slikt system. Det er å vite hva man skal lage som er vanskelig. Og tro meg, hadde du hivd hundre programmerere i ti år i et lukket hus, så hadde de hvertfall ikke klart å lage den slags programvare som vi snakker om her.

     

    Jeg mistenker dog at skattepengene ville blitt bedre brukt om man hadde hatt en smidig/agile tilnærming til slike giga-prosjekter. Da ville man i det minste kunne avbrutt prosjektet på et tidlig stadium hvis så var ønskelig.

  5. Dette er en smule mer innviklet enn det burde være (og litt skyldes at du bruker inclusion tag).

     

    Først og fremst: du ønsker at HttpRequest-instansene er tilgjengelige i template-konteksten og for å få til det må du ha django.core.context_processors.request i TEMPLATE_CONTEXT_PROCESSORS - dette ordner du i settings.py.

     

    Dessverre er ikke dette nok. I tillegg må du sende med en RequestContext-instans når du rendrer templaten, render_to_response gjør for eksempel ikke dette default, du må be om det eksplisitt:

     

    def myview(request):
       return render_to_response('template.html', context_instance=RequestContext(request))
    

    Når du eksplisitt bruker en RequestContext vil alle context processors du har satt opp i settings.py eksekveres og siden vi satte opp context_processors.request vil HttpRequest-instansen bli en del av template contexten.

     

    Hadde du brukt en vanlig template tag kunne du nå brukt context['request'].GET i python-koden din, men siden du bruker inclusion tag må du belage deg på enda mer sprell :)

     

    Inclusion tags antar nemlig at du ønsker en kliss ny template context, men du kan trikse det til ved å hente ut request-instansen fra parent-context og returnere den fra inclusion tagen din:

     

    @register.inclusion_tag("template.html", takes_context=True)
    def my_inclusion_tag(context, myparam):
       return {"inclusion_param": myparam, "request": context['request']}
    

     

    Tungvindt? Jada.

  6. Jeg har programmert i Python i nærmere ti år, og Python er vel det språket jeg føler meg mest komfortabel med, men jeg har dessverre aldri fått mulighet til å bruke Python heltid. Til daglig går det mest i Java for tiden, selv om jeg gjør mitt for å snike inn Python.

     

    For tiden bruker jeg Python mest på privat basis. Nettsider og REST-apier er gjerne resultatene. Bruker helst Django, men har på mitt siste prosjekt brukt Google App Engine sitt webapp-rammeverk. Tålelig fornøyd med den løsningen. Faller vel muligens tilbake til Django på mitt neste prosjekt, jeg digger Django og har skrevet en del tredjeparts-applikasjoner som er å finne på Github.

     

    Editor: Textmate selvsagt!

  7. Dette er vel i stor grad gamle systemer? Ihvertfall på web som sagt, så forventes det at alle programmer støtter minst UTF-8.

    Forresten angående tegnsett, er det vanlig i dag å utvikle C++ programmer med UTF-16? De fleste (alle?) prosjekter jeg har sett bruker std::string fremfor std::wstring av grunner jeg ikke aner.

    For web er det vel UTF-8 ja, noe annet er bare dumt.

     

    C++ kan jeg heldigvis ingenting om :)

  8. Skal man lage helt nye frittstående løsninger i dag, så er det UTF-8 som gjelder. (Hvertfall så lenge du har europeiske brukere, asiatene vil selvsagt klage og heller ønske seg UTF-16 eller 32 når de skal integrere med deg, men den tid den sorg.)

     

    Skal man integrere med andre systemer kan det feks være at UTF-8 eller andre multibyte-enkodinger er direkte dumt eller feil. Mange systemer forventer 1 tegn = 1 byte, og med en multibyte-enkoding kan man få rare følgefeil om man starter på feil sted i en datastrøm. Ekstra artig blir det når man introduserer *helt* andre tegnsett som ikke er kompatible med ASCII og man har mange oversettelser på forskjellige systemer gjennom dataflyten.

  9.  

    /****************************
    
    *       HELLO WORLD!       *
    
    ****************************/

     

    Hva svarte er poenget??

     

     

    Slikt er utrolig unødvendig og tar bare plass på skjermen, slik at det blir plass til mindre kode.

     

     

    En annen ting jeg har irritert meg grenseløst over til tider er unødvendige kommentarer på metoder. Jeg fjernet nylig ca 8000 linjer med slike kommentarer fra et java-prosjekt på jobb:

    /**
    *
    * Sets the foo
    *
    * @param Sets the foo
    *
    */
    public void setFoo(String foo) {
       this.foo = foo;
    }
    

     

    Her tar jo den totalt unødvendige javadoc-kommentaren dobbelt så mye plass som metoden. Og grunnen til at jeg irritererer meg er selvsagt at jeg skjønner jævlig godt hva setFoo() gjør. Det er nettopp når den gjør noe ekstraordinært det er verdt å kommentere. Som sagt, jeg nappa ut 8000 slike linjer i et prosjekt på jobben. Det var deilig :)

  10. Forskjellige konvensjoner er jo greit nok, jeg bryr meg ikke så mye om hvordan bokstavene ser ut på skjermen, det eneste jeg bryr meg om er at det er konsistent. Men skriver man Java, forventer jeg egentlig at man følger Java sin stil-guide (http://java.sun.com/docs/codeconv/), skriver man Python bør man følge PEP8 osv. At forskjellige språk har forskjellige konvensjoner er ikke så viktig, det blir bare religiøs krangling om man prøver å blande.

     

    Konsistens over alt annet.

  11. Men hvis vi ser på holdninger som fungerer for open source, er det noen grunn til at de ikke også skulle fungere for outsourcing?

    Jeg tror premissene for hva som driver utviklerne fremover i et open source prosjekt er helt annerledes enn et tilsvarende stort inhouse utviklingsprosjekt. Man skal ikke se bort i fra at utviklere engasjerer seg mer i et open source prosjekt enn i jobben sin :) Men nå skal det også sies at store deler av kildekoden i mange store open source prosjekter ikke utvikles på gutterommet, men profesjonelt av betalte utviklere som en del av deres daglige jobb.

  12. Edit: Sparebøsse er morro, og tenk deg at du kjøper noe til 10 eller 15 kroner,

    også sier du "rund av til 50" og drar kortet. Da har du litt mynt du kan putte på.

    Det er veldig morro å telle opp etter noen måneden hvis du gjør dette effektivt.

    Hiv gjerne oppi lapper også, men ikke ta de ut igjen. Jeg sparte opp ca 1500 en måned :)

    Som andre har nevnt i tråden, Nordea har allerede en slik ordning: Nordea Mikrospar. Ganske kjekt om man ikke klarer å spare på andre måter :)

  13. Herregud så vanskelig det skal være å få i gang litt flaming her da. :wee:

    Vel, da kan vi jo ta for oss outsourcing. Hvordan forholder man seg til at den samme teknologien som gjør det mulig for open source-prosjekter å samarbeide på tvers av landegrenser, gjør programmering til den enkleste arbeidsformen å utplassere til den andre siden av kloden?

    Mener du virkelig at programmering er den enkleste arbeidsformen å utplassere til andre siden av kloden? :) Vanskelig å skjønne om du sier dette bare for å flame eller om du mener det.

     

    Av erfaring vet jeg at programmering er *litt* mer enn "implementer denne spesifikasjonen" og at den slags holdning til programvare ikke engang fungerer om man benytter den internt i en bedrift. Jeg vet at mange fortsatt lever i fossefallsverdenen, personlig har jeg langt mer tro på smidige metoder for utvikling. Forresten, stryk "tro" og erstatt det med "empiri".

×
×
  • Opprett ny...