Laste kaitsepÀev halbade koodide eest

Laste kaitsepÀev halbade koodide eest

Post on Children's Day. Any coincidences are coincidences.

At 10 years old, I got my first computer and a disk with Visual Studio 6. Since then, I’ve been coming up with tasks for myself—automating processes, building a web service for three people, or writing a game that eventually gets removed from the Play Store due to age. Of course, I've lost source codes and written code I’m embarrassed to show to people. And at 10, I certainly would not have refused a future archive with all my mistakes—to never make them again.

A couple of weeks ago, I asked colleagues from Yandex.Money what they would advise a child who wants to become an IT specialist, and then I remembered something about myself. That’s how this text came about. I suggest talking about it.

I don’t recommend spending too much effort on the agony of choice; it’s better to try everything and engage in all activities. When you get a general understanding, you can decide which direction to take and which to abandon.

Sergey, Junior Programmer

Childhood

What was the funniest activity in a programmer's childhood before the internet?

I had two—disassembling all the games from the '800 Games in Russian' disk with all the programs from the 'Everything a Hacker Needs' disk, and then rewriting all the games I spent more than 10 hours on from scratch in BASIC. It doesn’t matter what you end up with—even if it turns out to be something.

Laste kaitsepÀev halbade koodide eest

You take things, try, rearrange the blocks, experiment, and reach for everything you can reach. You delete Windows, spend 10 hours reinstalling it. You try to recover the drivers. You figure out how DOS works. You learn how jumpers should be positioned so your hard drive boots in a friend's computer (it has 200 megabytes of new games!). You play around with software, mess with hardware, disassemble and assemble a computer. You end up writing a football simulator for 13 years.

When there’s nothing, you become happy because of that.

One must not underestimate the importance of self-checking. In my opinion, IT beginners underestimate how strictly they will have to control their product (and in analytics too) and how much time this takes compared to the purely creative part. And the more interesting what you are doing, the harder and longer the verification will be.

This is, of course, somewhat abstract advice, but if only I had known right away.

Ja ei soovita IT-s ĂŒhte suunda jĂ€lgida. Siin on samuti oluline laiem silmaring.

Anna, vanem sĂŒsteemanalĂŒĂŒtik

Keskkool

Kusagil hetkedel arutati maakonna foorumis programmeerimist — ja seal ilmus teema pealkirjaga „Suurde ettevĂ”ttesse otsitakse PHP programmeerijaid“. Reklaami tekst oli jĂ€rgmine:

Suurde ettevÔttesse otsitakse PHP programmeerijaid:

Et aru saada, kas tasub tulema intervjuule, tehke lihtne ĂŒlesanne: kirjutage PHP programm, mis leiab sellised positiivsed tĂ€isarvud x, y ja z, et x^5+y^5=z^5. (^ - aste).

VÔite vastata siin.

Selles teemas vastasid vaid paar inimest — olin seal ka mina. Oma kuueteistaastase naiivsusega vastasin:

TÔeliselt veider. Ja arvuti peab olema korralik, et seda leida...
Sest x, y, z <= 1000 selliseid arve ei ole — see on esimene asi (viskasin kokku vb-s, rohkem praegu ei ole), teiseks arvuti vajub tĂ€iesti kokku.

Ei ole see kahtlane, IMHO.

Jah, loterii, algajate lĂ”ks, jah, tĂ”eliselt lapsik, ja mis siis? Ilmselgelt kulutasin ma natuke aega lihtsa skripti tegemiseks, kuid tĂ€iesti unustasin Fermati teoreemi olemise — mida teema autor, vÀÀrikaks nimetatud The_Kid, viimases osas tĂ€psustas.

Tulemus on kurb - P-s on praktiliselt inimesi, kes tunnevad matemaatikat, kuid iga teine arvab end olema suur programmija. Kolme tunni jooksul, kĂ”ikides foorumites, kus ma oma sĂ”numi postitasin, oli kokku umbes kahe sada vaatamist... ja ainult kaks Ă”iget vastust. Ja Fermati teoreem on ju kooli programm, ja selle tingimused on nii lihtsad, et nad peaksid silma torkama. ÜkskĂ”ik, kuidas, kĂŒsides messengeri kaudu, vastas 6 kuuest tuttavast Novosibirski ĂŒliĂ”pilasest „See on ju Fermati teoreem“.
Ja keda pÀrast seda tööle vÔtta?

Siis tekitas see minus raevu: „Kui ma ei kirjutanud Fermati teoreemist, ei tĂ€henda, et ma seda ei tea“, — klassikaline vabandus. Kas see teeb mind praegu kurvaks? Ei, see on elu Ă”ppetund. Nagu toona, kui mu mĂ€ng pandi esile indoneesia Windows Phone poes, ja kahe nĂ€dala pĂ€rast eemaldati, sest ma ei uuendanud mingeid seal tingimusi EULA.

Ja tĂ€iesti arusaamatu: kui ĂŒhes suures ettevĂ”ttes pole kedagi tööle vĂ”tta — kelleks siis olla? Mida teha? Kuhu kasvada?

Ära arva, et hariduse saamisega saad programmistiks/taksomeeteriks/matemaatikuks vĂ”i kellekski muuks.

