Ką norėtumėte būti išmokę anksčiau?

Pokalbiai prie alaus. Gali kalbėti ir abstinentai, tačiau praras pusę malonumo :)
User avatar
vvv2
skeptikas
Posts: 649
Joined: 2007-08-02 11:24

2018-03-31 15:03

Vilius wrote:
2018-03-31 00:54
.. Bet kuriuo atveju, tiek patyręs Java, tiek Php programuotojas iš esmės gali suprogramuoti tuos pačius - net ir labai sudėtingus - dalykus.
- istoriškai "Java" buvo kuriama kaip universali kalba visoms vartotojų platformoms, dabartiniai "kūrėjai" stengiasi ją išstumti su universalia C#. Vyksta karas! :)

- istoriškai "PHP" buvo kuriama serveriams ir pagrindinai tik ten tebenaudojama ir dabar kaip laisva alternatyva. Nors yra nepopuliarios PHP savarankiškos sistemos.

p.s.
Reik pastebėti, kad šios kalbos yra realizuotos kaip pagalbiniai "scriptai" html kode ir kaip atskiri savarankiški programavimo produktai. Naujokai dažnai nesuvokia skirtumo.


:)
User avatar
Sejanus
senbuvis
Posts: 1609
Joined: 2008-11-16 14:41

2018-03-31 20:06

Tačiau kalbant apie patį programavimą, nelabai matau, kaip daugiau kalbų mokėjimas suteikia daugiau galimybių. Viskas, ką tu gauni, tai daugiau būdų parašyti tą patį. Taip, vieni iš tų būdų atrodys gražiau, ar gal net bus truputį efektyvesni, nei kiti. Tačiau kai programa bus sukompiliuota ir paleista, jis darys tą patį, ar ne?
Be programos sukompiliavimo ir paleidimo dar yra jos maintaininimas, pildymas, bugų tvarkymas, ir čia jau gali labai pasijausti, kokia kalba (ir kokio programuotojo) ji rašyta. O dar yra skirtingos platformos, ir ne visos kalbos vienodai gerai veikia visose platformose. Dar būna, kad tenka tęsti kitų pradėtą darbą, ir jei tas darbas pradėtas pythonu, tęsti irgi geriausia pythonu. (Na bet galima perrašyti tą poros metų darbą iš naujo nuo nulio su PHP, nes „kai bus paleista, darys tą patį“ :thumbsup:) Dar būna, kad kai kurios kalbos konkrečiai užduočiai atlikti turi žymiai daugiau ir/arba geresnių įrankių už kitas. Kalbėdamas apie įrankius turiu omeny ne tik pačios programos featurus, bet ir įvairias bibliotekas, frameworkus ir pan.

Jei programuoji kažkokiame idealistiniame pasauly kur neegzistuoja terminai ir programuotojams nereikia mokėti už jų laiką ir palikti bugai neatsiliepia piniginei ir t.t., tai taip, visos programavimo kalbos ir programavimo būdai yra panašiai geri nepriklausomai nuo užduoties.
Ble, žinok, norėčiau pamatyti, kaip tu suprogramuoji ką nors netrivialaus keliomis programavimo kalbomis. Spėju, kad kažkur ties generic tipais arba kokiu suktesniu rekursijos atveju, staiga atrastum savyje truputį daugiau kuklumo
Aš paaiškinau, ką turiu omeny sakydamas domėtis giliau. Bet galiu pakartoti kitais žodžiais. Domėtis tų kalbų principais, domėtis kodėl jos tokios, kokias problemas buvo mėginta išspręsti pvz. apribojant pointerių naudojimą arba neleidžiant implicit kintamųjų tipų kaitaliojimo. Jei tik bukai iškalsi kitokią sintaksę, aišku, naudos nedaug. Jei bent iš dalies suprasi tą kalbą, įgytas žinias galėsi panaudoti programuodamas ir kitomis kalbomis.

