Kezdőoldal » Számítástechnika » Programozás » Egyre rosszabbak a programozók...

Egyre rosszabbak a programozók, vagy mi megy itt?

Figyelt kérdés

Ha megnézzük, a mai operációs rendszerek a korábbiaknak sokszorosát igénylik erőforrásokban, memóriában, mégis, lassabbak korábbi elődeiknél, hiába lett jobb a vas, nincs, aki kihasználja. Ugyanez a katasztrófa játszódik le az alkalmazások szintjén is. A böngettyűk falánkságáról és silányságáról már szót sem ejtek.

Azért van ez így, mert ennyire elburjánzott a programozók szakmai igénytelensége? Netán rossz paradigmát -OOP- használunk?

Itt egy cikk, ami az enyémhez hasonló véleményen van


[link]


Kérek minden érdeklődőt, érintettet, olvassa el és adjon nekem választ a miértekre. Köszönettel, W.W.



#futureless future #bald dragon
2023. máj. 4. 06:13
A kérdező szavazást indított:
Az ok az OOP memóriaigényében keresendő
Az ok a programozók szakmai igénytelenségére vezethető vissza
A jelenség oka az, hogy a bloatware az új hardvereknek teremt piacot
A gond a tervezéssel van
A probléma több okra vezethető vissza
A probléma nem is létezik
23 szavazat
1 2 3 4 5
 1/49 anonim ***** válasza:
88%

Két fő oka van:

1. A programok funkciójukban sokkal gazdagabbak, mint régen: csili-vili grafika, online szolgáltatások, sokkal több biztonsági funkció stb. Egy 20 évvel ezelőtti op rendszer a mostani monitorod felbontásától elhasalna valsz.


2. Mivel a hardveres erőforrás relatív olcsó lett, ezért nem is szempont a programok ilyen irányú optimalizálása.

2023. máj. 4. 07:24
Hasznos számodra ez a válasz?
 2/49 A kérdező kommentje:

" A programok funkciójukban sokkal gazdagabbak, mint régen: "


Ez súlyos tévedés, amire a cikk is kitér. Nem lettek sokkal jobbak és funkciógazdagabbak sem. Annyivel legalábbis biztos nem, mint amennyivel több memóriát és processzoridőt igényelnek. Egy operációs rendszer esetében semmi nem indokolja nem hogy a négy, de még az egy GB helyfoglalást sem.


"Mivel a hardveres erőforrás relatív olcsó lett, ezért nem is szempont a programok ilyen irányú optimalizálása."


Ez a másik súlyos gond. Az efféle szemlélet elharapózása. A hardver valóban olcsóbb lett, de ez nem lehet indok a slamposságra, és nem lehet ok arra, hogy fölösleges dolgokkal zabáltassuk fel az erőforrásokat.

2023. máj. 4. 07:44
 3/49 anonim ***** válasza:
83%

Teljes zagyvaság amit írsz kedves Kérdező, és az is amit a linkelt cikked állít. A kulcsszó a TCO (Total Cost of Ownership). Mi mennyibe kerül. És ezt mondom úgy, hogy alapvetően hardver fejlesztő vagyok, foglalkozom beágyazott rendszerekkel, PLC-kkel, egyedi gépekkel. Vettem részt olyan fejlesztésben, hogy volt egy adott feladat amit egy mikrokontrollerrel kellett megoldani, a cég tudta, hogy ebből kb. 100 000 db-ot fognak eladni x időn belül. Volt két hasonló paraméterű mikrokontroller, a kettő között volt (100 000 db-nál) 0,02 USD árkülönbség / a számok itt most nagyságrendek, nem a valós adatok mert azok üzleti titkok, de a számítás ue. volt). 100 000 eladott termék esetén az árkülönbség a két mikrokontroller között 2 000 USD. Kiszámolták, hogyha az a fejlesztés, hogy a kisebb beleférjünk megvan 1 000 USD-ből akkor optimalizálunk, ha nem akkor beépítik az eggyel nagyobbat. Végül 1 500 USD-be került az, hogy beleférjünk a kisebb mikrokontrollerbe. Még éppen megérte.


