Jump to content
IGNORED

Hoću da budem programerka


Recommended Posts

1 hour ago, bags said:

Ja sam imao prosle godine prvi kontakt sa Fortranom. Namestao kolegi HYSPLIT  https://www.ready.noaa.gov/HYSPLIT.php i pokusavao naci neki bridge za .NET i Fortran.

Tada sam video kako moze Fortran moze biti performantan uz veoma citljiv kod.

 

 

 

Zanimljivo je da je fortran standard poslednjih godina preuzela neka mladja ekipa koja pokusava da zadrzi sustinu, a da ga istovremeno modernizuje i prilagodi potrebama u trecoj deceniji 20. veka. Mozda najveci problem jezika je sto i dan danas nema standardnu biblioteku za operacija nad stringovima.

 

A radi se i na nekoj interpretativnoj skript verziji - to bi znatno olaksalo debuggovanje i slicne rabote. Volim ja fortran, ali moram priznati da sam itekako ljubomoran kad vidim kakvi su sve alati dostupni u drugim jezicima.

Link to comment

 

Kad smo vec na temi: Hvaljeni Isus i Marija! Nasao sam jebeni bug koji sam na neki nacin trazio punih godinu dana!!! Nije pravi bug u pitanju, vise greska u originalnom dizajnu koja ide deceniju unazad. Ili u duhu naslova topica, "ne, necu da budem programeka". Hvala lepo dosta je bilo. Idem da okopavam kukuruze negde.

  • Wub 1
Link to comment
1 hour ago, bags said:

Sta je bilo sa onim Quasarom uopste. Firma iza njega (paralleluniverse) je dosta obecavala ai izgleda da su propali.

Nikad čuo - još jedna tekovina godina provedenih radeći u Clojureu ;)

Od rektivnih biblioteka koristio sam samo RxJava i Reactor. 

Link to comment
1 hour ago, laser lotus said:

Nikad čuo - još jedna tekovina godina provedenih radeći u Clojureu ;)

Od rektivnih biblioteka koristio sam samo RxJava i Reactor. 

 

Oni su poceli prvi eksperimentisati sa laganim threadovima:

http://web.archive.org/web/20130601144756/http://blog.paralleluniverse.co/post/49445260575/quasar-pulsar

 

Ovde ima dokumentacija:

http://docs.paralleluniverse.co/quasar/

 

Radili su oni dosta i sa Clojureu:

https://hn.algolia.com/?dateRange=all&page=0&prefix=true&query=paralleuniverse&sort=byPopularity&type=story

 

Edited by bags
Link to comment

Preteča Loom-a i laganih thread-ova mislim da je zapravo Kilim.

Koristili smo ga u našem projektu punih 8 godina, onda smo tražili zamjenu jer Kilim nikada nije baš imao veliku bazu korisnika i morali smo sami da se snalazimo kad god bi mijenjali Java verzije, što je znalo biti prilicno bolno.

Čekao sam neko vrijeme, kontaktirao Loom grupu (mislim da je baš začetnik Quasar-a otišao tamo ako se dobro sjećam) ali nisam mogao više pa smo na kraju zamijenili Kilim sa reactive/web flux.

I moram priznati što se tiče performansi reactive je bio čak malo bolji, bar u našoj upotrebi.

 

Ali definitivno je Kilim bio zanimljivo iskustvo, mada se sada lakše diše jer ne moram nikome objašnjavati zašto se glavni motor projekta zasniva na univerzitetskom projektu nekog tamo studenta. 😂

 

Link to comment

aaaaaaa u pravu si - Ron Pressler vodi Loom a on je istovremeno i autor Quasara. Slušao sam njegov intervju prije par mjeseci za Inside Java i tu je pričao kako je razvijao svoju biblioteku (čije sam ime naravno zaboravio - očigleno je to bio Quasar) i kako je kasnije prešao u Oracle. Inače Inside Java ima par baš finih intervjua. 

Link to comment
On 15.9.2021. at 4:06, chandra said:

 

Da. Ono sto ja vidim je da su se prirodnjaci masovno zalepili za python, drustvenjaci za r.

 

 

