Gnome goes JavaScript

Probajte nesto isprogramirati na touchscreenu. :smiley:

Nece biti ni open source. Nece biti next big desktop app-a. Nece ni SanelZ napraviti to jer mora i on od necega zivjeti. Pod ovim ne mislim da se samo od closed source softvera moze zivjetu.
I open source projekti zive od necega - na pocetku od entuzijazma ljudi a poslije od nekog novca. Linusa placa LinuxFoundation da radi na kernelu. Da se linux ne koristi - ne bi bilo interesa da LinuxFOundation uopste postoji te da iko placa ljude koji ga razvijaju te kao mnogo drugih projekata koji se slabo koriste odumro bi.

Ja znam da neces ti prestati koristiti, niti cu ja prestati koristiti najvjerovatnije - ali mainstream hoce. Drugim rijecima - kad si vidio NEXT BIG GOPHER STRANICU ? Eh tako ce biti i sa desktop aplikacijama. Da se razumijemo - nevazan je navijacki dio (i moje preferiranje dynamically typed jezika) - ja vjerujem da ce se ovo desiti bez obzira zelio ja to ili ne.

Nisam odavno vidio Gopher stranicu ali je zato neki dan izašao novi FreeDOS :slight_smile: Ljudi razvijaju Amiga aplikacije :slight_smile: AROS se aktivno razvija, Haiku, ReactOS. Debian se builda za m68k arhitekturu. itd. Broj desktop korisnika će i za 10 godina biti nekoliko redova veličine veći od broja Linux korisnika - a vidi nas ovdje :slight_smile: U svakom slučaju, totalno neopravdan strah za desktop. I komparacija ti je suvišna, SanelZ je zadnjih 10 godina zaradio možda šteku cigara na svojim aplikacijama koje su fantastične. Ne vidim šta će se to promijeniti u budućnosti, doći će Bill u kancelariju i slomiti mu sve olovke?

BTW odlična ideja, osnivam udruženje dekstop PC korisnika www.desktop.org.ba - ko će sa mnom :slight_smile:

A sto ne “desktop.ba” (cak je i recenica :D). Uglavnom +1 :smiley:

Ove touch dzidze na stranu, meni ne bi smetalo da imam onaj Minority Report ekran i rukavice :smiley:

[quote]
BTW odlična ideja, osnivam udruženje dekstop PC korisnika www.desktop.org.ba - ko će sa mnom :)[/quote]

Evo, ja bih u udruženje.
Ovako su počele sve velike stvari pa rekoh da se priključim na vrijeme :slight_smile:

Elem;
Što se tiče Bila ne znam šta da kažem. Evo juče sam prodao svoj stari računar. Na njemu je Ubuntu 12.04 LTS Znam da će ovaj što kupuje računar doći za koji dan jer nešto ne štima.
Da je Windows u pitanju, vidio bi kod komšije al ovako ima neki čudni OS koji nigdje nije vidio.
Bil je učinio da svaka baba u svakoj kancelariji i u svakoj banci u BiH može da se smatra naprednim korisnikom operativnog sistema koji koristi. Zato sam i emigriao u Linux svijet, jer sam tu zaštićen od poređenja sa babama :slight_smile:
Naravno, od nečeg se mora živjeti i mislim da i za to ima još dovoljno prostora. Ne vode svi putevi u Visual Basic Rim.

@Vedran,

slazem se ja s tobom u potpunosti. Jedino je belaj kad treba platit stan, hranu i slicno a LISP programera ne trazi niko na svijetu :smiley:

Salu na stranu, moj savjet je poceti sa onim sto se dobro placa a vremenom se usavrsavati u ono sto se ultimativno zeli biti. Jos jedna prednost jezika kao sto su Java, C# i PHP je sto ce relativno lako naci posao junior programera. Cini mi se da pozicija junior C programera i ne postoji, odnosno da je izraz “junior C programer” oksimoron.

[quote=adioe3]

Ono sto su meni rekli (sto mi danas donosi hljeb) je ista mudrost koju cu tebi prenijet - uzmi i uci ono sto ti se svidja. Ako ti se svidja nece ti bit muka ucit i cackat i istrazivat. Ako mislis da je to C, nemas sta propitkivat mene ni ostale na forumu.
Tja, kad sam ja pocinjo sa PHPom mislim da mi je zajko reko da je PHP s*anje jedno 10 puta prije nego je zapamtio kako mi ime uopste.

