Jump to content

Како почети учење програмирања?

Оцени ову тему


Препоручена порука

Пошто очигледно има доста заинтересованих за то, ево циљ ми је овде да разјасним неке недоумице за апсолутне почетнике. Желео би да охрабрим све који имају жељу да се тиме баве - без разлике на пол, године и све остало - да крену и не одустају. То је "рупа у систему" која стварно може да поправи живот и отвори нове могућности.

Прво, да се разумемо - има пуно да се ради. Нема краљевског пута до науке. Само то не треба никога да обесхрабри. Пре свега, учење тих ствари је супер занимљиво једном кад се покренеш са нуле. И изузетно креативно. Једна од оних ствари које би радио и да те не плаћају, слично ко видео игрице... :) Само што ово плаћају и то добро.

Колико времена треба да се научи?

Као што негде рекох - тешко питање за мене пошто сам почео са тим као клинац. Осим тога, зависи шта хоћеш тачно. Два успешна програмера могу да се баве веома различитим областима које некад имају врло мало сличности. Обично се почетници интересују за "веб/интернет програмирање", што је исправно. То је област у коју можда може најбрже да се уђе и има пуно посла. Нека моја слободна процена је да за годину дана активног и дисциплинованог учења може да се дође на ниво који је "запошљив". Да се зна довољно да може неком тиму да приступи као "програмер почетник".

А то није пуно - већина нас овде на форуму смо већ годинама. Значи да си почео са учењем програмирања кад си дошао на форум до сад би био доктор компјутерских наука. Мислите о томе. :)

Како се тражи посао?

Па исто као и све друго. Потражиш огласе, распиташ се. Ја знам сад одмах фирму у БГ која тражи програмера, не могу да нађу. Позвали су неког дечка из Сибира се јавио да дође...  Па ти види. Осим тога, кад скупиш мало самопоуздања можеш да тражиш послове преко интернета, ту су већ могућности неограничене. Све је могуће. Не треба о томе бринути, посла има колико хоћеш. Важно је "квалификовати се за утакмицу". Фирме у принципу не траже дипломе. Важно им је шта знаш и да ли завршаваш посао. Радио сам у неколико фирми и никад ми нико није тражио диплому. У ствари, подигао сам је тек десет година након факултета кад сам се паковао за пут, једва су је нашли тамо. :)

Како да се почне учење?

Обично људи крену да траже курсеве и књиге по интернету. Погрешно. Треба ти неко ко хоће да ти помогне и одговори на почетничка питања. Није неопходно да то буде "професор" или некакав "курс" (у ствари сам помало и скептичан у вези тога, нисам сигуран да се исплати), важно је само да имаш кога да питаш кад негде станеш. Јер програмирање се не учи тако што читаш књиге или седиш и слушаш предавања. Учи се кроз примере. Значи одмах "правиш" нешто веома једноставно. Онда правиш нешто мало сложеније, па још сложеније и тако док не дођеш до нивоа који желиш. Ствар је у томе да када се прође "почетничка криза" где ти апсолутно ништа није јасно, долази се у фазу где капираш основне принципе и онда се пуно лакше напредује. Проблем је што изгледа већина људи удари у зид у самом почетку и одустане.

Шта да се учи?