Ugyanez nagyban (és most cska a piaci szoftvereket nézem, nem az ingyenesen használhatóak mert ott picit még bonyolultabb az "üzleti modell"). Mibe kerül a fejlesztés? Mikorra van kész az új változat? Mi van akkor ha ehhez egy nagyobb gépet kell venni? Amíg a felhasználó azt látja, hogy a jobb, több funkciójú, esetleg az ő problémájára gyorsabban megjelenő szoftver "olcsóbb" de nagyobb hardver kell hozzá akkor ezt fogja választani. Egyszerűen a hardver ára (és fogyasztása is) az életciklusban bőven fedezné azt, hogy kevésbé legyen optimális a rendszer.


Nézd meg a sz*á optimalizált IBM mainframe rendszereket (ott még a hardver-szoftver is össze van optimalizálva) eszetlenül drága irtózatosan sok pénz. De van olyan méret ahol nincs más megoldás. Kb. 1,5 éve néztem, hogy van egy PC-n futó "emulátor" hozzá amin lehet gyakorolni meg tanulni, annak az éves díja is 10-en millió Ft körül mozog. Beszéltem olyannal aki látta futni PC-n és ódákat zengett róla, hogy még a nem optimális (PC) hardverből is mit ki lehet vele hozni. De évente 10 millió Ft csak az oprendszer. Megéri? Fizetnél egy éves szinten 10 millió Ft-ot egy olyan oprendszerért ami tényleg brutálisan ki van optimalizával és az utolsó szikrát is kihasználja a gépedből? Hát gyanítom, hogy nem.


Az összes többi az nosztalgia és a szakma nem ismerete. És ha lepontozol akkor kérek (legalább privátban) egy részletes indoklást, hogy melyik az a része ami nem igaz. Nem az érdekel, hogy tetszik-e vagy sem, mert itt alul a "válasz hasznossága" értékelhető és nem a social media "tetszik-nem tetszik". Tudom, hogy nem tetszik a válasz de ilyen a világ.


Hardveres szemmel. Igen az OOP szemlélet brutálisan memória és CPU pazarló, ezt kb. mindenki aki picit is érti a gép fizikai működését tudja, látja, érti. Nincs is ebben semmi csoda. De a programozó munkáját könnyíti, gyorsítja a fejlesztést, karbantartást stb. És ma már nem ott tartunk, mint az 1960-as évek végén, hogy a memória ára 0,1 USD/bit és érdemes volt szórakozni a memóriával. Lehet assemblyben is fejleszteni irtózatosan optimális programot. Volt tanárom mesélte (szoktam vele beszélgetni), hogy egy külföldi ezzel foglalkozó mondjuk így "múzeum" megkereste, hogy kéne egy spéci Z80 alapú cucc egy bemutatáshoz /a feladatot meg akarják csinálni 100 különböző rendszeren, programnyelven stb. (hogy lehessen látni a különbségeket)/. És kéne rá írni egy programot. Ugyanaz a funkciójú program csili-vili grafikával Pythonban 3 óra volt, és kb. 100 sor az egész. Ő fejleszti a Z80 assembly részeket (a feladat része, hogy natív assemblyben történjen a fejlesztés, kézzel optimalizálva, magyarázattal stb.) jelenleg kb. 1 500 sornál tart és semmi grafika, egy szöveges VT100 terminálon fog látszani az egész. És eddig 200 munkaóránál tart és még nincs kész, és a tesztelést el se kezdte.