Podigni negdje kopiju K&R knjige “The C Programming Language” al je nemoj uzimat ko bibliju! Ako nesto zapinje u toj knjizi slobodno to preskoci i proguglaj na netu tutorijala. Knjige tipa “Head First C” (http://shop.oreilly.com/product/0636920015482.do) takodjer nisu losa ideja. Nedavno je izasla i “21st Century C” (http://shop.oreilly.com/product/0636920025108.do) koja ce ti poprilicno ubrzat proces jer objasnjava kako da pravis Makefile, kako da koristis pkg-config, sta je valgrind i slicne stvari koje su nauka sa Saturna kad tek pocinjes.

IMHO, C je odlican za znat jer svaki library za sve sto mozes zamislit ima u C-u, mogu se pisat extenzije za skoro sve u C-u (npr. mozes napisat php modul za nesto sto ti treba) ili se moze iskoristit bruka gotovih i zapakovanih rjesenja. Neki generalni koncenzus je da je C++ stepenica vise, ne zbog jezika, nego zato sto je (navodno) lakse pisat desktop aplikacije u C+±u, ali (skoro) cijeli GNOME je napisan u C-u (kao i vecina lightweight window managera) tako da ne vidim sto to ne bi radilo.[/quote]

Znam da je ovo iskreno i najbolje, ali sa znanje C-a tesko je unovciti bez godina iskustva. I pitam iskusnije ljude poput vas par ovdje, zato sto je vrlo tesko naci balans izmadju stvari koje bi volio raditi i stvari koje mozes unovciti.
Daleko od toga da treba biti materijalista, ali ipak mislim da se mora naci balans. Budimo realni svima je posao iz snova sysadmin.

[quote=Amar]

Ako mislis od programiranja hljeb zaradjivat, i ako ga mislis zaradjivati u BiH, onda ce ti C pomoci otprilike onoliko koliko i doktorat iz Zulu jezika i knjizevnosti.

BiH - C#
EU - Java

Da se moze zaraditi i sa drugim jezicima, moze, ali ovo dvoje je sto trziste najvise trazi. Pocni s tim pa kada budes imao koliko-toliko siguran izvor primanja, onda mozes za svoj ceif sta ti volja.[/quote]

Objektivan odgovor htjeli mi to priznati ili ne. Jest da je rijetkost vidjeti linuksasa kako preporucuje C# :D. Hvala.

[quote=vedran]
Ako ti je cilj da što prije počneš zarađivati, onda definitivno VisualStudio i C# jer ćeš vrlo brzo imati konkretne rezultate, čak i ako ne razumiješ potpuno šta se dešava. Slično je i sa PHPom.
A ako želiš da budeš dobar programer koji pravi stabilan, pouzdan, brz softver, onda je dobro krenuti sa što nižeg nivoa. Što kaže carousel vidjećeš u svemu C, odnosno shvatićeš kako je razmišljao autor neke funkcionalnosti višeg jezika i tek onda možeš odlučiti da li je to pravi izbor za neki problem. Može i neka kombinacija, znači naučiš C#a dovoljno da zaradiš hljeb, a u slobodno vrijeme čačkaš pomalo C. Ja bih krenuo sa K&R knjigom a za nejasnoće slobodno pitaj ovdje jer će ih biti :slight_smile: Poslije toga preći na neku knjigu iz OOPa i nešto na temu algoritama i struktura podataka.
JavaScript kao prvi jezik je kao da učiš čovjeka da vozi na batmobilu, mislim negdje u tom haosu ima i vožnje :)[/quote]

Poslije svih odgovora, ja sam izvukao bas ovakvu pouku. Da bi trebalo startati sa Javom ili C# iako nisam totalni pocetnik. A za dubinu i razumijevanje i naravno za svoju dusu uciti i razumijevati C. Pozdrav svima

Pouka price:

Evo da se i ja tuspasim :slight_smile:

Prvo, decki hvala na spominjanju u pozitivnom kontekstu…

