Con l'ultimo post, divertiamoci a fare un flame tecnico sul "come farei Friendfeed oggi, se avessi la stessa volontà di Senape". Parto io: una SPA basata su API, con (nodejs + hapi + websockets OPPURE meteor) + ampersandjs + mongodb + redis + (purecss o MUI). Per aggregare i contenuti, microservice che saranno client delle API
(eh oh, non ho resistito. L'idea di rifare FF ce l'abbiamo avuto tutti. Bravo senape che ce l'ha fatta) - Claudio Cicali
e grazie a te che hai scritto l'xport. :) - pm10
Eh, lo sai che sono old school. Userei un forte modello dei dati e un MVP classico e solido come Django. - Braga
Perché sia mongodb che redis? - Minciaroni™
per altro se non erro friendfeed comunque gira su mysql (schema-less, ma mysql) - A. Morloi Grazioli
e poi lo chiameremo Persone 3.0 - Aldo Oldo
buoni che persone ce l'ho in qualche backup, è un attimo a ritirarlo in piedi - Francesco Mosca
react + flow + orientdb (+ qualunque altra fighetteria js vuol metterci claudio, mi fido) - Francesco Mosca
Minciaroni, perché avrebbero due scopi diversi: uno è il layer di persistenza l'altro sessioni e cache. - Claudio Cicali
Francesco, hai ragione, penso userei React anche io. Forse FORSE anche flow. - Claudio Cicali
mongodb layer di persistenzAHHAHAAH (scusate non resisto) - Francesco Mosca
gratuitous mongodb bashing - Francesco Mosca
(avete appena assistito a: perché è così difficile rifare friendfeed "in collettivo". immaginate una scenetta del genere per qualunque singola scelta tecnologica compreso lo sfondo del desktop e il font dell'editor di testi) - Francesco Mosca
rollback wars notturne da far rizzare i capelli - Aldo Oldo
Ormai io posso fare giusto il Product Owner, nel mio team di sviluppo sembro un vecchio legato che programma con la sola mano sinistra. E ho scritto "sembro" perché stamattina mi sono svegliato bene. - Braga
Francesco, io mi voglio convincere sempre che la differenza tra un "cowboy dev" di 19 anni e uno di 30+ è che il secondo sia più facile da convincere della bontà tecnica di una scelta che non sia la sua. A parte me, ovviamente, che ho sempre ragione. - Claudio Cicali
30++++++ - Massimo Morelli
Claudio le flamewar basate sul nulla servono per tenerci giovani (la differenza che trovo tra il cowboy dev di 20 anni e me che sono nella fascia 30+ è che io so che tanto qualunque scelta non funziona un cazzo ed è tutto rotto e se ti dice proprio culo al prossimo giro azzeccherai un tradeoff in più, finché non ti esplode in faccia anche quello, quindi per me possiamo rifare friendfeed pure in clojure + neo4j, tanto se funziona è perché siamo fichi noi, non la tecnologia scelta) - Francesco Mosca
Hai sempre ragione escluso mongodb, ovviamente. - adellam
app-engine! app-engine! oppure aws. boh. :D - Angelo
Francesco, parole sante. Ti meriti davvero il badge "30+". (ahah) - Claudio Cicali
grazie grazie. ora torno a fare la 732esima declinazione di un "export in excel" della mia vita. Sono tipo le flessioni per tenersi allenato, a quest'età. (mi immagino bret taylor che presenta al suo staff tornado e tutte le fighetterie tecnologiche di friendfì dell'epoca, e dopo due ore si alza il commerciale che gli fa "si ok, ma me lo metti l'export in excel degli utenti registrati per favore?") - Francesco Mosca
ok per l'architettura a servizi, metterei ang2 giusto per anticiapre i tempi ;) - calca
Angular NO. :P - Claudio Cicali
(Comunque Francesco Mosca <3) - Angelo
se mettete angular io non gioco con voi :) - cedmax
ecco, come Claudio - cedmax
e prendere in mano Tornado + mongodb è una brutta idea secondo voi? No phun intended, cerco di partecipare. Non so quanta stima mandare a Senape che ha tirato su tutto da solo. - DvD
Tornado è un'opzione, certo. Ma è anche vero che nacque prima di Node (che ora è maturo e persino forked). Comunque la struttura "moderna" prevede solo un server che esponga API, OAuth e Websockets. Il resto è tutto sul client. - Claudio Cicali
(che poi i mestieri di tenere connessi N-mila client "realtime" e operare la logica di business, credo siano diversi) - Claudio Cicali
infatti Tornado è nato per quello e credo sia superfluo dire a voi pro e contro. Nella configurazione con più istanze ed Nginix a fare da proxy, che poi è FF, sembra essere un carro armato. Alla fine si, API a manetta e persistenza distribuita. Diaspora fa così e non mi pare nemmeno tanto male. - DvD
Comunque se me lo concedete, la potenza di ff, lato utenti, è la ui semplicissima (e conseguenti effetti sulla ux). Poco rumore, poche icone e js ridotto al minimo indispensabile. altro che angular. A voler rifarlo l'unica cosa che cambierei è aggiungere un po' di progressive enhancement per poter vedere i commenti e poter commentare anche quando il js non funziona come dovrebbe (ad esempio quando su mobile la connessione è demmerda e fallisce il caricamento) - cedmax
mi sono già sbilanciato troppo, non posso pure dire la mia sul js lato client per new-frienfì in un thread con claudio. - Francesco Mosca
cedmax non ho capito perchè angular è sinonimo di ui complicata. (giusto per la discussione). E' solo un fw per lo sviluppo MV* lato client .. - calca
non è sinonimo di ui complicata, ma è il contraro di "js ridotto al minimo indispendabile". come dicevo io lo spingerei ancora più verso il progressive enhancement per farlo andare anche quando js non c'è. con angular questo è impossibile - cedmax
detto che imho angular/ember e co sono ottimi per pannelli backend, tool interni e dashboard. farci siti user facing nel 90% dei casi è hipsteria e si potrebbero tranquillamente trovare soluzioni molto più accettabili in termini di progressive enhancement (sembro un disco rotto, scusa) perchè la tecnologia dovrebbe essere scelta per gli obiettivi, non perchè semplifica la vita allo sviluppatore. - cedmax
Mh. Devo anche dire però che se non usi un framework ti trovi a fare 5 refactoring prima di uscire con un prototipo funzionante. Angular/Ember e gli altri, possono essere un po' overkill ma – se li conosci! – ti fanno uscire prima. Su questo credo non ci sia molto da discutere, no? - Claudio Cicali
(io non voglio usare Angular 2 proprio perché non vorrei impararlo :P) - Claudio Cicali
ma react ora non si può far "renderizzare" anche server-side? sono sicuro che c'è un qualcosa da passare a grunt/gulp/grasp/grub/glom per fare progressive-enhancement con un npm install qualcosa, dai :) - Francesco Mosca
ecco mi piacerebbe un po' di argomentazione su perchè angular no e react/flow sì - Raibaz
cedmax stai dicendo che deve funzioanre senza js .-> quindi round-trip sul serve e pagine 'renderizzat' lato backend. ma così ti scrodi una delle particolarità di FF che è il live e commenti. Per quello non mi torna. Sul restoconcordo con Claudio, un fw ti aiuto nella fase di startup. (poi uno scegli il fw che preferisce/ama/conosce) - calca
Raibaz angular è (la versione 1) complesso e strutturata e non sempre pulito/semplice nell'implementazione. La 1 ha limiti anche di prestazioni (vedi l'hype per react). Il vantaggio di angular è che un fw completo (componenti, servizi, routing, ecc.. ) mentre react è solo un framework per gestire la View dell'applicazione (ed infatti c'è solo un architettura di riferimento con flow (che usa dispatch e storace per far comunciare i moduli ) - calca
(io sono un fan di Knockout.js .. ;) - calca
no cedmax dice che deve funzionare "in qualche modo" *anche* senza js. con react e simili credo si possa fare prog. enhancement vero (ma di queste robe da frontendisti l'esperto è claudio), con angular hai tutto accoppiato alla cazzo di cane quindi o tutto o niente - Francesco Mosca
Raibaz, probabilmente non ho nessuna forte opinione contro Angular2, se non che è troppo grosso, parecchio complesso da imparare e padroneggiare, e che (a meno che questo non sia cambiato) mi ricorda troppo le pagine JSP :) - Claudio Cicali
(mentre discutiamo di lana caprina senape ha già implementato altre 72 feature fondamentali) - Francesco Mosca
(rimanendo sul progetto FF, io del rendering server side e della fruibilità senza JS non mi interessa per niente). Per React isomorfo, http://bensmithett.github.io/going-i... - Claudio Cicali
Ma questo È un thread sulla lana caprina! :) - Claudio Cicali
(la cosa figa di FF è che funzionava "benone" sui nokia scassoni dell'epoca col browseraccio con js d'annata e connessione dati lentonissima. Secondo me new-FF - e tutto l'universo mondo web - deve aspirare a quell'ideale di progressive enhancement) - Francesco Mosca
allora KO che supporta IE6 per la parte light JS lato FE - calca
e per i dm come facciamo? come si fa a salvare i DM? - pm10
Ma per me infatti la scoperta dell'acqua di fuoco fu l'interfaccia iPhone sul mio primo iPhone 3G. - Braga
let it go, Francesco, let it go... - Claudio Cicali
@calca dico che deve funzionare ANCHE senza js ;) [edit] ecco, l'ha detto anche Francesco Mosca meglio di me[/edit] - cedmax
@Claudio: tu dici che si esce "se li conosci! – ti fanno uscire prima", ma anche con bootstrap ti fa uscire prima, ma poi hai i siti a stampo. Ogni tecnologia ha i suoi pro e contro e io non sono by default contro una o contro l'altra, ciascuna ha il suo use case, ma se parliamo di un clone del frienfi ipotetico secondo me la soluzione è mantenere il punto di forza di essere semplice in termini di necessità del client. perchè js in fondo è fragile per tutta una serie di ragioni e avere un'esperienza che permette di goderselo di più se supporti tutto ma di non essere tagliati fuori se no, imho è un valore incredibile - cedmax
e poi @Claudio, diciamolo, tu sei un po' hipster :D - cedmax
"Never found a new javascript framework he didn't like" - Braga
io invece apprezzo solo twitter flight, tra i nuovi (dove nuovi = dopo prototypejs) :D - cedmax
@claudio a girl can dream! - Francesco Mosca
Ora scusate, che devo sistemare il mio script di export in PHP. Oh, la pragmaticità, quanto la odio - Claudio Cicali
(a noi hipster la pragmaticità ci uccide, ci consuma) - Claudio Cicali