Da potvrdim ovo i iz mog okruženja. Do 2012. je medju eksperimentalcima čestičarima bio C++, a od tada sve više python. I programski paket CERN-a za čestičare (ROOT) koji je baziran na C++ sada ima python interface. Ja sam počeka da koristim python u sličnom periodu, odgovaralo mi je da dizajniram server, klijente, module za analizu, komunikaciju sa bazom podataka u realnom vremenu itd. u jednom programskom jeziku koji se lako uči. Mislim da je ovo jedan od razloga zašto prirodnjaci više koriste python, a drušvenjaci R. R je odličan za analizu podataka i statistiku, ali ako treba raditi više od analize (servere, ETL - čime se društvenjaci obično ne bave, plus analizu  - što nam je zajedničko), lakše je sve uraditi u python-u, nego u kombinaciji R plus neki drugi jezik (e.g node.js) da odradi ostale stvari. Kako eksperimenti nemaju novca da zaposle programere, nego se sve uči u letu, jedan jezik koji se uči brzo i omogućava ovu široku primenu ("sve u jedan") je python. 

Quote

Btw, vidim da python preuzima sve veci deo trzista i od jave. Sta je tu objasnjenje? Moj utisak je bio da su learning curves slicne, a da je java community toliko veliki da ce jos dugo biti imun na uplive drugih jezika? Ili jednostavno broj java programera stagnira, a pajtonovci rastu?

 Stackoverflow ima survey svake godine o najviše korišćenom jeziku medju developerima, mislim da je python u top 3 poslednjih godina. U poslednje dve godine počine da bude popularan Rust ( od 4% sad je na 7%), moj prijatelj ga koristi i oduševljen je brzinom u odnosu na python.

Edited by mei
  • +1 2
Link to comment
22 minutes ago, mei said:

 

Da potvrdim ovo i iz mog okruženja. Do 2012. je medju eksperimentalcima čestičarima bio C++, a od tada sve više python. I programski paket CERN-a za čestičare (ROOT) koji je baziran na C++ sada ima python interface. Ja sam počeka da koristim python u sličnom periodu, odgovaralo mi je da dizajniram server, klijente, module za analizu, komunikaciju sa bazom podataka u realnom vremenu itd. u jednom programskom jeziku koji se lako uči. Mislim da je ovo jedan od razloga zašto prirodnjaci više koriste python, a drušvenjaci R. R je odličan za analizu podataka i statistiku, ali ako treba raditi više od analize (servere, ETL - čime se društvenjaci obično ne bave, plus analizu  - što nam je zajedničko), lakše je sve uraditi u python-u, nego u kombinaciji R plus neki drugi jezik (e.g node.js) da odradi ostale stvari. Kako eksperimenti nemaju novca da zaposle programere, nego se sve uči u letu, jedan jezik koji se uči brzo i omogućava ovu široku primenu ("sve u jedan") je python. 

 Stackoverflow ima survey svake godine o najviše korišćenom jeziku medju developerima, mislim da je python u top 3 poslednjih godina. U poslednje dve godine počine da bude popularan Rust ( od 4% sad je na 7%), moj prijatelj ga koristi i oduševljen je brzinom u odnosu na python.

 

Ja sam svasta nesto probao poslednjih godina, jedino sto me je bas zapalilo je Julia:

https://julialang.org/

 

Sintaksa mi se ne svidja (stvar navike na fortran, pa i ukusa), ali fantasticno je brza (sav number cracking je u fortranu ili c-u). Meni je najveci problem kod svih tih novih jezika sto ne znam koliko ce trajati. Nagledao sam se raznih kodova u raznim jezicima na koje su ljudi potrosili godine, a danas su neupotrebljivi. (skoro kao pravilo: sto su vise user-friendly, to krace traju).

 

 

 

Fast

Julia was designed from the beginning for high performance. Julia programs compile to efficient native code for multiple platforms via LLVM.

Dynamic

Julia is dynamically typed, feels like a scripting language, and has good support for interactive use.

 

Reproducible

Reproducible environments make it possible to recreate the same Julia environment every time, across platforms, with pre-built binaries.

Composable

Julia uses multiple dispatch as a paradigm, making it easy to express many object-oriented and functional programming patterns. The talk on the Unreasonable Effectiveness of Multiple Dispatch explains why it works so well.

General

Julia provides asynchronous I/O, metaprogramming, debugging, logging, profiling, a package manager, and more. One can build entire Applications and Microservices in Julia.

 

Open source

Julia is an open source project with over 1,000 contributors. It is made available under the MIT license. The source code is available on GitHub.

Edited by chandra
  • +1 1
Link to comment

da se ubacim, sa zakašnjenjem, u onu priču o Pythonu.

