View Single Post
Bob Sacamano
John B's Avatar
Tenkte jeg kunne skrive litt om hvilke tanker jeg selv har om dette temaet.

Jeg utvikler nye web-applikasjoner (som regel backends, med minimal frontend) jevnlig i forbindelse med jobb, og vi har bevegd oss fra PHP til Java/Servlets til Sinatra/Rails/Node. Vi bevegde oss vekk fra PHP fordi vi rett og slett var lut lei av PHP, og vi savnet en rå pakkebrønn. Java med Jersey funker bra, men mye tid brukes på å skrive kode rundt problemet vi egentlig skal løse.

Jeg har akkurat satt meg ned for å velge mellom de tre sistnevnte.

1. Kampanjeside med lett backend og bruk av database
I dette prosjektet består backend av enkel databaseintegrasjon for å logge statistikk om bruk av løsningen, og jeg har derfor ikke bruk for et lass av ekstra innebygde features som mulighet for å mappe opp X-antall modeller. Derfor står valget mellom Sinatra eller Node. Fordi det er superenkelt å komme i gang med et Node-prosjekt med HTML- og CSS-templating og støtte for Coffee-script heller jeg mot å bruke Node.

2. Svær backend med et like stort CMS
Dette prosjektet består av en svær mengde modeller med en svær mengde assosiasjoner seg i mellom. Til dette prosjektet ville jeg ikke drømt om å velge noe annet enn Rails. Tre viktige faktorer for dette valget er min egen tilfredshet som utvikler, hurtighet og fleksibilitet. Med Rails og tredjeparts moduler (RailsAdmin) kan man være oppe med et midlertidig (?) CMS på en times tid. Vær dog oppmerksom på at årsaken til at Rails kan levere hurtigheten den gjør er fordi at haugevis gjemmes fra deg som utvikler, som du definitivt burde sette deg inn i om du skal levere en løsning til platformen.

Når det gjelder ytelse vil jeg bare legge til at jeg ikke synes det er en problemstilling som det er verdt å bruke mye tid på nå. Misforstå meg rett, jeg mener ikke at det ikke er en viktig problemstilling, men jeg mener det er en problemstilling for en dag der du sitter på helt andre resursser enn du gjør nå. Dette utsagnet er vanskelig for meg selv å svelge som utvikler, men jeg har sett nok av prosjekter drukne i opphetede diskusjoner om hvilket rammeverk som best takler en million+ aktive brukere.