S ovim se ne bi slozio, evo i razloga. Naime, iz cega surfamo pa onda cime razvijamo softver, administriramo servere, editujemo dokumente? Kompletna stvar da desktop odumire je ‘hype’ nekih tamo glasnih pojedinaca (nista u kontekstu postova ovog foruma) koji tvrde da su tableti/telefoni rjesenje za sve nase probleme. Iskreno mislim da se ovim vracamo u kameno doba: jeste li ikad probali napisati veci tekst na mobitelu? Sad usporedite koliko vam treba da to uradite u Vi/Emacs-u.

Evo i malo statistike: na FOSDEM-u 99% raje je bilo sa laptopima; sjecam se 2-3 likova (to ukljucuje i mene jer mi se baterija ispraznila) koji su malo prosurfali telefonom. Sasvim sam siguran da je svako od njih imao barem jednog androida u dzepu.

Ja ne znam odakle ljudima ideja da je javascript najpopularniji (i najrasprostranjeniji, barem kako Gnome ekipa tvrdi) jezik. Tacno, oni koji ga reklmiraju su najglasniji, ali pogledajmo u cemu su napisani kerneli, drajveri, biosi, na kraju krajeva i aplikacija koja vrti taj isti javascript. Btw. prema TIOBE indeksu (onaj isti koji agregira podatke prema pretrazivacima), Visual Basic (ne .NET) je daleko ispred javascripta, a i Lisp/Pascal su mu blizu.

Dalje, kad ljudi tvrde da ga ‘haman svi znaju’ je najobicnija glupost: hajdmo brzo, koliko je [] + []? (hint, pogledajte WAT video) Jezik je toliko lose dizajniran, da je C roket sajens u poredjenju. Najbolji primjer je kompleksan kod. Radio sam u par navrata sa malo vecim kodom (napisanim od strane vise developera, pismenih i polupismenih) i to kino je PITA za odrzavanje. Ponekad moras pokrenuti 2-3 razlicita browsera (ili isti browser ali razlicitih verzija) samo da vidis da li se nesto interpretira kako treba, jer kome trebaju syntax/runtime greske. Debugger na nivou gdb-a ili Studia? Ma sta ce nam to.

S ovim se ne bi slozio :wink: Trenutno su (vjerovali ili ne) LISP/Cobol developeri jako dobro placeni jer ih nema puno. Naravno, oglase za ovakve poslove neces vidjeti na standardnim stranicama jer im je domena usko specijalizovana (npr. semanticko prepoznavanje) i jako su trazeni od velikih firmi (pogodi, Google je jedan od najvecih Lisp korisnika). Trebam li spominjati koliko tu i tamo ima softvera koji jos uvijek radi nakon 20-tak godina i kojeg treba odrzavati.

Ooo i te kako! Popularnost MK802 (pa generacije poslije), pa onda oni kineski mali laptopi od 60$ itd. samo govore da ce desktopa biti jos uvijek. Btw. ako mislite da je Android na ovim uredjajima dovoljan, probajte ga koristiti sa misem i tastaturom :wink:

Dobro, lose sam se izrazio. Momak je pitao u kontekstu nekoga ko tek pocinje sa programiranjem, znaci nekoga ko tek treba da uci neki programski jezik. U tom smislu je spomenuti C ili LISP promasaj jer ce mu trebati godine iskustva da bi dosao u poziciju da ga neko zaposli kao C ili LISP developera. Dok sa druge strane kao junior Java ili junior PHP programer moze poceti odmah raditi.
Naravno da su senior LISP programeri trazeni jer ih ima vrlo malo. Ali za vrijeme potrebno da se dodje do senior pozicije treba i od necega zivjeti.

svi jezici kuhaju istom vodom samo je neka vise neka manje zamucena, ko nema fakultativnu nastavu (sto uopste i nije bitno, doduse tu se i nauci nesto kazu, ja sam znao sve prije faxa )
i dobro uci autodiktativno skuzice da je svaki jezik primitvan dok je sintaksa negdje laksa negdje teza za svariti, ja bih preprucio pocetnicima da pocnu od bash, pa perl, onda basic (vb,asp,ado), php, html u kombinaciji (c je po meni za pocetnike kao kad neko hoce da skace bez padobrana sa visine od 10.000 m) sva tri + 1 nabrojana i onda covjek uglavnom skuzi sta zna gdje su mu granice i sta voli neko web neko system neko nista :), ko zna i jedan jezik dobro moze sa njim napraviti (skoro) sve , kao sa svakim alatom tajna uspijeha je u majstoru

Ja onda ne kontam zasto je na fakultetima (PMF i ETF) C uvod u programiranje? Po meni je C za pocetak.

[quote=Sanel]Evo da se i ja tuspasim :slight_smile:
S ovim se ne bi slozio, evo i razloga. Naime, iz cega surfamo pa onda cime razvijamo softver, administriramo servere, editujemo dokumente? Kompletna stvar da desktop odumire je ‘hype’ nekih tamo glasnih pojedinaca (nista u kontekstu postova ovog foruma) koji tvrde da su tableti/telefoni rjesenje za sve nase probleme. Iskreno mislim da se ovim vracamo u kameno doba: jeste li ikad probali napisati veci tekst na mobitelu? Sad usporedite koliko vam treba da to uradite u Vi/Emacs-u.
[/quote]

Pod “desktop odumire” nisam mislio da form factor laptopa nece postojati. Moja poenta je da ce sve vise aplikacija biti web orijentisano a ne klasicne gui aplikacije. Kad kazem desktop odumire mislio sam na to.
Vec sad mozes programirati na webu
http://codiad.com/
https://c9.io/
https://koding.com/

Onda web2py ima ugradjen primitivni IDE sam “u sebe” sto je jako prakticna ideja.

Ajax bazirani terminali su davno bili prisutni te sam ih koristio kad me ssh izda na npr. slicehostu.
To ja pokusavam da kazem rijecima “desktop odumire”. Sto bi sad pravio neko neku native aplikaciju kada web postaje sve mocniji i mocniji. Evo dobio sam developersku jedinicu www.leapmotion.com (linux sdk jos nije gotov) senzora. Lakoca integracije web aplikacija sa njihovim senzorom me fascinirala. Jos uzmes googleov native client http://code.google.com/p/nativeclient/ i tvoj
http://www.google.com/intl/en/chrome/devices/chromebooks.html#ac-c7 chromebook je spreman :slight_smile:

Sto se tice velikih projekata - znanje i disciplina programera (i menadzmenta) je tu puno vaznija od samog jezika. Uporedi npr. linux kernel i android platformu. Linux kernel je u C-u jeziku koji ima jako mnogo problema poput tih koje si naveo u javascriptu i koji nije ni blizu safe kao java a s druge strane linux kernel je odlican projekat i puno laksi za odrzavati ljudima koji rade - s druge strane android je smece sa aspekta kvalitete koda i rezultata odrzavanja (ovo govorim kao android korisnik. developer i fan).
Drugim rijecima - talentovanoj ekipi oko linux kernela nije smetalo sto je jezik ovakav ili onakav - uspjeli su odraditi i jos rade odlican posao, dok s druge strane androidovcima se vrlo cesto desi da promijene potpuno funkcionalnost postejeceg apija bez mijenjanja interfejsa tako da mnoge aplikacije pocnu padati i ne raditi, a IDE ti izgenerise 5 klasa samo za hello world koji treba da podrzi sve postojece verzije iako je jezik puno “bolje dizajniran” i alati jako razvijeni.

Javascript se tek sad polako siri van weba te vjerujem da ce se i kvalitet okolnih alata poboljsati uskoro … a TIOBE tesko da ista znaci :slight_smile:

Zato sto su fakulteti u BiH odron i zato sto se sistem skolovanja u BiH nije previse promjenio od sredine 80-tih.

Vani ucis PHP i Javu. C eventualno dobijes pri kraju studija (od 6. semestra pa gore) i to samo ako si eksplicitno izabrao programerski smjer.

Historical reasons. Elem, ovaj clanak objasnjava poprilicno moje misljenje oko ucenja programiranja (ako tek pocinjes ucit programirat): http://prog21.dadgum.com/165.html
A C je dobar i radi + kao sto Amar rece, prag da postanes dobro placen developer znaci da moras imat nesto godina iskustva s njim. Kad ti ga fakultet gurne odma prvu godinu (a pretpostavimo da ces ic i na MSc) tu vec mozes rec da znas za C oko 5 godina (Catch-22 :)).

