Programming language: Wapi tunakwama kujifunza?

Ladder 49

JF-Expert Member
Dec 19, 2017
7,416
18,856
Wakuu Habari zenu? Kujifunza programming language wapi tunakwama kama taifa.

Kuna kipindi na mimi niliamua kujaribu kujifunga ili nianze kutengeneza app ya android, Rafiki yangu akaniambia nitumie android studio nikainstall android studio kwenye computer nikajaribu kutengeneza weather forecast ikanishinda kwenye code za JAVA, nikauliza nikaambiwa lazima ujue kwanza JAVA ndio utaweza kutengeneza hiyo app ya android.

Nikajaribu kutafuta kitabu cha JAVA,kinaitwa INTRODUCTION TO JAVA PROGRAMMING BY Y.DANIEL LIANG kina page 1371,(nashauri ukakisome kama utataka kujifunza Language ya JAVA)
JAVABOOK.png



kina elekeza kila kitu kwa maelekezo yakutosha, sasa mimi eti bila kukisoma nikawaza kwamba kile nachokitaka tu niwe naenda kusoma halafu na apply kwenye app yangu ile ya weather forecast ,nikapambana nikagundua kuwa kumbe kuna API key kuna za free na zingine unatakiwa ulipie. Nikajaribu kufatilia kila code na nacho kitaka ikashindikana maana vitu vingi kiuhalisia sijui yaani hata data type za JAVA sielewi ila me naforce . Yaani nilikuwa nataka nisome code kwa shortcuts tu kitu ambacho hakipo na hakiwezekani kabisa lazima ujifunze kwanza vizuri , ufanye mazoezi kwanza ilikuzishika code ndio ufanye unachotaka.

Nikarudi tena kuuliza nataka nitengeneze software ya kuconvert data kutoka format moja kwenda nyingine mfano data ziko kwenye format ya excel nataka ziwe kwenye spss au nataka ziwe kwenye format ya STATA au kwenye format ya R na format zinginezo.

Nikapewa majibu soma C#, maana iko vizuri kwenye desktop app, nikataka shortcut vile vile kufatilia kitu kimoja tu nachokitaka na sio kusoma language yote ndio nifanye, nikaishia kutengeneza muonekano tu wa nje kwenye function zake hola.

Sasa nikawaza nafanyaje kuna mtu akaniambia kuna app inaitwa SOLO learning inafundisha halafu unapata na cheti , nikachagua language ya C#(C-SHARP) nikaanza kuisoma kwenye Solo learning nikapata cheti nikasema ngoja nisome pia JAVA nikasoma JAVA, nikamaliza nikaona pia natakiwa nisome mambo ya database nikasoma MySQL hapo hapo kwenye solo learning nikapata cheti ,sasa vyeti ninavyo. nianze kuandika code nimesahau nikaenda tena kusoma tena kwenye vitabu mbali mbali na nikaanza kundika code , Nikaacha JAVA nikachagua kuanza na language ya C-SHARP(C#)

Nikatafuta kitabu cha kusoma cha C# nikapata kitabu kinaitwa FUNDAMENTALS OF COMPUTER PROGRAMMING WITH C# by iki kitabu kiliandikwa na chuo chao sofia, kule Bulgaria, walimu wa computer wa chuo cha sofia university kina page 1122,
C#BOOK.png

kina kila kitu na maswali juu.usipo elewa hicho kitabu ushindwe mwenyewe,maana kila kitu umeelekezwa vizuri na maswali juu.

Baada ya kusoma hicho kitabu wataki huo sija maliza kusoma hicho kitabu maana kina page 1122, nikapata wazo la kutengeneza ubao yanii blackboard.(kumbuka mwanzoni nilikuwa na wazo la kutengeneza software ya data converter lakini baada ya kumaliza tu kusoma zile language mawazo nikabadilisha). Ubao haukukamilika niko katikati nikawaza sasa ukikamilika nitaenda kuwekaje kwenye website na watu waone na wakati website sijajua kutengeneza (mawazo ya hovyo hayo) halafu nikawa kama hiyo C# kama siikubali tena kauvimu kameanza na kitabu sijamaliza maana kina page kama 1122. hapo bado sijajua vizuri maana nilitakiwa nipate practise za kutosha, me nikaamua kuacha.
Programming languages used in most popular websites..png

Sasa nafanyaje tena maana na muda nimesha poteza. Nikaamua niende youtube kwanza nikawasikilize historia zao wagunduzi wa language za computer na wavumbuzi wa app,website na software mbali mbali kupitia mahojiano au speech zao (lilikuwa wazo zuri). Yaani histori ya language ya C hapo nakuwa namsikiliza dennis Ritchie mwenyewe founder wa language ya C. Kama JAVA nA msikiliza james Gosling mwenyewe,Language ya JAVASCRIPT nakuwa namsikiliza Brendan Eicher Mwenyewe. kwenye kila language nakuwa namsikiliza founder mwenyewe akiwa anaelezea ,(nilifanya hivi iliniwe na mawazo ya watu kama wa programming language) yaani kama language ya RUBY,C#,PHP,C++,PYTHON,PERL, na PASCAL na pia wale founder wa framework za language kadhaa kama ruby on rails na zinginezo. Hapo nikajua vitu vingi tu moja wapo kumbe Microsoft yaani bill gate alikuwa anataka kuinunua JAVA, JAVA wakakataa kwahiyo akaajiri mtu atengeneze language lakini walivyotengeneza kwa mimi niliosoma language ya JAVA NA C# naona kama zinafanana tu ukijua JAVA Kujua C# inakuwa easy pia. Kwa mtazamo wangu walicopy kila kitu kutoka kwa JAVA halafu wakaboresha tu vitu wao walivyoona ni mapungufu.na kingine nikajua kila language ni bora kwenye kitu gani na programming language kujua sio lazima ukasomee chuo unaweza kujifunza mwenyewe tu na unaweza.

Nikawasikiliza karibia 85% (nimekadilia tu ila language zilikuwa Zaidi ya 10 zilizosikiliza founder wake), baada ya hapo nikaamia kwa ma founder mbali mbli kama ni wa software au,wa app, website, desktop app,nikaanza na Mark wa facebook nikafatilia historia yake Maisha yake kabla ya chuo, akiwa chuoni mpaka anatengeneza facebook,founder wa whatsapp, paypal,skype,dropbox,google, twitter, youtube,Instagram, snapchat,telegram. bill gate mwenyewe historia yake, apple,pinterest,spotify,Oracle,na zingine nyingi.

wengi nikiwanawasikiliza nakuwa na jua language walizokuwa wanatumia na pia nikajua life zao zilikuwaje mfano larry Ellison founder wa oracle alikimbiwa na mke Maisha magumu lakini akasema me najua code alikuwa anajua language ya C,akakaza akatoboa na wengine wengi.

Pia bila kusahau nimewasikiliza self-taught programmer mbalimabli ,watu waliojifundisha kufanya code wenyewe na wakaja kuajiliwa kama vile amazon na makampuni mengine makubwa..

Baada ya hayo yote nikaamia kwenye language nyingine inaitwa JAVASCRIPT na wakati huo nilikuwa tayari nimeanza kusoma C#, ila nikaacha , nikaanzakusoma language mpaya kule solo learning nilivyofika katikani nikagungua natakiwa kusoma HTML na CSS kabla ya JAVASCRIPT,na pia natakiwa nisome REACT, VUE NA ANGULAR moja wapo kati ya hizo kama framework.

Nikarudi kusoma HTML na CSS baada yakumaliza nikaamia kwenye JAVASCRIPT baada ya kumaliza nikasoma data structure and aligorithm (hapo kugumu sana kueleweka) baada ya kumaliza nikafikiria cha kutengeneza nikaseme nitengeneze website ya matokeo ya mpira maana ndio inalipa hiyo maana watu watakuwa wantaka kuangalia matokeo ya mpira wa miguu kila wakati hiyo website inakuwa kama livescore vile(sio vizuri kuanza nayo kwa beginner), nikapambana mmh ikanishinda nikalipia kabisa hadi api key matokeo yanakuja kabisa lakini nikaona kuna mambo mengi sana kwenye CSS, yaani CSS uwe vizuri, na mimi siku practise vya kutosha.

Nikaamua kuacha yote na kurudi kwenye HTML na CSS kwanza nikafanya practise za kutosha nikarudi tena kwenye JAVASCRIPT andika code upya, practise za kutosha. Wakati na practise HTML, CSS JAVASCRIT kwa mara ya pili nikaona vizuri nitafute material mazuri(notes, video na vitabu vya javascript vya kueleweka na vya kutosha). Ule ubabahishaji nikaweka pembeni maana kwenye programming language huku hakuna janja janja, lazima ufanye kitu watu waone.

