România
Roportal.ro

Sfaturi legate de programare :)

Început de Razvan_drumea, Sâm 26 mai 2012 · 4 răspunsuri · 8.940 vizualizări

Razvan_drumea2 mesaje#1

Salutare,

Am 27 de ani si anul acesta am decis sa ma inscriu la o facultate de informatica (particulara ca se termina fara batai de cap :roll: ) de unde am nevoie doar de diploma iar intre timp(adica in cei 3 ani) as vrea sa invat doua limbaje de programare destul de bine ,Java si PL/SQL. E un fel de "hai sa o luam de la inceput" fiindca a venit criza in constructii iar facultatea mea de instalatii in constructii nu ma mai ajuta de niciun fel pentru a evolua, mari perspective nu sunt si mi-am propus sa urmez un alt drum.Am decis sa fac acest lucru deoarece lucrez de 2 ani pentru o companie de IT pe un post entry-level ,ma descurc destul de bine motiv pentru care am si fost promovat de la postul de operator la cel de team-leader si as vrea sa imi dezvolt o cariera in domeniu (pe postul pe care il ocup acum in companie nu se cere programare si nici in departament nu se face insa avem alte departamente care se ocupa cu asa ceva).As dori sa mentionez faptul ca ale mele cunostinte de programare sunt nule si de aceea am nevoie de cateva sfaturi:

- pot invata Java si PL/SQL fara sa am alte cunostinte de programare? am ales aceste doua limbaje deoarece am vazut ca sunt printre cele mai cautate pe piata muncii iar SQL-ul il folosesc si la job plus ORACLE ENTERPRISE MANAGER, TOAD care au legatura stransa cu bazele de Oracle monitorizate de catre noi ;

- daca raspunsul la prima intrebare imi este favorabil, adica in cazul in care o pot lua de la 0 cu aceste doua limbaje as dori sa imi lasati ceva nume de carti(sau link-uri) pe care sa le folosesc la inceput pentru a prinde bazele programarii apoi treptat banuiesc ca voi sti ce am de facut.

Va multumesc in avans pentru raspunsuri!

O zi frumoasa!

Razvan D.

Pippo8.725 mesaje#2

Bazele programarii sunt simple:

1 AND 1 = 1

1 AND 0 = 0

0 AND 1 = 0

0 AND 0 = 0

1 OR 1 = 1

1 OR 0 = 1

0 OR 1 = 1

0 OR 0 = 0

Daca pornesti de aici, de la a intelege bazele bazelor, afli tot ceea ce este important in cel mai scurt timp astfel incat sa devii destul de expert cat sa te descurci cu orice complicatie (limbaj de prog) de pe "piata muncii". Daca pornesti de unde vrei sa pornesti, o sa fii o alta resursa din categoria superficiala a "pietei muncii". Presupun ca nu muncesti de placere la fel ca majoritatea si ca nu le inveti de placere la fel ca majoritatea. Dar daca te atrage si o faci din placere, calea de urmat este sa pornesti de la 0 si 1 al computerelor si sa-ti dedici cativa ani majoritatea timpului tau. Daca nu te atrage si o faci doar pt ca trebuie, ti-ai calculat bine si ai toate sansele sa ajungi una din obisnuitele si limitatele "resurse umane" de pe "piata muncii". :)

Daca inveti bazele logice ale computerelor si programarii in mod generalizat (adica in esenta, pornind de la elementele de baza pentru a face apoi legaturile cu aspectele compuse), apoi pricepi si Java si C++ si C# si toate celelalte complicatii in cel mai scurt timp. Este precum in fizica: cunoscand legile de baza (in cazul nostru bazele computerului si a logicii lui), poti oricand calcula problemele complexe (in cazul nostru sa intelegi imediat orice limbaj de programare).

Java e un bun punct de plecare, dar nu este suficient daca nu-ti pui intrebarea "Ce este sub Java spre baza computerului?" si "Cum ajunge totul de la 0 si 1 la modelele si rezultatele complexe pe care le observam?"

-------------------------

Recapituland: daca vrei sa ajungi cu adevarat mai departe atat ca om cat si ca expert in domeniu care sa se descurce cu orice limbaj si mediu de programare (si cu conditia necesara in acest caz sa o faci de placere), investigheaza pana la 0 si 1 (bitii) computerului si inapoi. Daca in schimb vrei un loc linistit si specific ca "resursa umana" mai specializata doar din necesitatea de a duce taraba vietii inainte in conditiile cele mai usoare, fortat de mediul social, ai ales deja bine Java si SQL. :) poate n-ar fi rau sa te orientezi in loc de Java spre C# considerand ca Microsoft face ravagii impunandu-si sistemele. Oricum, cu Java, C# si SQL se gasesc fara probleme pozitii mai inalte de sclavi ("resurse umane") pe plantatie ("piata muncii"). :) Numai bine!

Cine intelege cum functioneaza lucrurile in esenta lor, poate deveni expert in detalii in cel mai scurt timp. Iar esenta computerelor este pe la 0 si 1 si apoi in sus spre detaliile Java, SQL si altele.

Editat Sâm 26 mai 2012 15:15

Razvan_drumea2 mesaje#3

Salutare,

Tin sa te contrazic un pic deoarece chiar o fac cu placere :) .Faptul ca vreau sa ajung sa si fac bani din asa ceva si sa imi dezvolt o cariera mi se pare ceea ce trebuie deoarece inseamna ca imbin utilul cu placutul.Nu mi-ai raspuns totusi foarte pe intelesul meu fiindca daca tot pornesc la un drum trebuie sa am si de unde porni iar aici ma refer la un material de studiu.Sunt dispus sa iti urmez sfatul dar pentru asa ceva zi-mi o carte sau niste link-uri ceva :).Multzam frumos!

O zi frumoasa!

Razvan D.

Pippo8.725 mesaje#4
Razvan_drumea a scris:

Salutare,

Tin sa te contrazic un pic deoarece chiar o fac cu placere :) .Faptul ca vreau sa ajung sa si fac bani din asa ceva si sa imi dezvolt o cariera mi se pare ceea ce trebuie deoarece inseamna ca imbin utilul cu placutul.Nu mi-ai raspuns totusi foarte pe intelesul meu fiindca daca tot pornesc la un drum trebuie sa am si de unde porni iar aici ma refer la un material de studiu.Sunt dispus sa iti urmez sfatul dar pentru asa ceva zi-mi o carte sau niste link-uri ceva :).Multzam frumos!

O zi frumoasa!

Razvan D.

In cazul in care o facem de placere si ne intereseaza sa intelegem corect, ar trebui sa-ti dedici timp experimentarii esentialului, considerand ca pornesti de la 0. Nu cunosc carti sau situri cu tutorials. In schimb ar trebui sa studiezi manualele scolare (sperand ca sunt bine facute) care prezinta bazele programarii si sa experimentezi cateva programe in C++ de exemplu, incepand cu probleme simple, precum cele din manualele de scolare (presupun ca ar trebui sa fie acolo exact ce trebuie pt a capata putina experienta cu logica in general). Apoi dezvolti experimentele si la putin assembler si operatii logice pe biti. In tot acest timp reflectezi asupra intrebarii "ce este de fapt programarea si computerul?" si "cum ajunge (pas cu pas) un circuit electronic cu doua state 0 si 1 sa produca structura logica atat de complexa pe care o vedem?". - cautand raspunsurile, bineinteles.

In concluzie, cauta manualele scolare care prezinta bazele programarii, ale logicii computerului, sau alte materiale care o descriu - sper eu pentru tine bine realizate. Oricum, indiferent ce studiezi, cauta continuu bazele, esenta logica, fundamentalul, si o sa intelegi, ba o sa-ti dai si seama care documentatie si descrieri sunt bine sau mai prost facute.

Oricum o sa-ti necesite o multime de timp, trebuie sa te dedici. Ideal ar fi sa incepi sa lucrezi full-time cu probleme mai simple in Java sau altceva, pe langa altii care stiu deja.

------------------------

Pentru indicatii asupra unor carti bune de baza sau link-uri, poate se ofera cineva de pe forum care cunoaste. Eu habar n-am ce este pe piata. Sper doar ca manualele scolare sa fie bine facute in spiritul intelegerii adevarate si complete, si nu in spiritul superficial si de usurare a comertului sclavagist cu resurse umane. :) Spun asta, pt ca am spicuit unele carti pe care eu unul le-am considerat gresit realizate si neindicate pt cineva ce vrea sa inteleaga clar si esential cum sta treaba.

------------------------------

Revin cu o explicatie: multe materiale te invata astfel incat sa te bage cat mai repede in detalii care servesc pietei de sclavi a muncii, si nu te invata in asa fec incat sa-ti deschida mintea asupra intregului. E adevarat ca ajungi si asa sa intelgi cat de cat, diferenta o fac anii. Experienta pe care multi oameni o acumuleaza in 10 ani ocolind pe cai gresite, se poate acumula de exemplu in 2 ani mergand direct la tinta. Despre asta vorbesc cand ma refer sa cauti esenta si sa nu te lasi dus de felul in care ti se prezinta lucrurile in carti, sa nu te opresti la ce citesti si la experimentele care ti se prezinta, fara sa-ti pui ulterioare intrebari.

De exemplu, poti invata mecanica unei masini privind piese descompuse si obisnuindu-te cu fiecare in parte, incercand sa le potrivesti, ajungand eventual sa asamblezi masina, lucru care sa zicem ti-ar lua 10 ani. Sau poti in alternativa sa-ti clarifici ideea de "masina", ansamblul ei, si astfel sa deduci si sa intelegi mult mai repede care este locul fiecarei piese si limitele ei, asambland masina dupa sa zicem doar 2 ani in loc de 10.

Asa si aici. Daca vrei intr-adevar sa ajungi sa cunosti bine lucrurile, nu trebuie sa studiezi piesele (SQL, C#, PHP, etc) ca pe lucrul cel mai inalt pe care il ai de studiat, ci trebuie sa studiezi ansamblul pieselor, sistemul de functionare al masinii (computerul de la logica de baza 1 si 0 si cum formeaza el complexitatea). "Piata muncii" te invata piese separate tinandu-te in ignoranta asupra ansamblului, in schimb tu ca sa fii tare si deasupra ei, trebuie sa studiezi si sa intelegi ansamblul, inclusiv partea harware, nu doar software.

--------------------------------------------------

Ti-as sugera pt experienta, sa te apuci tu singur sa faci un program al tau. Gaseste o idee de program, ceva ce ai vrea sa vinzi sau distribui pe piata, si apuca-te sa-l faci, vezi ce iese. Si studiezi si inveti pe masura ce-ti realizezi propriul software. Este modul ideal de a invata in cel mai scurt timp toate fazele vitale prin care trece realizarea unui software pe piata muncii. Astfel capeti experienta si de proiectant, si de designer, si de programator, si de tester si de patron :) (dar in tot acest timp cat faci lucrurile astea, nu uita ce am explicat mai sus: ochii in permanenta indreptati spre esential)

Editat Sâm 26 mai 2012 17:47

← Înapoi la Programare