Proč ten hype okolo Go?

kikina

Re:Proč ten hype okolo Go?
« Odpověď #45 kdy: 26. 08. 2018, 21:27:45 »
V poslednim roce jsem si s GO pohraval, kamarad se me ho snazil nasejlovat, tak jsem si zjistit vice. Porovnavam s Java, kterou se zivim vice nez deset let a pythonem, do ktereho jsem byl na par let dostrkan na vedlejsak.
GO:
>> ty kryso :-)

1. nelze mu uprit jistou miru elegance, ktera je apriori dana vsem nadanym zacatecnikum
>> nadany zacatecnici: rob pike, ken thompson, russ cox (C, plan9)

2. balickovaci system je strasne "hura" proste odkaz na github, bez verze a pak si to panacku pores sam, tzn peklo pokud delate rozsahlejsi projekt, ktery hromadu funkci a integraci. o rebuildu starsich projektu ani nemluve, pokud nemate ulozeny cely environment ve vcs.
>> aneb jak donutit lidi mit poradek ve verzich a gitu

3. svoji "VM" si to cpe primo do exace. V soucasne done ma 'println("hello world")' myslim par mega, pokud se to bude optimalizovat budeme mit 200MB exace, viz nize.
>> zadnou virtual masinu to nema, a poslechnete si jejich prednasku, jak udelat moderni garbage collector.

5. neni to objektove. Ackoli se o tom neustale vedou spory, tak bylo realne prokazano (za poslednich 10 let), ze bez objektoveho pritupu nevytvorite komplexni aplikaci pri spolupraci tymu 100+ lidi. (eclipse vs world)
>> kdo si mysli, ze existuje jen OO, a jine pristupy nejsou mozne, tak si musi neco nastudovat.
ctete o implicitnim inteface a reflexi
https://blog.golang.org/laws-of-reflection

6. vetsina "cool" funkci jako "chan" je v podstate k smichu. Jaky je extra rozdil mezi "chan" a Executor.createSingleThreadExcecutor()? v podstate takovy, ze ten kdo pouziva chan, nema poneti o slozitosti okoli. Navic Eecutor je interface, ktery muzete nahradit jinou implemenataci, optimalizovat etc. stejne tak gorutines, multiprocesoring (cripled) for dummies. Jak si rozsirite "chan"? - udelate nad nim nejaky wrapper a jsme tam kde jsme byli.
>> chan je super, zas video od roba pika:
https://www.youtube.com/watch?v=w2UAavudKC8

7. jsou tam pointery. dneska nikdo nechce pointery. Pokud chcete poitery, tak delate v C jednu knihovnu a optimalizujete ji na max protoze je to kriticka zalezitost s velkym dosahem, dekoder kodeku na placenem kompilatoru od intelu, etc. A ten se potom zapoji do... wait for it ... do Javy. Ne v prostredi, kde cokoliv udelate bude tak jako tak 4x pomalejsi.
>> pointer je super, docela chapu ze odstranili aritmetiku s pointery, ale pointery tu byly drive nez reference.

8. ma to C bindings. naprosta vetsina knihoven v go (krome zakladni), je nejakym wrapperem na Ceckem. a musim podotknout, ze velmi horkou jehlou sitym wrapperem. Tim padem cross jde vlastne dost dohaje a pokud se vyskytne problem, tak vyzaduje znalost C a gdb a valgrid a ... pak to nema cenu delat... viz vyse. Tohle je dost podobne pythonu.

9. vsichni rikaji, ze je lehke si udelat http server  a jak je to super. stejne tak jako v node.js. http.server(port). krasa. NE! neni to krasa. tam java zacinala tak pred 20-ti lety. jeden object request, jeden object response, rules the world. NE!NE!NE!. Na solidni aplikaci potrebujete filtery, ktere budou resit encoding, caching, session management, iln18, range requesty, multipart dissasembly.... na to si naprasite vlastni funkce a zjistite, ze ten tomcat nema tech 10 mega jen tak pro srandu. A java to umi taky http://www.simpleframework.org/doc/javadoc/index.html uplne stejne. Posledni commit nekdy pred 10-ti lety od te doby to vlastne nema chybu. Proc by melo, kdyz je to tak jednoduche. A proto to skoro nikdo nepouziva.
>> kecy v v kleci

google to tlaci asi jako miliardar tlaci svoje retardovane dite. rad si poslechnu solidni oponenturu.
>> ja javu taky pouzivam, takze tu nebudu psat neco o retardovanem diteti odkoupenem oraclem atd.
>> tohle je naprosto zbytecna poznamka od vas.


avc

Re:Proč ten hype okolo Go?
« Odpověď #46 kdy: 26. 08. 2018, 21:47:48 »
go1.11 ma zmeneny balickovaci system...,  uz mozete mat verzie.

