-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathlessons_learned.txt
executable file
·53 lines (40 loc) · 3.75 KB
/
lessons_learned.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
I wanted a clean setup to work with. I found three promising options. The angular seed project which is located on the angularjs site. Cleverstack and Yeoman.
The reason I didn't continue with the seed project is that I couldn't get bower and nodejs to correctly work.
I had lots of problems with nodejs and bower to correctly work in Ubuntu. This resulted in not getting yeoman or cleverstack to work.
Cleverstack looked pretty promising.
I tried installing nodejs from apt-get, and updating to the latest nodejs and bower versions, but still I got some issues.
Finally I installed nodejs from source and used $HOME/local for all the global files to avoid permission issues.
Now I could finally get yeoman to generate a angular app for me. However cleverstack still complained about some issues.
- Huge downside when your API is set, and you decide to change your API. You can't remove items unless you know there are no one that uses your API
and that there are no active games up and running. I think accessing inactive games for readability later is problematic!
-- Its exactly like the serialization issues we had with Java that made us go away from that
GOTCHA
$http.delete doesn't work with content-type
- Travis for continous integration
- Ikke lett å ha parent pom og intellij. Finner ikke config fil. Maven klarer fint, men ikke intellij
-- Legge på $MODULE_DIR$
- Java 8 and checked exception in lambdas doesn't play well
- Har to brancher, en med heroku og 1 server og en med 2 server og master
-- Git cherry-pick er veldig fin å ha. Den klarer til og med å skjønne hvilke filer det er snakk om selv om de er flyttet et annet sted i branchene
Hvordan fullføre prosjekter
- De første 90% tar 10% av tiden, mens de siste 10% tar 90% av tiden.
-- Jeg har mange "halvferdige" prosjekter. Ting drar ut i tid, man mister motivasjonen eller andre nye kule teknologier/prosjekter dukker opp
som tar fokuset vekk. Man blir liksom aldri ferdig
- Virkelig de siste 10% som tar tid. Opprydding av kode, jshint greier, ng-annotate greier, bygg og deploy, config,
- Når man får problemer så er det viktig å ikke bruke så mye tid på det. Det er enkelt å miste motivasjonen.
Søk hjelp, spør på stackoverflow.com eller kolleger/venner og begynn på en ny oppgave
- Lag en liste med alle oppgaver som skal gjøres i en prioritert rekkefølge.
-- Ikke bruk masse tid på fancy verktøy som jira.
-- Notepad eller lignende fungerer i massevis. Marker elementer med #DONE når du er ferdig
-- Nederst i dokumentet seksjonerer du NICE TO HAVE. Dette er type gold plating, ting som ikke er nødvendigvis viktig, men hadde vært kjekt
- Unngå store refaktoreringer
-- Ofte finner man ut at man kunne gjort ting anderledes og bedre. Det er veldig viktig at man er nøye på slike overveielser og ikke bruker
lang tid på store refaktoreringer som egentlig ikke bringer noe verdi. Det vil si, det gir kanskje verdi for deg rent psykologisk. Det gir deg
en god følelse av å gjøre ting bedre. Du ønsker å gjøre ting profesjonelt, men det bringer ikke produktet ditt nærmere mål!
-- Legg heller refaktorerings ønsker nede i NICE TO HAVE seksjonen
- KISS
- Dette er veldig viktig. Det er bedre å få på plass funksjonalitet som virker enn å gjøre det fancy, flott og komplisert. Dette spiser mye tid.
- Ikke bruk masse tid på å finne noe gjenbrukbart som du må igjen bruke masse tid på å lese dokumentasjonen til og prøve å skreddersy inn i din løsning
istedet for å heller bare skrive den selv
-- F.eks, jeg ønsket å lage et skjema. Jeg tenkte det sikkert var hundrevis av HTML skjema'er ute på nettet jeg kunne kopiere.
Jeg brukte masse tid på å finne en som passet stilen jeg ønsket, og med de innebygde valideringene jeg ønsket