Amikor az első unixot megírták az még PDP assemblyben készült. Én csak úgy funból megnéztem a PDP assemblyt. Nagyon kellemes nyelv és tényleg nagyon jó. Aztán kitalálták a C-t és az egészet átírták C-be, igaz ők is elismerték, hogy nem volt olyan hatékony, de könnyebb volt karbantartani és könnyebb volt rá fejleszteni (1970 környéke, amikor még jobban számított a hardver igénye egy rendszernek). 1970 körül (ez csak picit több mint 50 éve volt) már látszott, hogy a programozó "kényelme" fontosabb lesz, mint a hardver igény.

2023. máj. 4. 08:28
Hasznos számodra ez a válasz?
 4/49 anonim ***** válasza:
85%
Bocs csak 100 munkaóra, véletlenül elírtam a számot elnézést kérek.
2023. máj. 4. 08:37
Hasznos számodra ez a válasz?
 5/49 anonim ***** válasza:
62%

Valószínű lesz átfedés abban előző válaszával, amit írok, de leírom.

Bár nem vagyok nagy fejlesztő de , minden így működik a világban, nem az ideálisan optimális, hanem a költséghatékonyság a cél. Azt se szabad elfelejteni, ha te most megoldod a problémát, még akkor is, ha nem is full optimalizálva, akkor közben a aki használja pénzt termel vele és lehet, az optimalizáció hiánya pénzbe kerül, de amit közbe előállít vele az fedezi.


Egy alkalmazás fejlesztésénél sok elvárás van és ezek az már elkészült alkalmazásnál meg is változhatnak, a rugalmasság viszont plusz dolgokat igényel, cserébe karbantarthatóbbá, bővíthetővé válik és ez is nagyon fontos szempont.

Egy operációs rendszer esetén pedig ezek a dolgok hatványozottan érvényesek, szóval lehet mondani, hogy ott a Linux, milyen jó és biztos az is, de ott se csak ez számít, mert igazából az embereknek céljaik vannak, problémáik, amiket meg akarnak valósítani és erre van valamennyi idejük, pénzük tehát erőforrásuk, és azt keresik, ami e legkisebb erőfeszítéssel megoldja ezt.

Egyébként szerintem ezért sikeres az Apple egy bizonyos körben..

2023. máj. 4. 09:11
Hasznos számodra ez a válasz?
 6/49 A kérdező kommentje:

Ezek szörnyen rossz példák. Egy IBM mainframe OS-e, hogy állítható pariba egy PC, tehát mikrogép olyan operációs rendszerével? Ez a windows, amiből legkevesebb 500 millió gépen fut egy-egy példány.

TCO. Azt mondod, a Microsoftnak nem éri meg jobban optimalizálni a rendszerét? Ráadásul olyan környezetben, ahol piacvezető, abszolút egyeduralkodó, egy olyan pénzügyi háttérrel, ami neki rendelkezésére áll?


A cukrászkodás egy nagyon fárasztó tevékenység. Lehetne olyan gépeket tervezni és kivitelezni, ami a cukrászokat a fáradságos melótól kicsit tehermentesíti. Mégsem teszik. Hogy miért? Hát azért, mert nem az az elsődleges, hogy a cukrász jól érezze magát, hanem az, hogy a végtermék, a sütemény fogyasztható, eladható, ne adj isten, még finom is legyen. Ugyanez van a szoftverfejlesztésben. A CEO kb. lehányja azt, hogy a fejlesztői gárda fapadon ücsörögve dolgozik, vagy kétmillás designer funkció-tervezett székekben nyomja. A lényeg nem itt sikkad el, hanem ott, hogy határidő és ott, hogy alkalmatlanság.

Ezt ahhoz a részhez írtam, amiben a programozó munkáját segítő dolgokról teszel említést. Az OOP nem gyógyír, nem varázsszer, hanem egy eszköz. Az egyik eszköz a sok közül, aminek esztelen, végnélküli alkalmazása mára nem hasznossá, hanem egyenesen kontraproduktívvá vált.