KĂ€es on ajad, mil diplomis on palju olulisemad pĂ”hikursused (matemaatika, fĂŒĂŒsika, informaatika, filosoofia) kui rakenduskursused (programmeerimine, projekteerimine konkreetsetes valdkondades jne). KĂ”rgharidus hakkab jagunema kihtideks – baaskiht (inseneriteadus) ja rakenduslik kiht. Tuleb Ă”ppida mitte konkreetseid oskusi, vaid mĂ”tlemist, teaduslikku lĂ€henemist, arusaama probleemide lahendamisest, pehmeid oskusi.

See puudutab ĂŒlikooli. Rakenduskursuste oskusi saab inimene veel kogu ĂŒlejÀÀnud elu.

Oleg, juhtiv sĂŒsteemianalĂŒĂŒtik

Ülikool

Kirjutad koodi „plussides”, kirjutad koodi Java’s. Puudutad assemblerit, tĂ”ukad kĂ€e Ă€ra, satud Qt-sse ja mĂ”tled, miks sinuga nii kĂ€itutakse. Neljanda kursuse ajaks on kĂ”igile ĂŒkskĂ”ik, millega sa kirjutad oma jĂ€rgmised olulised laborid — Ă”ppejĂ”ud vaatavad koodi ĂŒsna pealiskaudselt.

Nii see muidugi ei ole — on ĂŒlikoole, kus asjad kĂ€ivad hĂ€sti, kuid sinna lĂ€hevad ainult need noored, kes lahendasid koolis ACM ĂŒlesandeid, lisatundides pigistasid viimast kui teooriast ja tuupisid, kui palju mĂ€lu kĂ”ik maailma olemasolevad algoritmid vajavad.

Mina ei lahendanud, ei kĂ€inud lisatundides, vaid lĂ”petasin oma matemaatika klassis, tehes samal ajal huvitavaid asju. Spoiler — tööintervjuudel ei tule need kellelegi ĂŒldse kasuks.

Esialgu tuleks paremini vĂ€lja selgitada, mis IT-st meeldib. Kui meeldivad kĂ”ik suunad, siis on keeruline. Mingi keele Ă”ppimine — ei vii kuhugi, see tekitab vaid tulevikus segadust.

Jaan, finantsmonitoringu spetsialist

Reaalne lugu — Windowsi simulaator, mille tegin klassikaaslasega kĂŒmnendas klassis, vĂ”ib ĂŒlikoolis automaatselt paar eksamit ja arvestust anda. Seda vĂ”ib isegi hiljem kĂ”igile rÀÀkida, kui Ă€ge see oli. Probleem on selles, et see ei olnud Ă€ge — see oli segane arhitektuur, kohutav kood ja tĂ€ielik standardsuse puudumine.

Selliseid asju tuleb teha ĂŒhe eesmĂ€rgi nimel — et oleks oma haavade kataloog. Kuigi see ei kaitse petise sĂŒndroomi eest, kui leiad end suurest ettevĂ”ttest, kus on mingid pinnapealsed teadmised ja mĂ”tled, et sind avastatakse.

Laste kaitsepÀev halbade koodide eest

Toetan, tĂ€htsam on anda nĂ”u, mida teha ja kust teavet leida, mitte vastupidi. Ja pole sugugi hirmutav, kui ta alguses midagi katsudes teeb. — Teadlikkus tuleb hiljem. Oluline on, et see meeldiks.

Erik, testimise insener

Me kĂ”ik kirjutame arenguplaanid – mida on vaja Ă”ppida, millega tegelema hakata lĂ€hitulevikus ja kuidas end parandada. Kuid tundub, et me kĂ”ik vĂ”iksime kasu saada kirja kirjutamisest endale minevikust – siin on minu oma.

  1. Kuluta aega, leia raamat ja installi lÔpuks see Ubuntu distributsioon, mille said tasuta Canonicalilt. Seal on kindlasti mingi lihtne probleem, Ubuntu töötab igal pool. Ja Linux tuleb kindlasti kasuks.
  2. Ära karda konsooli. Volkov Commander mahub kĂŒll ĂŒhele disketile, aga proovi aru saada, miks sul need kĂ€sud kĂ”ik on, sĂ”lmi sĂ”prus kĂ€suviibaga. Disketid surevad. Plaadid surevad. USB-mĂ€lupulgad surevad samuti. Ära muretse liiga palju.
  3. Loe algoritmidest, saa aru sorteerimisest, puude ja kuhjade kohta. Loe raamatuid.
  4. PĂ”hitĂ”dede mĂ”istmiseks ei ole tasulisi kursusi vaja. Varsti tuleb YouTube – sa imestad.
  5. Ära keskendu ainult Basicule. Maailmas on sadu tehnoloogiaid, mis vÀÀrivad sinu tĂ€helepanu, ja miljon asja, mis on huvitavamad kui jĂ€rjekordne kord, kui joonistada kasutaja vorme Excelis. Proovi vĂ€hemalt Pythonit – edaspidi saad aru.
  6. Õpi Git’it kasutama, varundage kĂ”ik lĂ€htekoodid. Kirjuta vĂ€hemalt ĂŒks kliendi-serveri rakendus, et mĂ”ista, kuidas nad töötavad. Uuri vĂ”rke, lĂŒliteid ja ruute.
  7. Ja kui sa seda praegu loed, siis tÀhendab, et kÔik ei ole asjata.

RÀÀkige kommentaarides, mida te oleksite endale minevikust kirjutanud? Andke nĂ”u praegustele kooliĂ”pilastele ja ĂŒliĂ”pilastele, kes on endiselt teeotsas ja pĂŒĂŒavad leida oma teed. RÀÀgime sellest.

Allikas: habr.com

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster