NormJS - back to basic HTML

Točno, ali zato ovdje nabrajaš milijarditi postotak projekata koji su uspjeli, a ne znaš ove koji nisu. Nije da obeshrabrujem, ali da bi uspio moraš biti puno koncizniji. Odnosno, moraš moći objasniti nekom u toliko vremena dok se zajedno vozite u liftu. Ako to ne možeš - projekt ti neće uspjeti čak i da je nešto zaista posebno korisno i dobro, a da ne govorimo za NormJS se trenutno ne vidi neka luda potražnja.

Možeš ići uokolo i govoriti ljudima kako imaš sjajan projekt, ali su činjenice:
a) da ga ne znaš dobro objasniti
b) da nije sigurno kako uopće postoji realna potreba zajednice za time

Potrošit ćeš vrijeme, racionalizirat ćeš si to na početku kako ti je ovo passion projekt i kako to moraš ganjati, a onda kako vrijeme odmiče će ti ogorčenost pretvoriti tu misao u onu drugu: “nitko me ne kuži kako sam genijalan”. U svakom slučaju, ako ćeš već raditi projekt koji je neostvariv i osuđen na propast - za svoje dobro uhvati se nečeg što će ti uzeti manje vremena. Ili guraj svoje, kako hoćeš. :slight_smile:

1 Like

Pa propustio si dio da je meni nebitno hoće li to uspjeti na globalnoj razini. Meni je bitno da na taj način ustabilim svoju razvojnu okolinu. To mi je glavni target…i on ne ovisi o nikakvoj sreći i kerefekama. Ako ću raditi i ustrajati, uspjet ću to.

P.S. i da je ovo tema o tome može li normJS globalno zaživjeti, sigurno nebi bio toliko siguran u svoje tvrdnje…niti bi tvrdio da može. Niti sam negdje do sada u temi tvrdio da može.

Ja sam samo pokušavao objasniti sa kojim funkcionalnostima normJS može doprinjeti zajednici. To je isto kao da objašnjavam kako carpooling može doprinjeti zajednici, što ne znači da će moj carpooling servis uspjeti…niti je uspio, hehe.

Ali to ne znači da generalno carpooling nema svoju svrhu ako moj nije uspio…eto, zato je blabla car uspio i dokazao da ima svrhu. :slight_smile:

Ono što ja vjerujem sa velikom sigurnošću da će normJS u budućnosti postojati, možda ne moj i ne pod tim nazivom. Ali zajednica će prirodnim putem težiti u takvom smjeru…što se vidi kroz cijelu računalnu povijest. NormJS se tako zapravo već hrpu puta desio kada god je nastala nova sintaksa koja je povezala parcijalne nepovezane sisteme i podigla programiranje na novu razinu. I PHP je ništa drugo nego normativ koji je uveo jedan čovjek i koji je hrpu raznih libriray-a koje je osobno koristio povezao da rade pod novom sintaksom kao jedna utemeljena cjelina. I isto je nastao iz njegove osobne potrebe, jer ga je sebi napravio. :slight_smile:

Ne vidim kako možeš istovremeno tvrditi da je osnovna prednost “velika zajednica koja se drži tog frameworka”, a onda reći da ti je dovoljno da sam sebi ustabiliš razvojnu okolinu. Odnosno, što ti znači standard ako ga se jedini držiš?

Pa ima više benefita osim velike zajednice.

Fora je u wraperima koji su mi se pokazali kao nešto uber pozitivno u praksi programiranja. Jednom kada nešto wrapaš, dobio si finu centralnu točku koja je pod tvojom kontrolom.

A kroz normJS ću, ako ništa drugo, wrapati razne komponente i dovesti pozive metoda na standard kakav želim da budu.

I sad što se dešava…recimo ja koristim Semantic framework, pa tako onda i njihov dropdown. I ima tu nekih ograničenja na toj komponenti, te nešto bi radije drugačije posložio itd…
No recimo da koristim nj. dropdown takav kakav je i da se to povlači svuda po codu aplikacije. Nakon par godina razvoja neke aplikacije, to je već puno Semanticovog koda unutar aplikacije. (Jel, oženilo me za Semantic)
I što ako tada odlučim preći na neki drugi dropdown, ili ako odlučim njihov prepraviti? To je onda problem.

Ovako ako si u startu wrapao nj. dropdown …Semanticov code ulazi u aplikaciju samo unutar tog wrapera i ne pojavljuje se nigdje drugdje. Te ako u tom slučaju odlučim nakon par godina preći na drugi dropdown, dovoljno je da unutar wrapera ubacim drugi dropdown, i da unutar metoda tog wrapera izvršavam metode novog dropdowna. Što nije tako zahtjevno prekrojiti…a cijela aplikacija će nakon toga dalje raditi kao da se ništa bitno nije desilo, a radit će sa novim dropdownom.

Tako da kada imaš wrapere, postaje relativno nebitno dali nekakvo smeće code ulazi u wrapere. Bitno je da to smeće ne ulazi po svuda u aplikaciju, jer ga se kasnije onda teško riješiti. Ovako ako i imaš smeće unutar wrapera, samo njega bolje presložiš kada uhvatiš vremena, a ostatak aplikacje je bio zdrav i prije i poslije.