ja nisam kodirao nikad u njemu, ali jesu timovi koje sam vodio u proteklih nekoliko godina.

i mahom svi su nezadovoljni.

to nema veze sa samim jezikom, već sa primenom.

mi pravimo industrijske platforme a on prosto nije za to. Java tu debelo šije.

dakle sve stvari kao što su multithreading, logovanje, monitoring, integracija sa data sourecvima (SQS, Kafka...), CI/CD pipeline... to je sve muka. nije nemoguće, ali ili je na granici ili baš nezgodno.

te stvari zrele platforme kao što su Java ili .Net imaju odavno rešeno i to prirodno funkcioniše.

mi smo trenutno prinuđeni da koristimo Python jer nam je Machine Learning algoritam logično pisan u tom jeziku.

i mi smo to lepo to izolovali u zaseban (mikro)servis, Docker-izovali... ali opet pravi kaskadno problem ostatku platforme. u nekim trenutcima deluje kao da imaš blackbox u sred nečega što si fino namestio.

 

skaliranje je poseban problem, najviše zbog multithreadinga.

u principu zavšiš sa 1 CPUom dodeljenim 1 Dockeru sa Python servisom.

u zavisnosti od situacije mi imamo 6-12 CPUova po AWS instanci.

a load u nekim talasima ume da nam bude i po 50k paralelnih zahteva za obradom.

uzmeš i podeliš i skontaš da ti za tako nešto treba 4000 instanci servera.

to baš mnoooogo para košta.

sa Javom to isto prođe na recimo 4 instance.

tako da imamo neke defanzivne bafere u queueovima, izvukli nešto veću paralelizaciju pomoću https://docs.gunicorn.org/en/stable/index.html.

al opet je sve to na mišiće i sa ne baš sjajnim rezultatima.

 

na stranu matematika i data, čak i za neke prljave i brze stvari verujem da je Python dobar izbor, mada ja lično tu i dalje preferiram Bash  :P :D

 

 

  • +1 3
Link to comment
  • 4 weeks later...

Opet ne znam da li je pravi topic za ovo pitanje, ali da li postoji nacin da nadjem neki popis/spisak firmi (i njihovih imejl adresa) iz Srbije koje rade razvoj web i moblinih (Android) aplikacija, a da nisu neke ogromne firme koje rade samo skupe projekte? Sto bi rekli, mala i srednja preduzeca, 10, 20 zaposlenih, koje bi mozda bile zainteresovane za neki relativno manji projekat? 

Link to comment
  • 3 months later...

ne znam gde bih ovo, pa ajde ovde da pitam. ima li neko od vas iskustva sa courserom? hocu da malo formalizujem znanje iz jedne programerske podoblasti kojom se bavim. koliko su ti kursevi korisni / jednostavni za pracenje? tamo daju neke procene koliko kurs traje, 3 meseca, 6 meseci, meni je to predugacko i smor, treba mi intenzivni crash course, mogu da odvojim dve nedelje za to. moze li to tako da se prodje?

 

i kako se to uopste placa? flat rate po kursu?

Link to comment

Da se požalim ovde. Ja sam pre 10tak godina batalio programiranje ali, pošto sam ostao u industriji, makar površno sam upoznat sa trendovima u arhitekturi, infrastrukturi, itd. i iskreno sve je postalo bolesno prekomplikovano (a mislim da znam i zašto, ali to nije tema).

 

Elem, json je format kojim sam se poslednjih x godina bavio. Kad sam prešao u novu firmu prošle godine, ispostavilo se da data vendor (jedna od najvećih fin institucija na svetu) šalje podatke u xml formatu. Dobijamo xml fajlove od po 700 giga na FTP s kojima nešto treba napraviti. OK, rekoh sebi, mislio si da je XML mrtav, na veze, isti kurac ko json samo više overheada, performanse će patiti al šta sad.

 

I onda kroz seriju sastanaka s podizvođačima shvatim da nijedna njihova aplikacija ne podržava xml nativno. Znate šta podržavaju? CSV. U 2022. godini. Oni dakle moraju prvo da naprave neki način da n-nivovski xml od nekoliko stotina giga spljošte u n csv fajlova, pa tek onda nešto s tim mogu da rade. Pri tome nisu baš neke bajate firme, ovi jedni su cloud native managed data storage. Pa jbt. Osećao sam se ko da me neko teleportovao u 2001.

  • Wub 1
  • Haha 1
Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...