Šta da učim?

S

system

Guest
Zdravo, ranije sam pomalo ucio C za pocetak ali sam morao da batalim jer imam preslabu masinu.
Uskoro cu da dobijem novu.

Pa me zanima gde mogu da vidim koji jezik cemu sluzi, znam samo da je html za web i to je to.

Pre par nedelja sam bio na nekom amaterskom meetup, znam organizatore pa su me malo upoznali sa timom, bukvalno imaju neku arednjoskolku koju su za 6 meseci zaposlili. Ne znam sta radi…

Zanimalo me je da odradim linux administraciju ali ne verujem da cu imati € za test.

Najvise me brine koliko ce mi ustvari trebati matematika jer bas malopre mi izlazi reklama za neke kurseve a tipa alogiritmi, matrice itd.
 

Commander

Well-known member
Staff member
Joined
Jan 13, 2012
Messages
9,235
Reaction score
530
Zanimalo me je da odradim linux administraciju ali ne verujem da cu imati € za test.
kakav test?
 
Last edited:
S

system

Guest
Ma hteo sam da polozim onaj test za system administratora, video sam da ima u Bugarskoj, u Beogradu je skuplje…
 

Prizma

Active member
Joined
Feb 13, 2017
Messages
461
Reaction score
76
Najvise me brine koliko ce mi ustvari trebati matematika
У 90% случајева, нећеш имати потребу да икада сабереш два броја, осим ако не радиш машинско учење или програм за неке физичаре по церновима и насама…