Nikaamua nikomae tu na JAVASCRIPT ni sihame tena niwekeze huko nguvu zote,hata iweje ni sihame tena huko. Ni baki na JAVASCRIPT yangu .

Safari hii nikapata wazo la kutengeneza website ya kuweka notes kwa level ya degree,nilikuwa nimefikiria kuwawekea notes wanafunzi na watu mbali mbali wakitaka kujifunza waje wasome kwangu yaani kwenye website yangu.notes za masomo yote isipokuwa notes za computer tu.

Kwenye server nikatumia database ya mysql, kuconnect kwenye back end kule kwa JAVASCRIPT nikakutana na node js na express nikasoma framework ya express iliniweze kuweka notes kwenye server zionekane kwenye front-end, hapo ilikuwa mtiti nikajua kufanya programming ni ngumu sio kitoto ila baada ya kama wiki mbili hivi nikafanikisha.

Hiyo website nimeikamilisha kabisa ipo na ina fanya kazi tayari.

Ushauri wangu kwa mtu anaetaka kujifunza code.

1.Chagua language yoyote ile anzakujifunza, kuuliza maswali mengi kwamba nianze na language gani hapo ni kupoteza muda tu ,wewe changua language yoyote ile anzakusoma, ukijua language moja kwenda language nyingi ni rahisi sana.maana zina fanana tu kuna mabadiliko madogo yana kuepo ya syntax. Haiitaji kwenda kusomea chuo ,chuo pale wapo kukamilisha ratiba tu programmer wengi wazuri wanakomaa wenyewe tu sio kutegemea chuoni tu pale, Usisahau Don’t think you can learn coding quickly. Usipoteze muda kutafuta which programming language is the best? Wewe changua yoyote anza kuisoma.

2.Baada ya kuchagua language unayotaka chagua kitabu gani kizuri cha language uliyochagua ,kama kuna video za kuangalia ziweke vizuri , kama kuna website ichague.nashauri usitumie solo learning maana haitakusaidia kwa kuanzia.bila kusahau hapo data structure, aligorithm , database na yenyewe material yake, yasiwe mengi kama kitabu kimoja website moja na video za mtu moja tu .

Vitabu vyakusoma kwa language kama C, C++, JAVASCRIPT, C#, na JAVA kwa upande wangu nashauri hivi hapa:

a. The C Programming Language. 2nd Edition Book by Brian Kernighan and Dennis Ritchie

b. The C++ Programming Language (4th Edition) by Bjarne Stroustrup


c. Eloquent JavaScript, 3rd Edition: A Modern Introduction to Programming by Marijn Haverbeke

d. FUNDAMENTALS OF COMPUTER PROGRAMMING WITH C# (The Bulgarian C# Programming Book)

e. INTRODUCTION TO JAVA PROGRAMMING BY Y. DANIEL LIANG

Pia kuna website inaitwa w3school hiyo iko vizuri sana yaani hiyo inatosha kabisa kujifunzia language.

Na upande wa video za youtube kwa wale wazee wa C na C++ kuna mwalimu anaitwa Jenny Lecture nikabinti hivi kakihindi anakufundisha C na C++ kwa sasa usipoelewa umeamua wewe mwenyewe.

Kuna mwingine anaitwa kyle cook anatumia jina la web simplified kwenye youtube yeye huyu ni javascript video zake za kufundisha javascript hazipo hapo kwenye youtube zipo huku www.downloadly.ir lakini pia baadhi ya concept unaweza kuzisoma kwenye account yake ya youtube ,amepangilia vizuri sana. Javascript usipoelewa umetaka mwenyewe Na mwingine huyu hapa anatumia jina la kudvenkat ni mhindi huyo ni mkali wa C#.

3.Mtazamo wangu watanzania wengi tunapenda vitu kwa shortcut, ndio programming inalipa lakini sio rahisi kiasi hicho lazima ukomae aisee. yaani kitu ujajua vizuri unawaza faida founder wa facebook sio tu kwanza alitengeneza facebook tu Hapana,alishawahi kutengeneza chat system,music player, games,learning system na zingine kibao tu ila kwenye facebook ndio akatoka. Sisi tunataka tutachotengeneza hicho hicho kitutoe, ndio maana asilimia kubwa tupo bado tunawaza nini chakufanya badala ya kufanya kwanza chochote hicho kidogo.

Jifunze kwa kuandika code sio kujua tu theory andika code, practise ndio itakufanya ujue. Kujua programming language sio kitu rahisi, bila practise sana utakuwa unapoteza muda tu maana utakuwa unasahau. Usipende kucopy na kupaste, wewe hizo code andika mwenyewe.

4.Acha maneno mengi anza kaundika code watu waone kitu umefanya sio unasema najua language kibao halafu hauna ulichofanya, ndio maana hizo theory za kuwa tambia watu zimeshindwa kukusaidia kuanza kuandika code, unachojua ni hello world tu.

5.Nilichojifunza na kugundua ni kwamba unaweza kujua kusema hii inafanya kazi gani yaani mfano ukajua recursion ni nini? ila ukashindwa kuandika code kuitumia hiyo recursion. kwahiyo baada ya kujifunza language anza kuandika code.

6.Watu wengi wa computer science wanamaliza chuo wanaweza kuwa wanajua kuandika code ila tatizo linakuja hajui atengeneze nini, hii inatokana na kwamba yeye anajua code tu hana mawazo mengine tofauti na code, sasa atengeneze nini?.mtu aliesoma tofauti na computer science akijua language yoyote ile inakuwa rahisi yeye kutengeneza kitu kwenye course aliyosemea mfano kama mimi nimesomea mathematics ni rahisi kutengeneza app ya kusolve hesabu unascan tu swali inakuja pale njia mpaka jibu. Kwa sababu najua tayari namna ya kusolve maswali . sasa watu wa computer science tofauti na notes hizo za computer science hana kitu kingine chakutengezena. Lakini angekuwa na daktari hapo angempa kitu cha kutengeneza kuhusiana na afya mfano app ya magojwa ukiingiza dalili tu ya ugongwa unaletewa utakuwa unaumwa ugonjwa gani. Kwahiyo usijiulize sana kwanini wanashindwa kutengeneza chochote na wanasubiria kazi waajiriwe kutengeneza kitu hata yeye bila ya kuajiliwa angetengeneza.tofauti na hapo labda ameamua kujiajiri mwenyewe.


7.Sio vibaya kufanya kitu ambacho watu wengine wamefanya, maana idea haiji full formed, unaweza kutengeneza hicho cha kuiga mbeleni ukapata mawazo ya kufanya kitu chako mwenyewe na sio kukaa tu kuendelea kuwaza nini cha kufanya.
Kama unafatilia kila kitu watu wameshafanya hicho cha peke yako unakitoa wapi? Wewe tafuta maboresho tui li watu waje kwako na wasiende kwa mwenzio.na hata wewe ukibuni cha kwako tutakuiga tu


8Wakati unasoma language ulioyoichagua kunakukata tamaa njiani, ni vizuri ukakomaana maana kila anaejua programming hayo yote amepitia maana mara ya kwanza unaweza kumaliza kujifunza ukija sasa kuanza kuandika code sasa kitu kionekane unajikuta hujui chochote na wakati umesoma na ulijiiona hizo theory umeelewa.


Kwenye kujifunza kuna kuwa na ugumu kutokana na hizo language wewe ndio mara ya kwanza wewe kuziona ndio maana zinakupa shida ila baada ya muda utazoe tu nakuona kumbe rahisi hivi.

Kila sehemu kuna changamoto zake ni kuwa tu mvumilivu.na chagua material mazuri ambayo utaelewa vizuri.mwanafunzi kujifunza inakuwa ngumu maana anatakiwa akimbizane na assignment na mitihani muda anautoa wapi ila kama uko free tu utajua.


Ni hayo tu wakuu kujifunza Programming language tunakwama wapi?
 
Programming language: kujifunza wapi tunakwama?
Wakuu Habari zenu? Kujifunza programming language wapi tunakwama kama taifa.

Kuna kipindi na mimi niliamua kujaribu kujifunga ili nianze kutengeneza app ya android, Rafiki yangu akaniambia nitumie android studio nikainstall android studio kwenye computer nikajaribu kutengeneza weather forecast ikanishinda kwenye code za JAVA, nikauliza nikaambiwa lazima ujue kwanza JAVA ndio utaweza kutengeneza hiyo app ya android.