Azt kéne már fontolóra venni, hogy a futásidőben minden másodperc gyorsítással valójában több ezer, több tízezer, százezer ember életéhez adjuk hozzá az a futtatásonkénti egy másodpercet. Erre mutat rá a cikk szerzője is a legelső példájában.

A python és a natív assembly között pedig van azért néhány lépcsőfok.

2023. máj. 4. 09:12
 7/49 anonim ***** válasza:
77%

"Azt kéne már fontolóra venni, hogy a futásidőben minden másodperc gyorsítással valójában több ezer, több tízezer, százezer ember életéhez adjuk hozzá az a futtatásonkénti egy másodpercet. Erre mutat rá a cikk szerzője is a legelső példájában."


Csakhogy amíg ezt hw feljesztéssel ez olcsóbban és gyorsabban el lehet érni..addig ez kinek lesz az érdeke, hogy magára vállalja?

2023. máj. 4. 09:25
Hasznos számodra ez a válasz?
 8/49 anonim ***** válasza:
75%

Kitalálom, a miért nem elég mai PC-nek 64kb RAM-os kérdések folytatása átfogalmazva? Mert akkor már elégszer át lett rágva a dolog....

Amúgy meg adott a elhetőség, alkoss valamit ami jobb minden mai rendszernél...

2023. máj. 4. 09:33
Hasznos számodra ez a válasz?
 9/49 A kérdező kommentje:

Nem lehet HW fejlesztéssel olcsóbban elérni. Ez csak önáltatás. Van a szoftver és a hardver viszonylatában egy végpont, hogy adott funkcionalitással bíró szoftvert, adott vasra milyen optimálisan lehet ráfejleszteni. Ennek a lehetőségnek az egyik oldala véges, mert van egy pont, ami fölött már nem lehet jobbat csinálni. Ez az alsó határ, a felsőnek meg csak a program használójának türelme szab gátat. Az abszolút optimálisat régen igyekeztek megközelíteni, olykor el is érték. Ma erről szó nem esik. Jelenleg ott vagyunk, hogy az ellenkező irényba tolódik el minden. Ahogy cikk is írja, venni kényszerülök a korábbinál fizikailag gyorsabb telefont, amin egy a korábbinál fizikailag lassabb szoftver fut. Én mint fogyasztó, nem nyerek semmit a dolgon, pedig nyereség kell, hogy képződjön. Képződik is, csak ez a nyereség valahol máshol csapódik le.


Visszatérve az első mondatokra, az elérhető elvi maximumra, a szoftverek dolgában, konzumer vonalon már nincs is törekvés. A dependencyk arra szolgálnának, hogy a programozók és így a végfelhasználók életét megkönnyítsék. Ehelyett mi van? Néhány függvény miatt behúzzák, a szoftver részévé teszik a sokadik csomagot is, aztán az ott fityeg a memóriában a nem használt részekkel együtt. Ez ma a fejlesztés. Áttolni a kakit a userek térfelére.

A kétezres évek elején még az emberek többségének 128 vagy 256 MB memória volt a gépükben és interneteztek. Ma egy gépben négy GB memó az alap, ami a magasabb számnak, a 256 MB-nak is a tizenhatszorosa és a böngésző majd, hogy be nem kakil a hatodik, hetedik site megnyitása után. Mi lett jobb? Alig valami. Performanszia, felhasználói élmény tekintetében meg aztán minden csak rosszabb lett.

2023. máj. 4. 09:46
 10/49 anonim ***** válasza:
82%
Ha 2000-es évek beli statikus kis weblapocskákat nyitsz meg mai böngészőkkel, ugyanúgy menni fog. Egy alacsony igényű rendszeren (valamelyik Linux disztró), egy alacsony igényű browserrel (pl. midori, vagy lynx). Miért nem használod azokat?
2023. máj. 4. 10:52
Hasznos számodra ez a válasz?
1 2 3 4 5

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!