Tako da ono što nudi normJS, ja imam te benefite ako se i samostalno držim takve prakse. I ja već imam tu praksu da koristim tuđe stvari kroz wrapere i da na taj način tuđe komponente normaliziram na sintaksu koja je kompatibilna sa mojim dijelovima…što mi daje finu stabilnost. Samo što to sada želim podići na jednu puno veću razinu, sa normJS platformom. Čisto da se tu može uključiti više ljudi, ali i da je lakše deklarirati pravila koja očekujem i da ja poštujem. Jer ako pravila nisu dobro dokumentirana i testovima zahtjevana, onda je i meni teško ispoštovati standard koji postavljam pred sebe da ga sve moje komponente moraju držati.

A ako će se pored mene tu uključiti i drugi ljudi, to će samo širiti benefite svakom novom članu kako će se zajednica širiti.

Jao koliko filozofije i hype-a oko jedne proste stvari.Evo pokusati cu kodom prikazati, da ne bih pisao.Za primjer cu koristiti nesto kao React.

Moja table komponenta ima sljedeci API

<MyTable data={...} hasFilter={...} onRowClick={...} />

Sa druge strane normativ ili ti ga sta vec od @bozoou kaze da table komponenta moze iskljucivo ovako izgledati

<NormTable model={...} searchable={...} onRowClick={...} />

Da bih ja ispospostovao Norm standar ja trebam uraditi nesto ovako

import MyTable from './MyTable';

function NormTable(props) {
    return (
       <MyTable data={props.model} hasFilter={props.searchable} onRowClick={props.onRowClick} />
   );
}

Ukratko :joy:

Eee, kad je davno neko na temi (ja) rek’o da treba čitati a ne maštati™.

A gdje sam ja (u startu) tvrdio da je normJS kompliciran…to vi cjelo vrijeme tvrdite, heh. (Možda nakon godinu dana što niste pokazali volju da ga shvatite i sve ste okretali na sprdanciju ideje…onda sam odustao pojašnjavati vam.)

Sama suština upravo je tako jednostavna … a jednostavnost je vrlina.

Doduše, nije baš tako jednostavno…nameću se neke problematike.

Pošto imaš jedan modularni sistem gdje različite komponente ne rade ajmo reći na “istom interesu” …mogu dolaziti od različitih developera različitih nauma.

A kako si sve normatizirao, tako svaka komponenta zna kako može upravljati drugim komponentama, i može praviti “sranja” ako poželi.

Tu se pojavljuje onda jako bitna stvar da se uvedu i permissioni i da se kod uključivanja nove komponente ona proizvoljno ograniči kojim sve drugim komponentama može pristupiti.

To je doslovice ista stvar kao kada instaliraš novi app na mobitel, koji je ništa drugo neko komponenta. A mobitel je već pun raznih komponenta…i sustav mobitela te pita koju sve dozvolu ćeš dati toj novoj komponenti.

Tako i normJS mora moći biti fleksibilan u tom smjeru da ograniči ponašanje svake komponente po želji onog koji ih instalira u svoj sustav.

Tako da iako je wrapanje poprilično prosta i jednostavna stvar, cijeli ovaj sustav nije baš tako prost i jednostavan. Ali nije ni bauk kako ste ga prvo doživjeli.

P.S. Inače sam ja zamislio i da taj inicijalni odabir sintakse udovoljim i željama forumaša. Vjerujem da nas ima ovdje nekoliko koji bi mogli sugestirati dobre ideje pisanja sintakse iz osobnih iskustva i problematika sa kojima smo se sreli.

Ali u tom smjeru očito nije bilo šanse za pomakom xd xd.

Svejedno vjerujem da kad platforma za odabir/regulaciju sintakse bude gotova, da ćete vi biti korisni gosti tamo. :slight_smile:

Sorry ali ti si taj kome je objasnjavanje u totalnom kur*u :smiley:
I onda su drugi krivi sto ne razumiju tvoj nacin objasnjavanja - manje filozofije, vise koda i svi bi davno shvatili sta zelis reci.
Razumijem da je to tvoj nacin objasnjavanja, ali kao sto vidis kod vecine to ne prolazi.

Toliko rijeci i filozofije oko neke varijacije decorator patterna :smiley:

Sretno sa projektom, svoja misljenja o svemu tome ne bih iznosio jer nema smisla svakako :smiley:

Kod vecine velis …pa da, jedno cca 6 vas je sudjelovalo, jorgovan je djelomično kapirao od starta…ovaj momak shvatio iz prve o čem je riječ …tako da je postotak sa prolaznom ocjenom jedno 20%. Nimalo neočekivana brojka…prolaznost na mnogim fakultetskim ispitima je mnogo manja, pa to ne znači da profesor ne zna objasniti.

Ne kažem da mi to ide idealno…ali ga i ti sada kenjaš. Da sam samo tako stavio kod wrapera, ostalo bi milijun neodgovorenih pitanja. Te čemu to služi, te ovo…te ono.
A plus sve to, ja jesam prikazao kodom tu trivijalnu razinu registracije komponente, pa nije pomoglo. Jedino je tpojki zapela za oko Perina komponenta, koju ni dan danas ne može preboliti što je Perina a ne od Jhon Smitha. Al dobro, on uvijek nađe fokusirat i sprdat ono najmanje bitno…od drva, nevidi šumu.

Osim toga sam i otvorio temu samo da ukažem na benefite warpera, pa je tpojka sveo diskusiju na to da je wraper a ne warper. Opet on ono najbitnije uoči, heh.

Napravio sam u svakom slučaju koliko sam mogao da prenesem ideju i benefite iste…razumijem frustraciju kada tek nakon godinu dana dođe iz pete u glavu.

Drago mi je što ti se sad čini tako jednostavnim, probaj tpojki onda objasnit da je skroz nebitno za priču što je Perina komponenta u igri. xd xd

1 Like