Nikajaribu kutafuta kitabu cha JAVA,kinaitwa INTRODUCTION TO JAVA PROGRAMMING BY Y.DANIEL LIANG kina page 1371,(nashauri ukakisome kama utataka kujifunza Language ya JAVA)
View attachment 2300193


kina elekeza kila kitu kwa maelekezo yakutosha, sasa mimi eti bila kukisoma nikawaza kwamba kile nachokitaka tu niwe naenda kusoma halafu na apply kwenye app yangu ile ya weather forecast ,nikapambana nikagundua kuwa kumbe kuna API key kuna za free na zingine unatakiwa ulipie. Nikajaribu kufatilia kila code na nacho kitaka ikashindikana maana vitu vingi kiuhalisia sijui yaani hata data type za JAVA sielewi ila me naforce . Yaani nilikuwa nataka nisome code kwa shortcuts tu kitu ambacho hakipo na hakiwezekani kabisa lazima ujifunze kwanza vizuri , ufanye mazoezi kwanza ilikuzishika code ndio ufanye unachotaka.

Nikarudi tena kuuliza nataka nitengeneze software ya kuconvert data kutoka format moja kwenda nyingine mfano data ziko kwenye format ya excel nataka ziwe kwenye spss au nataka ziwe kwenye format ya STATA au kwenye format ya R na format zinginezo.

Nikapewa majibu soma C#, maana iko vizuri kwenye desktop app, nikataka shortcut vile vile kufatilia kitu kimoja tu nachokitaka na sio kusoma language yote ndio nifanye, nikaishia kutengeneza muonekano tu wa nje kwenye function zake hola.

Sasa nikawaza nafanyaje kuna mtu akaniambia kuna app inaitwa SOLO learning inafundisha halafu unapata na cheti , nikachagua language ya C#(C-SHARP) nikaanza kuisoma kwenye Solo learning nikapata cheti nikasema ngoja nisome pia JAVA nikasoma JAVA, nikamaliza nikaona pia natakiwa nisome mambo ya database nikasoma MySQL hapo hapo kwenye solo learning nikapata cheti ,sasa vyeti ninavyo. nianze kuandika code nimesahau nikaenda tena kusoma tena kwenye vitabu mbali mbali na nikaanza kundika code , Nikaacha JAVA nikachagua kuanza na language ya C-SHARP(C#)

Nikatafuta kitabu cha kusoma cha C# nikapata kitabu kinaitwa FUNDAMENTALS OF COMPUTER PROGRAMMING WITH C# by iki kitabu kiliandikwa na chuo chao sofia, kule Bulgaria, walimu wa computer wa chuo cha sofia university kina page 1122,
View attachment 2300199
kina kila kitu na maswali juu.usipo elewa hicho kitabu ushindwe mwenyewe,maana kila kitu umeelekezwa vizuri na maswali juu.

Baada ya kusoma hicho kitabu wataki huo sija maliza kusoma hicho kitabu maana kina page 1122, nikapata wazo la kutengeneza ubao yanii blackboard.(kumbuka mwanzoni nilikuwa na wazo la kutengeneza software ya data converter lakini baada ya kumaliza tu kusoma zile language mawazo nikabadilisha). Ubao haukukamilika niko katikati nikawaza sasa ukikamilika nitaenda kuwekaje kwenye website na watu waone na wakati website sijajua kutengeneza (mawazo ya hovyo hayo) halafu nikawa kama hiyo C# kama siikubali tena kauvimu kameanza na kitabu sijamaliza maana kina page kama 1122. hapo bado sijajua vizuri maana nilitakiwa nipate practise za kutosha, me nikaamua kuacha.
View attachment 2300205
Sasa nafanyaje tena maana na muda nimesha poteza. Nikaamua niende youtube kwanza nikawasikilize historia zao wagunduzi wa language za computer na wavumbuzi wa app,website na software mbali mbali kupitia mahojiano au speech zao (lilikuwa wazo zuri). Yaani histori ya language ya C hapo nakuwa namsikiliza dennis Ritchie mwenyewe founder wa language ya C. Kama JAVA nA msikiliza james Gosling mwenyewe,Language ya JAVASCRIPT nakuwa namsikiliza Brendan Eicher Mwenyewe. kwenye kila language nakuwa namsikiliza founder mwenyewe akiwa anaelezea ,(nilifanya hivi iliniwe na mawazo ya watu kama wa programming language) yaani kama language ya RUBY,C#,PHP,C++,PYTHON,PERL, na PASCAL na pia wale founder wa framework za language kadhaa kama ruby on rails na zinginezo. Hapo nikajua vitu vingi tu moja wapo kumbe Microsoft yaani bill gate alikuwa anataka kuinunua JAVA, JAVA wakakataa kwahiyo akaajiri mtu atengeneze language lakini walivyotengeneza kwa mimi niliosoma language ya JAVA NA C# naona kama zinafanana tu ukijua JAVA Kujua C# inakuwa easy pia. Kwa mtazamo wangu walicopy kila kitu kutoka kwa JAVA halafu wakaboresha tu vitu wao walivyoona ni mapungufu.na kingine nikajua kila language ni bora kwenye kitu gani na programming language kujua sio lazima ukasomee chuo unaweza kujifunza mwenyewe tu na unaweza.

Nikawasikiliza karibia 85% (nimekadilia tu ila language zilikuwa Zaidi ya 10 zilizosikiliza founder wake), baada ya hapo nikaamia kwa ma founder mbali mbli kama ni wa software au,wa app, website, desktop app,nikaanza na Mark wa facebook nikafatilia historia yake Maisha yake kabla ya chuo, akiwa chuoni mpaka anatengeneza facebook,founder wa whatsapp, paypal,skype,dropbox,google, twitter, youtube,Instagram, snapchat,telegram. bill gate mwenyewe historia yake, apple,pinterest,spotify,Oracle,na zingine nyingi.

wengi nikiwanawasikiliza nakuwa na jua language walizokuwa wanatumia na pia nikajua life zao zilikuwaje mfano larry Ellison founder wa oracle alikimbiwa na mke Maisha magumu lakini akasema me najua code alikuwa anajua language ya C,akakaza akatoboa na wengine wengi.

Pia bila kusahau nimewasikiliza self-taught programmer mbalimabli ,watu waliojifundisha kufanya code wenyewe na wakaja kuajiliwa kama vile amazon na makampuni mengine makubwa..

Baada ya hayo yote nikaamia kwenye language nyingine inaitwa JAVASCRIPT na wakati huo nilikuwa tayari nimeanza kusoma C#, ila nikaacha , nikaanzakusoma language mpaya kule solo learning nilivyofika katikani nikagungua natakiwa kusoma HTML na CSS kabla ya JAVASCRIPT,na pia natakiwa nisome REACT, VUE NA ANGULAR moja wapo kati ya hizo kama framework.

Nikarudi kusoma HTML na CSS baada yakumaliza nikaamia kwenye JAVASCRIPT baada ya kumaliza nikasoma data structure and aligorithm (hapo kugumu sana kueleweka) baada ya kumaliza nikafikiria cha kutengeneza nikaseme nitengeneze website ya matokeo ya mpira maana ndio inalipa hiyo maana watu watakuwa wantaka kuangalia matokeo ya mpira wa miguu kila wakati hiyo website inakuwa kama livescore vile(sio vizuri kuanza nayo kwa beginner), nikapambana mmh ikanishinda nikalipia kabisa hadi api key matokeo yanakuja kabisa lakini nikaona kuna mambo mengi sana kwenye CSS, yaani CSS uwe vizuri, na mimi siku practise vya kutosha.

Nikaamua kuacha yote na kurudi kwenye HTML na CSS kwanza nikafanya practise za kutosha nikarudi tena kwenye JAVASCRIPT andika code upya, practise za kutosha. Wakati na practise HTML, CSS JAVASCRIT kwa mara ya pili nikaona vizuri nitafute material mazuri(notes, video na vitabu vya javascript vya kueleweka na vya kutosha). Ule ubabahishaji nikaweka pembeni maana kwenye programming language huku hakuna janja janja, lazima ufanye kitu watu waone.

Nikaamua nikomae tu na JAVASCRIPT ni sihame tena niwekeze huko nguvu zote,hata iweje ni sihame tena huko. Ni baki na JAVASCRIPT yangu .

Safari hii nikapata wazo la kutengeneza website ya kuweka notes kwa level ya degree,nilikuwa nimefikiria kuwawekea notes wanafunzi na watu mbali mbali wakitaka kujifunza waje wasome kwangu yaani kwenye website yangu.notes za masomo yote isipokuwa notes za computer tu.

