kali linux
JF-Expert Member
- May 21, 2017
- 1,996
- 5,052
Hello bosses.
Kwenye technology yoyote ile kwa sasa kuna watu muhimu sana ambao wengi hawawafahamu bali wanaishia kuona maajabu yao tu, watu hao sio wengine bali ni COMPUTER PROGRAMMERS au SOFTWARE DEVELOPERS. Iwe unaangalia TV, una-surf mtandaoni, unacheza game au unafanya kitu chochote kinachohusisha technology basi hawa watu lazima wamehusika kukuletea hicho unachoona na kufurahia kwa namna moja ama nyingine. Hivyo tunakuja kuona field ya SOFTWARE DEVELOPMENT au COMPUTER PROGRAMMING ni muhimu sana kwa maendeleo ya technology hapa duniani.
Lakini cha kushangaza ni kwamba hivi karibuni hii field (Software development) imeingiliwa na wimbi la concepts nyingi sana ambayo ni useless na hii imesababishwa na wawekezaji wengi na wadau wa technology kufocus tu kwenye kuzalisha hardware bora na zenye processing speed & power kubwa bila kutilia maanani kina nani (Computer Programmers) wataweza kuzicommand hizo hardware efficiently ili zifanye kazi kwa ufanisi mkubwa.
Okay nitoe mfano, unakuta mtu ana PC ina uwezo mkubwa tu wa kufanya parallelism au multithreading (Kurun process nyingi kwa wakati mmoja) lakini software zinazotumika humo hazina hata chembe ya parallelism, hivyo kupelekea PC ku-crash au kushindwa kurun software husika. Kama software zikiandikwa kwa ku-utilize concept ya paralleism tunaweza kuona mabadiliko makubwa sana kwenye matumizi ya hizi gadgets na softwares zake. Kila siku utasikia mara core i5, core i7 etc..... (with many cores) lakini bado unarun program inakua slow, hio ni kama vile tuko kwenye barabara inayoruhusu line 3 za magari kwenda mbele na 3 nyingine kwenda opposite lakini sote tunataka tutumie line moja hivyo kutengeneza jam ni lazima, hio ndio sababu softwares nyingi zinakua nzito kurun kwenye PC coz zinalazimisha kutumia processing thread moja wakati processor inaruhusu multi-threading.
Kitu kingine hizi taasisi zinazofundisha watu kufanya programming baadhi bado ziko nyuma sana ukilinganisha na mahitaji, na nyingine ziko mbele sana lakini kwenye direction ambayo sio sahihi(they are running very fast but out of the tracks)
Sitoongelea sana kuhusu hizi ambazo zipo nyuma coz ni kitu kinachoonekana, lakini nitaongelea hizi zinazokimbia sana(but out of the tracks). Kwa wenye idea na coding nadhan wataelewa hapa, kuna hii language inaitwa JAVASCRIPT(JS). JS ni rahisi sana kutumia na kuandika hii imefanya taasisi nyingi na watu binafsi kuinvest muda mwingi na resources kutengeneza javascript frameworks kwa almost kila kitu, huu ni uduwanzi kwa sababu tunazidisha u-softness na kufanya watu kuwa na brains ambazo ni tegemezi sana. Ukiangalia frameworks zinatengenezwa kwenye kitu ambacho bado sio efficient(Ni kama kuongeza ghorofa juu ya paa la nyumba ambayo haina msingi imara). Watu wanatumia umbrella ya "fast-prototyping" na "making everyone a programmer" kufanya vitu ambavyo vinaua kabisa hii field. Just imagine mtu anafight hadi javascript iweze kuandika USB drivers, i-program microcontrollers etc.... Kwa wataalam wanaweza jibu hapa "Hutoweza kumlinganisha mtu anaetumia JS frameworks kucode microcontroller na yule aliekua anatumia ASSEMBLY au C/C++ kiuwezo wa kufikiri na umakini katika kazi.
Sisemi kwamba frameworks zisitumike lakini shida inakuja pale unapokuta programmers wanadhani wanaelewa zaidi frameworks(Kiukweli hawazielewi) wakati hawaielewi kiundani lugha mama iliotumika kutengeneza hizo frameworks. Hii imejionesha wazi kwenye JAVASCRIPT coz wengi wanajikuta wanaelewa kutumia JS frameworks na libraries lkn hawaielewi kiundani Javascript kama Javascript. Kama baadhi ya programmers wanasema "JAVASCRIPT IS THE MOST MISUNDERSTOOD LANGUAGE EVER"
Ukiangalia mfano mwingine mission ya kwanza ya NASA ilitumia computer yenye 256 MB of RAM lakini kwa sasa ni vigumu sana kupata programmer ambae atatengeneza software yenye uwezo mkubwa na i-run kwenye PC yenye hio memory bila kukcrash.
SO, TUKIWA NA PROGRAMMERS AMBAO WANAWEZA KU-UTILIZE VIZURI COMPUTING RESOURCES ZILIZOPO KWA SASA KWA KUANDIKA EFFICIENT ALGOS NA KUTUMIA PROCESSING OPPORTUNITIES ZILIZOPO SIKUHIZI HASA HASA MULTI-THREADING ITASAIDIA SANA KUBORESHA TECHNOLOGY ZETU TULIZONAZO ILI IWE RAHISI KWA END USERS KUZITUMIA. KUKIWA NA MAKAMPUNI NA VYUO VINAVYOLENGA KUTENGENEZA PRO-PROGRAMMERS WENGI AMBAO WANAELEWA NINI WANA-CODE ITASAIDIA SANA KUTATUA HILI.
Peace......
kali linux
Kwenye technology yoyote ile kwa sasa kuna watu muhimu sana ambao wengi hawawafahamu bali wanaishia kuona maajabu yao tu, watu hao sio wengine bali ni COMPUTER PROGRAMMERS au SOFTWARE DEVELOPERS. Iwe unaangalia TV, una-surf mtandaoni, unacheza game au unafanya kitu chochote kinachohusisha technology basi hawa watu lazima wamehusika kukuletea hicho unachoona na kufurahia kwa namna moja ama nyingine. Hivyo tunakuja kuona field ya SOFTWARE DEVELOPMENT au COMPUTER PROGRAMMING ni muhimu sana kwa maendeleo ya technology hapa duniani.
Lakini cha kushangaza ni kwamba hivi karibuni hii field (Software development) imeingiliwa na wimbi la concepts nyingi sana ambayo ni useless na hii imesababishwa na wawekezaji wengi na wadau wa technology kufocus tu kwenye kuzalisha hardware bora na zenye processing speed & power kubwa bila kutilia maanani kina nani (Computer Programmers) wataweza kuzicommand hizo hardware efficiently ili zifanye kazi kwa ufanisi mkubwa.
Okay nitoe mfano, unakuta mtu ana PC ina uwezo mkubwa tu wa kufanya parallelism au multithreading (Kurun process nyingi kwa wakati mmoja) lakini software zinazotumika humo hazina hata chembe ya parallelism, hivyo kupelekea PC ku-crash au kushindwa kurun software husika. Kama software zikiandikwa kwa ku-utilize concept ya paralleism tunaweza kuona mabadiliko makubwa sana kwenye matumizi ya hizi gadgets na softwares zake. Kila siku utasikia mara core i5, core i7 etc..... (with many cores) lakini bado unarun program inakua slow, hio ni kama vile tuko kwenye barabara inayoruhusu line 3 za magari kwenda mbele na 3 nyingine kwenda opposite lakini sote tunataka tutumie line moja hivyo kutengeneza jam ni lazima, hio ndio sababu softwares nyingi zinakua nzito kurun kwenye PC coz zinalazimisha kutumia processing thread moja wakati processor inaruhusu multi-threading.
Kitu kingine hizi taasisi zinazofundisha watu kufanya programming baadhi bado ziko nyuma sana ukilinganisha na mahitaji, na nyingine ziko mbele sana lakini kwenye direction ambayo sio sahihi(they are running very fast but out of the tracks)
Sitoongelea sana kuhusu hizi ambazo zipo nyuma coz ni kitu kinachoonekana, lakini nitaongelea hizi zinazokimbia sana(but out of the tracks). Kwa wenye idea na coding nadhan wataelewa hapa, kuna hii language inaitwa JAVASCRIPT(JS). JS ni rahisi sana kutumia na kuandika hii imefanya taasisi nyingi na watu binafsi kuinvest muda mwingi na resources kutengeneza javascript frameworks kwa almost kila kitu, huu ni uduwanzi kwa sababu tunazidisha u-softness na kufanya watu kuwa na brains ambazo ni tegemezi sana. Ukiangalia frameworks zinatengenezwa kwenye kitu ambacho bado sio efficient(Ni kama kuongeza ghorofa juu ya paa la nyumba ambayo haina msingi imara). Watu wanatumia umbrella ya "fast-prototyping" na "making everyone a programmer" kufanya vitu ambavyo vinaua kabisa hii field. Just imagine mtu anafight hadi javascript iweze kuandika USB drivers, i-program microcontrollers etc.... Kwa wataalam wanaweza jibu hapa "Hutoweza kumlinganisha mtu anaetumia JS frameworks kucode microcontroller na yule aliekua anatumia ASSEMBLY au C/C++ kiuwezo wa kufikiri na umakini katika kazi.
Sisemi kwamba frameworks zisitumike lakini shida inakuja pale unapokuta programmers wanadhani wanaelewa zaidi frameworks(Kiukweli hawazielewi) wakati hawaielewi kiundani lugha mama iliotumika kutengeneza hizo frameworks. Hii imejionesha wazi kwenye JAVASCRIPT coz wengi wanajikuta wanaelewa kutumia JS frameworks na libraries lkn hawaielewi kiundani Javascript kama Javascript. Kama baadhi ya programmers wanasema "JAVASCRIPT IS THE MOST MISUNDERSTOOD LANGUAGE EVER"
Ukiangalia mfano mwingine mission ya kwanza ya NASA ilitumia computer yenye 256 MB of RAM lakini kwa sasa ni vigumu sana kupata programmer ambae atatengeneza software yenye uwezo mkubwa na i-run kwenye PC yenye hio memory bila kukcrash.
SO, TUKIWA NA PROGRAMMERS AMBAO WANAWEZA KU-UTILIZE VIZURI COMPUTING RESOURCES ZILIZOPO KWA SASA KWA KUANDIKA EFFICIENT ALGOS NA KUTUMIA PROCESSING OPPORTUNITIES ZILIZOPO SIKUHIZI HASA HASA MULTI-THREADING ITASAIDIA SANA KUBORESHA TECHNOLOGY ZETU TULIZONAZO ILI IWE RAHISI KWA END USERS KUZITUMIA. KUKIWA NA MAKAMPUNI NA VYUO VINAVYOLENGA KUTENGENEZA PRO-PROGRAMMERS WENGI AMBAO WANAELEWA NINI WANA-CODE ITASAIDIA SANA KUTATUA HILI.
Peace......
kali linux