O rekursija yra lengva.
Kiek tai liečia mane, tai Java yra kažkoks senovinis dinozauras, kurį kažkiek mokėjau jaunystėje. Dabar su ja susiduriu tik todėl, kad Scala sukasi ant tos pačios virtualios mašinos (kas kartais praverčia, nes galiu naudoti Javines bibliotekas). O Php irgi yra senovinė skriptinimo kalba, kurią kažkas dar tebenaudoja (spėju - daugiausia dėl legacy priežasčių).
Tai tada tu gyveni kažkur savame pasauly, menkai tesusijusiame su mums visiems įprastu. Java yra populiariausia programavimo kalba ir pirmoje vietoje pagal job openings. PHP mažiau populiari, bet irgi papuola bent jau į top 5 pasauly, ir manau bent jau top3 Lietuvoje pačiu blogiausiu atveju. Šioje vietoje beje visai būtų smagu, jei ji būtų naudojama tik dėl legacy priežasčių ir nudustų kuo greičiau tuo geriau. Bet kol kas į tai nepanašu, nors javascriptas po truputį ir paveržinėja rinkos dalį.
Bet kuriuo atveju, tiek patyręs Java, tiek Php programuotojas iš esmės gali suprogramuoti tuos pačius - net ir labai sudėtingus - dalykus. Klausimas yra
...per kiek laiko, su kiek bugų, kaip lengvai/sunkiai readable/maintainable kitiems programuotojams, kokiu greičiu suksis, koks saugumas :) Realiame pasauly svarbūs šie klausimai. Nes jie lemia pelną ar nuostolius. Dar tiesa yra svarbus vienas toks klausimas – kiek programavimo kalba populiari. Jei aš išeisiu iš darbo, kaip lengva bus rasti, kas tęstų. Galimai todėl man daug kur primygtinai siūlė neprogramuoti ne tik Brainfucku, bet net ir Golang :(

Be to, viena iš savybių kurios gerą programuotoją daro geru, yra mokėjimas pasirinkti tinkamiausius įrankius. O tam reikia žinoti daugiau, nei vieną įrankį.
User avatar
Vilius
administratorius
Posts: 4006
Joined: 2004-04-19 12:28
Location: Bruxelles

2018-03-31 22:53

Sejanus wrote:
2018-03-31 20:06
Dar būna, kad tenka tęsti kitų pradėtą darbą, ir jei tas darbas pradėtas pythonu, tęsti irgi geriausia pythonu. (Na bet galima perrašyti tą poros metų darbą iš naujo nuo nulio su PHP, nes „kai bus paleista, darys tą patį“ :thumbsup:)
Nu Ok, pakankamai išsamiai priminei, kodėl niekad nenorėjau dirbti samdomu programuotoju.

Matyt, aš toks labai jau netipiškas programuotojas, tai mano ir poreikiai netipiški. Ir jiems patenkinti pilnai užtenka vienos programavimo kalbos :)

Antra vertus, jau seniai smalsu išbandyti Go kalbą, mat girdėjau apie ją gerų atsiliepimų. Tai gal kada prie progos ir aš imsiuosi plėsti akiratį.
User avatar
vvv2
skeptikas
Posts: 649
Joined: 2007-08-02 11:24

2018-04-03 14:28

Vilius wrote:
2018-03-30 17:03
Nors visą gyvenimą vienaip ar kitaip programuoju*, niekad nesupratau kodėl kiti programuotojai stengiasi išmokti kuo daugiau programavimo kalbų. Aš gerai moku vieną kalbą - Scala.
Citata: "Scala was voted the most popular JVM scripting language at the 2012 JavaOne conference. As of 2013, all JVM-based languages (Scala, Groovy, Clojure) are significantly less popular than the original Java language".

Dabar: "Eclipse is an integrated development environment (IDE) used in computer programming, and is the most widely used Java IDE".

Kitas: "Qt Creator is a cross-platform C++, JavaScript and QML integrated development environment which is part of the SDK for the Qt GUI application development framework.[3] It includes a visual debugger and an integrated GUI layout and forms designer".

Dar: "RAD Studio is an integrated development environment (IDE) for building C++/PASCAL Win32-64, Android, iOS applications. The RAD Studio IDE provides a comprehensive set of tools that streamline and simplify the development life cycle".

:)
User avatar
Vilius
administratorius
Posts: 4006
Joined: 2004-04-19 12:28
Location: Bruxelles

2018-04-03 15:40