Kwenye server nikatumia database ya mysql, kuconnect kwenye back end kule kwa JAVASCRIPT nikakutana na node js na express nikasoma framework ya express iliniweze kuweka notes kwenye server zionekane kwenye front-end, hapo ilikuwa mtiti nikajua kufanya programming ni ngumu sio kitoto ila baada ya kama wiki mbili hivi nikafanikisha.

Hiyo website nimeikamilisha kabisa ipo na ina fanya kazi tayari.

Ushauri wangu kwa mtu anaetaka kujifunza code.

1.Chagua language yoyote ile anzakujifunza, kuuliza maswali mengi kwamba nianze na language gani hapo ni kupoteza muda tu ,wewe changua language yoyote ile anzakusoma, ukijua language moja kwenda language nyingi ni rahisi sana.maana zina fanana tu kuna mabadiliko madogo yana kuepo ya syntax. Haiitaji kwenda kusomea chuo ,chuo pale wapo kukamilisha ratiba tu programmer wengi wazuri wanakomaa wenyewe tu sio kutegemea chuoni tu pale, Usisahau Don’t think you can learn coding quickly. Usipoteze muda kutafuta which programming language is the best? Wewe changua yoyote anza kuisoma.

2.Baada ya kuchagua language unayotaka chagua kitabu gani kizuri cha language uliyochagua ,kama kuna video za kuangalia ziweke vizuri , kama kuna website ichague.nashauri usitumie solo learning maana haitakusaidia kwa kuanzia.bila kusahau hapo data structure, aligorithm , database na yenyewe material yake, yasiwe mengi kama kitabu kimoja website moja na video za mtu moja tu .

Vitabu vyakusoma kwa language kama C, C++, JAVASCRIPT, C#, na JAVA kwa upande wangu nashauri hivi hapa:

a. The C Programming Language. 2nd Edition Book by Brian Kernighan and Dennis Ritchie

b. The C++ Programming Language (4th Edition) by Bjarne Stroustrup


c. Eloquent JavaScript, 3rd Edition: A Modern Introduction to Programming by Marijn Haverbeke

d. FUNDAMENTALS OF COMPUTER PROGRAMMING WITH C# (The Bulgarian C# Programming Book)

e. INTRODUCTION TO JAVA PROGRAMMING BY Y. DANIEL LIANG

Pia kuna website inaitwa w3school hiyo iko vizuri sana yaani hiyo inatosha kabisa kujifunzia language.

Na upande wa video za youtube kwa wale wazee wa C na C++ kuna mwalimu anaitwa Jenny Lecture nikabinti hivi kakihindi anakufundisha C na C++ kwa sasa usipoelewa umeamua wewe mwenyewe.

Kuna mwingine anaitwa kyle cook anatumia jina la web simplified kwenye youtube yeye huyu ni javascript video zake za kufundisha javascript hazipo hapo kwenye youtube zipo huku www.downloadly.ir lakini pia baadhi ya concept unaweza kuzisoma kwenye account yake ya youtube ,amepangilia vizuri sana. Javascript usipoelewa umetaka mwenyewe Na mwingine huyu hapa anatumia jina la kudvenkat ni mhindi huyo ni mkali wa C#.

3.Mtazamo wangu watanzania wengi tunapenda vitu kwa shortcut, ndio programming inalipa lakini sio rahisi kiasi hicho lazima ukomae aisee. yaani kitu ujajua vizuri unawaza faida founder wa facebook sio tu kwanza alitengeneza facebook tu Hapana,alishawahi kutengeneza chat system,music player, games,learning system na zingine kibao tu ila kwenye facebook ndio akatoka. Sisi tunataka tutachotengeneza hicho hicho kitutoe, ndio maana asilimia kubwa tupo bado tunawaza nini chakufanya badala ya kufanya kwanza chochote hicho kidogo.

Jifunze kwa kuandika code sio kujua tu theory andika code, practise ndio itakufanya ujue. Kujua programming language sio kitu rahisi, bila practise sana utakuwa unapoteza muda tu maana utakuwa unasahau. Usipende kucopy na kupaste, wewe hizo code andika mwenyewe.

4.Acha maneno mengi anza kaundika code watu waone kitu umefanya sio unasema najua language kibao halafu hauna ulichofanya, ndio maana hizo theory za kuwa tambia watu zimeshindwa kukusaidia kuanza kuandika code, unachojua ni hello world tu.

5.Nilichojifunza na kugundua ni kwamba unaweza kujua kusema hii inafanya kazi gani yaani mfano ukajua recursion ni nini? ila ukashindwa kuandika code kuitumia hiyo recursion. kwahiyo baada ya kujifunza language anza kuandika code.

6.Watu wengi wa computer science wanamaliza chuo wanaweza kuwa wanajua kuandika code ila tatizo linakuja hajui atengeneze nini, hii inatokana na kwamba yeye anajua code tu hana mawazo mengine tofauti na code, sasa atengeneze nini?.mtu aliesoma tofauti na computer science akijua language yoyote ile inakuwa rahisi yeye kutengeneza kitu kwenye course aliyosemea mfano kama mimi nimesomea mathematics ni rahisi kutengeneza app ya kusolve hesabu unascan tu swali inakuja pale njia mpaka jibu. Kwa sababu najua tayari namna ya kusolve maswali . sasa watu wa computer science tofauti na notes hizo za computer science hana kitu kingine chakutengezena. Lakini angekuwa na daktari hapo angempa kitu cha kutengeneza kuhusiana na afya mfano app ya magojwa ukiingiza dalili tu ya ugongwa unaletewa utakuwa unaumwa ugonjwa gani. Kwahiyo usijiulize sana kwanini wanashindwa kutengeneza chochote na wanasubiria kazi waajiriwe kutengeneza kitu hata yeye bila ya kuajiliwa angetengeneza.tofauti na hapo labda ameamua kujiajiri mwenyewe.


7.Sio vibaya kufanya kitu ambacho watu wengine wamefanya, maana idea haiji full formed, unaweza kutengeneza hicho cha kuiga mbeleni ukapata mawazo ya kufanya kitu chako mwenyewe na sio kukaa tu kuendelea kuwaza nini cha kufanya.
Kama unafatilia kila kitu watu wameshafanya hicho cha peke yako unakitoa wapi? Wewe tafuta maboresho tui li watu waje kwako na wasiende kwa mwenzio.na hata wewe ukibuni cha kwako tutakuiga tu


8Wakati unasoma language ulioyoichagua kunakukata tamaa njiani, ni vizuri ukakomaana maana kila anaejua programming hayo yote amepitia maana mara ya kwanza unaweza kumaliza kujifunza ukija sasa kuanza kuandika code sasa kitu kionekane unajikuta hujui chochote na wakati umesoma na ulijiiona hizo theory umeelewa.


Kwenye kujifunza kuna kuwa na ugumu kutokana na hizo language wewe ndio mara ya kwanza wewe kuziona ndio maana zinakupa shida ila baada ya muda utazoe tu nakuona kumbe rahisi hivi.

Kila sehemu kuna changamoto zake ni kuwa tu mvumilivu.na chagua material mazuri ambayo utaelewa vizuri.mwanafunzi kujifunza inakuwa ngumu maana anatakiwa akimbizane na assignment na mitihani muda anautoa wapi ila kama uko free tu utajua.


Ni hayo tu wakuu kujifunza Programming language tunakwama wapi?
Kwenye hizi mambo ni vyema mkaanza tangu mwanzo kwa maana ili nianze kusoma na kuanza ku code niwe na kipi na kipi
 
Wakuu Habari zenu? Kujifunza programming language wapi tunakwama kama taifa.

Kuna kipindi na mimi niliamua kujaribu kujifunga ili nianze kutengeneza app ya android, Rafiki yangu akaniambia nitumie android studio nikainstall android studio kwenye computer nikajaribu kutengeneza weather forecast ikanishinda kwenye code za JAVA, nikauliza nikaambiwa lazima ujue kwanza JAVA ndio utaweza kutengeneza hiyo app ya android.

Nikajaribu kutafuta kitabu cha JAVA,kinaitwa INTRODUCTION TO JAVA PROGRAMMING BY Y.DANIEL LIANG kina page 1371,(nashauri ukakisome kama utataka kujifunza Language ya JAVA)
View attachment 2300193