Krysa11

Re:Proč ten hype okolo Go?
« Odpověď #47 kdy: 26. 08. 2018, 22:12:45 »
ano, po kolika letech si uvedomili, ze verze zavislosti se docela hodi?

dejme tomu tak dalsich 10, 20 let a mozna se to dostane na uroven javy.

alternativa tomcatu v go?

alternativa apache-commons v go?

alternativa springu v go?

alternativa ORM v go? nasel jsem celkem dobre udelany ORM na Postgres go-pg, ktery je asi tak 3x pomalejsi nez hibernate (ktery hodne lidi definuje jako pomalou kurvu, ne uplne nepravem) a ostatni orm frameworky, co maji universalni pripojeni na hodne sql databazi, co jsem zkousel jsou tak - bez nadsazky - 100x pomalejsi nez go-pg.

fakt si myslite, ze tech 3000 config variables v hibernate je jen tak pro srandu, ze ty lidi nemeli co delat, tak pridavali dalsi optiony. Ty desetitisice radku kodu implementujici ruzne SQL dialekty od MySQL az po MSSQL jsou tam jen pro pr.del?

alternativu simple-http v jave jsem uvedl a mame ji dlouho a vlastne ji nikdo nepouziva protoze na nic jineho nez na jednoduche api v ascii pro skolacky project se to vlastne nehodi.

umi to crosscompilaci na hodne platforem, protoze to na zadne platforme skoro nic neumi qt-go-bindings na android. zkus si to good luck. a na iOS to potom naportuj a pak za 5 let povez jak si dopadl...

a porad je to jeste pomale.

takze idelame ne-VM integrated garbage collector a bude z toho... hmm webkitgtk:D nebo 200MB binarka nebo oboji 10 hodin kompilace na 4 jadru a vysleden 200MB binarka.

jeste se toho (snad) doziju, tak se za 20 let rad podivam.

Xxxxxx

Re:Proč ten hype okolo Go?
« Odpověď #48 kdy: 26. 08. 2018, 22:33:55 »
Hibernate je ojebavka jak schovavat objekty do relacni db, rekl bych, ze je lepsi se vydat jinou cestou.

Spring potrebujete v jave, v c++ spring nemate, v go ho nepotrebujete.

Krysa11

Re:Proč ten hype okolo Go?
« Odpověď #49 kdy: 26. 08. 2018, 22:43:42 »
ano je to ojebavka, je to pomalejsi, ale pokud mate 300TB databazi s 3000 tabulek. Idealne telco prumysl si zkuste. Takove SFN od T-Mobile ma 500 tabulek jenom na to aby ukazalo klientovi (ktery ma 10000 tel cisel) statistiky. je to delane v C# a MSSQL. A ano to se instaluje na _Klientovi_.
Myslite si, ze to proste umre, protoze v go je to .... wait .... 2x pomalejsi a vlastne to jeste neni ani udelane poradne? hmm

a co budete delat cpat tam dotazy SQL natvrdo? validace, escaping, aproximace, objektifikace, vyfikundace, pojebesseztohoce.

a pokud tu nebude vladnou babis, kellner, t-mobile a ten, kdo koupi vodaphone, kterej nikdo nechce koupit... tak bude co ?
SA-58kundace? rozhodne ne nad golang.. thats for sure. Ja doufam, ze ne.


Krysa11

Re:Proč ten hype okolo Go?
« Odpověď #50 kdy: 26. 08. 2018, 23:00:17 »
Hibernate je ojebavka jak schovavat objekty do relacni db, rekl bych, ze je lepsi se vydat jinou cestou.

Spring potrebujete v jave, v c++ spring nemate, v go ho nepotrebujete.

vydat jinou cestou jakou? v go nepotrebujete ORM? pokud nemate ORM, tak nemate v kodu specifikovana data. vsechno bude jakoze direct sql a spravovat to budete sam? a vsechno to pujde do array nebo map. tak urcite...

spring resi hromadu veci od sessions po routing http requstu pres MVC framwork, intergration, messaging. a vlastne i clustering pokud tam pridate EJB nebo jine paznechty, i tomcat ma vlastni clustering, HA a vsechny buzzwords, ale jen na urcite urovni, proto tam je ten spring EJB and friends.kua

nejdriv mate request -> response a potom nad tim stavite mocne frameworky a funkce. Spousta kluku, kteri nevedi nic, si mysli, ze tim, ze si udelaji jednoduchy request->response server  nasli zlaty gral ale netusi, ze to je vec, kterou java mela uz pred 15-ti lety a od te doby na tom stavi.

urcite je mozna kritika a vylepseni se meze nekladou, ale tvrdit, ze si udelam jednoduchy http server v go a v java to nejde je pitomost non plus ultra. tam jsme zacinali.

Kit

Re:Proč ten hype okolo Go?
« Odpověď #51 kdy: 26. 08. 2018, 23:03:15 »
ano je to ojebavka, je to pomalejsi, ale pokud mate 300TB databazi s 3000 tabulek. Idealne telco prumysl si zkuste. Takove SFN od T-Mobile ma 500 tabulek jenom na to aby ukazalo klientovi (ktery ma 10000 tel cisel) statistiky. je to delane v C# a MSSQL. A ano to se instaluje na _Klientovi_.
Myslite si, ze to proste umre, protoze v go je to .... wait .... 2x pomalejsi a vlastne to jeste neni ani udelane poradne? hmm

Klidně si svůj Use Case dělej třeba v Javě nebo v něčem jiném, ale proč máš potřebu si otírat hubu o Go, které není pro tebe? Přiznej se, že se ti Go líbí, ale nemůžeš v něm dělat.

Krysa11

Re:Proč ten hype okolo Go?
« Odpověď #52 kdy: 26. 08. 2018, 23:04:41 »
a uz ma GO neco jako maven/gradle/Ivy nebo si porad mysleji, ze to nepotrebujou?

Krysa11

Re:Proč ten hype okolo Go?
« Odpověď #53 kdy: 26. 08. 2018, 23:07:12 »
ano je to ojebavka, je to pomalejsi, ale pokud mate 300TB databazi s 3000 tabulek. Idealne telco prumysl si zkuste. Takove SFN od T-Mobile ma 500 tabulek jenom na to aby ukazalo klientovi (ktery ma 10000 tel cisel) statistiky. je to delane v C# a MSSQL. A ano to se instaluje na _Klientovi_.
Myslite si, ze to proste umre, protoze v go je to .... wait .... 2x pomalejsi a vlastne to jeste neni ani udelane poradne? hmm

Klidně si svůj Use Case dělej třeba v Javě nebo v něčem jiném, ale proč máš potřebu si otírat hubu o Go, které není pro tebe? Přiznej se, že se ti Go líbí, ale nemůžeš v něm dělat.

a ten use case pro go?

Krysa11

Re:Proč ten hype okolo Go?
« Odpověď #54 kdy: 26. 08. 2018, 23:14:45 »
hele web4soft.cz internet shani GO vyvojare. Je to sice v Jeseniku, nastupni budes mit tak 25hrubo, ale zase muzes hipsterit v Go. Lepsi pozici verejne jsem nenasel. Zato java+hibernate+spring 100k+ je plna zadek. 

Kit

Re:Proč ten hype okolo Go?
« Odpověď #55 kdy: 26. 08. 2018, 23:39:26 »
Klidně si svůj Use Case dělej třeba v Javě nebo v něčem jiném, ale proč máš potřebu si otírat hubu o Go, které není pro tebe? Přiznej se, že se ti Go líbí, ale nemůžeš v něm dělat.
a ten use case pro go?

Ten tě nemusí trápit. Vždyť se o Go ani nezajímáš - jenom ho hejtuješ a šíříš FUD.

Krysa11

Re:Proč ten hype okolo Go?
« Odpověď #56 kdy: 27. 08. 2018, 00:44:57 »
:) gg no re man

kkt1

  • *****
  • 796
    • Zobrazit profil
Re:Proč ten hype okolo Go?
« Odpověď #57 kdy: 27. 08. 2018, 06:15:45 »
Kite, kdy tedy pouzijes go? Na takove to domaci lepeni kodu? Nebo na takove to “nic lepsiho neumime” lepeni kodu? Zajima me to z pohledu investora, nevidel jsem zatim zadny realny projekt v go (pro zakaznika).

Youda

Re:Proč ten hype okolo Go?
« Odpověď #58 kdy: 27. 08. 2018, 07:31:26 »
Kite, kdy tedy pouzijes go? Na takove to domaci lepeni kodu? Nebo na takove to “nic lepsiho neumime” lepeni kodu? Zajima me to z pohledu investora, nevidel jsem zatim zadny realny projekt v go (pro zakaznika).

Vygoogli si, co je to NATS, Kubernetes, Gitea, Prometheus.

Osobne pouzivam 3 z techto projektu, kegove uplbe vsechny

Youda

Re:Proč ten hype okolo Go?
« Odpověď #59 kdy: 27. 08. 2018, 07:32:33 »
Kite, kdy tedy pouzijes go? Na takove to domaci lepeni kodu? Nebo na takove to “nic lepsiho neumime” lepeni kodu? Zajima me to z pohledu investora, nevidel jsem zatim zadny realny projekt v go (pro zakaznika).

Vygoogli si, co je to NATS, Kubernetes, Gitea, Prometheus.

Osobne pouzivam 3 z techto projektu, kegove uplbe vsechny

s/kegove/kolegove