Koliko ja vidim, samo jedan mali dio aplikativnog softvera postaje web orijentisan, i to software za kog ima smisla da bude web orijentisan tipa management software, reporting i slicno. Stavise, ja sam misljenja da sada (a i u nadolazecoj eri) web ce se koristit vecinom za sta se koristi i dan danas: servise. Aplikativni softver je druga zvijer - onaj dan kad AutoCAD (full-featured) bude radio u browseru ja cu se okrenut u grobu.

Sad, moje misljenje na stranu, slazem se da se pokusava ic u tom smjeru: prave se OSovi bazirani oko browsera te ultimativno se tezi ka koka-jaje problemu gdje ti je browser=operativni sistem (ChromeOS, FirefoxOS, SanelZ/OS :D). Razlog vise zasto se gura da sve bude web-based je to da firme opet dolaze u poziciju gdje mogu terorizirat korisnike: meni se ne svidja sta radis sa mojim softwareom, ukinem ti 'ladno account. Dzaba sto si ti kupio licencu, ja kazem “ne ne ne, to ne spada u TOS” i 'ladno te blokiram.

Zato što fakultet nije uvod u programiranje nego srednja škola :slight_smile: Ko dođe do faxa a da nije programirao ranije njemu je teško, ali zaista na faxu nema vremena uz sve ostalo što moraš stići u bolonjske tri godine. A zašto C na ETFu, pa zato što npr. već na drugoj godini dobiješ mikrokontroler da programiraš, pa nećeš ga valjda u Javi programirati :slight_smile: ili objašnjava se kako radi memory management u virtuelnoj mašini (isto na drugoj godini), kako ćeš to objasniti ako nisi nikad ručno radio memory management?
Kaže onaj blog “web programerima to ne treba”, tačno zato web programera ima na bacanje a inženjeri su traženi :slight_smile:

Edit: a baš me interesuje kako bi radio linkovane liste, stabla, grafove u jeziku koji nema pointera (ili ih ima ali su tako zamaskirani da je iskreno puno lakše skontati šta se dešava u Cu ili C++u gdje eksplicitno koristiš onu zvjezdicu)

[quote=adioe3]Historical reasons. Elem, ovaj clanak objasnjava poprilicno moje misljenje oko ucenja programiranja (ako tek pocinjes ucit programirat): http://prog21.dadgum.com/165.html
A C je dobar i radi + kao sto Amar rece, prag da postanes dobro placen developer znaci da moras imat nesto godina iskustva s njim. Kad ti ga fakultet gurne odma prvu godinu (a pretpostavimo da ces ic i na MSc) tu vec mozes rec da znas za C oko 5 godina (Catch-22 :)).[/quote]
Čitao sam ovaj tvoj blog i nije mi jasan, da li ovaj tvrdi da se na nekim fakultetima programiranje radi isključivo kao teorija bez zadataka (u što mi je iskreno teško povjerovati) ili bi on da se programiranje radi isključivo kroz zadatke bez ikakve teorije? U drugom slučaju opet: kakve zadatke? Ako se zadatak ne može riješiti bez korištenja neke programske konstrukcije, razlika je samo u stilu hoćeš li prvo učeniku objasniti konstrukciju pa dati zadatak ili ćeš ga prvo pustiti da se pati sa zadatkom. Ako se može riješiti onda šta je svrha? Pravićeš “programere” koji su samo power-useri nekih predefinisanih alata tipa Access, jQuery i sl. i to da izvineš ja ne smatram programerom.

To me podsjeća na ono tipično pitanje sa uvodnog programiranja “a moramo li mi koristiti for petlju da ispišemo sve brojeve od 1 do 100? zašto ne mogu samo navesti te brojeve pod navodnicima?” - eto zato što ja kažem :smiley:

Dobro na PMF-u je zapravo Java prva pa C tek na drugoj kao proceduralno programiranje.

@Vedran: Ne kazem ja da nije tako kao sto pises, ali plan i program fakulteta je takav kakav je.

P.S. Po bolonji oba faksa su 4 a ne 3 godine.