kina elekeza kila kitu kwa maelekezo yakutosha, sasa mimi eti bila kukisoma nikawaza kwamba kile nachokitaka tu niwe naenda kusoma halafu na apply kwenye app yangu ile ya weather forecast ,nikapambana nikagundua kuwa kumbe kuna API key kuna za free na zingine unatakiwa ulipie. Nikajaribu kufatilia kila code na nacho kitaka ikashindikana maana vitu vingi kiuhalisia sijui yaani hata data type za JAVA sielewi ila me naforce . Yaani nilikuwa nataka nisome code kwa shortcuts tu kitu ambacho hakipo na hakiwezekani kabisa lazima ujifunze kwanza vizuri , ufanye mazoezi kwanza ilikuzishika code ndio ufanye unachotaka.

Nikarudi tena kuuliza nataka nitengeneze software ya kuconvert data kutoka format moja kwenda nyingine mfano data ziko kwenye format ya excel nataka ziwe kwenye spss au nataka ziwe kwenye format ya STATA au kwenye format ya R na format zinginezo.

Nikapewa majibu soma C#, maana iko vizuri kwenye desktop app, nikataka shortcut vile vile kufatilia kitu kimoja tu nachokitaka na sio kusoma language yote ndio nifanye, nikaishia kutengeneza muonekano tu wa nje kwenye function zake hola.

Sasa nikawaza nafanyaje kuna mtu akaniambia kuna app inaitwa SOLO learning inafundisha halafu unapata na cheti , nikachagua language ya C#(C-SHARP) nikaanza kuisoma kwenye Solo learning nikapata cheti nikasema ngoja nisome pia JAVA nikasoma JAVA, nikamaliza nikaona pia natakiwa nisome mambo ya database nikasoma MySQL hapo hapo kwenye solo learning nikapata cheti ,sasa vyeti ninavyo. nianze kuandika code nimesahau nikaenda tena kusoma tena kwenye vitabu mbali mbali na nikaanza kundika code , Nikaacha JAVA nikachagua kuanza na language ya C-SHARP(C#)

Nikatafuta kitabu cha kusoma cha C# nikapata kitabu kinaitwa FUNDAMENTALS OF COMPUTER PROGRAMMING WITH C# by iki kitabu kiliandikwa na chuo chao sofia, kule Bulgaria, walimu wa computer wa chuo cha sofia university kina page 1122,
View attachment 2300199
kina kila kitu na maswali juu.usipo elewa hicho kitabu ushindwe mwenyewe,maana kila kitu umeelekezwa vizuri na maswali juu.

Baada ya kusoma hicho kitabu wataki huo sija maliza kusoma hicho kitabu maana kina page 1122, nikapata wazo la kutengeneza ubao yanii blackboard.(kumbuka mwanzoni nilikuwa na wazo la kutengeneza software ya data converter lakini baada ya kumaliza tu kusoma zile language mawazo nikabadilisha). Ubao haukukamilika niko katikati nikawaza sasa ukikamilika nitaenda kuwekaje kwenye website na watu waone na wakati website sijajua kutengeneza (mawazo ya hovyo hayo) halafu nikawa kama hiyo C# kama siikubali tena kauvimu kameanza na kitabu sijamaliza maana kina page kama 1122. hapo bado sijajua vizuri maana nilitakiwa nipate practise za kutosha, me nikaamua kuacha.
View attachment 2300205
Sasa nafanyaje tena maana na muda nimesha poteza. Nikaamua niende youtube kwanza nikawasikilize historia zao wagunduzi wa language za computer na wavumbuzi wa app,website na software mbali mbali kupitia mahojiano au speech zao (lilikuwa wazo zuri). Yaani histori ya language ya C hapo nakuwa namsikiliza dennis Ritchie mwenyewe founder wa language ya C. Kama JAVA nA msikiliza james Gosling mwenyewe,Language ya JAVASCRIPT nakuwa namsikiliza Brendan Eicher Mwenyewe. kwenye kila language nakuwa namsikiliza founder mwenyewe akiwa anaelezea ,(nilifanya hivi iliniwe na mawazo ya watu kama wa programming language) yaani kama language ya RUBY,C#,PHP,C++,PYTHON,PERL, na PASCAL na pia wale founder wa framework za language kadhaa kama ruby on rails na zinginezo. Hapo nikajua vitu vingi tu moja wapo kumbe Microsoft yaani bill gate alikuwa anataka kuinunua JAVA, JAVA wakakataa kwahiyo akaajiri mtu atengeneze language lakini walivyotengeneza kwa mimi niliosoma language ya JAVA NA C# naona kama zinafanana tu ukijua JAVA Kujua C# inakuwa easy pia. Kwa mtazamo wangu walicopy kila kitu kutoka kwa JAVA halafu wakaboresha tu vitu wao walivyoona ni mapungufu.na kingine nikajua kila language ni bora kwenye kitu gani na programming language kujua sio lazima ukasomee chuo unaweza kujifunza mwenyewe tu na unaweza.

Nikawasikiliza karibia 85% (nimekadilia tu ila language zilikuwa Zaidi ya 10 zilizosikiliza founder wake), baada ya hapo nikaamia kwa ma founder mbali mbli kama ni wa software au,wa app, website, desktop app,nikaanza na Mark wa facebook nikafatilia historia yake Maisha yake kabla ya chuo, akiwa chuoni mpaka anatengeneza facebook,founder wa whatsapp, paypal,skype,dropbox,google, twitter, youtube,Instagram, snapchat,telegram. bill gate mwenyewe historia yake, apple,pinterest,spotify,Oracle,na zingine nyingi.

wengi nikiwanawasikiliza nakuwa na jua language walizokuwa wanatumia na pia nikajua life zao zilikuwaje mfano larry Ellison founder wa oracle alikimbiwa na mke Maisha magumu lakini akasema me najua code alikuwa anajua language ya C,akakaza akatoboa na wengine wengi.

Pia bila kusahau nimewasikiliza self-taught programmer mbalimabli ,watu waliojifundisha kufanya code wenyewe na wakaja kuajiliwa kama vile amazon na makampuni mengine makubwa..

Baada ya hayo yote nikaamia kwenye language nyingine inaitwa JAVASCRIPT na wakati huo nilikuwa tayari nimeanza kusoma C#, ila nikaacha , nikaanzakusoma language mpaya kule solo learning nilivyofika katikani nikagungua natakiwa kusoma HTML na CSS kabla ya JAVASCRIPT,na pia natakiwa nisome REACT, VUE NA ANGULAR moja wapo kati ya hizo kama framework.

Nikarudi kusoma HTML na CSS baada yakumaliza nikaamia kwenye JAVASCRIPT baada ya kumaliza nikasoma data structure and aligorithm (hapo kugumu sana kueleweka) baada ya kumaliza nikafikiria cha kutengeneza nikaseme nitengeneze website ya matokeo ya mpira maana ndio inalipa hiyo maana watu watakuwa wantaka kuangalia matokeo ya mpira wa miguu kila wakati hiyo website inakuwa kama livescore vile(sio vizuri kuanza nayo kwa beginner), nikapambana mmh ikanishinda nikalipia kabisa hadi api key matokeo yanakuja kabisa lakini nikaona kuna mambo mengi sana kwenye CSS, yaani CSS uwe vizuri, na mimi siku practise vya kutosha.

Nikaamua kuacha yote na kurudi kwenye HTML na CSS kwanza nikafanya practise za kutosha nikarudi tena kwenye JAVASCRIPT andika code upya, practise za kutosha. Wakati na practise HTML, CSS JAVASCRIT kwa mara ya pili nikaona vizuri nitafute material mazuri(notes, video na vitabu vya javascript vya kueleweka na vya kutosha). Ule ubabahishaji nikaweka pembeni maana kwenye programming language huku hakuna janja janja, lazima ufanye kitu watu waone.

Nikaamua nikomae tu na JAVASCRIPT ni sihame tena niwekeze huko nguvu zote,hata iweje ni sihame tena huko. Ni baki na JAVASCRIPT yangu .

Safari hii nikapata wazo la kutengeneza website ya kuweka notes kwa level ya degree,nilikuwa nimefikiria kuwawekea notes wanafunzi na watu mbali mbali wakitaka kujifunza waje wasome kwangu yaani kwenye website yangu.notes za masomo yote isipokuwa notes za computer tu.

Kwenye server nikatumia database ya mysql, kuconnect kwenye back end kule kwa JAVASCRIPT nikakutana na node js na express nikasoma framework ya express iliniweze kuweka notes kwenye server zionekane kwenye front-end, hapo ilikuwa mtiti nikajua kufanya programming ni ngumu sio kitoto ila baada ya kama wiki mbili hivi nikafanikisha.