"Рачунарска наука" обухвата пуно области у којима можеш да се "специјализујеш", нешто слично као медицина. Сви доктори знају неке заједничке "опште ствари", али да би био успешан обично се специјализујеш за нешто. С` тим што у програмирању нема "доктора опште праксе". Ево покушаћу да објасним конкретно.

Значи, учи се прво неки "програмски језик" - Java, C++, C# итд. Али то није довољно. Рецимо да научиш француски језик, али да би рекао на француском нешто о историји Париза, мораш да знаш историју... Значи језик је само "алат" који се онда примењује на неку "област" коју такође треба да познајеш. Тако да у C# можеш да правиш програм за Windows који се инсталира на рачунар и ради (као нпр. Word или Excel) или можеш да правиш web сајт (као Поуке) који ради "на интернету". И то су две прилично разлите ствари. Али није тако компликовано као што можда звучи, ту исто треба само неко да ти објасни основне принципе и усмери. После иде само.

Разне технологије

Обично се програмер, бар у почетку, фокусира на једну групу технологија које "иду заједно". На пример, PHP и MySQL су технологије које "иду заједно". Зашто? Зато што су оба бесплатне технологије које се развијају по моделу "отвореног кода" тј. програмери широм света бесплатно "донирају" своје време и праве те ствари. Онда C#/ASP.NET/SQL Server "иду заједно". Зашто? То су све технологије које развија Microsoft и раде на Windowsu.  И тако даље. Значи, када почнеш учење, одабереш једну од тих ствари и фокусираш се на то. Нема потребе учити "све одједном" или слично. Осим тога, кад се науче основни принципи у једном, после је много лакши пут да се научи друга група - јер су основни принципи исти. А програмски језици су често веома слични. Нпр. Java, C#, C++, Javascript су по синтакси веома слични тако да ако видиш само пар линија кода често је немогуће уочити било какву разлику.

Ето за почетак. :)

ΜΟΛΩΝ ΛΑΒΕ

Link to comment
Подели на овим сајтовима

  • Одговори 142
  • Креирано
  • Последњи одговор

Популарни чланови у овој теми

пре 3 минута, Grizzly Adams рече

Значи да си почео са учењем програмирања кад си дошао на форум до сад би био доктор компјутерских наука. Мислите о томе.

Започео сам две и по године након доласка на форум и за две и по године би требало да будем доктор рачунарских наука. 12:smeha:

Link to comment
Подели на овим сајтовима

  • Гости

Много ти хвала за овај уводни текст, надам се да ћеш овде постављати све релевантне изворе за нас који желимо да учимо програмирање...

Жив био брате.

Link to comment
Подели на овим сајтовима

Prijavljujem se na temu. :dobro:

"Ви морате упознати земаљско да би сте га волели, а Божанско се мора волети да би се упознало." Паскал "Свако искључиво логичко размишљање је застрашујуће: без живота је и без плода. Рационална и логична особа се тешко каје." Шмеман "Always remember - your focus determines your reality." Qui-Gon Jinn

Link to comment
Подели на овим сајтовима

пре 25 минута, Grizzly Adams рече

Онда C#/ASP.NET/SQL Server "иду заједно". Зашто? То су све технологије које развија Microsoft и раде на Windowsu. 

Ова прва два (не знам за SQL) су сада такође технологије отвореног кода. И нису више само за Win, баш је пре скоро била вест из MS-a о покретању SQL Server-а на Linux-у.

Питао сам се зашто C#/ASP.NET нису значајно популарнији него што со сада, нарочито у односу на ове остале језик/оквир комбинације. C# је без сумње један од најквалитетнијих језика на тржишту и развијали су га људи који су најстручнији на свету за језике и компајлере. Мајкрософт је ту једноставно разбио. Скупио је најпаментије људе и пустио их да се играју. Резултати нису изостали. И сконтао сам да је узрок мале популарности то зато што је до скора све то било прилично затворено, чак је и морало да се плаћа, а поред тога многи имају подозрење према MS-у и неповерење (због неких других лоших ствари из MS-a које немају везе са технологијом као таквом). Многи нису ни свесни колико је та компанија урадила и ради за целу индустрију јер те технолошке ствари нису у првом плану, у првом плану су продавци и менаџери. 

Лично бих за Web препоручио баш цитирану комбинацију као тренутно најоптималнију за свеобухватно учење програмерске вештине и науке. А после може Међед да вам набацује послове. :)

Link to comment
Подели на овим сајтовима

За почетак је јако битно да сте млађи од 30. Велики број компанија неће ни да чује за програмере старије од 30 година, па и ако вас позову не очекују да будете почетник. Тако да ако почињете са више од 30 година мораћете да уложите додатан труд и да покажете веће знање и умеће.

"Свуда пођи, себи дођи." - Владимир М. Миливојевић  deka.gif

Link to comment
Подели на овим сајтовима

Поздрав свима и хвала Гризли Адамс-у за постављену тему. Имао бих нека питања па ако мжете да одговорите био бих захвалан.

1. Која је пракса актуелна код прављења сајта, користећи HTML, CSS, JS ?

2. Који алат је најбољи за прављење сајта?

3. Који је посао фронт и бек девелопера?

4. Које програмирање постоји поред веб прог. ?

 

Христос Воскресе!

 

Ваистину Воскресе!

Link to comment
Подели на овим сајтовима

1. Бавим се веб програмирањем годинама. Преко интернет платформи (UpWork) је све теже наћи посао, није као прије неколико година. Радио сам 4-5 година у фирмама а затим направио мању паузу 2-3 године и сад је моје знање или застарјело или је дошло нових и "бољих" програмера на тржиште. (Ово друго је сигурно. ) Углавном посла има али имам осјећај да то није као прије...

 

2. Углавном ствари се јако брзо дешавају тако да треба пратити трендове да вас не престигну нови људи-роботи.

Али посла има, мада као и свагдје труд је јако битан. У капитализму се мораш издвојити из "масе". Говорим све ово не да бих деморалисао него да се не очекују чуда па да дође разочарење већ да се буде спреман на труд - као уосталом у свему у животу.

 

3. Такође треба пазити на психу јер затварање у себе и рачунар није природно и може имати лоше послиједице. Тражити што више разлога да се изађе, шета, трчи, дружи, комуницира са живим бићима и околином (природом по могућности). Литургија и црквена сабрања су изнад свега поменутог - што ваљда на овом форуму не треба посебно објашњавати ;) Овде би ме психолог могао допунити. Битна је ствар! 

--

 

4. Што се тиче учења, моја је грешка што сам некако увјек против система и теорија/бубања/дефиниција па сам волио учити на примјерима и самоиницијативно, да кажем по интуицији. Запостављао сам теорију и схватио да је потребно да би прошао први круг на разговору за посао потребно да, поред искуства у технологијама које фирма користи, знати солидно и теорију. Наравно теорија није циљ сама по себи, али помаже код практичне примјене....  

Ево на примјер ако желите учити Јава језик добро је научити теорију (+ примјену наравно) из штива за сертификацију од Oracle фирме ( https://en.wikipedia.org/wiki/Oracle_Certification_Program ) . Да ли ћете платити полагање 200-300е или не, то је већ ваша ствар. Али је знање из књига + припремних тестова за испит корисно.

Што се тиче PHP, ту има Zend сертификат - нисам гледао али претпостављам да је слична ствар пошто је Зенд фирма која ради на развоју PHP-a. Такође препоручујем ово релативно кратко и површно упуство да се прође и стекне дојам шта треба покрити знањем: http://www.phptherightway.com/ 

 

5. Уз теорију обавезно радите пројекте - дакле куцајте, куцајте и само куцајте. То је као тренирање у спорту. А добро би било кад се мало стекне знања да се покуша учествовати на неким Open Source пројектима који се углавном налазе на GitHub - ту се стиче искуство рада у тиму, упознају се неки стандарди типа unit testing, путање фајлова, паковање и компајлирање пројеката, алати , итд... Мало више о томе: https://medium.com/@hellomeets/unconventional-way-of-learning-a-new-programming-language-d2bee1fa378a#.fytam82fs  

Значи измишљајте и радите било какве пројекте. Сад је битно куцање и рјешавање практичних проблема а да ли ће се тај софтвер користити, мање је битно барем у овој фази. Циљ је тренинг засад.

 

6. Ако има питања пишите. :)

Link to comment
Подели на овим сајтовима

пре 16 минута, Трива рече

6. Ако има питања пишите. :)

Да ли је по твом мишљењу добар почетак ако се ураде 2-3 сајта као препорука за неко запослење у том сектору?

Христос Воскресе!

 

Ваистину Воскресе!

Link to comment
Подели на овим сајтовима

Управо сам сазнао нешто што има потенцијал да ме одврати и потпуно демотивише не само од програмирања, него од било ког посла. 

У већини земаља, сав код кога напишеш док радиш за неког, а у своје слободно време, припада том неком. 

Стварно сам до сржи разочаран у такозвано "право" и државу. Имам планове. Који год да покушам да остварим, прети ми потенцијална тужба.

Тачно су сви закони скројени да штите оне који су већ на тржишту и максимално отежају улазак другима. Држава, тужиоци, судије и адвокати су највећа мафија икада.

Link to comment
Подели на овим сајтовима

пре 35 минута, Juanito рече

Тачно су сви закони скројени да штите оне који су већ на тржишту и максимално отежају улазак другима. Држава, тужиоци, судије и адвокати су највећа мафија икада.

"The table is tilted, folks, the game is rigged..." 

 

  • Волим 1
Link to comment
Подели на овим сајтовима

пре 5 минута, Juanito рече

У већини земаља, сав код кога напишеш док радиш за неког, а у своје слободно време, припада том неком. 

Да, али само програм који напишеш по наруџбини послодавца. Ако неки додатни програм напишеш, који послодавац ти није тражио у уговору, нити накнадно, он припада само теби. Ево како је то у Србији регулисано ( али претпостављам да је слично или исто и у свијету регулисано, јер је у питању интелектуална својина чија се правила углавном изводе из међународних конвенција и поштуј усе углавном неки опште прихваћени принципи, мада разлике итекако постоје од државе до државе ), конкретно за ово што ти говориш у питању је уговор о наруџбини ауторског дјела ( а Риле и Авокадо слободно нек ме исправљају и грде ако гријешим :D ). Прво, писање програма за другог је предмет уговора о наруџбини ауторског дјела ( и програмери су аутори, јелте, умјетници ):

Spoiler

Ugovor o narudžbini autorskog djela je u osnovi ugovor o djelu, gdje se poslenik ( budući autor ) obavezuje naručiocu da mu, za naknadu, izradi autorsko djelo i preda mu u svojinu primjerak istog. Ukoliko nije ugovoreno drukčije, primjerak mora biti originalan, ali subjektivno autorsko pravo ostaje od poslenika/autora ( ukoliko nije drukčije ugovoreno ) koje je ograničeno samo pravom naručioca da objavi djelo.

Specifičnost ovog ugovora je u tome što je predmet poslenikove obaveze izrada intelektualne tvorevine, autorskog djela.

U ugovoru djelo mora biti dovoljno precizirano, ali kada je izrađeno mora biti dovoljno originalno.

 

U svim slučajevima u kojima je cilj naručioca da privredno koristi autorsko djelo koje je naručio, neophodno je da se ugovorom o narudžbi djela izričito predvidi ustupanje svih ili određenih imovinskopravnih ovlašćenja iz subjektivnog autorskog prava. Izuzetak od ovog pravila je predviđen za slučaj da se ugovor o narudžbini autorskog djela odnosi na izradu računarskog programa. Tada, ako ugovorom niej određeno drukčije, naručilac postaje i vlasnik primjerka i imalac svih autorskopravnih ovlašćenja ( jer se računarski program po pravilu naručuje radi privrednog korišćenja ).

А може ти послужити и како је регулисано стварање ауторског дјела мимо твојих обавеза према налогодавцу ( послодавцу ) из уговора о стварању ауторског дјела:

Spoiler

Autorsko djelo stvoreno radom koji izlazi van njegovog radnog zadatka ne smatra se djelom stvorenim na osnovu ugovora o radu. ( pripada onda autoru sa svim autorskopravnim ovlašćenjima )

А ево како то изгледа када је ауторско дјело ( програм ) створено управо по захтјеву послодавца, по уговору, мало детаљније:

Spoiler

Ako samim ugovorom nije predviđeno drukčije, zakon propisuje da u trenutku nastanka naručenog autorskog djela ex lege dolazi do konstitutivnog prometa isključivih imovinskopravnih ovlašćenja iz subjektivnog autorskog prava, od autora na poslodavca. Pored njih, poslodavac takođe silom zakona stiče i dozvolu da objavi djelo. Sva prava poslodavca traju samo tokom zakonom određenog roka od 5 godina od dana nastanka djela.  Pravo poslodavca na korišćenje djela je ograničeno na one oblike privredne djelatnosti kojom se on bavi, a ne smije da ustupa prava na korišćenje drugome. Izuzetak od ovog pravila je slučaj kada je izvršenjem ugovora o radu nastao računarski program. Tada ukoliko ugovorom nije određeno drukčije, poslodavac trajno postaje nosiocem svih imovinskopravnih ovlašćenja na programu.

Autor inače zadržava sva svoja ličnopravna ovlašćenja, osim ovlašćenja na objavljivanje djela, a nakon isteka roka od 5 godina može vršiti sva imovinskopravna ovlašćenja u punom obimu. Ali autor može i prije isteka ovih 5 godina, bez dozvole poslodavca, da umnoži i stavi u promet primjerke svog djela kojeg je stvorio izvršavajući ugovor o radu, ukoliko to čini u okviru izdavanja svojih sabranih djela. Kod računarskih programa imovinskopravna ovlaštenja TRAJNO prelaze na naručioca, doduše.

Takođe, autor ima pravu na posebnu naknadu od poslodavca za korišćenje djela.

Хајд, да се мало и програмерима помогне :kucanje: Значи извукли сте дебљи крај, јер све што напишете по наруџбини није ваше. Немате чак и класична имовинска права на свом програму ( иако како изгледа остају лична ауторска права која су: 1. право на назначење имена аутора; 2. право на признање ауторства; 3. право на објављивање дјела - које ипак не задржавате у овом конкретном случају; 4. право на заштиту интегритета дјела; 5. право на супротстављање недостојном кориштењу дјела ). Није хард кеш, али макар је осигурана реклама правом на назначење имена аутора ( програмера ).

Сад, ако два права правника на форуму имају шта додати или одузети или исправити овоме, па да и ми вараврски неандерталци некако помогнемо напредној програмерској аријевској раси :D

Link to comment
Подели на овим сајтовима

То су све невиђене небулозе које не могу ни да разумем. На једној страни имамо креативне људе из свих области који стварају нешто конретно и на другој вас правнике и политичаре који загорчавате људима животе. Ево, свет је остао ускраћен за нешто занимљиво што сам можда могао допринети. Могу да радим доста и да поднесем ту врсту стреса, али стрес са бироктатијом не могу. Једноставно сам изгубио битку. Одустајем од стартапа.

Link to comment
Подели на овим сајтовима

пре 2 минута, Juanito рече

То су све невиђене небулозе које не могу ни да разумем. На једној страни имамо креативне људе из свих области који стварају нешто конретно и на другој вас правнике и политичаре који загорчавате људима животе. Ево, свет је остао ускраћен за нешто занимљиво што сам можда могао допринети. Могу да радим доста и да поднесем ту врсту стреса, али стрес са бироктатијом не могу. Једноставно сам изгубио битку. Одустајем од стартапа.

Јој, заборавим често да је ово к'о клингонски...

Али чек, битно је да уговором изричито предвидиш да сва права аутор задржава. Дозвољено је, ( макар у Србији ). Питање је да ли ће твој наручилац то само прихватити. Битно је да се зна да ако ништа се о томе не каже у уговору, примјењују се ова правила што сам поставио. Значи нико није ограничен, само нек се стави црно на бијело. Могу ти сад оправдавати овакво рјешење привредним интересима, али битн оје да ово нису никаква дефинитвна ограничења и да се уговором могу промијенити. Дакле, битно је смао то имати на уму да се треба у уговору навести да сва, или нека одређена права задржава аутор.

Плус, не заборави да постоји и посебна накнада коју аутор прима од наручиоца за кориштење његовог ауторског дјела. Није све тако сиво :stadaradim: Сад, ко зна, можда је у Холандији другачије ово регулисано неким законом о интелектуалној својини, рачунарским програмима или сл. Несам чколовала.

Link to comment
Подели на овим сајтовима

Битно је да ја сад не смем ништа да напишем јер не знам чије је. Иде се и дотле да је питање које власник мојих мисли, тј идеја које ми падну на памет док сам под уговором. У суштини су ту прописи потпуно небитни, битно је ко има јачег адвоката. Чиста мафија, 100%, по дефиницији. Али да не давимо тему, ионако је небитно. Као што рекох, одустајем ја стварно немам ни снаге ни воље за ту зајебанцију. 

Link to comment
Подели на овим сајтовима

Придружите се разговору

Можете одговорити сада, а касније да се региструјете на Поуке.орг Ако имате налог, пријавите се сада да бисте објавили на свом налогу.

Guest
Имаш нешто да додаш? Одговори на ову тему

×   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.

×
×
  • Креирај ново...