vvv2 wrote:
2018-04-03 14:28
Citata: "Scala was voted the most popular JVM scripting language at the 2012 JavaOne conference. As of 2013, all JVM-based languages (Scala, Groovy, Clojure) are significantly less popular than the original Java language".

Dabar: "Eclipse is an integrated development environment (IDE) used in computer programming, and is the most widely used Java IDE".

Kitas: "Qt Creator is a cross-platform C++, JavaScript and QML integrated development environment which is part of the SDK for the Qt GUI application development framework.[3] It includes a visual debugger and an integrated GUI layout and forms designer".

Dar: "RAD Studio is an integrated development environment (IDE) for building C++/PASCAL Win32-64, Android, iOS applications. The RAD Studio IDE provides a comprehensive set of tools that streamline and simplify the development life cycle".

:)
Nesupratau, ką norėjai pasakyti tomis citatomis.
User avatar
vvv2
skeptikas
Posts: 649
Joined: 2007-08-02 11:24

2018-04-03 18:47

Vilius wrote:
2018-04-03 15:40
Nesupratau, ką norėjai pasakyti tomis citatomis.
- tiek, kad tos sistemos yra populiaresnės ir patogesnės.

:)
User avatar
Vilius
administratorius
Posts: 4006
Joined: 2004-04-19 12:28
Location: Bruxelles

2018-04-03 20:14

vvv2 wrote:
2018-04-03 18:47
- tiek, kad tos sistemos yra populiaresnės ir patogesnės.
Dėl populiarumo tai man px.

O dėl "patogumo" dalies, tai nesuprantu, kodėl lygini Scalą (kuri yra programavimo kalba) su Eclipse (kuri yra IDE)..

Iš tiesų iš Eclipse aplinkos galima visai sėkmingai naudoti tą pačią Scala (apart daugybės kitų programavimo kalbų). Tačiau aš nesu gremėzdiškų IDE šalininkas. Mano kuklioms reikmėms užtenka paprasto editoriaus ir konsolės su build-toolsu (kas mano atveju yra Geany bei SBT).
User avatar
vvv2
skeptikas
Posts: 649
Joined: 2007-08-02 11:24

2018-04-04 09:21

Vilius wrote:
2018-04-03 20:14
Mano kuklioms reikmėms užtenka paprasto editoriaus ir konsolės su build-toolsu (kas mano atveju yra Geany bei SBT).
- neturiu tikslo įtikinti, bet kiek aš bandžiau įvairias programavimo sistemas, tai man iš laisvų (freeware) labiausiai priimtinas "qt-creator", o iš komercinių "RAD studio".

:)
User avatar
Vilius
administratorius
Posts: 4006
Joined: 2004-04-19 12:28
Location: Bruxelles

2018-04-04 13:42

Tai gal tuo ir baikim apie programavimo kalbas šioje temoje.

***

Kitas dalykas, kurį norėčiau būti išmokęs vaikystėje, yra groti kokiu nors muzikos instrumentu.

Neseniai vaikams nupirkom elektroninį pianiną. Vienas iš jų privalumų yra tas, kad galima groti su ausinėmis. Kas man labai praverčia, kai negaliu užmigti vakarais. Kartais bandau mokytis daineles iš vaikų vadovėlių, o kartais tiesiog groju, kas gaunasi. Tik vat problema, kad norint pasiekti bent kažkiek pakenčiamą lygį, reikia praleisti labai (labai!) daug laiko praktikuojantis. Tai natūraliai pradedi žmogus gailėtis, kad nepradėjai kažkada seniai seniai. Be to, dar sako, kad vaikai ir išmoksta groti greičiau.. Bet aš nesu visai tikras dėl šios dalies.


Įdomu, kaip kolegų skeptikų reikalai su muzika? Ar grojate kokiu nors instrumentu? Kada pradėjote? Ir t.t.
Lionginas
senbuvis
Posts: 2141
Joined: 2011-10-03 09:35

2018-04-17 09:24

Aš ilgai grojau birbyne (teko ir koncertuoti kai buvau jaunesnis) ir dar tebegroju gitara. Dar galiu pūsti lūpinę armonikėlę, bet gražu paklausyti būna tik man pačiam.
Post Reply