Hiyo website nimeikamilisha kabisa ipo na ina fanya kazi tayari.

Ushauri wangu kwa mtu anaetaka kujifunza code.

1.Chagua language yoyote ile anzakujifunza, kuuliza maswali mengi kwamba nianze na language gani hapo ni kupoteza muda tu ,wewe changua language yoyote ile anzakusoma, ukijua language moja kwenda language nyingi ni rahisi sana.maana zina fanana tu kuna mabadiliko madogo yana kuepo ya syntax. Haiitaji kwenda kusomea chuo ,chuo pale wapo kukamilisha ratiba tu programmer wengi wazuri wanakomaa wenyewe tu sio kutegemea chuoni tu pale, Usisahau Don’t think you can learn coding quickly. Usipoteze muda kutafuta which programming language is the best? Wewe changua yoyote anza kuisoma.

2.Baada ya kuchagua language unayotaka chagua kitabu gani kizuri cha language uliyochagua ,kama kuna video za kuangalia ziweke vizuri , kama kuna website ichague.nashauri usitumie solo learning maana haitakusaidia kwa kuanzia.bila kusahau hapo data structure, aligorithm , database na yenyewe material yake, yasiwe mengi kama kitabu kimoja website moja na video za mtu moja tu .

Vitabu vyakusoma kwa language kama C, C++, JAVASCRIPT, C#, na JAVA kwa upande wangu nashauri hivi hapa:

a. The C Programming Language. 2nd Edition Book by Brian Kernighan and Dennis Ritchie

b. The C++ Programming Language (4th Edition) by Bjarne Stroustrup


c. Eloquent JavaScript, 3rd Edition: A Modern Introduction to Programming by Marijn Haverbeke

d. FUNDAMENTALS OF COMPUTER PROGRAMMING WITH C# (The Bulgarian C# Programming Book)

e. INTRODUCTION TO JAVA PROGRAMMING BY Y. DANIEL LIANG
Pia kuna website inaitwa w3school hiyo iko vizuri sana yaani hiyo inatosha kabisa kujifunzia language.

Na upande wa video za youtube kwa wale wazee wa C na C++ kuna mwalimu anaitwa Jenny Lecture nikabinti hivi kakihindi anakufundisha C na C++ kwa sasa usipoelewa umeamua wewe mwenyewe.

Kuna mwingine anaitwa kyle cook anatumia jina la web simplified kwenye youtube yeye huyu ni javascript video zake za kufundisha javascript hazipo hapo kwenye youtube zipo huku www.downloadly.ir lakini pia baadhi ya concept unaweza kuzisoma kwenye account yake ya youtube ,amepangilia vizuri sana. Javascript usipoelewa umetaka mwenyewe Na mwingine huyu hapa anatumia jina la kudvenkat ni mhindi huyo ni mkali wa C#.

3.Mtazamo wangu watanzania wengi tunapenda vitu kwa shortcut, ndio programming inalipa lakini sio rahisi kiasi hicho lazima ukomae aisee. yaani kitu ujajua vizuri unawaza faida founder wa facebook sio tu kwanza alitengeneza facebook tu Hapana,alishawahi kutengeneza chat system,music player, games,learning system na zingine kibao tu ila kwenye facebook ndio akatoka. Sisi tunataka tutachotengeneza hicho hicho kitutoe, ndio maana asilimia kubwa tupo bado tunawaza nini chakufanya badala ya kufanya kwanza chochote hicho kidogo.

Jifunze kwa kuandika code sio kujua tu theory andika code, practise ndio itakufanya ujue. Kujua programming language sio kitu rahisi, bila practise sana utakuwa unapoteza muda tu maana utakuwa unasahau. Usipende kucopy na kupaste, wewe hizo code andika mwenyewe.

4.Acha maneno mengi anza kaundika code watu waone kitu umefanya sio unasema najua language kibao halafu hauna ulichofanya, ndio maana hizo theory za kuwa tambia watu zimeshindwa kukusaidia kuanza kuandika code, unachojua ni hello world tu.

5.Nilichojifunza na kugundua ni kwamba unaweza kujua kusema hii inafanya kazi gani yaani mfano ukajua recursion ni nini? ila ukashindwa kuandika code kuitumia hiyo recursion. kwahiyo baada ya kujifunza language anza kuandika code.

6.Watu wengi wa computer science wanamaliza chuo wanaweza kuwa wanajua kuandika code ila tatizo linakuja hajui atengeneze nini, hii inatokana na kwamba yeye anajua code tu hana mawazo mengine tofauti na code, sasa atengeneze nini?.mtu aliesoma tofauti na computer science akijua language yoyote ile inakuwa rahisi yeye kutengeneza kitu kwenye course aliyosemea mfano kama mimi nimesomea mathematics ni rahisi kutengeneza app ya kusolve hesabu unascan tu swali inakuja pale njia mpaka jibu. Kwa sababu najua tayari namna ya kusolve maswali . sasa watu wa computer science tofauti na notes hizo za computer science hana kitu kingine chakutengezena. Lakini angekuwa na daktari hapo angempa kitu cha kutengeneza kuhusiana na afya mfano app ya magojwa ukiingiza dalili tu ya ugongwa unaletewa utakuwa unaumwa ugonjwa gani. Kwahiyo usijiulize sana kwanini wanashindwa kutengeneza chochote na wanasubiria kazi waajiriwe kutengeneza kitu hata yeye bila ya kuajiliwa angetengeneza.tofauti na hapo labda ameamua kujiajiri mwenyewe.


7.Sio vibaya kufanya kitu ambacho watu wengine wamefanya, maana idea haiji full formed, unaweza kutengeneza hicho cha kuiga mbeleni ukapata mawazo ya kufanya kitu chako mwenyewe na sio kukaa tu kuendelea kuwaza nini cha kufanya.
Kama unafatilia kila kitu watu wameshafanya hicho cha peke yako unakitoa wapi? Wewe tafuta maboresho tui li watu waje kwako na wasiende kwa mwenzio.na hata wewe ukibuni cha kwako tutakuiga tu


8Wakati unasoma language ulioyoichagua kunakukata tamaa njiani, ni vizuri ukakomaana maana kila anaejua programming hayo yote amepitia maana mara ya kwanza unaweza kumaliza kujifunza ukija sasa kuanza kuandika code sasa kitu kionekane unajikuta hujui chochote na wakati umesoma na ulijiiona hizo theory umeelewa.


Kwenye kujifunza kuna kuwa na ugumu kutokana na hizo language wewe ndio mara ya kwanza wewe kuziona ndio maana zinakupa shida ila baada ya muda utazoe tu nakuona kumbe rahisi hivi.

Kila sehemu kuna changamoto zake ni kuwa tu mvumilivu.na chagua material mazuri ambayo utaelewa vizuri.mwanafunzi kujifunza inakuwa ngumu maana anatakiwa akimbizane na assignment na mitihani muda anautoa wapi ila kama uko free tu utajua.


Ni hayo tu wakuu kujifunza Programming language tunakwama wapi?

Hongera mzee Ladder 49

Umeandika vitu vya maana sana, hata Benjamin Fernandes ni self made Programmer kupitia Youtube ambae ni mtanzania aliefanikiwa kudevelop App yake ya mambo ya finance
 
Wakuu Habari zenu? Kujifunza programming language wapi tunakwama kama taifa.

Kuna kipindi na mimi niliamua kujaribu kujifunga ili nianze kutengeneza app ya android, Rafiki yangu akaniambia nitumie android studio nikainstall android studio kwenye computer nikajaribu kutengeneza weather forecast ikanishinda kwenye code za JAVA, nikauliza nikaambiwa lazima ujue kwanza JAVA ndio utaweza kutengeneza hiyo app ya android.

Nikajaribu kutafuta kitabu cha JAVA,kinaitwa INTRODUCTION TO JAVA PROGRAMMING BY Y.DANIEL LIANG kina page 1371,(nashauri ukakisome kama utataka kujifunza Language ya JAVA)
View attachment 2300193


kina elekeza kila kitu kwa maelekezo yakutosha, sasa mimi eti bila kukisoma nikawaza kwamba kile nachokitaka tu niwe naenda kusoma halafu na apply kwenye app yangu ile ya weather forecast ,nikapambana nikagundua kuwa kumbe kuna API key kuna za free na zingine unatakiwa ulipie. Nikajaribu kufatilia kila code na nacho kitaka ikashindikana maana vitu vingi kiuhalisia sijui yaani hata data type za JAVA sielewi ila me naforce . Yaani nilikuwa nataka nisome code kwa shortcuts tu kitu ambacho hakipo na hakiwezekani kabisa lazima ujifunze kwanza vizuri , ufanye mazoezi kwanza ilikuzishika code ndio ufanye unachotaka.