За развој веба, ситуација је прилично нерашчишћена. Негде ће ти као почетнику тражити да знаш html, css и јаваскрипт, а негде ћеш морати да знаш неки озбиљан framework ( за Javu или C#) и да радиш са базама података… Варира веома.

Чист C данас није толико тражен (не кажем да је лоше знати га), али може да буде губљење времена, осим ако ти то само по себи није циљ. C++ углавном користе за игрице и озбиљне програме ( за андроид је опет Java).

За линукс можеш да учиш bash, а python добро дође.
 
Last edited:

Commander

Well-known member
Staff member
Joined
Jan 13, 2012
Messages
9,235
Reaction score
530
Pardon, mislio sam na RHCSA i RHCSE.
RH sertifikati se polažu samo onda kada:
  1. Ti firma u kojoj već radiš plati ili traži da imaš položen sertifikat
  2. Nemaš pametnija posla u životu
  3. Hoćeš da fasciniraš nekoga da si dao stotine i stotine € na sertifikat koji ćeš bar u Srbiji retko kome pokazati.
Ja znam nekoliko ljudi koji u životu nisu prišli RH-u a imaju iskustva veća od samih predavača na tim kursevima.
 
Last edited:

mracni_covek

Member
Joined
Aug 6, 2017
Messages
72
Reaction score
0
Uči Linux. Nauči ga da ga znaš u prste.
Nauči šta je DNS i kako radi, kako da instaliraš i podesiš svoj DNS servere sa BIND9, šta je i kakvih vrsta firewall-ova ima. Nauči PHP, napravi sajt sa bazom i hostuj ga na Linuxu. Onda mu proveravaj bezbednost, vidi šta možeš da poboljšaš. Moraćeš znati i sql. Apache je još uvek ubediljivo najzastupljeniji, ali Nginx je odličan, može biti reverse proxy i load balancer za koji ćeš morati da znaš i HAProxy, i metode i algoritme load balacinga.

Za pisanje skripti moraćeš naučiti Python i naravno Bash.
Nauči kako da automatizuješ poslove.
U modernu administraciju sve više ubacuju i alate za configuration management, pa mnogi pomešaju i DevOps i SysAdmina, a sve češće po oglasima za posao vidim da objedinjavaju to u jednu poziciju. Svakako ne ginu ti i Ansible, Puppet, Chef. Da bi pratio trendove, što moraš da radiš u IT struci, nauči i Terraform za provisionig mašina, IaaS.

To je ono što mi ovako pada na pamet, ima tu još stvari koje treba da se znaju.

Kad sve to naučiš, onda ide teži posao, a to je da ganjaš oglase. Tu ako te pozovu na razovor, braniš sve ovo što si učio prethodnih godinu dana.

Sertifikati neće mnogo pomoći, bar ja mislim tako. Najbolji način je da dokažeš znanje pred regruterima, da li to znanje ima ili nema papir, to je manje bitno. Mnoge firme uplaćuju sertifikovane kurseve svojim zaposlenima, i ako se ukaže takva prilika, zašto je ne iskoristiti. Ako nemaš posao, uludno je bacati pare u to.

Meni su na jednom razgovoru pričali kako se stalno traže SysAdmini. Problem im je što kad se jedan admin zaposli u neku firmu, ne izbija iz nje. Tako da teško nalaze iskusne, ali koliko ja vidim ne mili im se baš da traže neiskusne. Prvih godinu dana će ti biti najteže, i dok ne nađeš posao, i kad ga nađeš. Onda samo održavaj korak sa tehnologijama. I da, nastavljaš da učiš.

Ako sam kasno odgovorio za postavljača teme, valjda će biti od pomoći ko se sledeći zapita šta i kako 🙂
 
Last edited:

Zeyn

Member
Joined
Feb 17, 2016
Messages
251
Reaction score
1
Zdravo, ranije sam pomalo ucio C za pocetak ali sam morao da batalim jer imam preslabu masinu.
Kakva li je to mašina kad je preslaba za razvoj u C-u 😃
 
Last edited:

100

Member
Joined
Mar 16, 2018
Messages
410
Reaction score
6
To je ono što mi ovako pada na pamet, ima tu još stvari koje treba da se znaju.
Dobro, nisi morao baš sve što ti je palo na pamet da pomeneš, ako ga tvoj post ne preplaši čoveku će trebati eoni da sve ovo lepo nauči. 😃
 
Last edited:

merin

Member
Joined
Mar 11, 2017
Messages
177
Reaction score
3
Evo sa reddita, za još malo plašenja:

This is what I tell people to do, who ask me “how do I learn to be a Linux sysadmin?”.

  1. Set up a KVM hypervisor.
  2. Inside of that KVM hypervisor, install a Spacewalk server. Use CentOS 6 as the distro for all work below. (For bonus points, set up errata importation on the CentOS channels, so you can properly see security update advisory information.)
  3. Create a VM to provide named and dhcpd service to your entire environment. Set up the dhcp daemon to use the Spacewalk server as the pxeboot machine (thus allowing you to use Cobbler to do unattended OS installs). Make sure that every forward zone you create has a reverse zone associated with it. Use something like “internal.virtnet” (but not “.local”) as your internal DNS zone.
  4. Use that Spacewalk server to automatically (without touching it) install a new pair of OS instances, with which you will then create a Master/Master pair of LDAP servers. Make sure they register with the Spacewalk server. Do not allow anonymous bind, do not use unencrypted LDAP.
  5. Reconfigure all 3 servers to use LDAP authentication.
  6. Create two new VMs, again unattendedly, which will then be Postgresql VMs. Use pgpool-II to set up master/master replication between them. Export the database from your Spacewalk server and import it into the new pgsql cluster. Reconfigure your Spacewalk instance to run off of that server.
  7. Set up a Puppet Master. Plug it into the Spacewalk server for identifying the inventory it will need to work with. (Cheat and use ansible for deployment purposes, again plugging into the Spacewalk server.)
  8. Deploy another VM. Install iscsitgt and nfs-kernel-server on it. Export a LUN and an NFS share.
  9. Deploy another VM. Install bakula on it, using the postgresql cluster to store its database. Register each machine on it, storing to flatfile. Store the bakula VM’s image on the iscsi LUN, and every other machine on the NFS share.
  10. Deploy two more VMs. These will have httpd (Apache2) on them. Leave essentially default for now.
  11. Deploy two more VMs. These will have tomcat on them. Use JBoss Cache to replicate the session caches between them. Use the httpd servers as the frontends for this. The application you will run is JBoss Wiki.
  12. You guessed right, deploy another VM. This will do iptables-based NAT/round-robin loadbalancing between the two httpd servers.
  13. Deploy another VM. On this VM, install postfix. Set it up to use a gmail account to allow you to have it send emails, and receive messages only from your internal network.
  14. Deploy another VM. On this VM, set up a Nagios server. Have it use snmp to monitor the communication state of every relevant service involved above. This means doing a “is the right port open” check, and a “I got the right kind of response” check and “We still have filesystem space free” check.
  15. Deploy another VM. On this VM, set up a syslog daemon to listen to every other server’s input. Reconfigure each other server to send their logging output to various files on the syslog server. (For extra credit, set up logstash or kibana or greylog to parse those logs.)
  16. Document every last step you did in getting to this point in your brand new Wiki.
  17. Now go back and create Puppet Manifests to ensure that every last one of these machines is authenticating to the LDAP servers, registered to the Spacewalk server, and backed up by the bakula server.
  18. Now go back, reference your documents, and set up a Puppet Razor profile that hooks into each of these things to allow you to recreate, from scratch, each individual server.
  19. Destroy every secondary machine you’ve created and use the above profile to recreate them, joining them to the clusters as needed.
  20. Bonus exercise: create three more VMs. A CentOS 5, 6, and 7 machine. On each of these machines, set them up to allow you to create custom RPMs and import them into the Spacewalk server instance. Ensure your Puppet configurations work for all three and produce like-for-like behaviors.
Do these things and you will be fully exposed to every aspect of Linux Enterprise systems administration. Do them well and you will have the technical expertise required to seek “Senior” roles. If you go whole-hog crash-course full-time it with no other means of income, I would expect it would take between 3 and 6 months to go from “I think I’m good with computers” to achieving all of these – assuming you’re not afraid of IRC and google (and have neither friends nor family …).
 
Last edited:

mracni_covek

Member
Joined
Aug 6, 2017
Messages
72
Reaction score
0
Dobro, nisi morao baš sve što ti je palo na pamet da pomeneš, ako ga tvoj post ne preplaši čoveku će trebati eoni da sve ovo lepo nauči. 😃
alt
merin:
Evo sa reddita, za još malo plašenja:

This is what I tell people to do, who ask me “how do I learn to be a Linux sysadmin?”.

  1. Set up a KVM hypervisor.
  2. Inside of that KVM hypervisor, install a Spacewalk server. Use CentOS 6 as the distro for all work below. (For bonus points, set up errata importation on the CentOS channels, so you can properly see security update advisory information.)
  3. Create a VM to provide named and dhcpd service to your entire environment. Set up the dhcp daemon to use the Spacewalk server as the pxeboot machine (thus allowing you to use Cobbler to do unattended OS installs). Make sure that every forward zone you create has a reverse zone associated with it. Use something like “internal.virtnet” (but not “.local”) as your internal DNS zone.
  4. Use that Spacewalk server to automatically (without touching it) install a new pair of OS instances, with which you will then create a Master/Master pair of LDAP servers. Make sure they register with the Spacewalk server. Do not allow anonymous bind, do not use unencrypted LDAP.
  5. Reconfigure all 3 servers to use LDAP authentication.
  6. Create two new VMs, again unattendedly, which will then be Postgresql VMs. Use pgpool-II to set up master/master replication between them. Export the database from your Spacewalk server and import it into the new pgsql cluster. Reconfigure your Spacewalk instance to run off of that server.
  7. Set up a Puppet Master. Plug it into the Spacewalk server for identifying the inventory it will need to work with. (Cheat and use ansible for deployment purposes, again plugging into the Spacewalk server.)
  8. Deploy another VM. Install iscsitgt and nfs-kernel-server on it. Export a LUN and an NFS share.
  9. Deploy another VM. Install bakula on it, using the postgresql cluster to store its database. Register each machine on it, storing to flatfile. Store the bakula VM’s image on the iscsi LUN, and every other machine on the NFS share.
  10. Deploy two more VMs. These will have httpd (Apache2) on them. Leave essentially default for now.
  11. Deploy two more VMs. These will have tomcat on them. Use JBoss Cache to replicate the session caches between them. Use the httpd servers as the frontends for this. The application you will run is JBoss Wiki.
  12. You guessed right, deploy another VM. This will do iptables-based NAT/round-robin loadbalancing between the two httpd servers.
  13. Deploy another VM. On this VM, install postfix. Set it up to use a gmail account to allow you to have it send emails, and receive messages only from your internal network.
  14. Deploy another VM. On this VM, set up a Nagios server. Have it use snmp to monitor the communication state of every relevant service involved above. This means doing a “is the right port open” check, and a “I got the right kind of response” check and “We still have filesystem space free” check.
  15. Deploy another VM. On this VM, set up a syslog daemon to listen to every other server’s input. Reconfigure each other server to send their logging output to various files on the syslog server. (For extra credit, set up logstash or kibana or greylog to parse those logs.)
  16. Document every last step you did in getting to this point in your brand new Wiki.
  17. Now go back and create Puppet Manifests to ensure that every last one of these machines is authenticating to the LDAP servers, registered to the Spacewalk server, and backed up by the bakula server.
  18. Now go back, reference your documents, and set up a Puppet Razor profile that hooks into each of these things to allow you to recreate, from scratch, each individual server.
  19. Destroy every secondary machine you’ve created and use the above profile to recreate them, joining them to the clusters as needed.
  20. Bonus exercise: create three more VMs. A CentOS 5, 6, and 7 machine. On each of these machines, set them up to allow you to create custom RPMs and import them into the Spacewalk server instance. Ensure your Puppet configurations work for all three and produce like-for-like behaviors.
Do these things and you will be fully exposed to every aspect of Linux Enterprise systems administration. Do them well and you will have the technical expertise required to seek “Senior” roles. If you go whole-hog crash-course full-time it with no other means of income, I would expect it would take between 3 and 6 months to go from “I think I’m good with computers” to achieving all of these – assuming you’re not afraid of IRC and google (and have neither friends nor family …).
Hiljadu lepih stvaari…
 
Last edited:

100

Member
Joined
Mar 16, 2018
Messages
410
Reaction score
6
alt
merin:
Evo sa reddita, za još malo plašenja:
Do them well and you will have the technical expertise required to seek “Senior” roles.
🙂

Misliš li da je pametno da čovek koji još uvek ne zna koji programski jezik čemu služi i nije načisto na koju bi stranu uopšte krenuo i šta učio bude zatrpan spiskom zahteva za nivo znanja seniora (kako se u samom tekstu navodi)?
Hiljadu lepih stvaari…
Masovni spiskovi, hiljade jezika, hiljade alata, bekstvo u zdrav razum!
 
Last edited:

merin

Member
Joined
Mar 11, 2017
Messages
177
Reaction score
3
Misliš li da je pametno da čovek koji još uvek ne zna koji programski jezik čemu služi i nije načisto na koju bi stranu uopšte krenuo i šta učio bude zatrpan spiskom zahteva za nivo znanja seniora (kako se u samom tekstu navodi)?
Rekoh da je za plašenje.

Na edx ima dva dobra početnička Linux kursa za džabe, samo se treba registrovati…

Introduction to Linux
Fundamentals of Red Hat Enterprise Linux
 
Last edited:

mracni_covek

Member
Joined
Aug 6, 2017
Messages
72
Reaction score
0
spiskom zahteva za nivo znanja seniora
Meni su sve ovo što sam napisao (osim Pythona i PHP-a) + neke stvari iz merinovog posta tražili na razgovoru za posao za poziciju juniora, mada sve ovo sa Reddita ukupno jeste hebenije.

Nek ne gleda to kao zaplašivanje, nego kao na resurse. Ako je mogao da izgugla/sazna nekako za ove RH kurseve, može i da izgugla dokumentaciju, literaturu, video tutorijale i za LDAP i ostalo. Trebaće vremena, pa niko ništa nije naučio za par dana.
braniš sve ovo što si učio prethodnih godinu dana.
 
Last edited:

100

Member
Joined
Mar 16, 2018
Messages
410
Reaction score
6
alt
merin:
Rekoh da je za plašenje.

Na edx ima dva dobra početnička Linux kursa za džabe, samo se treba registrovati…

Introduction to Linux
Fundamentals of Red Hat Enterprise Linux
Ovo zaista deluje dobro. Upravo sam bacio pogled, ima takođe na udemy.com dobrih kurseva za početnike za samo $12 (ili na torrentima za dž).
Meni su sve ovo što sam napisao (osim Pythona i PHP-a) + neke stvari iz merinovog posta tražili na razgovoru za posao za poziciju juniora, mada sve ovo sa Reddita ukupno jeste hebenije.

Nek ne gleda to kao zaplašivanje, nego kao na resurse. Ako je mogao da izgugla/sazna nekako za ove RH kurseve, može i da izgugla dokumentaciju, literaturu, video tutorijale i za LDAP i ostalo. Trebaće vremena, pa niko ništa nije naučio za par dana.
OK, u pravu si, kapiram ja tebe ali je pitanje da li apsolutni početnik može tako zrelo da gleda na stvar. To ti je kao kad prvačetu koje je pokazalo interesovanje za prirodne nauke umesto bukvara daš spisak literature do kraja PMF-a. Polako, korak po korak.

Ovo se ne odnosi na merina i tebe ali primetio sam da su profesionalci koji su duže u poslu prečesto katastrofalni savetnici za početnike. Ne znam tačno šta je pravi razlog tome. Neznanje i neiskustvo nisu sigurno. Ima verovatno kurtončina koji bi da se prave pametni i sapliću ali njih je ubeđen sam vrlo malo. Ostaje da su ti ljudi vremenom potpuno izgubili osećaj šta znači biti apsolutni početnik i koliko to nepoznanica, strahova i dilema sobom nosi.

Najomiljenije mi je kada se postavi ono najčešće pitanje: koji jezik kao apsolutni početnik prvo da učim kao uvod u svet programiranja? I kada se sjate oni mudraci sa predlozima da se najpre uči C++ jer ćeš moći igre da praviš (tim rečima!). Čekaj, majstore, polako, prikoči. Ne uči se čovek odmah da leti.

A šta se sve traži juniorima u Srbiji na nekim mestima je posebna priča. Velike gazde se qrče da drže IT kompanije a, u stvari, drže sweatshop-ove. Bogu hvala da ima i onih koji nisu takvi.
 
Last edited:

mracni_covek

Member
Joined
Aug 6, 2017
Messages
72
Reaction score
0
ali je pitanje da li apsolutni početnik može tako zrelo da gleda na stvar.
Dobro pitanje. Pretpostavljam da bi bilo bolje razložiti stavke na jednostavnije, ja jesam bio previše uopšten, pogotovo kad za učenje Linuxa.
najčešće pitanje: koji jezik kao apsolutni početnik prvo da učim kao uvod u svet programiranja?
Milioni pitanja po internetu 😃 Ovo me podseti na kinološki forum, kada su svaki dan dolazili ljudi sa slikom nekih štenaca mešanaca i zapitkivali “koje je rase, koje je rase?” Svi dođu i otvore temu, a pun forum istih tema.

Tu preporuku za c++ još nisam video 😃
Video sam da su ludi preporučivali C ili Javu kao prve jezike, jer su statički, pa bi početnik naučio šta je int šta je double itd, i sintaksa je detaljnija, pa bi prelazak na npr. Python bio lakši, i to mi deluje razumno.
 
Last edited:

100

Member
Joined
Mar 16, 2018
Messages
410
Reaction score
6
Milioni pitanja po internetu 😃 Ovo me podseti na kinološki forum, kada su svaki dan dolazili ljudi sa slikom nekih štenaca mešanaca i zapitkivali “koje je rase, koje je rase?” Svi dođu i otvore temu, a pun forum istih tema.
Hahaha!
Tu preporuku za c++ još nisam video 😃
Video sam da su ludi preporučivali C ili Javu kao prve jezike, jer su statički, pa bi početnik naučio šta je int šta je double itd, i sintaksa je detaljnija, pa bi prelazak na npr. Python bio lakši, i to mi deluje razumno.
Ma ima tih preporuka za C++ kao prvi jezik koliko hoćeš. Ljudi valjda u takvim situacijama guraju svoj omiljeni jezik, nije bitno da li odgovara.

Dobro je uvek znati bar jedan low-level jezik (bliže metalu) poput C-a, ali ne znam koliko je pametno da se početnici u startu mačuju sa, štatijaznam, recimo pointerima, alokacijom memorije i sličnim stvarima. To može kasnije. Java je u suštini C-- i kao takva može da dođe u obzir. 😃

Tzv. statically typed languages su dobri da se od početka nauči dobra praksa kroz disciplinu. No, mnogi danas počinju sa JavaScriptom zbog ekspanzije koju je doživeo poslednjih godina. JS dosta stvari oprašta i nije previše strog da tako kažem (mada ima ‘use strict’ :D) što baš i nije najbolje za početnike. Zbog specifičnosti nastajanja i razvoja taj jezik ima dosta karakterističnosti koje ne vode baš u najbolju praksu ali se vremenom stvari menjaju na bolje u tom svetu. ES6 je doneo mnoge lepe stvari (njih 1000! :D), recimo: arrow functions, template strings, class (za ovo baš i nisam siguran), modules, let, const… Tako da se JS znatno popravio i sada mi je zadovoljstvo da radim u njemu. Postao je skoro elegantan jezik. O PHP-u neću da trošim reči da ne naljutim nekoga. 🙂

Ipak, za mene je preporuka za početnike (moj voljeni i omiljeni) Python, uvek Python, jezik bogova. 🙂 Nije slučajno što se u Državama umesto Jave kao intro jezik sve više koristi zmijurina…

No dobro, ja se raskenjao, neću više da davim… 🙂
 
Last edited:

Prizma

Active member
Joined
Feb 13, 2017
Messages
461
Reaction score
76
Ма узме човек лепо lisp, па после пар година, кад овлада тиме, проба да направи свој скуп логичких капија и буши картице за 1 или 0 и испробаваш основне математичке операције док резултат ишчитава на парчету папира. Само hardcore {1f4aa}

Edit:
Ма шта логичке капије…?! То је демоде! Квантне логичке капије су будућност…
 
Last edited:

100

Member
Joined
Mar 16, 2018
Messages
410
Reaction score
6
Ma kakav Lisp, Clipper je budućnost. Napravi čovek program za knjigovodstvo i valja ga sledećih 30 godina. Kao oni matorci koji su to odradili u njemu pre 25 godina i još uspevaju da ga uvaljaju pojedinim firmama. 🙂
 
Last edited:
Top