Nikarudi tena kuuliza nataka nitengeneze software ya kuconvert data kutoka format moja kwenda nyingine mfano data ziko kwenye format ya excel nataka ziwe kwenye spss au nataka ziwe kwenye format ya STATA au kwenye format ya R na format zinginezo.

Nikapewa majibu soma C#, maana iko vizuri kwenye desktop app, nikataka shortcut vile vile kufatilia kitu kimoja tu nachokitaka na sio kusoma language yote ndio nifanye, nikaishia kutengeneza muonekano tu wa nje kwenye function zake hola.

Sasa nikawaza nafanyaje kuna mtu akaniambia kuna app inaitwa SOLO learning inafundisha halafu unapata na cheti , nikachagua language ya C#(C-SHARP) nikaanza kuisoma kwenye Solo learning nikapata cheti nikasema ngoja nisome pia JAVA nikasoma JAVA, nikamaliza nikaona pia natakiwa nisome mambo ya database nikasoma MySQL hapo hapo kwenye solo learning nikapata cheti ,sasa vyeti ninavyo. nianze kuandika code nimesahau nikaenda tena kusoma tena kwenye vitabu mbali mbali na nikaanza kundika code , Nikaacha JAVA nikachagua kuanza na language ya C-SHARP(C#)

Nikatafuta kitabu cha kusoma cha C# nikapata kitabu kinaitwa FUNDAMENTALS OF COMPUTER PROGRAMMING WITH C# by iki kitabu kiliandikwa na chuo chao sofia, kule Bulgaria, walimu wa computer wa chuo cha sofia university kina page 1122,
View attachment 2300199
kina kila kitu na maswali juu.usipo elewa hicho kitabu ushindwe mwenyewe,maana kila kitu umeelekezwa vizuri na maswali juu.

Baada ya kusoma hicho kitabu wataki huo sija maliza kusoma hicho kitabu maana kina page 1122, nikapata wazo la kutengeneza ubao yanii blackboard.(kumbuka mwanzoni nilikuwa na wazo la kutengeneza software ya data converter lakini baada ya kumaliza tu kusoma zile language mawazo nikabadilisha). Ubao haukukamilika niko katikati nikawaza sasa ukikamilika nitaenda kuwekaje kwenye website na watu waone na wakati website sijajua kutengeneza (mawazo ya hovyo hayo) halafu nikawa kama hiyo C# kama siikubali tena kauvimu kameanza na kitabu sijamaliza maana kina page kama 1122. hapo bado sijajua vizuri maana nilitakiwa nipate practise za kutosha, me nikaamua kuacha.
View attachment 2300205
Sasa nafanyaje tena maana na muda nimesha poteza. Nikaamua niende youtube kwanza nikawasikilize historia zao wagunduzi wa language za computer na wavumbuzi wa app,website na software mbali mbali kupitia mahojiano au speech zao (lilikuwa wazo zuri). Yaani histori ya language ya C hapo nakuwa namsikiliza dennis Ritchie mwenyewe founder wa language ya C. Kama JAVA nA msikiliza james Gosling mwenyewe,Language ya JAVASCRIPT nakuwa namsikiliza Brendan Eicher Mwenyewe. kwenye kila language nakuwa namsikiliza founder mwenyewe akiwa anaelezea ,(nilifanya hivi iliniwe na mawazo ya watu kama wa programming language) yaani kama language ya RUBY,C#,PHP,C++,PYTHON,PERL, na PASCAL na pia wale founder wa framework za language kadhaa kama ruby on rails na zinginezo. Hapo nikajua vitu vingi tu moja wapo kumbe Microsoft yaani bill gate alikuwa anataka kuinunua JAVA, JAVA wakakataa kwahiyo akaajiri mtu atengeneze language lakini walivyotengeneza kwa mimi niliosoma language ya JAVA NA C# naona kama zinafanana tu ukijua JAVA Kujua C# inakuwa easy pia. Kwa mtazamo wangu walicopy kila kitu kutoka kwa JAVA halafu wakaboresha tu vitu wao walivyoona ni mapungufu.na kingine nikajua kila language ni bora kwenye kitu gani na programming language kujua sio lazima ukasomee chuo unaweza kujifunza mwenyewe tu na unaweza.

Nikawasikiliza karibia 85% (nimekadilia tu ila language zilikuwa Zaidi ya 10 zilizosikiliza founder wake), baada ya hapo nikaamia kwa ma founder mbali mbli kama ni wa software au,wa app, website, desktop app,nikaanza na Mark wa facebook nikafatilia historia yake Maisha yake kabla ya chuo, akiwa chuoni mpaka anatengeneza facebook,founder wa whatsapp, paypal,skype,dropbox,google, twitter, youtube,Instagram, snapchat,telegram. bill gate mwenyewe historia yake, apple,pinterest,spotify,Oracle,na zingine nyingi.

wengi nikiwanawasikiliza nakuwa na jua language walizokuwa wanatumia na pia nikajua life zao zilikuwaje mfano larry Ellison founder wa oracle alikimbiwa na mke Maisha magumu lakini akasema me najua code alikuwa anajua language ya C,akakaza akatoboa na wengine wengi.

Pia bila kusahau nimewasikiliza self-taught programmer mbalimabli ,watu waliojifundisha kufanya code wenyewe na wakaja kuajiliwa kama vile amazon na makampuni mengine makubwa..

Baada ya hayo yote nikaamia kwenye language nyingine inaitwa JAVASCRIPT na wakati huo nilikuwa tayari nimeanza kusoma C#, ila nikaacha , nikaanzakusoma language mpaya kule solo learning nilivyofika katikani nikagungua natakiwa kusoma HTML na CSS kabla ya JAVASCRIPT,na pia natakiwa nisome REACT, VUE NA ANGULAR moja wapo kati ya hizo kama framework.

Nikarudi kusoma HTML na CSS baada yakumaliza nikaamia kwenye JAVASCRIPT baada ya kumaliza nikasoma data structure and aligorithm (hapo kugumu sana kueleweka) baada ya kumaliza nikafikiria cha kutengeneza nikaseme nitengeneze website ya matokeo ya mpira maana ndio inalipa hiyo maana watu watakuwa wantaka kuangalia matokeo ya mpira wa miguu kila wakati hiyo website inakuwa kama livescore vile(sio vizuri kuanza nayo kwa beginner), nikapambana mmh ikanishinda nikalipia kabisa hadi api key matokeo yanakuja kabisa lakini nikaona kuna mambo mengi sana kwenye CSS, yaani CSS uwe vizuri, na mimi siku practise vya kutosha.

Nikaamua kuacha yote na kurudi kwenye HTML na CSS kwanza nikafanya practise za kutosha nikarudi tena kwenye JAVASCRIPT andika code upya, practise za kutosha. Wakati na practise HTML, CSS JAVASCRIT kwa mara ya pili nikaona vizuri nitafute material mazuri(notes, video na vitabu vya javascript vya kueleweka na vya kutosha). Ule ubabahishaji nikaweka pembeni maana kwenye programming language huku hakuna janja janja, lazima ufanye kitu watu waone.

Nikaamua nikomae tu na JAVASCRIPT ni sihame tena niwekeze huko nguvu zote,hata iweje ni sihame tena huko. Ni baki na JAVASCRIPT yangu .

Safari hii nikapata wazo la kutengeneza website ya kuweka notes kwa level ya degree,nilikuwa nimefikiria kuwawekea notes wanafunzi na watu mbali mbali wakitaka kujifunza waje wasome kwangu yaani kwenye website yangu.notes za masomo yote isipokuwa notes za computer tu.

Kwenye server nikatumia database ya mysql, kuconnect kwenye back end kule kwa JAVASCRIPT nikakutana na node js na express nikasoma framework ya express iliniweze kuweka notes kwenye server zionekane kwenye front-end, hapo ilikuwa mtiti nikajua kufanya programming ni ngumu sio kitoto ila baada ya kama wiki mbili hivi nikafanikisha.

Hiyo website nimeikamilisha kabisa ipo na ina fanya kazi tayari.

Ushauri wangu kwa mtu anaetaka kujifunza code.

1.Chagua language yoyote ile anzakujifunza, kuuliza maswali mengi kwamba nianze na language gani hapo ni kupoteza muda tu ,wewe changua language yoyote ile anzakusoma, ukijua language moja kwenda language nyingi ni rahisi sana.maana zina fanana tu kuna mabadiliko madogo yana kuepo ya syntax. Haiitaji kwenda kusomea chuo ,chuo pale wapo kukamilisha ratiba tu programmer wengi wazuri wanakomaa wenyewe tu sio kutegemea chuoni tu pale, Usisahau Don’t think you can learn coding quickly. Usipoteze muda kutafuta which programming language is the best? Wewe changua yoyote anza kuisoma.

2.Baada ya kuchagua language unayotaka chagua kitabu gani kizuri cha language uliyochagua ,kama kuna video za kuangalia ziweke vizuri , kama kuna website ichague.nashauri usitumie solo learning maana haitakusaidia kwa kuanzia.bila kusahau hapo data structure, aligorithm , database na yenyewe material yake, yasiwe mengi kama kitabu kimoja website moja na video za mtu moja tu .

Vitabu vyakusoma kwa language kama C, C++, JAVASCRIPT, C#, na JAVA kwa upande wangu nashauri hivi hapa:

a. The C Programming Language. 2nd Edition Book by Brian Kernighan and Dennis Ritchie

b. The C++ Programming Language (4th Edition) by Bjarne Stroustrup


c. Eloquent JavaScript, 3rd Edition: A Modern Introduction to Programming by Marijn Haverbeke

d. FUNDAMENTALS OF COMPUTER PROGRAMMING WITH C# (The Bulgarian C# Programming Book)

e. INTRODUCTION TO JAVA PROGRAMMING BY Y. DANIEL LIANG
Pia kuna website inaitwa w3school hiyo iko vizuri sana yaani hiyo inatosha kabisa kujifunzia language.

Na upande wa video za youtube kwa wale wazee wa C na C++ kuna mwalimu anaitwa Jenny Lecture nikabinti hivi kakihindi anakufundisha C na C++ kwa sasa usipoelewa umeamua wewe mwenyewe.

Kuna mwingine anaitwa kyle cook anatumia jina la web simplified kwenye youtube yeye huyu ni javascript video zake za kufundisha javascript hazipo hapo kwenye youtube zipo huku www.downloadly.ir lakini pia baadhi ya concept unaweza kuzisoma kwenye account yake ya youtube ,amepangilia vizuri sana. Javascript usipoelewa umetaka mwenyewe Na mwingine huyu hapa anatumia jina la kudvenkat ni mhindi huyo ni mkali wa C#.

3.Mtazamo wangu watanzania wengi tunapenda vitu kwa shortcut, ndio programming inalipa lakini sio rahisi kiasi hicho lazima ukomae aisee. yaani kitu ujajua vizuri unawaza faida founder wa facebook sio tu kwanza alitengeneza facebook tu Hapana,alishawahi kutengeneza chat system,music player, games,learning system na zingine kibao tu ila kwenye facebook ndio akatoka. Sisi tunataka tutachotengeneza hicho hicho kitutoe, ndio maana asilimia kubwa tupo bado tunawaza nini chakufanya badala ya kufanya kwanza chochote hicho kidogo.

Jifunze kwa kuandika code sio kujua tu theory andika code, practise ndio itakufanya ujue. Kujua programming language sio kitu rahisi, bila practise sana utakuwa unapoteza muda tu maana utakuwa unasahau. Usipende kucopy na kupaste, wewe hizo code andika mwenyewe.

4.Acha maneno mengi anza kaundika code watu waone kitu umefanya sio unasema najua language kibao halafu hauna ulichofanya, ndio maana hizo theory za kuwa tambia watu zimeshindwa kukusaidia kuanza kuandika code, unachojua ni hello world tu.

5.Nilichojifunza na kugundua ni kwamba unaweza kujua kusema hii inafanya kazi gani yaani mfano ukajua recursion ni nini? ila ukashindwa kuandika code kuitumia hiyo recursion. kwahiyo baada ya kujifunza language anza kuandika code.

6.Watu wengi wa computer science wanamaliza chuo wanaweza kuwa wanajua kuandika code ila tatizo linakuja hajui atengeneze nini, hii inatokana na kwamba yeye anajua code tu hana mawazo mengine tofauti na code, sasa atengeneze nini?.mtu aliesoma tofauti na computer science akijua language yoyote ile inakuwa rahisi yeye kutengeneza kitu kwenye course aliyosemea mfano kama mimi nimesomea mathematics ni rahisi kutengeneza app ya kusolve hesabu unascan tu swali inakuja pale njia mpaka jibu. Kwa sababu najua tayari namna ya kusolve maswali . sasa watu wa computer science tofauti na notes hizo za computer science hana kitu kingine chakutengezena. Lakini angekuwa na daktari hapo angempa kitu cha kutengeneza kuhusiana na afya mfano app ya magojwa ukiingiza dalili tu ya ugongwa unaletewa utakuwa unaumwa ugonjwa gani. Kwahiyo usijiulize sana kwanini wanashindwa kutengeneza chochote na wanasubiria kazi waajiriwe kutengeneza kitu hata yeye bila ya kuajiliwa angetengeneza.tofauti na hapo labda ameamua kujiajiri mwenyewe.


7.Sio vibaya kufanya kitu ambacho watu wengine wamefanya, maana idea haiji full formed, unaweza kutengeneza hicho cha kuiga mbeleni ukapata mawazo ya kufanya kitu chako mwenyewe na sio kukaa tu kuendelea kuwaza nini cha kufanya.
Kama unafatilia kila kitu watu wameshafanya hicho cha peke yako unakitoa wapi? Wewe tafuta maboresho tui li watu waje kwako na wasiende kwa mwenzio.na hata wewe ukibuni cha kwako tutakuiga tu


8Wakati unasoma language ulioyoichagua kunakukata tamaa njiani, ni vizuri ukakomaana maana kila anaejua programming hayo yote amepitia maana mara ya kwanza unaweza kumaliza kujifunza ukija sasa kuanza kuandika code sasa kitu kionekane unajikuta hujui chochote na wakati umesoma na ulijiiona hizo theory umeelewa.


Kwenye kujifunza kuna kuwa na ugumu kutokana na hizo language wewe ndio mara ya kwanza wewe kuziona ndio maana zinakupa shida ila baada ya muda utazoe tu nakuona kumbe rahisi hivi.

Kila sehemu kuna changamoto zake ni kuwa tu mvumilivu.na chagua material mazuri ambayo utaelewa vizuri.mwanafunzi kujifunza inakuwa ngumu maana anatakiwa akimbizane na assignment na mitihani muda anautoa wapi ila kama uko free tu utajua.


Ni hayo tu wakuu kujifunza Programming language tunakwama wapi?
mkuu bado unatumia java mpaka leo na google washema support inaisha 2024
 
Shida ni watu hudhani ku code ni kitu tu simple yani you drag something and drop there

Ukitaka ujue ku code vzr kama hujasoma kozi za computer chuo yani unataka ufanye self learning anza kwanza kujua computing devices na internet zinafanyaje kazi hapo utajua programming ina play role gani

then angalia unataka kutengeneza nini na cha platform gani (hapa base na interest zako) ndo utajua language gani inatumika based na kitu unachopends kutengeneza

Mwisho uta decide uwe developer wa aina gani wa front end (Huu ni mwonekano wa mbele ) au back end (hizi ni muundo wa functions na database ) au full stack (both front and back end )

Ni vzr kuchagua kitu kimoja au language chache zinazotegemeana na uzijue vzuri sana

Applications kubwa hazitengenezwi na mtu mmoja unakuta ni team ya watu wengi wanaojua vitu vidogo vidogo tofauti
 
Shida ni watu hudhani ku code ni kitu tu simple yani you drag something and drop there

Ukitaka ujue ku code vzr kama hujasoma kozi za computer chuo yani unataka ufanye self learning anza kwanza kujua computing devices na internet zinafanyaje kazi hapo utajua programming ina play role gani

then angalia unataka kutengeneza nini na cha platform gani (hapa base na interest zako) ndo utajua language gani inatumika based na kitu unachopends kutengeneza

Mwisho uta decide uwe developer wa aina gani wa front end (Huu ni mwonekano wa mbele ) au back end (hizi ni muundo wa functions na database ) au full stack (both front and back end )

Ni vzr kuchagua kitu kimoja au language chache zinazotegemeana na uzijue vzuri sana

Applications kubwa hazitengenezwi na mtu mmoja unakuta ni team ya watu wengi wanaojua vitu vidogo vidogo tofauti

Kweli kabisa mkuu,lazima uwelewe internet inavyofanya Kazi.
 

Similar Discussions

Back
Top Bottom